00001 #ifndef __domBox_h__ 00002 #define __domBox_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 domBox : public daeElement 00015 { 00016 public: 00017 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BOX; } 00018 static daeInt ID() { return 281; } 00019 virtual daeInt typeID() const { return ID(); } 00020 public: 00021 class domHalf_extents; 00022 00023 typedef daeSmartRef<domHalf_extents> domHalf_extentsRef; 00024 typedef daeTArray<domHalf_extentsRef> domHalf_extents_Array; 00025 00029 class domHalf_extents : public daeElement 00030 { 00031 public: 00032 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::HALF_EXTENTS; } 00033 static daeInt ID() { return 282; } 00034 virtual daeInt typeID() const { return ID(); } 00035 00036 00037 public: //Accessors and Mutators 00042 domFloat3& getValue() { return _value; } 00047 void setValue( const domFloat3& val ) { _value = val; } 00048 00049 protected: // Value 00053 domFloat3 _value; 00054 protected: 00058 domHalf_extents(DAE& dae) : daeElement(dae), _value() {} 00062 virtual ~domHalf_extents() {} 00066 virtual domHalf_extents &operator=( const domHalf_extents &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 domHalf_extentsRef elemHalf_extents; 00092 domExtra_Array elemExtra_array; 00093 00094 public: //Accessors and Mutators 00099 const domHalf_extentsRef getHalf_extents() const { return elemHalf_extents; } 00104 domExtra_Array &getExtra_array() { return elemExtra_array; } 00109 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00110 protected: 00114 domBox(DAE& dae) : daeElement(dae), elemHalf_extents(), elemExtra_array() {} 00118 virtual ~domBox() {} 00122 virtual domBox &operator=( const domBox &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