webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Member Functions | Static Public Member Functions | List of all members
gl::Program Class Referencefinal

#include <Program.h>

Inheritance diagram for gl::Program:
angle::NonCopyable gl::LabeledObject

Public Member Functions

 Program (rx::GLImplFactory *factory, ResourceManager *manager, GLuint handle)
 
 ~Program ()
 
GLuint id () const
 
void setLabel (const std::string &label) override
 
const std::stringgetLabel () const override
 
rx::ProgramImplgetImplementation () const
 
void attachShader (Shader *shader)
 
bool detachShader (Shader *shader)
 
int getAttachedShadersCount () const
 
const ShadergetAttachedVertexShader () const
 
const ShadergetAttachedFragmentShader () const
 
const ShadergetAttachedComputeShader () const
 
void bindAttributeLocation (GLuint index, const char *name)
 
void bindUniformLocation (GLuint index, const char *name)
 
BindingInfo getFragmentInputBindingInfo (GLint index) const
 
void bindFragmentInputLocation (GLint index, const char *name)
 
void pathFragmentInputGen (GLint index, GLenum genMode, GLint components, const GLfloat *coeffs)
 
Error link (const ContextState &data)
 
bool isLinked () const
 
Error loadBinary (GLenum binaryFormat, const void *binary, GLsizei length)
 
Error saveBinary (GLenum *binaryFormat, void *binary, GLsizei bufSize, GLsizei *length) const
 
GLint getBinaryLength () const
 
void setBinaryRetrievableHint (bool retrievable)
 
bool getBinaryRetrievableHint () const
 
int getInfoLogLength () const
 
void getInfoLog (GLsizei bufSize, GLsizei *length, char *infoLog) const
 
void getAttachedShaders (GLsizei maxCount, GLsizei *count, GLuint *shaders) const
 
GLuint getAttributeLocation (const std::string &name) const
 
bool isAttribLocationActive (size_t attribLocation) const
 
