00001 #ifndef __domFormula_setparam_h__ 00002 #define __domFormula_setparam_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domKinematics_connect_param.h> 00009 class DAE; 00010 00011 class domFormula_setparam : public daeElement 00012 { 00013 public: 00014 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FORMULA_SETPARAM; } 00015 static daeInt ID() { return 470; } 00016 virtual daeInt typeID() const { return ID(); } 00017 public: 00018 class domFloat; 00019 00020 typedef daeSmartRef<domFloat> domFloatRef; 00021 typedef daeTArray<domFloatRef> domFloat_Array; 00022 00023 class domFloat : public daeElement 00024 { 00025 public: 00026 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT; } 00027 static daeInt ID() { return 471; } 00028 virtual daeInt typeID() const { return ID(); } 00029 00030 00031 public: //Accessors and Mutators 00036 ::domFloat& getValue() { return _value; } 00041 void setValue( const ::domFloat& val ) { _value = val; } 00042 00043 protected: // Value 00047 ::domFloat _value; 00048 protected: 00052 domFloat(DAE& dae) : daeElement(dae), _value() {} 00056 virtual ~domFloat() {} 00060 virtual domFloat &operator=( const domFloat &cpy ) { (void)cpy; return *this; } 00061 00062 public: // STATIC METHODS 00067 static DLLSPEC daeElementRef create(DAE& dae); 00073 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00074 }; 00075 00076 class domInt; 00077 00078 typedef daeSmartRef<domInt> domIntRef; 00079 typedef daeTArray<domIntRef> domInt_Array; 00080 00081 class domInt : public daeElement 00082 { 00083 public: 00084 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INT; } 00085 static daeInt ID() { return 472; } 00086 virtual daeInt typeID() const { return ID(); } 00087 00088 00089 public: //Accessors and Mutators 00094 ::domInt& getValue() { return _value; } 00099 void setValue( const ::domInt& val ) { _value = val; } 00100 00101 protected: // Value 00105 ::domInt _value; 00106 protected: 00110 domInt(DAE& dae) : daeElement(dae), _value() {} 00114 virtual ~domInt() {} 00118 virtual domInt &operator=( const domInt &cpy ) { (void)cpy; return *this; } 00119 00120 public: // STATIC METHODS 00125 static DLLSPEC daeElementRef create(DAE& dae); 00131 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00132 }; 00133 00134 class domSIDREF; 00135 00136 typedef daeSmartRef<domSIDREF> domSIDREFRef; 00137 typedef daeTArray<domSIDREFRef> domSIDREF_Array; 00138 00139 class domSIDREF : public daeElement 00140 { 00141 public: 00142 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SIDREF; } 00143 static daeInt ID() { return 473; } 00144 virtual daeInt typeID() const { return ID(); } 00145 00146 00147 public: //Accessors and Mutators 00152 domSidref getValue() const { return _value; } 00157 void setValue( domSidref val ) { *(daeStringRef*)&_value = val; } 00158 00159 protected: // Value 00163 domSidref _value; 00164 protected: 00168 domSIDREF(DAE& dae) : daeElement(dae), _value() {} 00172 virtual ~domSIDREF() {} 00176 virtual domSIDREF &operator=( const domSIDREF &cpy ) { (void)cpy; return *this; } 00177 00178 public: // STATIC METHODS 00183 static DLLSPEC daeElementRef create(DAE& dae); 00189 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00190 }; 00191 00192 class domBool; 00193 00194 typedef daeSmartRef<domBool> domBoolRef; 00195 typedef daeTArray<domBoolRef> domBool_Array; 00196 00197 class domBool : public daeElement 00198 { 00199 public: 00200 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BOOL; } 00201 static daeInt ID() { return 474; } 00202 virtual daeInt typeID() const { return ID(); } 00203 00204 00205 public: //Accessors and Mutators 00210 xsBoolean& getValue() { return _value; } 00215 void setValue( const xsBoolean& val ) { _value = val; } 00216 00217 protected: // Value 00221 xsBoolean _value; 00222 protected: 00226 domBool(DAE& dae) : daeElement(dae), _value() {} 00230 virtual ~domBool() {} 00234 virtual domBool &operator=( const domBool &cpy ) { (void)cpy; return *this; } 00235 00236 public: // STATIC METHODS 00241 static DLLSPEC daeElementRef create(DAE& dae); 00247 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00248 }; 00249 00250 00251 protected: // Attribute 00252 xsToken attrRef; 00253 00254 protected: // Elements 00255 domFloatRef elemFloat; 00256 domIntRef elemInt; 00257 domSIDREFRef elemSIDREF; 00258 domBoolRef elemBool; 00259 domKinematics_connect_paramRef elemConnect_param; 00263 daeElementRefArray _contents; 00267 daeUIntArray _contentsOrder; 00268 00272 daeTArray< daeCharArray * > _CMData; 00273 00274 00275 public: //Accessors and Mutators 00280 xsToken getRef() const { return attrRef; } 00285 void setRef( xsToken atRef ) { *(daeStringRef*)&attrRef = atRef;} 00286 00291 const domFloatRef getFloat() const { return elemFloat; } 00296 const domIntRef getInt() const { return elemInt; } 00301 const domSIDREFRef getSIDREF() const { return elemSIDREF; } 00306 const domBoolRef getBool() const { return elemBool; } 00311 const domKinematics_connect_paramRef getConnect_param() const { return elemConnect_param; } 00316 daeElementRefArray &getContents() { return _contents; } 00321 const daeElementRefArray &getContents() const { return _contents; } 00322 00323 protected: 00327 domFormula_setparam(DAE& dae) : daeElement(dae), attrRef(), elemFloat(), elemInt(), elemSIDREF(), elemBool(), elemConnect_param() {} 00331 virtual ~domFormula_setparam() { daeElement::deleteCMDataArray(_CMData); } 00335 virtual domFormula_setparam &operator=( const domFormula_setparam &cpy ) { (void)cpy; return *this; } 00336 00337 public: // STATIC METHODS 00342 static DLLSPEC daeElementRef create(DAE& dae); 00348 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00349 }; 00350 00351 00352 #endif