Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

osg::Array Class Reference

Inheritance diagram for osg::Array:

Inheritance graph
[legend]
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
 return the name of the object's library.

virtual const char * className () const
 return the name of the object's class type.

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
 Return -1 if lhs element is less than rhs element, 0 if equal, 1 if lhs element is greater than rhs element.

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
void dirty ()
 Dirty the primitive, which increments the modified count, to force buffer objects to update.

void setModifiedCount (unsigned int value)
 Set the modified count value.

unsigned int getModifiedCount () const
 Get modified count value.


Protected Member Functions

virtual ~Array ()

Protected Attributes

Type _arrayType
GLint _dataSize
GLenum _dataType
unsigned int _modifiedCount

Member Enumeration Documentation

enum osg::Array::Type
 

Enumeration values:
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 >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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 >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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 >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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 >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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

Implemented in osg::TemplateArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateIndexArray< T, ARRAYTYPE, DataSize, DataType >, osg::TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT >, osg::TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT >, and osg::TemplateIndexArray< GLuint, Array::UIntArrayType, 1, GL_UNSIGNED_INT >.

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.


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 at Thu Nov 24 16:22:42 2005 for the OpenSceneGraph by doxygen 1.3.6.