17#ifndef OSG_BUFFERINDEXBINDING
18#define OSG_BUFFERINDEXBINDING 1
25#ifndef GL_TRANSFORM_FEEDBACK_BUFFER
26 #define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
50 virtual unsigned getMember()
const {
return static_cast<unsigned int>(_index); }
57 if (_bufferData.valid())
59 _bufferData->removeClient(
this);
62 _bufferData=bufferdata;
64 if (_bufferData.valid())
66 if(!_bufferData->getBufferObject())
69 _size=_bufferData->getTotalDataSize();
79 inline GLuint
getIndex()
const {
return _index; }
#define COMPARE_StateAttribute_Parameter(parameter)
Definition StateAttribute:69
#define COMPARE_StateAttribute_Types(TYPE, rhs_attribute)
Definition StateAttribute:57
Definition BufferIndexBinding:163
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)
AtomicCounterBufferBinding(GLuint index=0)
virtual int compare(const StateAttribute &bb) const
Definition BufferIndexBinding:178
META_StateAttribute(osg, AtomicCounterBufferBinding, ATOMICCOUNTERBUFFERBINDING)
Definition BufferObject:495
void setBufferObject(BufferObject *bufferObject)
Definition BufferIndexBinding:41
void setTarget(GLenum t)
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)
GLintptr getOffset() const
Definition BufferIndexBinding:91
const BufferData * getBufferData() const
Definition BufferIndexBinding:74
void setOffset(GLintptr offset)
Definition BufferIndexBinding:90
GLuint getIndex() const
Definition BufferIndexBinding:79
ref_ptr< BufferData > _bufferData
Definition BufferIndexBinding:103
virtual void apply(State &state) const
virtual unsigned getMember() const
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)
Definition BufferIndexBinding:95
virtual ~BufferIndexBinding()
GLsizeiptr _size
Definition BufferIndexBinding:106
Definition BufferIndexBinding:191
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)
virtual int compare(const StateAttribute &bb) const
Definition BufferIndexBinding:204
Definition StateAttribute:77
Definition BufferObject:599
author: Julien Valentin 2017 (mp3butcher@hotmail.com)
Definition AlphaFunc:19
ptrdiff_t GLintptr
Definition GLDefines:692
ptrdiff_t GLsizeiptr
Definition GLDefines:691
#define OSG_EXPORT
Definition osg/Export:39