00001 /* 00002 * Copyright 2006 Sony Computer Entertainment Inc. 00003 * 00004 * Licensed under the MIT Open Source License, for details please see license.txt or the website 00005 * http://www.opensource.org/licenses/mit-license.php 00006 * 00007 */ 00008 00009 #ifndef __domFx_surface_format_hint_common_h__ 00010 #define __domFx_surface_format_hint_common_h__ 00011 00012 #include <dae/daeDocument.h> 00013 #include <dom/domTypes.h> 00014 #include <dom/domElements.h> 00015 00016 #include <dom/domExtra.h> 00017 class DAE; 00018 00024 class domFx_surface_format_hint_common_complexType 00025 { 00026 public: 00027 class domChannels; 00028 00029 typedef daeSmartRef<domChannels> domChannelsRef; 00030 typedef daeTArray<domChannelsRef> domChannels_Array; 00031 00037 class domChannels : public daeElement 00038 { 00039 public: 00040 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::CHANNELS; } 00041 static daeInt ID() { return 6; } 00042 virtual daeInt typeID() const { return ID(); } 00043 00044 protected: // Value 00048 domFx_surface_format_hint_channels_enum _value; 00049 00050 public: //Accessors and Mutators 00055 domFx_surface_format_hint_channels_enum getValue() const { return _value; } 00060 void setValue( domFx_surface_format_hint_channels_enum val ) { _value = val; } 00061 00062 protected: 00066 domChannels(DAE& dae) : daeElement(dae), _value() {} 00070 virtual ~domChannels() {} 00074 virtual domChannels &operator=( const domChannels &cpy ) { (void)cpy; return *this; } 00075 00076 public: // STATIC METHODS 00081 static DLLSPEC daeElementRef create(DAE& dae); 00087 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00088 }; 00089 00090 class domRange; 00091 00092 typedef daeSmartRef<domRange> domRangeRef; 00093 typedef daeTArray<domRangeRef> domRange_Array; 00094 00100 class domRange : public daeElement 00101 { 00102 public: 00103 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::RANGE; } 00104 static daeInt ID() { return 7; } 00105 virtual daeInt typeID() const { return ID(); } 00106 00107 protected: // Value 00111 domFx_surface_format_hint_range_enum _value; 00112 00113 public: //Accessors and Mutators 00118 domFx_surface_format_hint_range_enum getValue() const { return _value; } 00123 void setValue( domFx_surface_format_hint_range_enum val ) { _value = val; } 00124 00125 protected: 00129 domRange(DAE& dae) : daeElement(dae), _value() {} 00133 virtual ~domRange() {} 00137 virtual domRange &operator=( const domRange &cpy ) { (void)cpy; return *this; } 00138 00139 public: // STATIC METHODS 00144 static DLLSPEC daeElementRef create(DAE& dae); 00150 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00151 }; 00152 00153 class domPrecision; 00154 00155 typedef daeSmartRef<domPrecision> domPrecisionRef; 00156 typedef daeTArray<domPrecisionRef> domPrecision_Array; 00157 00164 class domPrecision : public daeElement 00165 { 00166 public: 00167 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::PRECISION; } 00168 static daeInt ID() { return 8; } 00169 virtual daeInt typeID() const { return ID(); } 00170 00171 protected: // Value 00175 domFx_surface_format_hint_precision_enum _value; 00176 00177 public: //Accessors and Mutators 00182 domFx_surface_format_hint_precision_enum getValue() const { return _value; } 00187 void setValue( domFx_surface_format_hint_precision_enum val ) { _value = val; } 00188 00189 protected: 00193 domPrecision(DAE& dae) : daeElement(dae), _value() {} 00197 virtual ~domPrecision() {} 00201 virtual domPrecision &operator=( const domPrecision &cpy ) { (void)cpy; return *this; } 00202 00203 public: // STATIC METHODS 00208 static DLLSPEC daeElementRef create(DAE& dae); 00214 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00215 }; 00216 00217 class domOption; 00218 00219 typedef daeSmartRef<domOption> domOptionRef; 00220 typedef daeTArray<domOptionRef> domOption_Array; 00221 00226 class domOption : public daeElement 00227 { 00228 public: 00229 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::OPTION; } 00230 static daeInt ID() { return 9; } 00231 virtual daeInt typeID() const { return ID(); } 00232 00233 protected: // Value 00237 domFx_surface_format_hint_option_enum _value; 00238 00239 public: //Accessors and Mutators 00244 domFx_surface_format_hint_option_enum getValue() const { return _value; } 00249 void setValue( domFx_surface_format_hint_option_enum val ) { _value = val; } 00250 00251 protected: 00255 domOption(DAE& dae) : daeElement(dae), _value() {} 00259 virtual ~domOption() {} 00263 virtual domOption &operator=( const domOption &cpy ) { (void)cpy; return *this; } 00264 00265 public: // STATIC METHODS 00270 static DLLSPEC daeElementRef create(DAE& dae); 00276 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00277 }; 00278 00279 00280 00281 protected: // Elements 00287 domChannelsRef elemChannels; 00293 domRangeRef elemRange; 00300 domPrecisionRef elemPrecision; 00305 domOption_Array elemOption_array; 00306 domExtra_Array elemExtra_array; 00307 00308 public: //Accessors and Mutators 00313 const domChannelsRef getChannels() const { return elemChannels; } 00318 const domRangeRef getRange() const { return elemRange; } 00323 const domPrecisionRef getPrecision() const { return elemPrecision; } 00328 domOption_Array &getOption_array() { return elemOption_array; } 00333 const domOption_Array &getOption_array() const { return elemOption_array; } 00338 domExtra_Array &getExtra_array() { return elemExtra_array; } 00343 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00344 protected: 00348 domFx_surface_format_hint_common_complexType(DAE& dae, daeElement* elt) : elemChannels(), elemRange(), elemPrecision(), elemOption_array(), elemExtra_array() {} 00352 virtual ~domFx_surface_format_hint_common_complexType() {} 00356 virtual domFx_surface_format_hint_common_complexType &operator=( const domFx_surface_format_hint_common_complexType &cpy ) { (void)cpy; return *this; } 00357 }; 00358 00362 class domFx_surface_format_hint_common : public daeElement, public domFx_surface_format_hint_common_complexType 00363 { 00364 public: 00365 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FX_SURFACE_FORMAT_HINT_COMMON; } 00366 static daeInt ID() { return 10; } 00367 virtual daeInt typeID() const { return ID(); } 00368 protected: 00372 domFx_surface_format_hint_common(DAE& dae) : daeElement(dae), domFx_surface_format_hint_common_complexType(dae, this) {} 00376 virtual ~domFx_surface_format_hint_common() {} 00380 virtual domFx_surface_format_hint_common &operator=( const domFx_surface_format_hint_common &cpy ) { (void)cpy; return *this; } 00381 00382 public: // STATIC METHODS 00387 static DLLSPEC daeElementRef create(DAE& dae); 00393 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00394 }; 00395 00396 00397 #endif