![]() |
globjects
2.0.0.630135941c42
Strict OpenGL objects wrapper.
|
#include <globjects/include/globjects/VertexArray.h>
Classes | |
| struct | MultiDrawArraysRange |
| struct | MultiDrawElementsBaseVertexRange |
| struct | MultiDrawElementsRange |
Public Types | |
| enum class | AttributeImplementation { Legacy , VertexAttribBindingARB , DirectStateAccessARB } |
Public Types inherited from globjects::Object | |
| enum class | NameImplementation { Legacy , DebugKHR } |
Public Member Functions | |
| VertexArray () | |
| virtual | ~VertexArray () |
| void | bind () const |
| VertexAttributeBinding * | binding (gl::GLuint bindingIndex) |
| const VertexAttributeBinding * | binding (gl::GLuint bindingIndex) const |
| void | bindElementBuffer (const Buffer *buffer) |
| void | enable (gl::GLint attributeIndex) |
| void | disable (gl::GLint attributeIndex) |
| std::vector< VertexAttributeBinding * > | bindings () |
| std::vector< const VertexAttributeBinding * > | bindings () const |
| void | drawArrays (gl::GLenum mode, gl::GLint first, gl::GLsizei count) const |
| void | drawArraysInstanced (gl::GLenum mode, gl::GLint first, gl::GLsizei count, gl::GLsizei instanceCount) const |
| void | drawArraysInstancedBaseInstance (gl::GLenum mode, gl::GLint first, gl::GLsizei count, gl::GLsizei instanceCount, gl::GLuint baseInstance) const |
| void | drawArraysIndirect (gl::GLenum mode, const void *indirect=nullptr) const |
| void | multiDrawArrays (gl::GLenum mode, gl::GLint *first, const gl::GLsizei *count, gl::GLsizei drawCount) const |
| void | multiDrawArraysIndirect (gl::GLenum mode, const void *indirect, gl::GLsizei drawCount, gl::GLsizei stride) const |
| void | drawElements (gl::GLenum mode, gl::GLsizei count, gl::GLenum type, const void *indices=nullptr) const |
| void | drawElementsBaseVertex (gl::GLenum mode, gl::GLsizei count, gl::GLenum type, const void *indices, gl::GLint baseVertex) const |
| void | drawElementsInstanced (gl::GLenum mode, gl::GLsizei count, gl::GLenum type, const void *indices, gl::GLsizei primitiveCount) const |
| void | drawElementsInstancedBaseInstance (gl::GLenum mode, gl::GLsizei count, gl::GLenum type, const void *indices, gl::GLsizei instanceCount, gl::GLuint baseInstance) const |
| void | drawElementsInstancedBaseVertex (gl::GLenum mode, gl::GLsizei count, gl::GLenum type, const void *indices, gl::GLsizei instanceCount, gl::GLint baseVertex) const |
| void | drawElementsInstancedBaseVertexBaseInstance (gl::GLenum mode, gl::GLsizei count, gl::GLenum type, const void *indices, gl::GLsizei instanceCount, gl::GLint baseVertex, gl::GLuint baseInstance) const |
| void | multiDrawElements (gl::GLenum mode, const gl::GLsizei *count, gl::GLenum type, const void **indices, gl::GLsizei drawCount) const |
| void | multiDrawElementsBaseVertex (gl::GLenum mode, const gl::GLsizei *count, gl::GLenum type, const void **indices, gl::GLsizei drawCount, gl::GLint *baseVertex) const |
| void | multiDrawElementsIndirect (gl::GLenum mode, gl::GLenum type, const void *indirect, gl::GLsizei drawCount, gl::GLsizei stride) const |
| void | drawRangeElements (gl::GLenum mode, gl::GLuint start, gl::GLuint end, gl::GLsizei count, gl::GLenum type, const void *indices=nullptr) const |
| void | drawRangeElementsBaseVertex (gl::GLenum mode, gl::GLuint start, gl::GLuint end, gl::GLsizei count, gl::GLenum type, const void *indices, gl::GLint baseVertex) const |
| void | multiDrawArrays (gl::GLenum mode, const std::vector< MultiDrawArraysRange > &ranges) const |
| void | multiDrawElements (gl::GLenum mode, gl::GLenum type, const std::vector< MultiDrawElementsRange > &ranges) const |
| void | multiDrawElementsBaseVertex (gl::GLenum mode, gl::GLenum type, const std::vector< MultiDrawElementsBaseVertexRange > &ranges) const |
| virtual gl::GLenum | objectType () const override |
Public Member Functions inherited from globjects::Object | |
| gl::GLuint | id () const |
| std::string | name () const |
| void | setName (const std::string &name) |
| bool | hasName () const |
| bool | isDefault () const |
| void | detach () |
Static Public Member Functions | |
| static void | hintAttributeImplementation (AttributeImplementation impl) |
| static std::unique_ptr< VertexArray > | fromId (gl::GLuint id) |
| static std::unique_ptr< VertexArray > | defaultVAO () |
| static void | unbind () |
Static Public Member Functions inherited from globjects::Object | |
| static void | hintNameImplementation (NameImplementation impl) |
Static Public Member Functions inherited from globjects::Instantiator< VertexArray > | |
| static std::unique_ptr< VertexArray > | create (Args &&... args) |
| static std::unique_ptr< VertexArray > | fromId (gl::GLuint id, Args &&... args) |
Protected Member Functions | |
| VertexArray (std::unique_ptr< IDResource > &&resource) | |
Protected Member Functions inherited from globjects::Object | |
| Object (std::unique_ptr< IDResource > &&resource) | |
| virtual | ~Object () |
Protected Attributes | |
| std::map< gl::GLuint, std::unique_ptr< VertexAttributeBinding > > | m_bindings |
Protected Attributes inherited from globjects::Object | |
| std::unique_ptr< IDResource > | m_resource |
| void * | m_objectLabelState |
|
strong |
| globjects::VertexArray::VertexArray | ( | ) |
|
virtual |
|
protected |
|
static |
|
static |
|
static |
| void globjects::VertexArray::bind | ( | ) | const |
|
static |
| VertexAttributeBinding * globjects::VertexArray::binding | ( | gl::GLuint | bindingIndex | ) |
| const VertexAttributeBinding * globjects::VertexArray::binding | ( | gl::GLuint | bindingIndex | ) | const |
| void globjects::VertexArray::bindElementBuffer | ( | const Buffer * | buffer | ) |
| void globjects::VertexArray::enable | ( | gl::GLint | attributeIndex | ) |
| void globjects::VertexArray::disable | ( | gl::GLint | attributeIndex | ) |
| std::vector< VertexAttributeBinding * > globjects::VertexArray::bindings | ( | ) |
| std::vector< const VertexAttributeBinding * > globjects::VertexArray::bindings | ( | ) | const |
| void globjects::VertexArray::drawArrays | ( | gl::GLenum | mode, |
| gl::GLint | first, | ||
| gl::GLsizei | count ) const |
| void globjects::VertexArray::drawArraysInstanced | ( | gl::GLenum | mode, |
| gl::GLint | first, | ||
| gl::GLsizei | count, | ||
| gl::GLsizei | instanceCount ) const |
| void globjects::VertexArray::drawArraysInstancedBaseInstance | ( | gl::GLenum | mode, |
| gl::GLint | first, | ||
| gl::GLsizei | count, | ||
| gl::GLsizei | instanceCount, | ||
| gl::GLuint | baseInstance ) const |
| void globjects::VertexArray::drawArraysIndirect | ( | gl::GLenum | mode, |
| const void * | indirect = nullptr ) const |
| void globjects::VertexArray::multiDrawArrays | ( | gl::GLenum | mode, |
| gl::GLint * | first, | ||
| const gl::GLsizei * | count, | ||
| gl::GLsizei | drawCount ) const |
| void globjects::VertexArray::multiDrawArraysIndirect | ( | gl::GLenum | mode, |
| const void * | indirect, | ||
| gl::GLsizei | drawCount, | ||
| gl::GLsizei | stride ) const |
| void globjects::VertexArray::drawElements | ( | gl::GLenum | mode, |
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices = nullptr ) const |
| void globjects::VertexArray::drawElementsBaseVertex | ( | gl::GLenum | mode, |
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices, | ||
| gl::GLint | baseVertex ) const |
| void globjects::VertexArray::drawElementsInstanced | ( | gl::GLenum | mode, |
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices, | ||
| gl::GLsizei | primitiveCount ) const |
| void globjects::VertexArray::drawElementsInstancedBaseInstance | ( | gl::GLenum | mode, |
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices, | ||
| gl::GLsizei | instanceCount, | ||
| gl::GLuint | baseInstance ) const |
| void globjects::VertexArray::drawElementsInstancedBaseVertex | ( | gl::GLenum | mode, |
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices, | ||
| gl::GLsizei | instanceCount, | ||
| gl::GLint | baseVertex ) const |
| void globjects::VertexArray::drawElementsInstancedBaseVertexBaseInstance | ( | gl::GLenum | mode, |
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices, | ||
| gl::GLsizei | instanceCount, | ||
| gl::GLint | baseVertex, | ||
| gl::GLuint | baseInstance ) const |
| void globjects::VertexArray::multiDrawElements | ( | gl::GLenum | mode, |
| const gl::GLsizei * | count, | ||
| gl::GLenum | type, | ||
| const void ** | indices, | ||
| gl::GLsizei | drawCount ) const |
| void globjects::VertexArray::multiDrawElementsBaseVertex | ( | gl::GLenum | mode, |
| const gl::GLsizei * | count, | ||
| gl::GLenum | type, | ||
| const void ** | indices, | ||
| gl::GLsizei | drawCount, | ||
| gl::GLint * | baseVertex ) const |
| void globjects::VertexArray::multiDrawElementsIndirect | ( | gl::GLenum | mode, |
| gl::GLenum | type, | ||
| const void * | indirect, | ||
| gl::GLsizei | drawCount, | ||
| gl::GLsizei | stride ) const |
| void globjects::VertexArray::drawRangeElements | ( | gl::GLenum | mode, |
| gl::GLuint | start, | ||
| gl::GLuint | end, | ||
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices = nullptr ) const |
| void globjects::VertexArray::drawRangeElementsBaseVertex | ( | gl::GLenum | mode, |
| gl::GLuint | start, | ||
| gl::GLuint | end, | ||
| gl::GLsizei | count, | ||
| gl::GLenum | type, | ||
| const void * | indices, | ||
| gl::GLint | baseVertex ) const |
| void globjects::VertexArray::multiDrawArrays | ( | gl::GLenum | mode, |
| const std::vector< MultiDrawArraysRange > & | ranges ) const |
| void globjects::VertexArray::multiDrawElements | ( | gl::GLenum | mode, |
| gl::GLenum | type, | ||
| const std::vector< MultiDrawElementsRange > & | ranges ) const |
| void globjects::VertexArray::multiDrawElementsBaseVertex | ( | gl::GLenum | mode, |
| gl::GLenum | type, | ||
| const std::vector< MultiDrawElementsBaseVertexRange > & | ranges ) const |
|
overridevirtual |
Implements globjects::Object.
|
protected |
1.10.0