00001 #ifndef __domSphere_h__ 00002 #define __domSphere_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domExtra.h> 00009 class DAE; 00010 00014 class domSphere : public daeElement 00015 { 00016 public: 00017 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SPHERE; } 00018 static daeInt ID() { return 285; } 00019 virtual daeInt typeID() const { return ID(); } 00020 public: 00021 class domRadius; 00022 00023 typedef daeSmartRef<domRadius> domRadiusRef; 00024 typedef daeTArray<domRadiusRef> domRadius_Array; 00025 00029 class domRadius : public daeElement 00030 { 00031 public: 00032 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::RADIUS; } 00033 static daeInt ID() { return 286; } 00034 virtual daeInt typeID() const { return ID(); } 00035 00036 00037 public: //Accessors and Mutators 00042 domFloat& getValue() { return _value; } 00047 void setValue( const domFloat& val ) { _value = val; } 00048 00049 protected: // Value 00053 domFloat _value; 00054 protected: 00058 domRadius(DAE& dae) : daeElement(dae), _value() {} 00062 virtual ~domRadius() {} 00066 virtual domRadius &operator=( const domRadius &cpy ) { (void)cpy; return *this; } 00067 00068 public: // STATIC METHODS 00073 static DLLSPEC daeElementRef create(DAE& dae); 00079 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00080 }; 00081 00082 00083 00084 protected: // Elements 00088 domRadiusRef elemRadius; 00092 domExtra_Array elemExtra_array; 00093 00094 public: //Accessors and Mutators 00099 const domRadiusRef getRadius() const { return elemRadius; } 00104 domExtra_Array &getExtra_array() { return elemExtra_array; } 00109 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00110 protected: 00114 domSphere(DAE& dae) : daeElement(dae), elemRadius(), elemExtra_array() {} 00118 virtual ~domSphere() {} 00122 virtual domSphere &operator=( const domSphere &cpy ) { (void)cpy; return *this; } 00123 00124 public: // STATIC METHODS 00129 static DLLSPEC daeElementRef create(DAE& dae); 00135 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00136 }; 00137 00138 00139 #endif