Public Member Functions | Public Attributes | List of all members
ion::Graphics::GL::CPipelineState Class Reference

#include <CPipelineState.h>

Inheritance diagram for ion::Graphics::GL::CPipelineState:
Inheritance graph
[legend]
Collaboration diagram for ion::Graphics::GL::CPipelineState:
Collaboration graph
[legend]

Public Member Functions

 CPipelineState (CWindow *Window)
 
 ~CPipelineState ()
 
void SetShader (SharedPointer< IShader > Shader)
 
void SetVertexBuffer (uint const Index, SharedPointer< IVertexBuffer > VertexBuffer)
 
void SetIndexBuffer (SharedPointer< IIndexBuffer > IndexBuffer)
 
void SetUniform (string const &Name, SharedPointer< IUniform > Uniform)
 
void SetTexture (string const &Name, SharedPointer< ITexture > Texture)
 
void SetPrimitiveType (EPrimitiveType const PrimitiveType)
 
void SetFeatureEnabled (EDrawFeature const Feature, bool const Enabled)
 
void SetPolygonOffsetAmount (float const Amount)
 
void SetBlendMode (EBlendMode const BlendMode)
 
void OfferUniform (string const &Name, SharedPointer< IUniform > Uniform)
 
void OfferTexture (string const &Name, SharedPointer< ITexture > Texture)
 
void IgnoreUniform (string const &Name)
 
set< string > GetUnboundUniforms () const
 
void Load ()
 
- Public Member Functions inherited from ion::Graphics::IPipelineState
virtual ~IPipelineState ()
 

Public Attributes

CWindowWindow = nullptr
 
SharedPointer< CShaderShader
 
vector< SharedPointer< CVertexBuffer > > VertexBuffers
 
SharedPointer< CIndexBufferIndexBuffer
 
uint VertexArrayHandle = 0
 
bool Loaded = false
 
map< string, SharedPointer< IUniform const > > Uniforms
 
map< uint, SharedPointer< IUniform const > > BoundUniforms
 
map< string, SharedPointer< ITexture const > > Textures
 
map< uint, SharedPointer< ITexture const > > BoundTextures
 
set< string > UnboundUniforms
 
set< string > UnboundAttributes
 
bool DrawWireframe = false
 
bool CullFront = false
 
bool CullBack = false
 
bool DisableDepthTest = false
 
bool DisableDepthWrite = false
 
bool PolygonOffset = false
 
float PolygonOffsetAmount = 1.f
 
EBlendMode BlendMode = EBlendMode::None
 
uint PrimitiveType
 

Constructor & Destructor Documentation

ion::Graphics::GL::CPipelineState::CPipelineState ( CWindow Window)
ion::Graphics::GL::CPipelineState::~CPipelineState ( )

Member Function Documentation

set< string > ion::Graphics::GL::CPipelineState::GetUnboundUniforms ( ) const
virtual
void ion::Graphics::GL::CPipelineState::IgnoreUniform ( string const &  Name)
virtual
void ion::Graphics::GL::CPipelineState::Load ( )
virtual
void ion::Graphics::GL::CPipelineState::OfferTexture ( string const &  Name,
SharedPointer< ITexture Texture 
)
virtual
void ion::Graphics::GL::CPipelineState::OfferUniform ( string const &  Name,
SharedPointer< IUniform Uniform 
)
virtual
void ion::Graphics::GL::CPipelineState::SetBlendMode ( EBlendMode const  BlendMode)
virtual
void ion::Graphics::GL::CPipelineState::SetFeatureEnabled ( EDrawFeature const  Feature,
bool const  Enabled 
)
virtual
void ion::Graphics::GL::CPipelineState::SetIndexBuffer ( SharedPointer< IIndexBuffer IndexBuffer)
virtual
void ion::Graphics::GL::CPipelineState::SetPolygonOffsetAmount ( float const  Amount)
virtual
void ion::Graphics::GL::CPipelineState::SetPrimitiveType ( EPrimitiveType const  PrimitiveType)
virtual
void ion::Graphics::GL::CPipelineState::SetShader ( SharedPointer< IShader Shader)
virtual
void ion::Graphics::GL::CPipelineState::SetTexture ( string const &  Name,
SharedPointer< ITexture Texture 
)
virtual
void ion::Graphics::GL::CPipelineState::SetUniform ( string const &  Name,
SharedPointer< IUniform Uniform 
)
virtual
void ion::Graphics::GL::CPipelineState::SetVertexBuffer ( uint const  Index,
SharedPointer< IVertexBuffer VertexBuffer 
)
virtual

Member Data Documentation

EBlendMode ion::Graphics::GL::CPipelineState::BlendMode = EBlendMode::None
map<uint, SharedPointer<ITexture const> > ion::Graphics::GL::CPipelineState::BoundTextures
map<uint, SharedPointer<IUniform const> > ion::Graphics::GL::CPipelineState::BoundUniforms
bool ion::Graphics::GL::CPipelineState::CullBack = false
bool ion::Graphics::GL::CPipelineState::CullFront = false
bool ion::Graphics::GL::CPipelineState::DisableDepthTest = false
bool ion::Graphics::GL::CPipelineState::DisableDepthWrite = false
bool ion::Graphics::GL::CPipelineState::DrawWireframe = false
SharedPointer<CIndexBuffer> ion::Graphics::GL::CPipelineState::IndexBuffer
bool ion::Graphics::GL::CPipelineState::Loaded = false
bool ion::Graphics::GL::CPipelineState::PolygonOffset = false
float ion::Graphics::GL::CPipelineState::PolygonOffsetAmount = 1.f
uint ion::Graphics::GL::CPipelineState::PrimitiveType
SharedPointer<CShader> ion::Graphics::GL::CPipelineState::Shader
map<string, SharedPointer<ITexture const> > ion::Graphics::GL::CPipelineState::Textures
set<string> ion::Graphics::GL::CPipelineState::UnboundAttributes
set<string> ion::Graphics::GL::CPipelineState::UnboundUniforms
map<string, SharedPointer<IUniform const> > ion::Graphics::GL::CPipelineState::Uniforms
uint ion::Graphics::GL::CPipelineState::VertexArrayHandle = 0
vector<SharedPointer<CVertexBuffer> > ion::Graphics::GL::CPipelineState::VertexBuffers
CWindow* ion::Graphics::GL::CPipelineState::Window = nullptr

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