CrystalSpace

Public API Reference

CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType > Class Template Reference

Helper to duplicate render layers. More...

#include <csplugincommon/rendermanager/lightsetup.h>

List of all members.

Public Member Functions

void Ensure (size_t layer, size_t neededSubLayers, typename RenderTree::ContextNode &context)
 Make sure layer has at least neededSubLayers sublayers.
size_t GetNewLayerIndex (size_t layer, size_t subLayer) const
 Get the 'new' index of layer, sublayer.
size_t GetSubLayerCount (size_t layer) const
 Get the amount of sublayers layer posseses.
 LayerHelper (LayerHelperContextData &contextData, const LayerConfigType &layerConfig, NewLayersType &newLayers)
 Construct.

Detailed Description

template<typename RenderTree, typename LayerConfigType, typename NewLayersType>
class CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType >

Helper to duplicate render layers.

Used when meshes have to be rendered multiple times but with the properties of a specific render layer. A duplicate of a layer is called a "subLayer".

Definition at line 64 of file lightsetup.h.


Constructor & Destructor Documentation

template<typename RenderTree , typename LayerConfigType , typename NewLayersType >
CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType >::LayerHelper ( LayerHelperContextData &  contextData,
const LayerConfigType &  layerConfig,
NewLayersType &  newLayers 
) [inline]

Construct.

layerConfig is the source layer setup, newLayers will be manipulated as layers get duplicated. It needs to provide a method 'InsertLayer (size_t after, size_t oldLayer)' which inserts a copy of layer oldLayer after the new layer after.

See also:
PostLightingLayers

Definition at line 73 of file lightsetup.h.


Member Function Documentation

template<typename RenderTree , typename LayerConfigType , typename NewLayersType >
void CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType >::Ensure ( size_t  layer,
size_t  neededSubLayers,
typename RenderTree::ContextNode context 
) [inline]

Make sure layer has at least neededSubLayers sublayers.

node is needed to duplicate stored per-layer data in the assocuated context.

Definition at line 107 of file lightsetup.h.

template<typename RenderTree , typename LayerConfigType , typename NewLayersType >
size_t CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType >::GetNewLayerIndex ( size_t  layer,
size_t  subLayer 
) const [inline]

Get the 'new' index of layer, sublayer.

Definition at line 91 of file lightsetup.h.

template<typename RenderTree , typename LayerConfigType , typename NewLayersType >
size_t CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType >::GetSubLayerCount ( size_t  layer  )  const [inline]

Get the amount of sublayers layer posseses.

Definition at line 97 of file lightsetup.h.


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

Generated for Crystal Space 2.1 by doxygen 1.6.1