00001 #ifndef __domMotion_h__ 00002 #define __domMotion_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domInstance_articulated_system.h> 00009 #include <dom/domMotion_technique.h> 00010 #include <dom/domTechnique.h> 00011 #include <dom/domExtra.h> 00012 class DAE; 00013 00014 class domMotion : public daeElement 00015 { 00016 public: 00017 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MOTION; } 00018 static daeInt ID() { return 457; } 00019 virtual daeInt typeID() const { return ID(); } 00020 00021 protected: // Elements 00022 domInstance_articulated_systemRef elemInstance_articulated_system; 00023 domMotion_techniqueRef elemTechnique_common; 00024 domTechnique_Array elemTechnique_array; 00025 domExtra_Array elemExtra_array; 00026 00027 public: //Accessors and Mutators 00032 const domInstance_articulated_systemRef getInstance_articulated_system() const { return elemInstance_articulated_system; } 00037 const domMotion_techniqueRef getTechnique_common() const { return elemTechnique_common; } 00042 domTechnique_Array &getTechnique_array() { return elemTechnique_array; } 00047 const domTechnique_Array &getTechnique_array() const { return elemTechnique_array; } 00052 domExtra_Array &getExtra_array() { return elemExtra_array; } 00057 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00058 protected: 00062 domMotion(DAE& dae) : daeElement(dae), elemInstance_articulated_system(), elemTechnique_common(), elemTechnique_array(), elemExtra_array() {} 00066 virtual ~domMotion() {} 00070 virtual domMotion &operator=( const domMotion &cpy ) { (void)cpy; return *this; } 00071 00072 public: // STATIC METHODS 00077 static DLLSPEC daeElementRef create(DAE& dae); 00083 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00084 }; 00085 00086 00087 #endif