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_sampler2D_common_h__ 10 #define __domFx_sampler2D_common_h__ 11 12 #include <dae/daeDocument.h> 13 #include <dom/domTypes.h> 14 #include <dom/domElements.h> 15 16 #include <dom/domExtra.h> 17 class DAE; 18 19 /** 20 * A two-dimensional texture sampler. 21 */ 22 class domFx_sampler2D_common_complexType 23 { 24 public: 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 37; } 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 38; } 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 39; } 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 40; } 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 41; } 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 class domMipfilter; 316 317 typedef daeSmartRef<domMipfilter> domMipfilterRef; 318 typedef daeTArray<domMipfilterRef> domMipfilter_Array; 319 320 class domMipfilter : public daeElement 321 { 322 public: 323 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MIPFILTER; } 324 static daeInt ID() { return 42; } 325 virtual daeInt typeID() const { return ID(); } 326 327 protected: // Value 328 /** 329 * The domFx_sampler_filter_common value of the text data of this element. 330 */ 331 domFx_sampler_filter_common _value; 332 333 public: //Accessors and Mutators 334 /** 335 * Gets the value of this element. 336 * @return a domFx_sampler_filter_common of the value. 337 */ 338 domFx_sampler_filter_common getValue() const { return _value; } 339 /** 340 * Sets the _value of this element. 341 * @param val The new value for this element. 342 */ 343 void setValue( domFx_sampler_filter_common val ) { _value = val; } 344 345 protected: 346 /** 347 * Constructor 348 */ 349 domMipfilter(DAE& dae) : daeElement(dae), _value() {} 350 /** 351 * Destructor 352 */ 353 virtual ~domMipfilter() {} 354 /** 355 * Overloaded assignment operator 356 */ 357 virtual domMipfilter &operator=( const domMipfilter &cpy ) { (void)cpy; return *this; } 358 359 public: // STATIC METHODS 360 /** 361 * Creates an instance of this class and returns a daeElementRef referencing it. 362 * @return a daeElementRef referencing an instance of this object. 363 */ 364 static DLLSPEC daeElementRef create(DAE& dae); 365 /** 366 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 367 * If a daeMetaElement already exists it will return that instead of creating a new one. 368 * @return A daeMetaElement describing this COLLADA element. 369 */ 370 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 371 }; 372 373 class domBorder_color; 374 375 typedef daeSmartRef<domBorder_color> domBorder_colorRef; 376 typedef daeTArray<domBorder_colorRef> domBorder_color_Array; 377 378 class domBorder_color : public daeElement 379 { 380 public: 381 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BORDER_COLOR; } 382 static daeInt ID() { return 43; } 383 virtual daeInt typeID() const { return ID(); } 384 385 protected: // Value 386 /** 387 * The domFx_color_common value of the text data of this element. 388 */ 389 domFx_color_common _value; 390 391 public: //Accessors and Mutators 392 /** 393 * Gets the _value array. 394 * @return Returns a domFx_color_common reference of the _value array. 395 */ 396 domFx_color_common &getValue() { return _value; } 397 /** 398 * Gets the _value array. 399 * @return Returns a constant domFx_color_common reference of the _value array. 400 */ 401 const domFx_color_common &getValue() const { return _value; } 402 /** 403 * Sets the _value array. 404 * @param val The new value for the _value array. 405 */ 406 void setValue( const domFx_color_common &val ) { _value = val; } 407 408 protected: 409 /** 410 * Constructor 411 */ 412 domBorder_color(DAE& dae) : daeElement(dae), _value() {} 413 /** 414 * Destructor 415 */ 416 virtual ~domBorder_color() {} 417 /** 418 * Overloaded assignment operator 419 */ 420 virtual domBorder_color &operator=( const domBorder_color &cpy ) { (void)cpy; return *this; } 421 422 public: // STATIC METHODS 423 /** 424 * Creates an instance of this class and returns a daeElementRef referencing it. 425 * @return a daeElementRef referencing an instance of this object. 426 */ 427 static DLLSPEC daeElementRef create(DAE& dae); 428 /** 429 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 430 * If a daeMetaElement already exists it will return that instead of creating a new one. 431 * @return A daeMetaElement describing this COLLADA element. 432 */ 433 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 434 }; 435 436 class domMipmap_maxlevel; 437 438 typedef daeSmartRef<domMipmap_maxlevel> domMipmap_maxlevelRef; 439 typedef daeTArray<domMipmap_maxlevelRef> domMipmap_maxlevel_Array; 440 441 class domMipmap_maxlevel : public daeElement 442 { 443 public: 444 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MIPMAP_MAXLEVEL; } 445 static daeInt ID() { return 44; } 446 virtual daeInt typeID() const { return ID(); } 447 448 protected: // Value 449 /** 450 * The xsUnsignedByte value of the text data of this element. 451 */ 452 xsUnsignedByte _value; 453 454 public: //Accessors and Mutators 455 /** 456 * Gets the value of this element. 457 * @return a xsUnsignedByte of the value. 458 */ 459 xsUnsignedByte getValue() const { return _value; } 460 /** 461 * Sets the _value of this element. 462 * @param val The new value for this element. 463 */ 464 void setValue( xsUnsignedByte val ) { _value = val; } 465 466 protected: 467 /** 468 * Constructor 469 */ 470 domMipmap_maxlevel(DAE& dae) : daeElement(dae), _value() {} 471 /** 472 * Destructor 473 */ 474 virtual ~domMipmap_maxlevel() {} 475 /** 476 * Overloaded assignment operator 477 */ 478 virtual domMipmap_maxlevel &operator=( const domMipmap_maxlevel &cpy ) { (void)cpy; return *this; } 479 480 public: // STATIC METHODS 481 /** 482 * Creates an instance of this class and returns a daeElementRef referencing it. 483 * @return a daeElementRef referencing an instance of this object. 484 */ 485 static DLLSPEC daeElementRef create(DAE& dae); 486 /** 487 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 488 * If a daeMetaElement already exists it will return that instead of creating a new one. 489 * @return A daeMetaElement describing this COLLADA element. 490 */ 491 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 492 }; 493 494 class domMipmap_bias; 495 496 typedef daeSmartRef<domMipmap_bias> domMipmap_biasRef; 497 typedef daeTArray<domMipmap_biasRef> domMipmap_bias_Array; 498 499 class domMipmap_bias : public daeElement 500 { 501 public: 502 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MIPMAP_BIAS; } 503 static daeInt ID() { return 45; } 504 virtual daeInt typeID() const { return ID(); } 505 506 protected: // Value 507 /** 508 * The xsFloat value of the text data of this element. 509 */ 510 xsFloat _value; 511 512 public: //Accessors and Mutators 513 /** 514 * Gets the value of this element. 515 * @return a xsFloat of the value. 516 */ 517 xsFloat getValue() const { return _value; } 518 /** 519 * Sets the _value of this element. 520 * @param val The new value for this element. 521 */ 522 void setValue( xsFloat val ) { _value = val; } 523 524 protected: 525 /** 526 * Constructor 527 */ 528 domMipmap_bias(DAE& dae) : daeElement(dae), _value() {} 529 /** 530 * Destructor 531 */ 532 virtual ~domMipmap_bias() {} 533 /** 534 * Overloaded assignment operator 535 */ 536 virtual domMipmap_bias &operator=( const domMipmap_bias &cpy ) { (void)cpy; return *this; } 537 538 public: // STATIC METHODS 539 /** 540 * Creates an instance of this class and returns a daeElementRef referencing it. 541 * @return a daeElementRef referencing an instance of this object. 542 */ 543 static DLLSPEC daeElementRef create(DAE& dae); 544 /** 545 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 546 * If a daeMetaElement already exists it will return that instead of creating a new one. 547 * @return A daeMetaElement describing this COLLADA element. 548 */ 549 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 550 }; 551 552 553 554 protected: // Elements 555 domSourceRef elemSource; 556 domWrap_sRef elemWrap_s; 557 domWrap_tRef elemWrap_t; 558 domMinfilterRef elemMinfilter; 559 domMagfilterRef elemMagfilter; 560 domMipfilterRef elemMipfilter; 561 domBorder_colorRef elemBorder_color; 562 domMipmap_maxlevelRef elemMipmap_maxlevel; 563 domMipmap_biasRef elemMipmap_bias; 564 domExtra_Array elemExtra_array; 565 566 public: //Accessors and Mutators 567 /** 568 * Gets the source element. 569 * @return a daeSmartRef to the source element. 570 */ 571 const domSourceRef getSource() const { return elemSource; } 572 /** 573 * Gets the wrap_s element. 574 * @return a daeSmartRef to the wrap_s element. 575 */ 576 const domWrap_sRef getWrap_s() const { return elemWrap_s; } 577 /** 578 * Gets the wrap_t element. 579 * @return a daeSmartRef to the wrap_t element. 580 */ 581 const domWrap_tRef getWrap_t() const { return elemWrap_t; } 582 /** 583 * Gets the minfilter element. 584 * @return a daeSmartRef to the minfilter element. 585 */ 586 const domMinfilterRef getMinfilter() const { return elemMinfilter; } 587 /** 588 * Gets the magfilter element. 589 * @return a daeSmartRef to the magfilter element. 590 */ 591 const domMagfilterRef getMagfilter() const { return elemMagfilter; } 592 /** 593 * Gets the mipfilter element. 594 * @return a daeSmartRef to the mipfilter element. 595 */ 596 const domMipfilterRef getMipfilter() const { return elemMipfilter; } 597 /** 598 * Gets the border_color element. 599 * @return a daeSmartRef to the border_color element. 600 */ 601 const domBorder_colorRef getBorder_color() const { return elemBorder_color; } 602 /** 603 * Gets the mipmap_maxlevel element. 604 * @return a daeSmartRef to the mipmap_maxlevel element. 605 */ 606 const domMipmap_maxlevelRef getMipmap_maxlevel() const { return elemMipmap_maxlevel; } 607 /** 608 * Gets the mipmap_bias element. 609 * @return a daeSmartRef to the mipmap_bias element. 610 */ 611 const domMipmap_biasRef getMipmap_bias() const { return elemMipmap_bias; } 612 /** 613 * Gets the extra element array. 614 * @return Returns a reference to the array of extra elements. 615 */ 616 domExtra_Array &getExtra_array() { return elemExtra_array; } 617 /** 618 * Gets the extra element array. 619 * @return Returns a constant reference to the array of extra elements. 620 */ 621 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 622 protected: 623 /** 624 * Constructor 625 */ 626 domFx_sampler2D_common_complexType(DAE& dae, daeElement* elt) : elemSource(), elemWrap_s(), elemWrap_t(), elemMinfilter(), elemMagfilter(), elemMipfilter(), elemBorder_color(), elemMipmap_maxlevel(), elemMipmap_bias(), elemExtra_array() {} 627 /** 628 * Destructor 629 */ 630 virtual ~domFx_sampler2D_common_complexType() {} 631 /** 632 * Overloaded assignment operator 633 */ 634 virtual domFx_sampler2D_common_complexType &operator=( const domFx_sampler2D_common_complexType &cpy ) { (void)cpy; return *this; } 635 }; 636 637 /** 638 * An element of type domFx_sampler2D_common_complexType. 639 */ 640 class domFx_sampler2D_common : public daeElement, public domFx_sampler2D_common_complexType 641 { 642 public: 643 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FX_SAMPLER2D_COMMON; } 644 static daeInt ID() { return 46; } 645 virtual daeInt typeID() const { return ID(); } 646 protected: 647 /** 648 * Constructor 649 */ 650 domFx_sampler2D_common(DAE& dae) : daeElement(dae), domFx_sampler2D_common_complexType(dae, this) {} 651 /** 652 * Destructor 653 */ 654 virtual ~domFx_sampler2D_common() {} 655 /** 656 * Overloaded assignment operator 657 */ 658 virtual domFx_sampler2D_common &operator=( const domFx_sampler2D_common &cpy ) { (void)cpy; return *this; } 659 660 public: // STATIC METHODS 661 /** 662 * Creates an instance of this class and returns a daeElementRef referencing it. 663 * @return a daeElementRef referencing an instance of this object. 664 */ 665 static DLLSPEC daeElementRef create(DAE& dae); 666 /** 667 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 668 * If a daeMetaElement already exists it will return that instead of creating a new one. 669 * @return A daeMetaElement describing this COLLADA element. 670 */ 671 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 672 }; 673 674 675 #endif 676