00001 #ifndef __domKinematics_model_h__ 00002 #define __domKinematics_model_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domAsset.h> 00009 #include <dom/domKinematics_model_technique.h> 00010 #include <dom/domTechnique.h> 00011 #include <dom/domExtra.h> 00012 class DAE; 00013 00014 class domKinematics_model : public daeElement 00015 { 00016 public: 00017 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::KINEMATICS_MODEL; } 00018 static daeInt ID() { return 480; } 00019 virtual daeInt typeID() const { return ID(); } 00020 protected: // Attributes 00021 xsID attrId; 00022 xsToken attrName; 00023 00024 protected: // Elements 00025 domAssetRef elemAsset; 00026 domKinematics_model_techniqueRef elemTechnique_common; 00027 domTechnique_Array elemTechnique_array; 00028 domExtra_Array elemExtra_array; 00029 00030 public: //Accessors and Mutators 00035 xsID getId() const { return attrId; } 00040 void setId( xsID atId ) { *(daeStringRef*)&attrId = atId; 00041 if( _document != NULL ) _document->changeElementID( this, attrId ); 00042 } 00043 00048 xsToken getName() const { return attrName; } 00053 void setName( xsToken atName ) { *(daeStringRef*)&attrName = atName;} 00054 00059 const domAssetRef getAsset() const { return elemAsset; } 00064 const domKinematics_model_techniqueRef getTechnique_common() const { return elemTechnique_common; } 00069 domTechnique_Array &getTechnique_array() { return elemTechnique_array; } 00074 const domTechnique_Array &getTechnique_array() const { return elemTechnique_array; } 00079 domExtra_Array &getExtra_array() { return elemExtra_array; } 00084 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00085 protected: 00089 domKinematics_model(DAE& dae) : daeElement(dae), attrId(), attrName(), elemAsset(), elemTechnique_common(), elemTechnique_array(), elemExtra_array() {} 00093 virtual ~domKinematics_model() {} 00097 virtual domKinematics_model &operator=( const domKinematics_model &cpy ) { (void)cpy; return *this; } 00098 00099 public: // STATIC METHODS 00104 static DLLSPEC daeElementRef create(DAE& dae); 00110 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00111 }; 00112 00113 00114 #endif