Diligent Engine
Loading...
Searching...
No Matches
Diligent::RadientFrameSRBCache Class Referencefinal

#include <RadientFrameSRBCache.hpp>

Public Member Functions

void Add (RadientIBLResources *pResources, IShaderResourceBinding *pSRB, const RadientFrameSRBResourceVersions &ResourceVersions={})
 Adds or replaces the SRB for the specified resource versions.
RefCntAutoPtr< IShaderResourceBindingGet (const RadientIBLResources *pResources, const RadientFrameSRBResourceVersions &ResourceVersions={}) const noexcept

Detailed Description

Renderer-owned cache of immutable frame SRBs associated with view IBL resources. The cache does not retain the resource bundle; destroying the bundle evicts its SRB.

Member Function Documentation

◆ Get()

RefCntAutoPtr< IShaderResourceBinding > Diligent::RadientFrameSRBCache::Get ( const RadientIBLResources * pResources,
const RadientFrameSRBResourceVersions & ResourceVersions = {} ) const
noexcept

Returns a strong reference that remains valid if the cache entry is concurrently removed. Returns null when the cached entry has a different resource versions.