HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GT_DAIndexedDict Class Reference

#include <GT_DAIndexedDict.h>

+ Inheritance diagram for GT_DAIndexedDict:

Public Member Functions

 GT_DAIndexedDict (GT_Size array_size, int tuple_size=1)
 
 ~GT_DAIndexedDict () override
 
const char * className () const override
 
GT_DataArrayHandle harden () const override
 Create a "hardened" version of the array. More...
 
GT_Storage getStorage () const override
 Type of data stored in the array. More...
 
GT_Size getTupleSize () const override
 Number of elements for each array element. More...
 
GT_Size entries () const override
 Number of entries in the array. More...
 
GT_Type getTypeInfo () const override
 Return "type" information for the data. This defaults to GT_TYPE_NONE. More...
 
int64 getMemoryUsage () const override
 
uint8 getU8 (GT_Offset offset, int index=0) const override
 
int32 getI32 (GT_Offset offset, int index=0) const override
 
int64 getI64 (GT_Offset offset, int index=0) const override
 
fpreal16 getF16 (GT_Offset offset, int index=0) const override
 
fpreal32 getF32 (GT_Offset offset, int index=0) const override
 
fpreal64 getF64 (GT_Offset offset, int index=0) const override
 
GT_String getS (GT_Offset, int) const override
 
GT_Size getStringIndexCount () const override
 
GT_Offset getStringIndex (GT_Offset, int) const override
 
void getIndexedStrings (UT_StringArray &, UT_IntArray &) const override
 
GT_Size getDictIndexCount () const override
 
GT_Offset getDictIndex (GT_Offset offset, int idx) const override
 
void getIndexedDicts (UT_Array< UT_OptionsHolder > &dicts, UT_IntArray &indices) const override
 
GT_Dict getDict (GT_Offset offset, int index=0) const override
 
void setDict (GT_Size offset, int index, const GT_Dict &dict)
 
- Public Member Functions inherited from GT_DataArray
 GT_DataArray ()
 
 GT_DataArray (const GT_DataArray &src)
 
virtual ~GT_DataArray ()
 
virtual GT_Size itemSize (GT_Offset) const
 Return the number of elements in the array for the given item. More...
 
virtual GT_Size getTotalArrayEntries () const
 
virtual bool hasArrayEntries () const
 Returns "true" if each entry is an array. More...
 
virtual bool getPointerAliasing (const void *data) const
 Return "true" if there's pointer aliasing. More...
 
virtual bool isValid () const
 Data array is valid; can be sampled from. More...
 
virtual const voidgetBackingData () const
 
virtual int64 getDataId () const
 
template<typename T >
const TgetArray (GT_DataArrayHandle &buffer) const
 Template-friendly version of getU8Array() and related methods. More...
 
virtual void getStrings (UT_StringArray &strings) const
 
void fillStrings (UT_StringArray &result, int tuple_idx=0) const
 
