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