GL Studio C++ Runtime API
IGlsEffectFactory Interface Referenceabstract

#include <gls_es20_effect_factory_interface.h>

Public Types

enum  ShaderOptions_e
 
enum  MaxLikeShaderOptions_e
 
typedef unsigned int ShaderBitfieldT
 

Public Member Functions

virtual GlsEffectGetStdEffect (ShaderBitfieldT bitfield)=0
 
virtual GlsEffectGetMaxLikeEffect (ShaderBitfieldT bitfield)=0
 
virtual GlsEffectCreateCustomEffect (const char *vertShader, const char *fragShader)=0
 

Protected Member Functions

 IGlsEffectFactory (void)
 
 ~IGlsEffectFactory ()
 

Detailed Description

The interface to a factory for creating GlsEffect objects. Holds the standard and custom shaders, compiles effects, and maintains a list of effects for quick access.

Member Typedef Documentation

typedef unsigned int ShaderBitfieldT

type of shader features bitfield

Member Enumeration Documentation

enumeration for bitfield describing max-like shader capability

enumeration for bitfield describing shader capability

Constructor & Destructor Documentation

IGlsEffectFactory ( void  )
inlineprotected

empty ctor

~IGlsEffectFactory ( )
inlineprotected

empty dtor

Member Function Documentation

virtual GlsEffect* CreateCustomEffect ( const char *  vertShader,
const char *  fragShader 
)
pure virtual

Provide custom shaders to create a new effect.

Parameters
[in]vertShaderthe vertex shader source
[in]fragShaderthe fragment shader source
Returns
The effect's ID in the effect factory.
virtual GlsEffect* GetMaxLikeEffect ( ShaderBitfieldT  bitfield)
pure virtual

Return a max-like effect with the parameters specified.

Parameters
[in]bitfielda bitfield indicating the shader features requested (
See also
MaxLikeShaderOptions_e)
Returns
An effect that meets the requirements of bitfield.
virtual GlsEffect* GetStdEffect ( ShaderBitfieldT  bitfield)
pure virtual

Return a standard effect with the parameters specified. This method is called by the state manager automatically in response to standard draw calls.

Parameters
[in]bitfielda bitfield indicating the shader features requested (
See also
ShaderOptions_e)
Returns
An effect that meets the requirements of bitfield.

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