1/* 2* Copyright 2006 Sony Computer Entertainment Inc. 3* 4* Licensed under the MIT Open Source License, for details please see license.txt or the website 5* http://www.opensource.org/licenses/mit-license.php 6* 7*/ 8 9#ifndef __domFx_samplerDEPTH_common_h__ 10#define __domFx_samplerDEPTH_common_h__ 11 12#include <dae/daeDocument.h> 13#include <dom/domTypes.h> 14#include <dom/domElements.h> 15 16#include <dom/domExtra.h> 17class DAE; 18 19/** 20 * A texture sampler for depth maps. 21 */ 22class domFx_samplerDEPTH_common_complexType 23{ 24public: 25 class domSource; 26 27 typedef daeSmartRef<domSource> domSourceRef; 28 typedef daeTArray<domSourceRef> domSource_Array; 29 30 class domSource : public daeElement 31 { 32 public: 33 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SOURCE; } 34 static daeInt ID() { return 79; } 35 virtual daeInt typeID() const { return ID(); } 36 37 protected: // Value 38 /** 39 * The xsNCName value of the text data of this element. 40 */ 41 xsNCName _value; 42 43 public: //Accessors and Mutators 44 /** 45 * Gets the value of this element. 46 * @return Returns a xsNCName of the value. 47 */ 48 xsNCName getValue() const { return _value; } 49 /** 50 * Sets the _value of this element. 51 * @param val The new value for this element. 52 */ 53 void setValue( xsNCName val ) { *(daeStringRef*)&_value = val; } 54 55 protected: 56 /** 57 * Constructor 58 */ 59 domSource(DAE& dae) : daeElement(dae), _value() {} 60 /** 61 * Destructor 62 */ 63 virtual ~domSource() {} 64 /** 65 * Overloaded assignment operator 66 */ 67 virtual domSource &operator=( const domSource &cpy ) { (void)cpy; return *this; } 68 69 public: // STATIC METHODS 70 /** 71 * Creates an instance of this class and returns a daeElementRef referencing it. 72 * @return a daeElementRef referencing an instance of this object. 73 */ 74 static DLLSPEC daeElementRef create(DAE& dae); 75 /** 76 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 77 * If a daeMetaElement already exists it will return that instead of creating a new one. 78 * @return A daeMetaElement describing this COLLADA element. 79 */ 80 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 81 }; 82 83 class domWrap_s; 84 85 typedef daeSmartRef<domWrap_s> domWrap_sRef; 86 typedef daeTArray<domWrap_sRef> domWrap_s_Array; 87 88 class domWrap_s : public daeElement 89 { 90 public: 91 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::WRAP_S; } 92 static daeInt ID() { return 80; } 93 virtual daeInt typeID() const { return ID(); } 94 95 protected: // Value 96 /** 97 * The domFx_sampler_wrap_common value of the text data of this element. 98 */ 99 domFx_sampler_wrap_common _value; 100 101 public: //Accessors and Mutators 102 /** 103 * Gets the value of this element. 104 * @return a domFx_sampler_wrap_common of the value. 105 */ 106 domFx_sampler_wrap_common getValue() const { return _value; } 107 /** 108 * Sets the _value of this element. 109 * @param val The new value for this element. 110 */ 111 void setValue( domFx_sampler_wrap_common val ) { _value = val; } 112 113 protected: 114 /** 115 * Constructor 116 */ 117 domWrap_s(DAE& dae) : daeElement(dae), _value() {} 118 /** 119 * Destructor 120 */ 121 virtual ~domWrap_s() {} 122 /** 123 * Overloaded assignment operator 124 */ 125 virtual domWrap_s &operator=( const domWrap_s &cpy ) { (void)cpy; return *this; } 126 127 public: // STATIC METHODS 128 /** 129 * Creates an instance of this class and returns a daeElementRef referencing it. 130 * @return a daeElementRef referencing an instance of this object. 131 */ 132 static DLLSPEC daeElementRef create(DAE& dae); 133 /** 134 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 135 * If a daeMetaElement already exists it will return that instead of creating a new one. 136 * @return A daeMetaElement describing this COLLADA element. 137 */ 138 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 139 }; 140 141 class domWrap_t; 142 143 typedef daeSmartRef<domWrap_t> domWrap_tRef; 144 typedef daeTArray<domWrap_tRef> domWrap_t_Array; 145 146 class domWrap_t : public daeElement 147 { 148 public: 149 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::WRAP_T; } 150 static daeInt ID() { return 81; } 151 virtual daeInt typeID() const { return ID(); } 152 153 protected: // Value 154 /** 155 * The domFx_sampler_wrap_common value of the text data of this element. 156 */ 157 domFx_sampler_wrap_common _value; 158 159 public: //Accessors and Mutators 160 /** 161 * Gets the value of this element. 162 * @return a domFx_sampler_wrap_common of the value. 163 */ 164 domFx_sampler_wrap_common getValue() const { return _value; } 165 /** 166 * Sets the _value of this element. 167 * @param val The new value for this element. 168 */ 169 void setValue( domFx_sampler_wrap_common val ) { _value = val; } 170 171 protected: 172 /** 173 * Constructor 174 */ 175 domWrap_t(DAE& dae) : daeElement(dae), _value() {} 176 /** 177 * Destructor 178 */ 179 virtual ~domWrap_t() {} 180 /** 181 * Overloaded assignment operator 182 */ 183 virtual domWrap_t &operator=( const domWrap_t &cpy ) { (void)cpy; return *this; } 184 185 public: // STATIC METHODS 186 /** 187 * Creates an instance of this class and returns a daeElementRef referencing it. 188 * @return a daeElementRef referencing an instance of this object. 189 */ 190 static DLLSPEC daeElementRef create(DAE& dae); 191 /** 192 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 193 * If a daeMetaElement already exists it will return that instead of creating a new one. 194 * @return A daeMetaElement describing this COLLADA element. 195 */ 196 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 197 }; 198 199 class domMinfilter; 200 201 typedef daeSmartRef<domMinfilter> domMinfilterRef; 202 typedef daeTArray<domMinfilterRef> domMinfilter_Array; 203 204 class domMinfilter : public daeElement 205 { 206 public: 207 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MINFILTER; } 208 static daeInt ID() { return 82; } 209 virtual daeInt typeID() const { return ID(); } 210 211 protected: // Value 212 /** 213 * The domFx_sampler_filter_common value of the text data of this element. 214 */ 215 domFx_sampler_filter_common _value; 216 217 public: //Accessors and Mutators 218 /** 219 * Gets the value of this element. 220 * @return a domFx_sampler_filter_common of the value. 221 */ 222 domFx_sampler_filter_common getValue() const { return _value; } 223 /** 224 * Sets the _value of this element. 225 * @param val The new value for this element. 226 */ 227 void setValue( domFx_sampler_filter_common val ) { _value = val; } 228 229 protected: 230 /** 231 * Constructor 232 */ 233 domMinfilter(DAE& dae) : daeElement(dae), _value() {} 234 /** 235 * Destructor 236 */ 237 virtual ~domMinfilter() {} 238 /** 239 * Overloaded assignment operator 240 */ 241 virtual domMinfilter &operator=( const domMinfilter &cpy ) { (void)cpy; return *this; } 242 243 public: // STATIC METHODS 244 /** 245 * Creates an instance of this class and returns a daeElementRef referencing it. 246 * @return a daeElementRef referencing an instance of this object. 247 */ 248 static DLLSPEC daeElementRef create(DAE& dae); 249 /** 250 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 251 * If a daeMetaElement already exists it will return that instead of creating a new one. 252 * @return A daeMetaElement describing this COLLADA element. 253 */ 254 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 255 }; 256 257 class domMagfilter; 258 259 typedef daeSmartRef<domMagfilter> domMagfilterRef; 260 typedef daeTArray<domMagfilterRef> domMagfilter_Array; 261 262 class domMagfilter : public daeElement 263 { 264 public: 265 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MAGFILTER; } 266 static daeInt ID() { return 83; } 267 virtual daeInt typeID() const { return ID(); } 268 269 protected: // Value 270 /** 271 * The domFx_sampler_filter_common value of the text data of this element. 272 */ 273 domFx_sampler_filter_common _value; 274 275 public: //Accessors and Mutators 276 /** 277 * Gets the value of this element. 278 * @return a domFx_sampler_filter_common of the value. 279 */ 280 domFx_sampler_filter_common getValue() const { return _value; } 281 /** 282 * Sets the _value of this element. 283 * @param val The new value for this element. 284 */ 285 void setValue( domFx_sampler_filter_common val ) { _value = val; } 286 287 protected: 288 /** 289 * Constructor 290 */ 291 domMagfilter(DAE& dae) : daeElement(dae), _value() {} 292 /** 293 * Destructor 294 */ 295 virtual ~domMagfilter() {} 296 /** 297 * Overloaded assignment operator 298 */ 299 virtual domMagfilter &operator=( const domMagfilter &cpy ) { (void)cpy; return *this; } 300 301 public: // STATIC METHODS 302 /** 303 * Creates an instance of this class and returns a daeElementRef referencing it. 304 * @return a daeElementRef referencing an instance of this object. 305 */ 306 static DLLSPEC daeElementRef create(DAE& dae); 307 /** 308 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 309 * If a daeMetaElement already exists it will return that instead of creating a new one. 310 * @return A daeMetaElement describing this COLLADA element. 311 */ 312 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 313 }; 314 315 316 317protected: // Elements 318 domSourceRef elemSource; 319 domWrap_sRef elemWrap_s; 320 domWrap_tRef elemWrap_t; 321 domMinfilterRef elemMinfilter; 322 domMagfilterRef elemMagfilter; 323 domExtra_Array elemExtra_array; 324 325public: //Accessors and Mutators 326 /** 327 * Gets the source element. 328 * @return a daeSmartRef to the source element. 329 */ 330 const domSourceRef getSource() const { return elemSource; } 331 /** 332 * Gets the wrap_s element. 333 * @return a daeSmartRef to the wrap_s element. 334 */ 335 const domWrap_sRef getWrap_s() const { return elemWrap_s; } 336 /** 337 * Gets the wrap_t element. 338 * @return a daeSmartRef to the wrap_t element. 339 */ 340 const domWrap_tRef getWrap_t() const { return elemWrap_t; } 341 /** 342 * Gets the minfilter element. 343 * @return a daeSmartRef to the minfilter element. 344 */ 345 const domMinfilterRef getMinfilter() const { return elemMinfilter; } 346 /** 347 * Gets the magfilter element. 348 * @return a daeSmartRef to the magfilter element. 349 */ 350 const domMagfilterRef getMagfilter() const { return elemMagfilter; } 351 /** 352 * Gets the extra element array. 353 * @return Returns a reference to the array of extra elements. 354 */ 355 domExtra_Array &getExtra_array() { return elemExtra_array; } 356 /** 357 * Gets the extra element array. 358 * @return Returns a constant reference to the array of extra elements. 359 */ 360 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 361protected: 362 /** 363 * Constructor 364 */ 365 domFx_samplerDEPTH_common_complexType(DAE& dae, daeElement* elt) : elemSource(), elemWrap_s(), elemWrap_t(), elemMinfilter(), elemMagfilter(), elemExtra_array() {} 366 /** 367 * Destructor 368 */ 369 virtual ~domFx_samplerDEPTH_common_complexType() {} 370 /** 371 * Overloaded assignment operator 372 */ 373 virtual domFx_samplerDEPTH_common_complexType &operator=( const domFx_samplerDEPTH_common_complexType &cpy ) { (void)cpy; return *this; } 374}; 375 376/** 377 * An element of type domFx_samplerDEPTH_common_complexType. 378 */ 379class domFx_samplerDEPTH_common : public daeElement, public domFx_samplerDEPTH_common_complexType 380{ 381public: 382 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FX_SAMPLERDEPTH_COMMON; } 383 static daeInt ID() { return 84; } 384 virtual daeInt typeID() const { return ID(); } 385protected: 386 /** 387 * Constructor 388 */ 389 domFx_samplerDEPTH_common(DAE& dae) : daeElement(dae), domFx_samplerDEPTH_common_complexType(dae, this) {} 390 /** 391 * Destructor 392 */ 393 virtual ~domFx_samplerDEPTH_common() {} 394 /** 395 * Overloaded assignment operator 396 */ 397 virtual domFx_samplerDEPTH_common &operator=( const domFx_samplerDEPTH_common &cpy ) { (void)cpy; return *this; } 398 399public: // STATIC METHODS 400 /** 401 * Creates an instance of this class and returns a daeElementRef referencing it. 402 * @return a daeElementRef referencing an instance of this object. 403 */ 404 static DLLSPEC daeElementRef create(DAE& dae); 405 /** 406 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 407 * If a daeMetaElement already exists it will return that instead of creating a new one. 408 * @return A daeMetaElement describing this COLLADA element. 409 */ 410 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 411}; 412 413 414#endif 415