HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GT_DAIndexPair< T > Class Template Reference

#include <GT_DAIndexPair.h>

+ Inheritance diagram for GT_DAIndexPair< T >:

Public Member Functions

 GT_DAIndexPair (int array_size, int tuple_size)
 
 ~GT_DAIndexPair () override
 
int getIndexPairObjectSetCount () const override
 
void getIndexPairObjects (GT_AttributeListHandle &properties, int s=0) const override
 
void setIndexPairObjectSetCount (int n)
 
void setIndexPairObjects (int s, const GT_AttributeListHandle &properties)
 
- Public Member Functions inherited from GT_DANumeric< T >
 GT_DANumeric (GT_Size array_size, int tuple_size, GT_Type type=GT_TYPE_NONE)
 Create a numeric array. More...
 
 GT_DANumeric (const T *data, GT_Size array_size, int tuple_size, GT_Type type=GT_TYPE_NONE)
 
 ~GT_DANumeric () override
 
const char * className () const override
 
GT_DataArrayHandle harden () const override
 A numeric array is hard to begin with. More...
 
void truncate ()
 
void resize (GT_Size size, GT_Size capacity=-1)
 
void append (T value)
 Append a scalar value to the array. More...
 
void append (const T *value)
 
void concat (const GT_DANumeric< T > &src)
 
const voidgetBackingData () const override
 Provide virtual access to the backing data. More...
 
Tdata () const
 Raw access to the data array. More...
 
TgetData (GT_Offset offset)
 Raw pointer access to a tuple. More...
 
const TgetData (GT_Offset offset) const
 Raw pointer access to a tuple. More...
 
void set (T value, GT_Offset offset, int index=0)
 Set a component of the tuple. More...
 
void setTuple (const T *value, GT_Offset offset)
 Set an entire tuple. More...
 
void setTupleBlock (const GT_DANumeric< T > *values, GT_Offset offset)
 Set a block of entire tuples. More...
 
void setTupleBlock (const T *values, GT_Size n, GT_Offset offset)
 Set a block of entire tuples. More...
 
void copyFrom (const T *src)
 Copy an entire data from a flat array. More...
 
GT_Size capacity () const
 Accessor to capacity of the array. More...
 
GT_Storage getStorage () const override
 
GT_Size getTupleSize () const override
 
GT_Size entries () const override
 
GT_Type getTypeInfo () const override
 
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, int) const override
 
void getIndexedDicts (UT_Array< UT_OptionsHolder > &, UT_IntArray &) const override
 
const uint8getU8Array (GT_DataArrayHandle &buffer) const override
 
const int8getI8Array (GT_DataArrayHandle &buffer) const override
 
const int16getI16Array (GT_DataArrayHandle &buffer) const override
 
const int32getI32Array (GT_DataArrayHandle &buffer) const override
 
const int64getI64Array (GT_DataArrayHandle &buffer) const override
 
const fpreal16getF16Array (GT_DataArrayHandle &buffer) const override
 
const fpreal32getF32Array (GT_DataArrayHandle &buffer) const override
 
const fpreal64getF64Array (GT_DataArrayHandle &buffer) const override
 
void doImport (GT_Offset idx, uint8 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, int8 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, int16 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, int32 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, int64 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, fpreal16 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, fpreal32 *data, GT_Size size) const override
 
void doImport (GT_Offset idx, fpreal64 *data, GT_Size size) const override
 
void doFillArray (uint8 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (int8 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (int16 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (int32 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (int64 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (fpreal16 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (fpreal32 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
void doFillArray (fpreal64 *data, GT_Offset start, GT_Size length, int tsize, int stride) const override
 
bool isEqual (const GT_DataArray &src) const override
 
SYS_HashType hashRange (exint begin, exint end) const override
 
- 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 int64 getDataId () const
 
template<typename T >
const TgetArray (GT_DataArrayHandle &buffer) const
 Template-friendly version of getU8Array() and related methods. More...
 
virtual bool getStringIndices (UT_Array< GT_Offset > &indices, GT_Offset offset) const
 
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 bool getDictIndices (UT_Array< GT_Offset > &indices, GT_Offset offset) 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
 
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 GT_Dict getDict (GT_Offset offset, int idx=0) 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
 
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
 
- 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

- Public Types inherited from GT_DANumeric< T >
typedef T data_type
 
- 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
 Compute the min & max values for an array. This fails for strings. More...
 
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 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 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

template<typename T>
class GT_DAIndexPair< T >

Extension of GT_DANumeric which supports configuring the index-pair objects and properties. The indices and weights are represented as an interleaved float tuple for each entry, e.g. (index0, weight0, index1, weight1, ...)

Definition at line 19 of file GT_DAIndexPair.h.

Constructor & Destructor Documentation

template<typename T >
GT_DAIndexPair< T >::GT_DAIndexPair ( int  array_size,
int  tuple_size 
)
inline

NOTE: the tuple size includes both the indices and weights, so this is twice the tuple size of a GA index-pair attribute!

Definition at line 24 of file GT_DAIndexPair.h.

template<typename T >
GT_DAIndexPair< T >::~GT_DAIndexPair ( )
override

Member Function Documentation

template<typename T >
void GT_DAIndexPair< T >::getIndexPairObjects ( GT_AttributeListHandle properties,
int  s = 0 
) const
overridevirtual

For the specified index-pair object set, returns a data array for each property containing the objects' values.

Reimplemented from GT_DataArray.

template<typename T >
int GT_DAIndexPair< T >::getIndexPairObjectSetCount ( ) const
overridevirtual

For index-pair attributes (GT_TYPE_INDEXPAIR), returns the number of sets of objects associated with the indices.

Reimplemented from GT_DataArray.

template<typename T >
void GT_DAIndexPair< T >::setIndexPairObjects ( int  s,
const GT_AttributeListHandle properties 
)
template<typename T >
void GT_DAIndexPair< T >::setIndexPairObjectSetCount ( int  n)

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