17#ifndef OSG_BUFFERINDEXBINDING
18#define OSG_BUFFERINDEXBINDING 1
25#ifndef GL_TRANSFORM_FEEDBACK_BUFFER
26 #define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
#define COMPARE_StateAttribute_Parameter(parameter)
COMPARE_StateAttribute_Parameter macro is a helper for implementing the StatateAtribute::compare(....
Definition StateAttribute:69
#define COMPARE_StateAttribute_Types(TYPE, rhs_attribute)
COMPARE_StateAttribute_Types macro is a helper for implementing the StateAtribute::compare(....
Definition StateAttribute:57
The core osg library provides the basic scene graph classes such as Nodes, State and Drawables,...
Definition AlphaFunc:19
TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT > UIntArray
Definition Array:419
ptrdiff_t GLintptr
Definition GLDefines:692
ptrdiff_t GLsizeiptr
Definition GLDefines:691
void setTarget(GLenum t)
enable arbitrary BufferBinding (user is responsible for _target mismatch with bufferdata what can be ...
Definition BufferIndexBinding:54
BufferData * getBufferData()
Definition BufferIndexBinding:75
GLenum _target
Definition BufferIndexBinding:102
GLenum getTarget() const
Definition BufferIndexBinding:51
GLsizeiptr getSize() const
Definition BufferIndexBinding:96
void setIndex(GLuint index)
Set the index target.
GLintptr getOffset() const
Definition BufferIndexBinding:91
const BufferData * getBufferData() const
Get the buffer data to be bound.
Definition BufferIndexBinding:74
void setOffset(GLintptr offset)
Set the starting offset into the buffer data for the indexed target.
Definition BufferIndexBinding:90
GLuint getIndex() const
Get the index target.
Definition BufferIndexBinding:79
ref_ptr< BufferData > _bufferData
Definition BufferIndexBinding:103
virtual void apply(State &state) const
apply the OpenGL state attributes.
virtual unsigned getMember() const
Return the member identifier within the attribute's class type.
Definition BufferIndexBinding:50
BufferIndexBinding(GLenum target, GLuint index)
GLuint _index
Definition BufferIndexBinding:104
GLintptr _offset
Definition BufferIndexBinding:105
void setBufferData(BufferData *bufferdata)
Definition BufferIndexBinding:56
BufferIndexBinding(GLenum target, GLuint index, BufferData *bd, GLintptr offset=0, GLsizeiptr size=0)
BufferIndexBinding(const BufferIndexBinding &rhs, const CopyOp ©op=CopyOp::SHALLOW_COPY)
void setSize(GLsizeiptr size)
Set the size override of bufferdata binded for the indexed target.
Definition BufferIndexBinding:95
virtual ~BufferIndexBinding()
GLsizeiptr _size
Definition BufferIndexBinding:106
virtual int compare(const StateAttribute &bb) const
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
Definition BufferIndexBinding:126
META_StateAttribute(osg, UniformBufferBinding, UNIFORMBUFFERBINDING)
UniformBufferBinding(const UniformBufferBinding &rhs, const CopyOp ©op=CopyOp::SHALLOW_COPY)
UniformBufferBinding(GLuint index)
UniformBufferBinding(GLuint index, BufferData *bd, GLintptr offset=0, GLsizeiptr size=0)
Create a binding for a uniform buffer index target.
TransformFeedbackBufferBinding(const TransformFeedbackBufferBinding &rhs, const CopyOp ©op=CopyOp::SHALLOW_COPY)
virtual int compare(const StateAttribute &bb) const
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
Definition BufferIndexBinding:148
META_StateAttribute(osg, TransformFeedbackBufferBinding, TRANSFORMFEEDBACKBUFFERBINDING)
TransformFeedbackBufferBinding(GLuint index, BufferData *bd, GLintptr offset=0, GLsizeiptr size=0)
TransformFeedbackBufferBinding(GLuint index=0)
void readData(osg::State &state, osg::UIntArray &uintArray) const
AtomicCounterBufferBinding(const AtomicCounterBufferBinding &rhs, const CopyOp ©op=CopyOp::SHALLOW_COPY)
AtomicCounterBufferBinding(GLuint index, BufferData *bd, GLintptr offset=0, GLsizeiptr size=0)
Create a binding for a atomic counter buffer index target.
AtomicCounterBufferBinding(GLuint index=0)
virtual int compare(const StateAttribute &bb) const
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
Definition BufferIndexBinding:178
META_StateAttribute(osg, AtomicCounterBufferBinding, ATOMICCOUNTERBUFFERBINDING)
ShaderStorageBufferBinding(GLuint index=0)
META_StateAttribute(osg, ShaderStorageBufferBinding, SHADERSTORAGEBUFFERBINDING)
ShaderStorageBufferBinding(const ShaderStorageBufferBinding &rhs, const CopyOp ©op=CopyOp::SHALLOW_COPY)
ShaderStorageBufferBinding(GLuint index, BufferData *bd, GLintptr offset=0, GLsizeiptr size=0)
Create a binding for a shader storage buffer index target.
virtual int compare(const StateAttribute &bb) const
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
Definition BufferIndexBinding:204
Definition BufferObject:495
Definition BufferObject:599
Copy Op(erator) used to control whether shallow or deep copy is used during copy construction and clo...
Definition CopyOp:41
@ SHALLOW_COPY
Definition CopyOp:47
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
Encapsulates the current applied OpenGL modes, attributes and vertex arrays settings,...
Definition State:80
Base class for state attributes.
Definition StateAttribute:77
@ ATOMICCOUNTERBUFFERBINDING
Definition StateAttribute:195
@ SHADERSTORAGEBUFFERBINDING
Definition StateAttribute:203
@ UNIFORMBUFFERBINDING
Definition StateAttribute:192
@ TRANSFORMFEEDBACKBUFFERBINDING
Definition StateAttribute:193
#define OSG_EXPORT
Definition Export:39