00001 #ifndef __domHyperbola_h__ 00002 #define __domHyperbola_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 00036 class domHyperbola : public daeElement 00037 { 00038 public: 00039 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::HYPERBOLA; } 00040 static daeInt ID() { return 318; } 00041 virtual daeInt typeID() const { return ID(); } 00042 public: 00043 class domRadius; 00044 00045 typedef daeSmartRef<domRadius> domRadiusRef; 00046 typedef daeTArray<domRadiusRef> domRadius_Array; 00047 00048 class domRadius : public daeElement 00049 { 00050 public: 00051 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::RADIUS; } 00052 static daeInt ID() { return 319; } 00053 virtual daeInt typeID() const { return ID(); } 00054 00055 00056 public: //Accessors and Mutators 00061 domFloat2& getValue() { return _value; } 00066 void setValue( const domFloat2& val ) { _value = val; } 00067 00068 protected: // Value 00072 domFloat2 _value; 00073 protected: 00077 domRadius(DAE& dae) : daeElement(dae), _value() {} 00081 virtual ~domRadius() {} 00085 virtual domRadius &operator=( const domRadius &cpy ) { (void)cpy; return *this; } 00086 00087 public: // STATIC METHODS 00092 static DLLSPEC daeElementRef create(DAE& dae); 00098 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00099 }; 00100 00101 00102 00103 protected: // Elements 00104 domRadiusRef elemRadius; 00105 domExtra_Array elemExtra_array; 00106 00107 public: //Accessors and Mutators 00112 const domRadiusRef getRadius() const { return elemRadius; } 00117 domExtra_Array &getExtra_array() { return elemExtra_array; } 00122 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00123 protected: 00127 domHyperbola(DAE& dae) : daeElement(dae), elemRadius(), elemExtra_array() {} 00131 virtual ~domHyperbola() {} 00135 virtual domHyperbola &operator=( const domHyperbola &cpy ) { (void)cpy; return *this; } 00136 00137 public: // STATIC METHODS 00142 static DLLSPEC daeElementRef create(DAE& dae); 00148 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00149 }; 00150 00151 00152 #endif