Inheritance diagram for osg::Array:
Public Types | |
ArrayType = 0 | |
ByteArrayType = 1 | |
ShortArrayType = 2 | |
IntArrayType = 3 | |
UByteArrayType = 4 | |
UShortArrayType = 5 | |
UIntArrayType = 6 | |
Vec4ubArrayType = 7 | |
FloatArrayType = 8 | |
Vec2ArrayType = 9 | |
Vec3ArrayType = 10 | |
Vec4ArrayType = 11 | |
Vec2sArrayType = 12 | |
Vec3sArrayType = 13 | |
Vec4sArrayType = 14 | |
Vec2bArrayType = 15 | |
Vec3bArrayType = 16 | |
Vec4bArrayType = 17 | |
enum | Type { ArrayType = 0, ByteArrayType = 1, ShortArrayType = 2, IntArrayType = 3, UByteArrayType = 4, UShortArrayType = 5, UIntArrayType = 6, Vec4ubArrayType = 7, FloatArrayType = 8, Vec2ArrayType = 9, Vec3ArrayType = 10, Vec4ArrayType = 11, Vec2sArrayType = 12, Vec3sArrayType = 13, Vec4sArrayType = 14, Vec2bArrayType = 15, Vec3bArrayType = 16, Vec4bArrayType = 17 } |
Public Member Functions | |
Array (Type arrayType=ArrayType, GLint dataSize=0, GLenum dataType=0) | |
Array (const Array &array, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
virtual bool | isSameKindAs (const Object *obj) const |
virtual const char * | libraryName () const |
virtual const char * | className () const |
virtual void | accept (ArrayVisitor &)=0 |
virtual void | accept (ConstArrayVisitor &) const =0 |
virtual void | accept (unsigned int index, ValueVisitor &)=0 |
virtual void | accept (unsigned int index, ConstValueVisitor &) const =0 |
virtual int | compare (unsigned int lhs, unsigned int rhs) const =0 |
Type | getType () const |
GLint | getDataSize () const |
GLenum | getDataType () const |
virtual const GLvoid * | getDataPointer () const =0 |
virtual unsigned int | getTotalDataSize () const =0 |
virtual unsigned int | getNumElements () const =0 |
virtual void | trim () |
void | dirty () |
void | setModifiedCount (unsigned int value) |
unsigned int | getModifiedCount () const |
Protected Member Functions | |
virtual | ~Array () |
Protected Attributes | |
Type | _arrayType |
GLint | _dataSize |
GLenum | _dataType |
unsigned int | _modifiedCount |
enum osg::Array::Type |
osg::Array::Array | ( | Type | arrayType = ArrayType , |
|
GLint | dataSize = 0 , |
|||
GLenum | dataType = 0 | |||
) | [inline] |
virtual osg::Array::~Array | ( | ) | [inline, protected, virtual] |
virtual void osg::Array::accept | ( | unsigned int | index, | |
ConstValueVisitor & | ||||
) | const [pure virtual] |
virtual void osg::Array::accept | ( | unsigned int | index, | |
ValueVisitor & | ||||
) | [pure virtual] |
virtual void osg::Array::accept | ( | ConstArrayVisitor & | ) | const [pure virtual] |
virtual void osg::Array::accept | ( | ArrayVisitor & | ) | [pure virtual] |
virtual const char* osg::Array::className | ( | ) | const [virtual] |
return the name of the object's class type. Must be defined by derived classes.
Implements osg::Object.
virtual int osg::Array::compare | ( | unsigned int | lhs, | |
unsigned int | rhs | |||
) | const [pure virtual] |
Return -1 if lhs element is less than rhs element, 0 if equal, 1 if lhs element is greater than rhs element.
Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.
void osg::Array::dirty | ( | ) | [inline] |
Dirty the primitive, which increments the modified count, to force buffer objects to update.
virtual const GLvoid* osg::Array::getDataPointer | ( | ) | const [pure virtual] |
GLint osg::Array::getDataSize | ( | ) | const [inline] |
GLenum osg::Array::getDataType | ( | ) | const [inline] |
unsigned int osg::Array::getModifiedCount | ( | ) | const [inline] |
Get modified count value.
virtual unsigned int osg::Array::getNumElements | ( | ) | const [pure virtual] |
virtual unsigned int osg::Array::getTotalDataSize | ( | ) | const [pure virtual] |
Type osg::Array::getType | ( | ) | const [inline] |
virtual bool osg::Array::isSameKindAs | ( | const Object * | obj | ) | const [inline, virtual] |
virtual const char* osg::Array::libraryName | ( | ) | const [inline, virtual] |
return the name of the object's library. Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.
Implements osg::Object.
void osg::Array::setModifiedCount | ( | unsigned int | value | ) | [inline] |
Set the modified count value.
virtual void osg::Array::trim | ( | ) | [inline, virtual] |
Frees unused space on this vector - i.e. the difference between size() and max_size() of the underlying vector.
Reimplemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.
Type osg::Array::_arrayType [protected] |
GLint osg::Array::_dataSize [protected] |
GLenum osg::Array::_dataType [protected] |
unsigned int osg::Array::_modifiedCount [protected] |