CS::RenderManager::LayerHelper< RenderTree, LayerConfigType, NewLayersType > Class Template Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions
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:

- csplugincommon/rendermanager/lightsetup.h