00001 #ifndef __domAnimation_clip_h__ 00002 #define __domAnimation_clip_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/domInstance_with_extra.h> 00010 #include <dom/domInstance_formula.h> 00011 #include <dom/domExtra.h> 00012 class DAE; 00013 00018 class domAnimation_clip : public daeElement 00019 { 00020 public: 00021 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::ANIMATION_CLIP; } 00022 static daeInt ID() { return 476; } 00023 virtual daeInt typeID() const { return ID(); } 00024 protected: // Attributes 00030 xsID attrId; 00034 xsToken attrName; 00043 domFloat attrStart; 00050 domFloat attrEnd; 00051 00052 protected: // Elements 00056 domAssetRef elemAsset; 00060 domInstance_with_extra_Array elemInstance_animation_array; 00061 domInstance_formula_Array elemInstance_formula_array; 00065 domExtra_Array elemExtra_array; 00066 00067 public: //Accessors and Mutators 00072 xsID getId() const { return attrId; } 00077 void setId( xsID atId ) { *(daeStringRef*)&attrId = atId; 00078 if( _document != NULL ) _document->changeElementID( this, attrId ); 00079 } 00080 00085 xsToken getName() const { return attrName; } 00090 void setName( xsToken atName ) { *(daeStringRef*)&attrName = atName;} 00091 00096 domFloat getStart() const { return attrStart; } 00101 void setStart( domFloat atStart ) { attrStart = atStart; } 00102 00107 domFloat getEnd() const { return attrEnd; } 00112 void setEnd( domFloat atEnd ) { attrEnd = atEnd; } 00113 00118 const domAssetRef getAsset() const { return elemAsset; } 00123 domInstance_with_extra_Array &getInstance_animation_array() { return elemInstance_animation_array; } 00128 const domInstance_with_extra_Array &getInstance_animation_array() const { return elemInstance_animation_array; } 00133 domInstance_formula_Array &getInstance_formula_array() { return elemInstance_formula_array; } 00138 const domInstance_formula_Array &getInstance_formula_array() const { return elemInstance_formula_array; } 00143 domExtra_Array &getExtra_array() { return elemExtra_array; } 00148 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00149 protected: 00153 domAnimation_clip(DAE& dae) : daeElement(dae), attrId(), attrName(), attrStart(), attrEnd(), elemAsset(), elemInstance_animation_array(), elemInstance_formula_array(), elemExtra_array() {} 00157 virtual ~domAnimation_clip() {} 00161 virtual domAnimation_clip &operator=( const domAnimation_clip &cpy ) { (void)cpy; return *this; } 00162 00163 public: // STATIC METHODS 00168 static DLLSPEC daeElementRef create(DAE& dae); 00174 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00175 }; 00176 00177 00178 #endif