13 #ifndef __GA_ATIStringArray__
14 #define __GA_ATIStringArray__
32 class GA_AIFStringArray;
48 {
return theAttributeType->getTypeName(); }
55 return attrib && &attrib->
getType() == theAttributeType;
60 if (attrib && &attrib->
getType() == theAttributeType)
61 return static_cast<GA_ATIStringArray *>(attrib);
67 if (attrib && &attrib->
getType() == theAttributeType)
68 return static_cast<const GA_ATIStringArray *>(attrib);
89 {
return myAIFSharedStringArray; }
136 const char *lookupOrderedString(
exint handle)
const;
157 friend class ga_StringArray;
158 friend class ga_StringJSON;
197 volatile bool myHasChanges;
214 if (&attrib->
getType() == theAttributeType)
218 if (dynamic_cast<const GA_ATIBlobArray *>(attrib))
A class to manage an ordered array which has fixed offset handles.
Definition of a geometry attribute.
static SYS_FORCE_INLINE const UT_StringHolder & getTypeName()
static SYS_FORCE_INLINE const GA_ATIStringArray * cast(const GA_Attribute *attrib)
GLuint const GLchar * name
Standard user attribute level.
GLint GLint GLsizei GLint GLenum GLenum type
static SYS_FORCE_INLINE GA_ATIStringArray * cast(GA_Attribute *attrib)
GLsizei GLenum const void * indices
const GA_AIFSharedStringArray * getAIFSharedStringArray() const override
Return the attribute's shared string array interface or NULL.
A specialization of GA_AIFStringArray to access "shared strings".
static SYS_FORCE_INLINE const GA_AttributeType & getType()
GLsizei const GLchar *const * strings
static void registerType()
static SYS_FORCE_INLINE bool isType(const GA_Attribute *attrib)
const GA_AttributeType & getType() const
GLfloat GLfloat GLfloat GLfloat h
A map of string to various well defined value types.
A simple ATI to store aribtrary "blobs" of data in an attribute.
static SYS_FORCE_INLINE GA_ATIBlobArray * cast(GA_Attribute *attrib)
GA_BlobIndex GA_StringIndexType
static GA_Attribute * create(const GA_IndexMap &index_map, GA_AttributeScope scope, const UT_StringHolder &name, const GA_AttributeOptions *attribute_options=NULL)
Attribute Interface for file I/O.
const GA_AIFJSON * getAIFJSON() const override
static GA_Attribute * create(const GA_IndexMap &index_map, const UT_StringHolder &name)
GA_Attribute * doClone(const GA_IndexMap &index_map, const UT_StringHolder &name) const override
Create a new ATIBlob attribute. Sub-classes must implement this.
static SYS_FORCE_INLINE bool isType(const GA_Attribute *attrib)
SYS_FORCE_INLINE bool hasChanges() const