void getActiveAttribute (GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
 
GLint getActiveAttributeCount () const
 
GLint getActiveAttributeMaxLength () const
 
const std::vector< sh::Attribute > & getAttributes () const
 
GLint getFragDataLocation (const std::string &name) const
 
void getActiveUniform (GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, GLchar *name) const
 
GLint getActiveUniformCount () const
 
GLint getActiveUniformMaxLength () const
 
GLint getActiveUniformi (GLuint index, GLenum pname) const
 
bool isValidUniformLocation (GLint location) const
 
bool isIgnoredUniformLocation (GLint location) const
 
const LinkedUniformgetUniformByLocation (GLint location) const
 
GLint getUniformLocation (const std::string &name) const
 
GLuint getUniformIndex (const std::string &name) const
 
void setUniform1fv (GLint location, GLsizei count, const GLfloat *v)
 
void setUniform2fv (GLint location, GLsizei count, const GLfloat *v)
 
void setUniform3fv (GLint location, GLsizei count, const GLfloat *v)
 
void setUniform4fv (GLint location, GLsizei count, const GLfloat *v)
 
void setUniform1iv (GLint location, GLsizei count, const GLint *v)
 
void setUniform2iv (GLint location, GLsizei count, const GLint *v)
 
void setUniform3iv (GLint location, GLsizei count, const GLint *v)
 
void setUniform4iv (GLint location, GLsizei count, const GLint *v)
 
void setUniform1uiv (GLint location, GLsizei count, const GLuint *v)
 
void setUniform2uiv (GLint location, GLsizei count, const GLuint *v)
 
void setUniform3uiv (GLint location, GLsizei count, const GLuint *v)
 
void setUniform4uiv (GLint location, GLsizei count, const GLuint *v)
 
void setUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void setUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
 
void getUniformfv (GLint location, GLfloat *params) const
 
void getUniformiv (GLint location, GLint *params) const
 
void getUniformuiv (GLint location, GLuint *params) const
 
void getActiveUniformBlockName (GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName) const
 
GLuint getActiveUniformBlockCount () const
 
GLint getActiveUniformBlockMaxLength () const
 
GLuint getUniformBlockIndex (const std::string &name) const
 
void bindUniformBlock (GLuint uniformBlockIndex, GLuint uniformBlockBinding)
 
GLuint getUniformBlockBinding (GLuint uniformBlockIndex) const
 
const UniformBlockgetUniformBlockByIndex (GLuint index) const
 
void setTransformFeedbackVaryings (GLsizei count, const GLchar *const *varyings, GLenum bufferMode)
 
void getTransformFeedbackVarying (GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) const
 
GLsizei getTransformFeedbackVaryingCount () const
 
GLsizei getTransformFeedbackVaryingMaxLength () const
 
GLenum getTransformFeedbackBufferMode () const
 
void addRef ()
 
void release ()
 
unsigned int getRefCount () const
 
void flagForDeletion ()
 
bool isFlaggedForDeletion () const
 
void validate (const Caps &caps)
 
bool validateSamplers (InfoLog *infoLog, const Caps &caps)
 
bool isValidated () const
 
const AttributesMaskgetActiveAttribLocationsMask () const
 
- Public Member Functions inherited from gl::LabeledObject
virtual ~LabeledObject ()
 

Static Public Member Functions

static bool linkValidateUniforms (InfoLog &infoLog, const std::string &uniformName, const sh::Uniform &vertexUniform, const sh::Uniform &fragmentUniform)
 
static bool linkValidateInterfaceBlockFields (InfoLog &infoLog, const std::string &uniformName, const sh::InterfaceBlockField &vertexUniform, const sh::InterfaceBlockField &fragmentUniform)
 

Constructor & Destructor Documentation

◆ Program()

gl::Program::Program ( rx::GLImplFactory factory,
ResourceManager manager,
GLuint  handle 
)

◆ ~Program()

gl::Program::~Program ( )

Member Function Documentation

◆ addRef()

void gl::Program::addRef ( void  )

◆ attachShader()

void gl::Program::attachShader ( Shader shader)

◆ bindAttributeLocation()

void gl::Program::bindAttributeLocation ( GLuint  index,
const char *  name 
)

◆ bindFragmentInputLocation()

void gl::Program::bindFragmentInputLocation ( GLint  index,
const char *  name 
)

◆ bindUniformBlock()

void gl::Program::bindUniformBlock ( GLuint  uniformBlockIndex,
GLuint  uniformBlockBinding 
)

◆ bindUniformLocation()

void gl::Program::bindUniformLocation ( GLuint  index,
const char *  name 
)

◆ detachShader()

bool gl::Program::detachShader ( Shader shader)

◆ flagForDeletion()

void gl::Program::flagForDeletion ( )

◆ getActiveAttribLocationsMask()

const AttributesMask& gl::Program::getActiveAttribLocationsMask ( ) const
inline

◆ getActiveAttribute()

void gl::Program::getActiveAttribute ( GLuint  index,
GLsizei  bufsize,
GLsizei length,
GLint size,
GLenum type,
GLchar name 
)

◆ getActiveAttributeCount()

GLint gl::Program::getActiveAttributeCount ( ) const

◆ getActiveAttributeMaxLength()

GLint gl::Program::getActiveAttributeMaxLength ( ) const

◆ getActiveUniform()

void gl::Program::getActiveUniform ( GLuint  index,
GLsizei  bufsize,
GLsizei length,
GLint size,
GLenum type,
GLchar name 
) const

◆ getActiveUniformBlockCount()

GLuint gl::Program::getActiveUniformBlockCount ( ) const

◆ getActiveUniformBlockMaxLength()

GLint gl::Program::getActiveUniformBlockMaxLength ( ) const

◆ getActiveUniformBlockName()

void gl::Program::getActiveUniformBlockName ( GLuint  uniformBlockIndex,
GLsizei  bufSize,
GLsizei length,
GLchar uniformBlockName 
) const

◆ getActiveUniformCount()

GLint gl::Program::getActiveUniformCount ( ) const

◆ getActiveUniformi()

GLint gl::Program::getActiveUniformi ( GLuint  index,
GLenum  pname 
) const

◆ getActiveUniformMaxLength()

GLint gl::Program::getActiveUniformMaxLength ( ) const

◆ getAttachedComputeShader()

const Shader* gl::Program::getAttachedComputeShader ( ) const
inline

◆ getAttachedFragmentShader()

const Shader* gl::Program::getAttachedFragmentShader ( ) const
inline

◆ getAttachedShaders()

void gl::Program::getAttachedShaders ( GLsizei  maxCount,
GLsizei count,
GLuint shaders 
) const

◆ getAttachedShadersCount()

int gl::Program::getAttachedShadersCount ( ) const

◆ getAttachedVertexShader()

const Shader* gl::Program::getAttachedVertexShader ( ) const
inline

◆ getAttributeLocation()

GLuint gl::Program::getAttributeLocation ( const std::string name) const

◆ getAttributes()

const std::vector<sh::Attribute>& gl::Program::getAttributes ( ) const
inline

◆ getBinaryLength()

GLint gl::Program::getBinaryLength ( ) const

◆ getBinaryRetrievableHint()

bool gl::Program::getBinaryRetrievableHint ( ) const

◆ getFragDataLocation()

GLint gl::Program::getFragDataLocation ( const std::string name) const

◆ getFragmentInputBindingInfo()

BindingInfo gl::Program::getFragmentInputBindingInfo ( GLint  index) const

◆ getImplementation()

rx::ProgramImpl* gl::Program::getImplementation ( ) const
inline

◆ getInfoLog()

void gl::Program::getInfoLog ( GLsizei  bufSize,
GLsizei length,
char *  infoLog 
) const

◆ getInfoLogLength()

int gl::Program::getInfoLogLength ( ) const

◆ getLabel()

const std::string & gl::Program::getLabel ( ) const
overridevirtual

Implements gl::LabeledObject.

◆ getRefCount()

unsigned int gl::Program::getRefCount ( ) const

◆ getTransformFeedbackBufferMode()

GLenum gl::Program::getTransformFeedbackBufferMode ( ) const

◆ getTransformFeedbackVarying()

void gl::Program::getTransformFeedbackVarying ( GLuint  index,
GLsizei  bufSize,
GLsizei length,
GLsizei size,
GLenum type,
GLchar name 
) const

◆ getTransformFeedbackVaryingCount()

GLsizei gl::Program::getTransformFeedbackVaryingCount ( ) const

◆ getTransformFeedbackVaryingMaxLength()

GLsizei gl::Program::getTransformFeedbackVaryingMaxLength ( ) const

◆ getUniformBlockBinding()

GLuint gl::Program::getUniformBlockBinding ( GLuint  uniformBlockIndex) const

◆ getUniformBlockByIndex()

const UniformBlock & gl::Program::getUniformBlockByIndex ( GLuint  index) const

◆ getUniformBlockIndex()

GLuint gl::Program::getUniformBlockIndex ( const std::string name) const

◆ getUniformByLocation()

const LinkedUniform & gl::Program::getUniformByLocation ( GLint  location) const

◆ getUniformfv()

void gl::Program::getUniformfv ( GLint  location,
GLfloat params 
) const

◆ getUniformIndex()

GLuint gl::Program::getUniformIndex ( const std::string name) const

◆ getUniformiv()

void gl::Program::getUniformiv ( GLint  location,
GLint params 
) const

◆ getUniformLocation()

GLint gl::Program::getUniformLocation ( const std::string name) const

◆ getUniformuiv()

void gl::Program::getUniformuiv ( GLint  location,
GLuint params 
) const

◆ id()

GLuint gl::Program::id ( ) const
inline

◆ isAttribLocationActive()

bool gl::Program::isAttribLocationActive ( size_t  attribLocation) const

◆ isFlaggedForDeletion()

bool gl::Program::isFlaggedForDeletion ( ) const

◆ isIgnoredUniformLocation()

bool gl::Program::isIgnoredUniformLocation ( GLint  location) const

◆ isLinked()

bool gl::Program::isLinked ( ) const

◆ isValidated()

bool gl::Program::isValidated ( ) const

◆ isValidUniformLocation()

bool gl::Program::isValidUniformLocation ( GLint  location) const

◆ link()

Error gl::Program::link ( const ContextState data)

◆ linkValidateInterfaceBlockFields()

bool gl::Program::linkValidateInterfaceBlockFields ( InfoLog infoLog,
const std::string uniformName,
const sh::InterfaceBlockField vertexUniform,
const sh::InterfaceBlockField fragmentUniform 
)
static

◆ linkValidateUniforms()

bool gl::Program::linkValidateUniforms ( InfoLog infoLog,
const std::string uniformName,
const sh::Uniform vertexUniform,
const sh::Uniform fragmentUniform 
)
static

◆ loadBinary()

Error gl::Program::loadBinary ( GLenum  binaryFormat,
const void binary,
GLsizei  length 
)

◆ pathFragmentInputGen()

void gl::Program::pathFragmentInputGen ( GLint  index,
GLenum  genMode,
GLint  components,
const GLfloat coeffs 
)

◆ release()

void gl::Program::release ( )

◆ saveBinary()

Error gl::Program::saveBinary ( GLenum binaryFormat,
void binary,
GLsizei  bufSize,
GLsizei length 
) const

◆ setBinaryRetrievableHint()

void gl::Program::setBinaryRetrievableHint ( bool  retrievable)

◆ setLabel()

void gl::Program::setLabel ( const std::string label)
overridevirtual

Implements gl::LabeledObject.

◆ setTransformFeedbackVaryings()

void gl::Program::setTransformFeedbackVaryings ( GLsizei  count,
const GLchar *const *  varyings,
GLenum  bufferMode 
)

◆ setUniform1fv()

void gl::Program::setUniform1fv ( GLint  location,
GLsizei  count,
const GLfloat v 
)

◆ setUniform1iv()

void gl::Program::setUniform1iv ( GLint  location,
GLsizei  count,
const GLint v 
)

◆ setUniform1uiv()

void gl::Program::setUniform1uiv ( GLint  location,
GLsizei  count,
const GLuint v 
)

◆ setUniform2fv()

void gl::Program::setUniform2fv ( GLint  location,
GLsizei  count,
const GLfloat v 
)

◆ setUniform2iv()

void gl::Program::setUniform2iv ( GLint  location,
GLsizei  count,
const GLint v 
)

◆ setUniform2uiv()

void gl::Program::setUniform2uiv ( GLint  location,
GLsizei  count,
const GLuint v 
)

◆ setUniform3fv()

void gl::Program::setUniform3fv ( GLint  location,
GLsizei  count,
const GLfloat v 
)

◆ setUniform3iv()

void gl::Program::setUniform3iv ( GLint  location,
GLsizei  count,
const GLint v 
)

◆ setUniform3uiv()

void gl::Program::setUniform3uiv ( GLint  location,
GLsizei  count,
const GLuint v 
)

◆ setUniform4fv()

void gl::Program::setUniform4fv ( GLint  location,
GLsizei  count,
const GLfloat v 
)

◆ setUniform4iv()

void gl::Program::setUniform4iv ( GLint  location,
GLsizei  count,
const GLint v 
)

◆ setUniform4uiv()

void gl::Program::setUniform4uiv ( GLint  location,
GLsizei  count,
const GLuint v 
)

◆ setUniformMatrix2fv()

void gl::Program::setUniformMatrix2fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix2x3fv()

void gl::Program::setUniformMatrix2x3fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix2x4fv()

void gl::Program::setUniformMatrix2x4fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix3fv()

void gl::Program::setUniformMatrix3fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix3x2fv()

void gl::Program::setUniformMatrix3x2fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix3x4fv()

void gl::Program::setUniformMatrix3x4fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix4fv()

void gl::Program::setUniformMatrix4fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix4x2fv()

void gl::Program::setUniformMatrix4x2fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ setUniformMatrix4x3fv()

void gl::Program::setUniformMatrix4x3fv ( GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat value 
)

◆ validate()

void gl::Program::validate ( const Caps caps)

◆ validateSamplers()

bool gl::Program::validateSamplers ( InfoLog infoLog,
const Caps caps 
)

The documentation for this class was generated from the following files: