Ocular Engine
Ocular::Math::MatrixStack Class Reference

Public Member Functions

void loadIdentity ()
 
void combine (Matrix4x4 const matrix)
 
void push (Matrix4x4 const matrix)
 
bool pop (Matrix4x4 *matrix)
 
bool peek (Matrix4x4 *matrix)
 
bool empty ()
 
unsigned size ()
 
void clear ()
 

Member Function Documentation

void Ocular::Math::MatrixStack::clear ( )
inline

Removes all elements from the stack.

void Ocular::Math::MatrixStack::combine ( Matrix4x4 const  matrix)
inline

Combines the matrix (via concatenation) at the top of the matrix stack with the provided matrix.

If the stack is empty, the matrix is placed directly onto the stack unmodified.

Parameters
[in]matrixMatrix to combine with the top of the stack.
bool Ocular::Math::MatrixStack::empty ( )
inline
Returns
True if the matrix stack is empty.
void Ocular::Math::MatrixStack::loadIdentity ( )
inline

Places an identity matrix on the top of the stack.

bool Ocular::Math::MatrixStack::peek ( Matrix4x4 matrix)
inline

Copies the matrix at the top of the stack into the specified reference.

Parameters
[in]matrixMatrix to copy the top of the stack onto.
Returns
True if there was a matrix to peek, else false.
bool Ocular::Math::MatrixStack::pop ( Matrix4x4 matrix)
inline

Removes the matrix at the top of the stack and places it at the provided address reference.

Parameters
[in]matrixMatrix to copy the top of the stack onto.
Returns
True if there was a matrix to pop, else false.
void Ocular::Math::MatrixStack::push ( Matrix4x4 const  matrix)
inline

Pushes the provided matrix directly on top of the stack.
Note that this does not combine matrices like combine does.

Parameters
[in]matrixMatrix to place at the top of the stack.
unsigned Ocular::Math::MatrixStack::size ( )
inline
Returns
The number of element in the stack.

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