|
Public Types |
typedef std::map< std::string,
GLuint > | AttribBindingList |
typedef std::map< std::string,
std::pair< GLint, GLenum > > | NameInfoMap |
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 |
void | setName (const std::string &name) |
void | setName (const char *name) |
const std::string & | getName () const |
const NameInfoMap & | getActiveUniforms (unsigned int contextID) const |
const NameInfoMap & | getActiveAttribs (unsigned int contextID) const |
PerContextProgram * | getPCP (unsigned int contextID) const |
Static Public Member Functions |
void | deleteGlProgram (unsigned int contextID, GLuint program) |
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 |
std::string | _name |
osg::buffered_value< osg::ref_ptr<
PerContextProgram > > | _pcpList |
AttribBindingList | _attribBindingList |
ShaderList | _shaderList |
Friends |
class | PerContextProgram |