Nameless Engine
|
#include <ShaderArrayIndexManager.h>
Public Member Functions | |
ShaderArrayIndex (const ShaderArrayIndex &)=delete | |
ShaderArrayIndex & | operator= (const ShaderArrayIndex &)=delete |
ShaderArrayIndex (ShaderArrayIndex &&)=delete | |
ShaderArrayIndex & | operator= (ShaderArrayIndex &&)=delete |
unsigned int | getActualIndex () const |
~ShaderArrayIndex () | |
Private Member Functions | |
ShaderArrayIndex (ShaderArrayIndexManager *pManager, unsigned int iIndexIntoShaderArray) | |
Private Attributes | |
ShaderArrayIndexManager * | pManager = nullptr |
unsigned int | iIndexIntoShaderArray |
Friends | |
class | ShaderArrayIndexManager |
RAII-style class that holds an index into a shader array and marks it as unused in destructor so that other shader resources can use it later.
ne::ShaderArrayIndex::~ShaderArrayIndex | ( | ) |
Notifies the manager (that created this index) about index no longer being used.
|
private |
Constructs a new array index.
pManager | Manager that created this index. |
iIndexIntoShaderArray | Actual index into a shader array. |
unsigned int ne::ShaderArrayIndex::getActualIndex | ( | ) | const |
Returns an actual index into the shader array.
|
friend |
Only index manager can created indices.
|
private |
Actual index into a shader array.
|
private |
Manager that created this index.