27#include <Inventor/fields/SoSubField.h>
28#include <Inventor/fields/SoSFImage.h>
130 {
return ! ((*this) == f); }
140 { m_neverWrite = neverWrite ;}
146 {
return m_neverWrite ; }
199 static void initClass();
200 static void exitClass();
215 virtual void writeValue(
SoOutput *out)
const ;
225 static const int NO_DATA_FLAG;
228 template <
typename T>
void allocValues(
int numValues);
234 template <
typename T>
SbBool readAsciiValue(
SoInput* in,
size_t pos);
239 template <
typename T>
void writeAsciiValue(
SoOutput* out,
size_t pos)
const;
258 return m_values?m_values->
get():NULL;
Class encoding a data type.
DataType getType() const
Returns the type as an enum.
@ UNSIGNED_INT32
unsigned int (32bits)
@ UNSIGNED_BYTE
unsigned byte
@ SIGNED_SHORT
signed short
@ UNSIGNED_SHORT
unsigned short
@ SIGNED_INT32
signed int (32bits)
unsigned int getSize() const
Returns size in bytes of the type.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Abstract base cl...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Handle memory bu...
@ NO_COPY_AND_FREE
Passed buffer used, SoMemoryObject will free.
@ NO_COPY
Passed buffer used, user will delete.
@ NO_COPY_AND_DELETE
Passed buffer used, SoMemoryObject will delete.
@ COPY
Open Inventor will make a copy of the data.
void * get() const
Returns a pointer to the encapsulated buffer.
Used to write Open Inventor data files.
Abstract Field containing an array of values.
void finishEditing()
Indicates that batch edits have finished.
SbBool isNeverWrite()
Returns the "neverWrite" flag.
virtual int operator!=(const SoSFArray &f) const
Returns TRUE if all of the values of this field do not equal those of the given field f.
void * getValue() const
Returns a read-only pointer to the array's values.
virtual int operator==(const SoSFArray &f) const
Returns TRUE if all of the values of this field equal those of the given field f.
const SbVec3i32 & getSize() const
Returns the dimensions of the array.
CopyPolicy
SoSFArray may be manipulating some large amounts of memory.
@ NO_COPY_AND_DELETE
Passed buffer used, SoSFImage will delete.
@ COPY
Open Inventor will make a copy of the data (default)
@ NO_COPY
Passed buffer used , user will delete.
@ NO_COPY_AND_FREE
Passed buffer used, SoSFImage will free.
DataType
Supported data type enumeration values.
@ UNSIGNED_SHORT
UNSIGNED_SHORT.
@ UNSIGNED_INT32
UNSIGNED_INT32.
@ SIGNED_INT32
SIGNED_INT32.
@ UNSIGNED_BYTE
UNSIGNED_BYTE.
@ SIGNED_SHORT
SIGNED_SHORT.
@ SIGNED_BYTE
SIGNED_BYTE.
void setNeverWrite(SbBool neverWrite)
Sets the "neverWrite" flag.
virtual size_t getValueSize() const
Returns the size in bytes of one data value, e.g.
DataType getDataType() const
Returns the data type of the array.
void setValue(const SbVec3i32 &size, SoMemoryObject *memObj, CopyPolicy copy)
Fill the array with the specified dimensions and data from an SoMemoryObject using the specified copy...
void setValue(const SbVec3i32 &size, const SbDataType &dataType, const void *data, CopyPolicy copy=COPY)
Fill the array with data of the specified dimensions and type using the specified copy policy.
SbBool isEmpty() const
Returns TRUE if the current array is empty.
void * startEditing(SbVec3i32 &size, SbDataType &dataType)
Returns a pointer to the internally maintained array that can be modified.
const void * getValue(SbVec3i32 &size, SbDataType &dataType) const
Returns a read-only pointer to the array's values and its dimensions and data type.
Abstract base class for all single-value fields.