Classes | Namespaces | Enumerations | Functions
IUniform.h File Reference
#include <ionCore.h>
#include <ionMath.h>
#include "Enums.h"
Include dependency graph for IUniform.h:

Go to the source code of this file.

Classes

class  ion::Graphics::IUniform
 Abstract interface for anything which can be uploaded as a shader uniform. More...
 
class  ion::Graphics::IUniformTyped< T >
 Abstract interface for IUniform with known type. More...
 
class  ion::Graphics::CUniformReference< T >
 Implementation of IUniformTyped that stores a (non-owning) reference to value. More...
 
class  ion::Graphics::CUniformCallback< T >
 Implementation of IUniformTyped that uses a given lambda callback to provide uniform value. More...
 
class  ion::Graphics::CUniformValue< T >
 Implementation of IUniformTyped that stores a copy of a given value for uniform upload. More...
 
class  ion::Graphics::CUniform< T >
 Helper class to easily add a uniform as a member or local variable. More...
 

Namespaces

 ion
 
 ion::Graphics
 Contains ionGraphics module and implementations.
 

Enumerations

enum  ion::Graphics::EUniformType {
  ion::Graphics::EUniformType::Float = 0, ion::Graphics::EUniformType::Float2 = 1, ion::Graphics::EUniformType::Float3 = 2, ion::Graphics::EUniformType::Float4 = 3,
  ion::Graphics::EUniformType::Int = 4, ion::Graphics::EUniformType::Int2 = 5, ion::Graphics::EUniformType::Int3 = 6, ion::Graphics::EUniformType::Int4 = 7,
  ion::Graphics::EUniformType::Matrix4x4 = 8, ion::Graphics::EUniformType::FloatArray = 9, ion::Graphics::EUniformType::Float2Array = 10, ion::Graphics::EUniformType::Float3Array = 11,
  ion::Graphics::EUniformType::Matrix4x4Array = 12, ion::Graphics::EUniformType::Bool = 13
}
 Possible types for uniforms. More...
 

Functions

string ion::Graphics::GetUniformTypeString (EUniformType const UniformType)
 Converts uniform enum to equivalent string form. More...