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 __domGles_texture_constant_type_h__ 10 #define __domGles_texture_constant_type_h__ 11 12 #include <dae/daeDocument.h> 13 #include <dom/domTypes.h> 14 #include <dom/domElements.h> 15 16 class DAE; 17 18 class domGles_texture_constant_type_complexType 19 { 20 protected: // Attributes 21 domFloat4 attrValue; 22 xsNCName attrParam; 23 24 25 public: //Accessors and Mutators 26 /** 27 * Gets the value array attribute. 28 * @return Returns a domFloat4 reference of the value array attribute. 29 */ 30 domFloat4 &getValue() { return attrValue; } 31 /** 32 * Gets the value array attribute. 33 * @return Returns a constant domFloat4 reference of the value array attribute. 34 */ 35 const domFloat4 &getValue() const { return attrValue; } 36 /** 37 * Sets the value array attribute. 38 * @param atValue The new value for the value array attribute. 39 */ 40 void setValue( const domFloat4 &atValue ) { attrValue = atValue; } 41 42 /** 43 * Gets the param attribute. 44 * @return Returns a xsNCName of the param attribute. 45 */ 46 xsNCName getParam() const { return attrParam; } 47 /** 48 * Sets the param attribute. 49 * @param atParam The new value for the param attribute. 50 */ 51 void setParam( xsNCName atParam ) { *(daeStringRef*)&attrParam = atParam;} 52 53 protected: 54 /** 55 * Constructor 56 */ 57 domGles_texture_constant_type_complexType(DAE& dae, daeElement* elt) : attrValue(), attrParam() {} 58 /** 59 * Destructor 60 */ 61 virtual ~domGles_texture_constant_type_complexType() {} 62 /** 63 * Overloaded assignment operator 64 */ 65 virtual domGles_texture_constant_type_complexType &operator=( const domGles_texture_constant_type_complexType &cpy ) { (void)cpy; return *this; } 66 }; 67 68 /** 69 * An element of type domGles_texture_constant_type_complexType. 70 */ 71 class domGles_texture_constant_type : public daeElement, public domGles_texture_constant_type_complexType 72 { 73 public: 74 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::GLES_TEXTURE_CONSTANT_TYPE; } 75 static daeInt ID() { return 145; } 76 virtual daeInt typeID() const { return ID(); } 77 78 public: //Accessors and Mutators 79 /** 80 * Gets the value array attribute. 81 * @return Returns a domFloat4 reference of the value array attribute. 82 */ 83 domFloat4 &getValue() { return attrValue; } 84 /** 85 * Gets the value array attribute. 86 * @return Returns a constant domFloat4 reference of the value array attribute. 87 */ 88 const domFloat4 &getValue() const { return attrValue; } 89 /** 90 * Sets the value array attribute. 91 * @param atValue The new value for the value array attribute. 92 */ 93 void setValue( const domFloat4 &atValue ) { attrValue = atValue; _validAttributeArray[0] = true; } 94 95 /** 96 * Gets the param attribute. 97 * @return Returns a xsNCName of the param attribute. 98 */ 99 xsNCName getParam() const { return attrParam; } 100 /** 101 * Sets the param attribute. 102 * @param atParam The new value for the param attribute. 103 */ 104 void setParam( xsNCName atParam ) { *(daeStringRef*)&attrParam = atParam; _validAttributeArray[1] = true; } 105 106 protected: 107 /** 108 * Constructor 109 */ 110 domGles_texture_constant_type(DAE& dae) : daeElement(dae), domGles_texture_constant_type_complexType(dae, this) {} 111 /** 112 * Destructor 113 */ 114 virtual ~domGles_texture_constant_type() {} 115 /** 116 * Overloaded assignment operator 117 */ 118 virtual domGles_texture_constant_type &operator=( const domGles_texture_constant_type &cpy ) { (void)cpy; return *this; } 119 120 public: // STATIC METHODS 121 /** 122 * Creates an instance of this class and returns a daeElementRef referencing it. 123 * @return a daeElementRef referencing an instance of this object. 124 */ 125 static DLLSPEC daeElementRef create(DAE& dae); 126 /** 127 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 128 * If a daeMetaElement already exists it will return that instead of creating a new one. 129 * @return A daeMetaElement describing this COLLADA element. 130 */ 131 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 132 }; 133 134 135 #endif 136