00001 #ifndef __domGles_newparam_h__ 00002 #define __domGles_newparam_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domGles_param.h> 00009 #include <dom/domFx_annotate.h> 00010 class DAE; 00011 00016 class domGles_newparam : public daeElement 00017 { 00018 public: 00019 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::GLES_NEWPARAM; } 00020 static daeInt ID() { return 270; } 00021 virtual daeInt typeID() const { return ID(); } 00022 public: 00023 class domSemantic; 00024 00025 typedef daeSmartRef<domSemantic> domSemanticRef; 00026 typedef daeTArray<domSemanticRef> domSemantic_Array; 00027 00031 class domSemantic : public daeElement 00032 { 00033 public: 00034 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SEMANTIC; } 00035 static daeInt ID() { return 271; } 00036 virtual daeInt typeID() const { return ID(); } 00037 00038 00039 public: //Accessors and Mutators 00044 xsNCName getValue() const { return _value; } 00049 void setValue( xsNCName val ) { *(daeStringRef*)&_value = val; } 00050 00051 protected: // Value 00055 xsNCName _value; 00056 protected: 00060 domSemantic(DAE& dae) : daeElement(dae), _value() {} 00064 virtual ~domSemantic() {} 00068 virtual domSemantic &operator=( const domSemantic &cpy ) { (void)cpy; return *this; } 00069 00070 public: // STATIC METHODS 00075 static DLLSPEC daeElementRef create(DAE& dae); 00081 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00082 }; 00083 00084 class domModifier; 00085 00086 typedef daeSmartRef<domModifier> domModifierRef; 00087 typedef daeTArray<domModifierRef> domModifier_Array; 00088 00092 class domModifier : public daeElement 00093 { 00094 public: 00095 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MODIFIER; } 00096 static daeInt ID() { return 272; } 00097 virtual daeInt typeID() const { return ID(); } 00098 00099 00100 public: //Accessors and Mutators 00105 domFx_modifier& getValue() { return _value; } 00110 void setValue( const domFx_modifier& val ) { _value = val; } 00111 00112 protected: // Value 00116 domFx_modifier _value; 00117 protected: 00121 domModifier(DAE& dae) : daeElement(dae), _value() {} 00125 virtual ~domModifier() {} 00129 virtual domModifier &operator=( const domModifier &cpy ) { (void)cpy; return *this; } 00130 00131 public: // STATIC METHODS 00136 static DLLSPEC daeElementRef create(DAE& dae); 00142 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00143 }; 00144 00145 00146 protected: // Attribute 00152 domSid attrSid; 00153 00154 protected: // Elements 00159 domFx_annotate_Array elemAnnotate_array; 00164 domSemanticRef elemSemantic; 00169 domModifierRef elemModifier; 00170 domGles_paramRef elemGles_param; 00171 00172 public: //Accessors and Mutators 00177 domSid getSid() const { return attrSid; } 00182 void setSid( domSid atSid ) { *(daeStringRef*)&attrSid = atSid;} 00183 00188 domFx_annotate_Array &getAnnotate_array() { return elemAnnotate_array; } 00193 const domFx_annotate_Array &getAnnotate_array() const { return elemAnnotate_array; } 00198 const domSemanticRef getSemantic() const { return elemSemantic; } 00203 const domModifierRef getModifier() const { return elemModifier; } 00208 const domGles_paramRef getGles_param() const { return elemGles_param; } 00209 protected: 00213 domGles_newparam(DAE& dae) : daeElement(dae), attrSid(), elemAnnotate_array(), elemSemantic(), elemModifier(), elemGles_param() {} 00217 virtual ~domGles_newparam() {} 00221 virtual domGles_newparam &operator=( const domGles_newparam &cpy ) { (void)cpy; return *this; } 00222 00223 public: // STATIC METHODS 00228 static DLLSPEC daeElementRef create(DAE& dae); 00234 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00235 }; 00236 00237 00238 #endif