A uniform holding a matrix value. More...
#include <Uniform.h>
Public Member Functions | |
virtual | ~UniformMatrix () |
Deletes this uniform. | |
virtual UniformType | getType () const |
Returns the type of this uniform. | |
const T * | get () const |
Returns the current value of this uniform. | |
void | set (const T *value) |
Sets the value of this uniform. | |
virtual void | setValue (ptr< Value > v) |
Sets the value of this uniform. | |
Protected Member Functions | |
UniformMatrix (Program *program, UniformBlock *block, const string &name, GLint location, int stride, int isRowMajor) | |
Creates a new uniform. | |
virtual void | setValue () |
Sets this uniform in its program. | |
Protected Attributes | |
T | value [C *R] |
The current value of this uniform. |
A uniform holding a matrix value.
virtual ork::UniformMatrix< U, T, C, R, V, W >::~UniformMatrix | ( | ) | [inline, virtual] |
Deletes this uniform.
ork::UniformMatrix< U, T, C, R, V, W >::UniformMatrix | ( | Program * | program, | |
UniformBlock * | block, | |||
const string & | name, | |||
GLint | location, | |||
int | stride, | |||
int | isRowMajor | |||
) | [inline, protected] |
Creates a new uniform.
program | the Program to which this uniform belongs. | |
block | UniformBlock to which this uniform belongs. Maybe NULL. | |
name | the name of the uniform in the GLSL shader code. | |
location | the location of this uniform. For an uniform inside a block, this location is an offset inside the uniform block buffer. | |
stride | the stride between two consecutive rows or columns when this uniform is stored in an uniform block. | |
isRowMajor | true if this uniform is stored in row major order in an uniform block. |
const T* ork::UniformMatrix< U, T, C, R, V, W >::get | ( | ) | const [inline] |
Returns the current value of this uniform.
virtual UniformType ork::UniformMatrix< U, T, C, R, V, W >::getType | ( | ) | const [inline, virtual] |
Returns the type of this uniform.
Implements ork::Uniform.
void ork::UniformMatrix< U, T, C, R, V, W >::set | ( | const T * | value | ) | [inline] |
Sets the value of this uniform.
value | the matrix coefficients in row major order (i.e. first row, second row, etc). |
virtual void ork::UniformMatrix< U, T, C, R, V, W >::setValue | ( | ) | [protected, virtual] |
Sets this uniform in its program.
Implements ork::Uniform.
virtual void ork::UniformMatrix< U, T, C, R, V, W >::setValue | ( | ptr< Value > | v | ) | [inline, virtual] |
Sets the value of this uniform.
v | the new value for this uniform. Must be of the same type as this Uniform. |
Implements ork::Uniform.
T ork::UniformMatrix< U, T, C, R, V, W >::value[C *R] [protected] |
The current value of this uniform.
The matrix coefficients are stored in row major order.