00001 #ifndef __domEllipsoid_h__ 00002 #define __domEllipsoid_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 class DAE; 00009 00010 class domEllipsoid : public daeElement 00011 { 00012 public: 00013 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::ELLIPSOID; } 00014 static daeInt ID() { return 287; } 00015 virtual daeInt typeID() const { return ID(); } 00016 public: 00017 class domSize; 00018 00019 typedef daeSmartRef<domSize> domSizeRef; 00020 typedef daeTArray<domSizeRef> domSize_Array; 00021 00022 class domSize : public daeElement 00023 { 00024 public: 00025 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SIZE; } 00026 static daeInt ID() { return 288; } 00027 virtual daeInt typeID() const { return ID(); } 00028 00029 00030 public: //Accessors and Mutators 00035 domFloat3& getValue() { return _value; } 00040 void setValue( const domFloat3& val ) { _value = val; } 00041 00042 protected: // Value 00046 domFloat3 _value; 00047 protected: 00051 domSize(DAE& dae) : daeElement(dae), _value() {} 00055 virtual ~domSize() {} 00059 virtual domSize &operator=( const domSize &cpy ) { (void)cpy; return *this; } 00060 00061 public: // STATIC METHODS 00066 static DLLSPEC daeElementRef create(DAE& dae); 00072 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00073 }; 00074 00075 00076 00077 protected: // Element 00078 domSizeRef elemSize; 00079 00080 public: //Accessors and Mutators 00085 const domSizeRef getSize() const { return elemSize; } 00086 protected: 00090 domEllipsoid(DAE& dae) : daeElement(dae), elemSize() {} 00094 virtual ~domEllipsoid() {} 00098 virtual domEllipsoid &operator=( const domEllipsoid &cpy ) { (void)cpy; return *this; } 00099 00100 public: // STATIC METHODS 00105 static DLLSPEC daeElementRef create(DAE& dae); 00111 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00112 }; 00113 00114 00115 #endif