Ion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ion::gfx::ProgramInfo< T >::Uniform Struct Reference

A uniform variable to a shader stage. More...

#include "openglobjects.h"

Collaboration diagram for ion::gfx::ProgramInfo< T >::Uniform:

Public Types

typedef base::Variant< int,
uint32, float,
math::VectorBase2f,
math::VectorBase3f,
math::VectorBase4f,
math::VectorBase2i,
math::VectorBase3i,
math::VectorBase4i,
math::VectorBase2ui,
math::VectorBase3ui,
math::VectorBase4ui,
math::Matrix2f, math::Matrix3f,
math::Matrix4f
ValueType
 

Public Member Functions

 Uniform ()
 

Public Attributes

GLint index
 The uniform's location. More...
 
std::vector< GLint > array_indices
 The uniform array locations. More...
 
GLenum type
 The type of the uniform. More...
 
GLint size
 The number of elements in the uniform. A non-array uniform has size 1. More...
 
ValueType value
 The value of the uniform. More...
 
std::string name
 The name of the uniform in the program. More...
 

Detailed Description

template<typename T>
struct ion::gfx::ProgramInfo< T >::Uniform

A uniform variable to a shader stage.

Definition at line 144 of file openglobjects.h.

Member Typedef Documentation

template<typename T >
typedef base::Variant< int, uint32, float, math::VectorBase2f, math::VectorBase3f, math::VectorBase4f, math::VectorBase2i, math::VectorBase3i, math::VectorBase4i, math::VectorBase2ui, math::VectorBase3ui, math::VectorBase4ui, math::Matrix2f, math::Matrix3f, math::Matrix4f> ion::gfx::ProgramInfo< T >::Uniform::ValueType

Definition at line 150 of file openglobjects.h.

Constructor & Destructor Documentation

template<typename T >
ion::gfx::ProgramInfo< T >::Uniform::Uniform ( )
inline

Definition at line 151 of file openglobjects.h.

Member Data Documentation

template<typename T >
std::vector<GLint> ion::gfx::ProgramInfo< T >::Uniform::array_indices

The uniform array locations.

Scalar uniforms (e.g., vec2 uni;) have size == 1, and no array indices, while array uniforms (e.g., vec2 uni[2];) have indices for each element (including 0) of the array.

Definition at line 157 of file openglobjects.h.

template<typename T >
GLint ion::gfx::ProgramInfo< T >::Uniform::index

The uniform's location.

Definition at line 153 of file openglobjects.h.

template<typename T >
std::string ion::gfx::ProgramInfo< T >::Uniform::name

The name of the uniform in the program.

Definition at line 165 of file openglobjects.h.

template<typename T >
GLint ion::gfx::ProgramInfo< T >::Uniform::size

The number of elements in the uniform. A non-array uniform has size 1.

Definition at line 161 of file openglobjects.h.

template<typename T >
GLenum ion::gfx::ProgramInfo< T >::Uniform::type

The type of the uniform.

Definition at line 159 of file openglobjects.h.

template<typename T >
ValueType ion::gfx::ProgramInfo< T >::Uniform::value

The value of the uniform.

Definition at line 163 of file openglobjects.h.


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