Inheritance diagram for osg::Program:

Public Types | |
| typedef std::map< std::string, GLuint > | AttribBindingList |
| typedef std::map< std::string, ActiveVarInfo > | ActiveVarInfoMap |
Public Member Functions | |
| Program () | |
| Program (const Program &rhs, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
| META_StateAttribute (osg, Program, PROGRAM) | |
| virtual int | compare (const osg::StateAttribute &sa) const |
| virtual void | apply (osg::State &state) const |
| virtual void | compileGLObjects (osg::State &state) const |
| virtual void | releaseGLObjects (osg::State *state=0) const |
| void | dirtyProgram () |
| bool | addShader (Shader *shader) |
| unsigned int | getNumShaders () const |
| Shader * | getShader (unsigned int i) |
| const Shader * | getShader (unsigned int i) const |
| bool | removeShader (Shader *shader) |
| void | addBindAttribLocation (const std::string &name, GLuint index) |
| void | removeBindAttribLocation (const std::string &name) |
| const AttribBindingList & | getAttribBindingList () const |
| bool | isFixedFunction () const |
| bool | getGlProgramInfoLog (unsigned int contextID, std::string &log) const |
| const ActiveVarInfoMap & | getActiveUniforms (unsigned int contextID) const |
| const ActiveVarInfoMap & | getActiveAttribs (unsigned int contextID) const |
| PerContextProgram * | getPCP (unsigned int contextID) const |
Static Public Member Functions | |
| static void | deleteGlProgram (unsigned int contextID, GLuint program) |
| static void | flushDeletedGlPrograms (unsigned int contextID, double currentTime, double &availableTime) |
Protected Types | |
| typedef std::vector< ref_ptr< Shader > > | ShaderList |
Protected Member Functions | |
| virtual | ~Program () |
Protected Attributes | |
| osg::buffered_value< osg::ref_ptr< PerContextProgram > > | _pcpList |
| AttribBindingList | _attribBindingList |
| ShaderList | _shaderList |
Friends | |
| class | PerContextProgram |
Classes | |
| struct | ActiveVarInfo |
| class | PerContextProgram |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
Copy constructor using CopyOp to manage deep vs shallow copy. |
|
|
|
|
||||||||||||
|
Add an attribute location binding. |
|
|
Attach an osg::Shader to this osg::Program. Mark Program as needing relink. Return true for success |
|
|
If enabled, activate our program in the GL pipeline, performing any rebuild operations that might be pending. Implements osg::StateAttribute. |
|
|
return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. Implements osg::StateAttribute. |
|
|
default to nothing to compile - all state is applied immediately. Reimplemented from osg::StateAttribute. |
|
||||||||||||
|
Mark internal glProgram for deletion. Deletion requests are queued until they can be executed in the proper GL context. |
|
|
Mark our PCSOs as needing relink |
|
||||||||||||||||
|
flush all the cached glPrograms which need to be deleted in the OpenGL context related to contextID. |
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
Query InfoLog from a glProgram |
|
|
|
|
|
Get the PCP for a particular GL context |
|
|
|
|
|
|
|
|
Return true if this Program represents "fixed-functionality" rendering |
|
||||||||||||||||
|
|
|
|
release OpenGL objects in specified graphics context if State object is passed, otherwise release OpenGL objects for all graphics context if State object pointer NULL. Reimplemented from osg::StateAttribute. |
|
|
Add an attribute location binding. |
|
|
Remove osg::Shader from this osg::Program. Mark Program as needing relink. Return true for success |
|
|
|
|
|
|
|
|
|
|
|
|
1.4.6