virtual void fillStringArray (UT_StringArray &data, UT_ValArray< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void getDictionaries (UT_Array< UT_OptionsHolder > &dicts) const
 
virtual void fillDictionaryArray (UT_Array< UT_OptionsHolder > &data, UT_ValArray< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void extendedFillArray (uint8 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1, fpreal black=0, fpreal white=1) const
 
virtual bool isEqual (const GT_DataArray &src) const
 Compare whether two data arrays are equal. More...
 
bool getMinMax (fpreal64 *min, fpreal64 *max) const
 Enlarge a bounding box with values of this 3-tuple array. More...
 
bool enlargeBounds (UT_BoundingBox &b) const
 
GT_Storage checkIndexing (GT_IndexingMode mode) const
 Test to see whether the data array requires int32 or int64 indexing. More...
 
void dumpValues (const char *msg=NULL) const
 For debugging, print values to stdout. More...
 
bool save (UT_JSONWriter &w, bool flat=true) const
 
void copyDataId (const GT_DataArray &src)
 
void setDataId (int64 id)
 
virtual void updateGeoDetail (const GU_ConstDetailHandle &dtl, const char *attrib_name, GT_Owner attrib_owner, const int expected_size)
 Update cached data, in case the underlying attribute changed. More...
 
template<typename T >
T getValue (GT_Offset index) const
 Public accessor for POD types. More...
 
template<typename T >
T lerpValue (GT_Offset i0, GT_Offset i1, fpreal t) const
 
template<typename T >
T bilerpValue (GT_Offset u0v0, GT_Offset u1v0, GT_Offset u0v1, GT_Offset u1v1, fpreal u, fpreal v)
 
virtual int8 getI8 (GT_Offset offset, int idx=0) const
 
virtual int16 getI16 (GT_Offset offset, int idx=0) const
 
virtual bool getSA (UT_StringArray &a, GT_Offset offset) const
 
virtual bool getDictA (UT_Array< UT_OptionsHolder > &a, GT_Offset offset) const
 
virtual bool getFA16 (UT_ValArray< fpreal16 > &a, GT_Offset offset) const
 
virtual bool getFA32 (UT_ValArray< fpreal32 > &a, GT_Offset offset) const
 
virtual bool getFA64 (UT_ValArray< fpreal64 > &a, GT_Offset offset) const
 
virtual bool getUA8 (UT_ValArray< uint8 > &a, GT_Offset offset) const
 
virtual bool getIA8 (UT_ValArray< int8 > &a, GT_Offset offset) const
 
virtual bool getIA16 (UT_ValArray< int16 > &a, GT_Offset offset) const
 
virtual bool getIA32 (UT_ValArray< int32 > &a, GT_Offset offset) const
 
virtual bool getIA64 (UT_ValArray< int64 > &a, GT_Offset offset) const
 
virtual const uint8getU8Array (GT_DataArrayHandle &buffer) const
 
virtual const int8getI8Array (GT_DataArrayHandle &buffer) const
 
virtual const int16getI16Array (GT_DataArrayHandle &buffer) const
 
virtual const int32getI32Array (GT_DataArrayHandle &buffer) const
 
virtual const int64getI64Array (GT_DataArrayHandle &buffer) const
 
virtual const fpreal16getF16Array (GT_DataArrayHandle &buffer) const
 
virtual const fpreal32getF32Array (GT_DataArrayHandle &buffer) const
 
virtual const fpreal64getF64Array (GT_DataArrayHandle &buffer) const
 
const fprealgetRealArray (GT_DataArrayHandle &buffer) const
 
void import (GT_Offset idx, int8 *data, GT_Size size=0) const
 
void import (GT_Offset idx, int16 *data, GT_Size size=0) const
 
void import (GT_Offset idx, int32 *data, GT_Size size=0) const
 
void import (GT_Offset idx, int64 *data, GT_Size size=0) const
 
void import (GT_Offset idx, fpreal16 *data, GT_Size size=0) const
 
void import (GT_Offset idx, fpreal32 *data, GT_Size size=0) const
 
void import (GT_Offset idx, fpreal64 *data, GT_Size size=0) const
 
void import (GT_Offset idx, UT_ValArray< fpreal16 > &data) const
 
void import (GT_Offset idx, UT_ValArray< fpreal32 > &data) const
 
void import (GT_Offset idx, UT_ValArray< fpreal64 > &data) const
 
void import (GT_Offset idx, UT_ValArray< uint8 > &data) const
 
void import (GT_Offset idx, UT_ValArray< int8 > &data) const
 
void import (GT_Offset idx, UT_ValArray< int16 > &data) const
 
void import (GT_Offset idx, UT_ValArray< int32 > &data) const
 
void import (GT_Offset idx, UT_ValArray< int64 > &data) const
 
void import (GT_Offset idx, UT_StringArray &data) const
 
void import (GT_Offset idx, UT_Array< UT_OptionsHolder > &data) const
 
void import (GT_Offset idx, uint8 *data, GT_Size size=0, fpreal black=0, fpreal white=1) const
 
void fillArray (int8 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (int16 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (int32 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (int64 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (fpreal16 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (fpreal32 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (fpreal64 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (uint8 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1, fpreal black=0, fpreal white=1) const
 
void fillVec3BBox (fpreal32 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxF &bbox, int tsize, int stride=-1)
 
void fillVec3BBox (fpreal64 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxD &bbox, int tsize, int stride=-1)
 
void fillArray (UT_Array< uint8 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< int8 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< int16 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< int32 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< int64 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< fpreal16 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< fpreal32 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
void fillArray (UT_Array< fpreal64 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void extendedFill (uint8 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int8 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int16 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int32 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int64 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (fpreal16 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (fpreal32 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (fpreal64 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual const uint8get (GT_Offset i, uint8 *store, int sz) const
 
virtual const int8get (GT_Offset i, int8 *store, int sz) const
 
virtual const int16get (GT_Offset i, int16 *store, int sz) const
 
virtual const int32get (GT_Offset i, int32 *store, int sz) const
 
virtual const int64get (GT_Offset i, int64 *store, int sz) const
 
virtual const fpreal16get (GT_Offset i, fpreal16 *store, int z) const
 
virtual const fpreal32get (GT_Offset i, fpreal32 *store, int z) const
 
virtual const fpreal64get (GT_Offset i, fpreal64 *store, int z) const
 
virtual void getRange (exint &lo, exint &hi, int tuple_idx=0) const
 
virtual void getRange (fpreal &lo, fpreal &hi, int tidx=0) const
 
SYS_HashType hash () const
 
virtual SYS_HashType hashRange (exint begin, exint end) const
 
- Public Member Functions inherited from UT_IntrusiveRefCounter< GT_DataArray >
SYS_FORCE_INLINE UT_IntrusiveRefCounter () noexcept
 Default constructor: Sets counter to 0. More...
 
SYS_FORCE_INLINE UT_IntrusiveRefCounter (const UT_IntrusiveRefCounter &) noexcept
 Copy constructor: Sets counter to 0. More...
 
UT_IntrusiveRefCounteroperator= (const UT_IntrusiveRefCounter &) noexcept
 Assignment operator: Does not modify counter. More...
 
SYS_FORCE_INLINE uint32 use_count () const noexcept
 Return current counter. More...
 
SYS_FORCE_INLINE bool conditionalAddRef () noexcept
 

Additional Inherited Members

- Static Public Member Functions inherited from GT_DataArray
static bool isBigInteger (GT_Size size)
 Quick & dirty test to see if a size is bigger than a 32 bit int. More...
 
static voidoperator new (size_t size)
 
static voidoperator new (size_t size, void *p)
 
static void operator delete (void *p, size_t size)
 
- Protected Member Functions inherited from GT_DataArray
virtual bool computeMinMax (fpreal64 *min, fpreal64 *max) const
 
SYS_STATIC_FORCE_INLINE GT_Size fixImportTupleSize (GT_Size size, GT_Size tuple_size)
 
template<typename T_POD >
void t_extendedFill (T_POD *dest, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride) const
 Templated method to fill an array. More...
 
template<typename T_POD >
void t_extendedFillArray (UT_Array< T_POD > &dest, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 Templated method to fill an array attribute. More...
 
virtual void doImport (GT_Offset idx, uint8 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int8 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int16 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int32 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int64 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, fpreal16 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, fpreal32 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, fpreal64 *data, GT_Size size) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< fpreal16 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< fpreal32 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< fpreal64 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< uint8 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< int8 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< int16 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< int32 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< int64 > &data) const
 
virtual void doImportQuantized (GT_Offset idx, uint8 *data, GT_Size size, fpreal black, fpreal white) const
 
virtual void doFillArray (uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int16 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int32 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int64 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (fpreal16 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (fpreal32 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (fpreal64 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArrayAttr (UT_Array< uint8 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< int8 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< int16 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< int32 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< int64 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< fpreal16 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< fpreal32 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillArrayAttr (UT_Array< fpreal64 > &data, UT_Array< int > &sizes, GT_Offset start, GT_Size length) const
 
virtual void doFillQuantizedArray (uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride, fpreal black, fpreal white) const
 
virtual void doExtendedQuantizedFill (uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int nrepeats, int stride, fpreal black, fpreal white) const
 
virtual void doFillVec3BBox (fpreal32 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxF &bbox, int, int stride)
 
virtual void doFillVec3BBox (fpreal64 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxD &bbox, int, int stride)
 
- Protected Member Functions inherited from UT_IntrusiveRefCounter< GT_DataArray >
SYS_FORCE_INLINE ~UT_IntrusiveRefCounter ()
 Destructor: Only derived classes can destruct this. More...
 

Detailed Description

Definition at line 21 of file GT_DAIndexedDict.h.

Constructor & Destructor Documentation

GT_DAIndexedDict::GT_DAIndexedDict ( GT_Size  array_size,
int  tuple_size = 1 
)
GT_DAIndexedDict::~GT_DAIndexedDict ( )
override

Member Function Documentation

const char* GT_DAIndexedDict::className ( ) const
inlineoverridevirtual

Implements GT_DataArray.

Definition at line 27 of file GT_DAIndexedDict.h.

GT_Size GT_DAIndexedDict::entries ( ) const
inlineoverridevirtual

Number of entries in the array.

Implements GT_DataArray.

Definition at line 40 of file GT_DAIndexedDict.h.

GT_Dict GT_DAIndexedDict::getDict ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Reimplemented from GT_DataArray.

Definition at line 112 of file GT_DAIndexedDict.h.

GT_Offset GT_DAIndexedDict::getDictIndex ( GT_Offset  offset,
int  idx 
) const
inlineoverridevirtual

When an array of dictionaries is based on an indexed list of dictionaries, this method can be used to query each element's index. If the dictionaries are not indexed, the method should return -1.

Implements GT_DataArray.

Definition at line 104 of file GT_DAIndexedDict.h.

GT_Size GT_DAIndexedDict::getDictIndexCount ( ) const
inlineoverridevirtual

When an array of dictionaries is based on an indexed list of dictionaries, this method can be used to query the maximum number of indices. If the dictionaries are not indexed, the method should return -1.

Implements GT_DataArray.

Definition at line 100 of file GT_DAIndexedDict.h.

fpreal16 GT_DAIndexedDict::getF16 ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Reimplemented from GT_DataArray.

Definition at line 73 of file GT_DAIndexedDict.h.

fpreal32 GT_DAIndexedDict::getF32 ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Implements GT_DataArray.

Definition at line 80 of file GT_DAIndexedDict.h.

fpreal64 GT_DAIndexedDict::getF64 ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Reimplemented from GT_DataArray.

Definition at line 87 of file GT_DAIndexedDict.h.

int32 GT_DAIndexedDict::getI32 ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Implements GT_DataArray.

Definition at line 59 of file GT_DAIndexedDict.h.

int64 GT_DAIndexedDict::getI64 ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Reimplemented from GT_DataArray.

Definition at line 66 of file GT_DAIndexedDict.h.

void GT_DAIndexedDict::getIndexedDicts ( UT_Array< UT_OptionsHolder > &  dicts,
UT_IntArray indices 
) const
overridevirtual

When an array of dictionaries is based on an indexed list of dictionaries, this method can be used to extract all the dictionaries and their corresponding indicies. It's possible that the indices may not be contiguous or may even be out of order.

Implements GT_DataArray.

void GT_DAIndexedDict::getIndexedStrings ( UT_StringArray strings,
UT_IntArray indices 
) const
inlineoverridevirtual

When an array of strings is based on an indexed list of strings, this method can be used to extract all the strings and their corresponding indicies. It's possible that the indices may not be contiguous or may even be out of order.

Implements GT_DataArray.

Definition at line 98 of file GT_DAIndexedDict.h.

int64 GT_DAIndexedDict::getMemoryUsage ( ) const
inlineoverridevirtual

Get an approximation of the memory usage. Since data is shared, this may be an over-estimation of the memory used.

Implements GT_DataArray.

Definition at line 42 of file GT_DAIndexedDict.h.

GT_String GT_DAIndexedDict::getS ( GT_Offset  offset,
int  idx 
) const
inlineoverridevirtual

Get data out of the data array

Implements GT_DataArray.

Definition at line 95 of file GT_DAIndexedDict.h.

GT_Storage GT_DAIndexedDict::getStorage ( ) const
inlineoverridevirtual

Type of data stored in the array.

Implements GT_DataArray.

Definition at line 35 of file GT_DAIndexedDict.h.

GT_Offset GT_DAIndexedDict::getStringIndex ( GT_Offset  offset,
int  idx 
) const
inlineoverridevirtual

When an array of strings is based on an indexed list of strings, this method can be used to query each element's index. If the strings are not indexed, the method should return -1.

Implements GT_DataArray.

Definition at line 97 of file GT_DAIndexedDict.h.

GT_Size GT_DAIndexedDict::getStringIndexCount ( ) const
inlineoverridevirtual

When an array of strings is based on an indexed list of strings, this method can be used to query the maximum number of indices. If the strings are not indexed, the method should return -1.

Implements GT_DataArray.

Definition at line 96 of file GT_DAIndexedDict.h.

GT_Size GT_DAIndexedDict::getTupleSize ( ) const
inlineoverridevirtual

Number of elements for each array element.

Implements GT_DataArray.

Definition at line 39 of file GT_DAIndexedDict.h.

GT_Type GT_DAIndexedDict::getTypeInfo ( ) const
inlineoverridevirtual

Return "type" information for the data. This defaults to GT_TYPE_NONE.

Reimplemented from GT_DataArray.

Definition at line 41 of file GT_DAIndexedDict.h.

uint8 GT_DAIndexedDict::getU8 ( GT_Offset  offset,
int  idx = 0 
) const
inlineoverridevirtual

Get data out of the data array

Implements GT_DataArray.

Definition at line 52 of file GT_DAIndexedDict.h.

GT_DataArrayHandle GT_DAIndexedDict::harden ( ) const
inlineoverridevirtual

Create a "hardened" version of the array.

Reimplemented from GT_DataArray.

Definition at line 31 of file GT_DAIndexedDict.h.

void GT_DAIndexedDict::setDict ( GT_Size  offset,
int  index,
const GT_Dict dict 
)
inline

Definition at line 131 of file GT_DAIndexedDict.h.


The documentation for this class was generated from the following file: