00001 #ifndef __domGles2_newparam_h__ 00002 #define __domGles2_newparam_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domGles2_value.h> 00009 #include <dom/domFx_annotate.h> 00010 class DAE; 00011 00016 class domGles2_newparam : public daeElement 00017 { 00018 public: 00019 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::GLES2_NEWPARAM; } 00020 static daeInt ID() { return 210; } 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 211; } 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 00089 class domModifier : public daeElement 00090 { 00091 public: 00092 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MODIFIER; } 00093 static daeInt ID() { return 212; } 00094 virtual daeInt typeID() const { return ID(); } 00095 00096 00097 public: //Accessors and Mutators 00102 domFx_modifier& getValue() { return _value; } 00107 void setValue( const domFx_modifier& val ) { _value = val; } 00108 00109 protected: // Value 00113 domFx_modifier _value; 00114 protected: 00118 domModifier(DAE& dae) : daeElement(dae), _value() {} 00122 virtual ~domModifier() {} 00126 virtual domModifier &operator=( const domModifier &cpy ) { (void)cpy; return *this; } 00127 00128 public: // STATIC METHODS 00133 static DLLSPEC daeElementRef create(DAE& dae); 00139 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00140 }; 00141 00142 00143 protected: // Attribute 00144 domSid attrSid; 00145 00146 protected: // Elements 00147 domFx_annotate_Array elemAnnotate_array; 00152 domSemanticRef elemSemantic; 00153 domModifierRef elemModifier; 00154 domGles2_valueRef elemGles2_value; 00155 00156 public: //Accessors and Mutators 00161 domSid getSid() const { return attrSid; } 00166 void setSid( domSid atSid ) { *(daeStringRef*)&attrSid = atSid;} 00167 00172 domFx_annotate_Array &getAnnotate_array() { return elemAnnotate_array; } 00177 const domFx_annotate_Array &getAnnotate_array() const { return elemAnnotate_array; } 00182 const domSemanticRef getSemantic() const { return elemSemantic; } 00187 const domModifierRef getModifier() const { return elemModifier; } 00192 const domGles2_valueRef getGles2_value() const { return elemGles2_value; } 00193 protected: 00197 domGles2_newparam(DAE& dae) : daeElement(dae), attrSid(), elemAnnotate_array(), elemSemantic(), elemModifier(), elemGles2_value() {} 00201 virtual ~domGles2_newparam() {} 00205 virtual domGles2_newparam &operator=( const domGles2_newparam &cpy ) { (void)cpy; return *this; } 00206 00207 public: // STATIC METHODS 00212 static DLLSPEC daeElementRef create(DAE& dae); 00218 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00219 }; 00220 00221 00222 #endif