41 , myStorage(src.getStorage())
49 const char *
className()
const override {
return "GT_DAList"; }
55 bool isValid()
const override {
return myFirst != NULL; }
60 {
return myFirst->getStorage(); }
62 {
return myFirst->getTupleSize(); }
64 {
return myFirst->getTypeInfo(); }
66 {
return myTotalEntries; }
70 return myFirst->hasArrayEntries();
74 {
return myTotalArrayEntries; }
102 return h->
getF16(offset, idx);
107 return h->
getF32(offset, idx);
112 return h->
getF64(offset, idx);
117 return h->
getU8(offset, idx);
122 return h->
getI32(offset, idx);
127 return h->
getI64(offset, idx);
132 return h->
getS(offset, idx);
138 return h->
getSA(a, offset);
190 #define GT_IMPL_IMPORT_ARRAY(TYPE) \
191 virtual void doImportArray(GT_Offset off, UT_ValArray<TYPE> &data) const override \
193 const GT_DataArray *h = getList(off); \
194 h->import(off, data); \
206 #undef GT_IMPL_IMPORT_ARRAY
209 int tsize,
int stride)
const override;
211 int tsize,
int stride)
const override;
213 int tsize,
int stride)
const override;
215 int tsize,
int stride)
const override;
217 int tsize,
int stride)
const override;
219 int tsize,
int stride)
const override;
221 int tsize,
int stride)
const override;
223 int tsize,
int stride)
const override;
231 GT_Offset list = myListFromOffset(offset);
234 offset -= myListCounts.getOffset(list);
235 return myList(list).get();
void import(GT_Offset idx, int8 *data, GT_Size size=0) const
virtual bool isValid() const
Data array is valid; can be sampled from.
GT_String getS(GT_Offset offset, int idx=0) const override
virtual fpreal16 getF16(GT_Offset offset, int idx=0) const
GT_Size entries() const override
virtual fpreal64 getF64(GT_Offset offset, int idx=0) const
GT_DAList()
Default constructor.
virtual fpreal32 getF32(GT_Offset offset, int idx=0) const =0
void getIndexedStrings(UT_StringArray &, UT_IntArray &) const override
void doImport(GT_Offset off, fpreal16 *d, GT_Size sz) const override
virtual int64 getI64(GT_Offset offset, int idx=0) const
GLboolean GLboolean GLboolean GLboolean a
int32 getI32(GT_Offset offset, int idx=0) const override
GT_Storage getStorage() const override
fpreal64 getF64(GT_Offset offset, int idx=0) const override
virtual GT_Size itemSize(GT_Offset) const
Return the number of elements in the array for the given item.
void doImport(GT_Offset off, int16 *d, GT_Size sz) const override
GT_Size getDictIndexCount() const override
Not supported since there's no easy way to merge dictionary indices.
GT_DAList(const UT_Array< GT_DataArrayHandle > &list)
Useful constructor.
Abstract data class for an array of float, int or string data.
bool isValid() const override
Test whether the array is valid.
virtual bool getPointerAliasing(const void *data) const
Return "true" if there's pointer aliasing.
const char * className() const override
GLint GLenum GLboolean GLsizei stride
void doImport(GT_Offset off, int32 *d, GT_Size sz) const override
GT_Offset getStringIndex(GT_Offset, int idx) const override
virtual void doFillArray(uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
void getIndexedDicts(UT_Array< UT_OptionsHolder > &, UT_IntArray &) const override
virtual bool getSA(UT_StringArray &a, GT_Offset offset) const
bool hasArrayEntries() const override
GT_Size getTotalArrayEntries() const override
bool getSA(UT_StringArray &a, GT_Offset offset) const override
fpreal16 getF16(GT_Offset offset, int idx=0) const override
GT_Type getTypeInfo() const override
A list which "merges" multiple data arrays into a single array.
GT_DAList(const GT_DAList &src)
Copy constructor.
GLfloat GLfloat GLfloat GLfloat h
GT_Size getStringIndexCount() const override
#define GT_IMPL_IMPORT_ARRAY(TYPE)
GT_Size getTupleSize() const override
virtual uint8 getU8(GT_Offset offset, int idx=0) const =0
uint8 getU8(GT_Offset offset, int idx=0) const override
virtual int64 getMemoryUsage() const =0
void doImport(GT_Offset off, fpreal32 *d, GT_Size sz) const override
void doImport(GT_Offset off, uint8 *d, GT_Size sz) const override
void doImport(GT_Offset off, fpreal64 *d, GT_Size sz) const override
void doImport(GT_Offset off, int64 *d, GT_Size sz) const override
virtual int32 getI32(GT_Offset offset, int idx=0) const =0
fpreal32 getF32(GT_Offset offset, int idx=0) const override
void doImport(GT_Offset off, int8 *d, GT_Size sz) const override
int64 getI64(GT_Offset offset, int idx=0) const override
virtual GT_String getS(GT_Offset offset, int idx=0) const =0
GT_Offset getDictIndex(GT_Offset, int idx) const override