cesium-native  0.41.0
Cesium3DTilesSelection::TileOcclusionRendererProxyPool Class Referenceabstract

A pool of TileOcclusionRendererProxy objects. Allows quick remapping of tiles to occlusion renderer proxies so new proxies do not have to be created for each new tile requesting occlusion results. More...

#include <Cesium3DTilesSelection/TileOcclusionRendererProxy.h>

Public Member Functions

 TileOcclusionRendererProxyPool (int32_t maximumPoolSize)
 Constructs a new instance. More...
 
virtual ~TileOcclusionRendererProxyPool ()
 Destroys this pool.
 
void destroyPool ()
 Destroy the pool.
 
const TileOcclusionRendererProxyfetchOcclusionProxyForTile (const Tile &tile, int32_t currentFrame)
 Get the TileOcclusionRendererProxy mapped to the tile. Attempts to create a new mapping if one does not exist already by assigning a proxy from the free list. More...
 
void pruneOcclusionProxyMappings ()
 Prunes the occlusion proxy mappings and removes any mappings that were unused the last frame. Any mapping corresponding to a tile that was not visited will have been unused. Occlusion proxies from removed mappings will be returned to the free list.
 

Protected Member Functions

virtual TileOcclusionRendererProxycreateProxy ()=0
 Create a TileOcclusionRendererProxy. More...
 
virtual void destroyProxy (TileOcclusionRendererProxy *pProxy)=0
 Destroy a TileOcclusionRendererProxy that is done being used. More...
 

Detailed Description

A pool of TileOcclusionRendererProxy objects. Allows quick remapping of tiles to occlusion renderer proxies so new proxies do not have to be created for each new tile requesting occlusion results.

Definition at line 80 of file TileOcclusionRendererProxy.h.

Constructor & Destructor Documentation

◆ TileOcclusionRendererProxyPool()

Cesium3DTilesSelection::TileOcclusionRendererProxyPool::TileOcclusionRendererProxyPool ( int32_t  maximumPoolSize)

Constructs a new instance.

Parameters
maximumPoolSizeThe maximum number of TileOcclusionRendererProxy instances that may exist in this pool.

Member Function Documentation

◆ createProxy()

virtual TileOcclusionRendererProxy* Cesium3DTilesSelection::TileOcclusionRendererProxyPool::createProxy ( )
protectedpure virtual

Create a TileOcclusionRendererProxy.

Returns
A new occlusion proxy.

◆ destroyProxy()

virtual void Cesium3DTilesSelection::TileOcclusionRendererProxyPool::destroyProxy ( TileOcclusionRendererProxy pProxy)
protectedpure virtual

Destroy a TileOcclusionRendererProxy that is done being used.

Parameters
pProxyThe proxy to be destroyed.

◆ fetchOcclusionProxyForTile()

const TileOcclusionRendererProxy* Cesium3DTilesSelection::TileOcclusionRendererProxyPool::fetchOcclusionProxyForTile ( const Tile tile,
int32_t  currentFrame 
)

Get the TileOcclusionRendererProxy mapped to the tile. Attempts to create a new mapping if one does not exist already by assigning a proxy from the free list.

Parameters
tileThe tile.
currentFrameThe current frame number.
Returns
The occlusion proxy mapped to this tile, or nullptr if one can't be made.

The documentation for this class was generated from the following file: