gk::GL2ShaderProgram Class Reference

shader program openGL2, compose de :

More...

#include <TPShaderProgram.h>

Inheritance diagram for gk::GL2ShaderProgram:
gk::GLShaderProgram gk::GLResource

List of all members.

Public Member Functions

 GL2ShaderProgram (const TextFile *vertex, const TextFile *fragment)
 GL2ShaderProgram (const std::string &vertex_filename, const std::string &fragment_filename)
int attachShader (GLShaderObject *shader)
 ajoute un shader object au shader program.
int link ()
 (re-)linke le shader program.
int validate ()
 valide la configuration du shader program.
int createGLResource ()
 construit le shader program. creation de l'objet openGL.
int releaseGLResource ()
 detruit l'objet openGL.
GLint name () const
 renvoie l'identifiant opengl de la ressource.
int uniformCount () const
 renvoie le nombre d'uniforms.
ProgramUniform uniform (const char *name) const
 renvoie l'identifiant d'un uniform du shader program.
int samplerCount () const
 renvoie le nombre de samplers.
ProgramSampler sampler (const char *name) const
 renvoie l'identifiant d'un sampler du shader program.
int attributeCount () const
 renvoie le nombre d'attributs.
ProgramAttribute attribute (const char *name) const
 renvoie l'identifiant d'un attribut du shader program.
int drawbufferCount () const
 renvoie le nombre de drawbuffer (varying out du fragment shader).
ProgramDrawbuffer drawbuffer (const char *name) const
 renvoie le draw buffer d'un varying du fragment shader.
int feedbackCount () const
 renvoie le nombre de feedbacks
ProgramFeedback feedback (const char *name) const
 renvoie l'identifiant du buffer d'un varying utilise par le transform feedback.

Static Public Member Functions

static bool is_sampler (const GLenum type)
static bool is_integer (const GLenum type)

Protected Member Functions

int make ()
 construit le shader program.

Protected Attributes

std::vector< GLShaderObject * > m_shaders
std::vector< parameter > m_feedbacks
std::vector< parameter > m_attributes
std::vector< parameter > m_samplers
GLuint m_name
int m_attribute_count
int m_uniform_count
int m_sampler_count
int m_feedback_count
bool m_is_linked
bool m_is_validated

Detailed Description

shader program openGL2, compose de :


Member Function Documentation

int gk::GLShaderProgram::link (  )  [inherited]

(re-)linke le shader program.

Todo:
definir attribute, varyings et samplers avant la compilation (re-)linke le shader program.

Todo:
calculer le buffer layout des feedbacks

References gk::GLShaderProgram::name().

Referenced by gk::GLShaderProgram::make().

int gk::GLShaderProgram::drawbufferCount (  )  const [inline, inherited]

renvoie le nombre de drawbuffer (varying out du fragment shader).

Todo:


The documentation for this class was generated from the following file:
 All Classes Namespaces Functions Variables Typedefs Friends
Generated on Thu Sep 22 16:34:00 2011 for gKitGL by  doxygen 1.6.3