14 #ifndef OSG_SHADERCOMPOSER
15 #define OSG_SHADERCOMPOSER 1
18 #include <osg/StateAttribute>
19 #include <osg/Program>
36 virtual
osg::
Program* getOrCreateProgram(const ShaderComponents& shaderComponents);
38 typedef std::vector< const
osg::
Shader* > Shaders;
39 virtual
osg::
Shader* composeMain(const Shaders& shaders);
40 virtual
void addShaderToProgram(
Program* program, const Shaders& shaders);
42 void releaseGLObjects(
osg::
State* state);
50 ProgramMap _programMap;
53 ShaderMainMap _shaderMainMap;
std::map< ShaderComponents, ref_ptr< Program > > ProgramMap
#define META_Object(library, name)
std::map< Shaders, ref_ptr< Shader > > ShaderMainMap
std::vector< osg::ShaderComponent * > ShaderComponents