osg::Array Class Reference

Inheritance diagram for osg::Array:

osg::Object osg::Referenced osg::IndexArray osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType > osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType > List of all members.

Public Types

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 &copyop=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

Member Enumeration Documentation

enum osg::Array::Type
 

Enumerator:
ArrayType 
ByteArrayType 
ShortArrayType 
IntArrayType 
UByteArrayType 
UShortArrayType 
UIntArrayType 
Vec4ubArrayType 
FloatArrayType 
Vec2ArrayType 
Vec3ArrayType 
Vec4ArrayType 
Vec2sArrayType 
Vec3sArrayType 
Vec4sArrayType 
Vec2bArrayType 
Vec3bArrayType 
Vec4bArrayType 


Constructor & Destructor Documentation

osg::Array::Array Type  arrayType = ArrayType,
GLint  dataSize = 0,
GLenum  dataType = 0
[inline]
 

osg::Array::Array const Array array,
const CopyOp copyop = CopyOp::SHALLOW_COPY
[inline]
 

virtual osg::Array::~Array  )  [inline, protected, virtual]
 


Member Function Documentation

virtual void osg::Array::accept unsigned int  index,
ConstValueVisitor
const [pure virtual]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

virtual void osg::Array::accept unsigned int  index,
ValueVisitor
[pure virtual]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

virtual void osg::Array::accept ConstArrayVisitor  )  const [pure virtual]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

virtual void osg::Array::accept ArrayVisitor  )  [pure virtual]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

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]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

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]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

virtual unsigned int osg::Array::getTotalDataSize  )  const [pure virtual]
 

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, and osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >.

Type osg::Array::getType  )  const [inline]
 

virtual bool osg::Array::isSameKindAs const Object obj  )  const [inline, virtual]
 

Reimplemented from osg::Object.

Reimplemented in osg::IndexArray.

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 >.


Member Data Documentation

Type osg::Array::_arrayType [protected]
 

GLint osg::Array::_dataSize [protected]
 

GLenum osg::Array::_dataType [protected]
 

unsigned int osg::Array::_modifiedCount [protected]
 


The documentation for this class was generated from the following file:
Generated on Fri Oct 13 17:03:05 2006 for openscenegraph by  doxygen 1.4.6