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 __domCg_connect_param_h__ 10 #define __domCg_connect_param_h__ 11 12 #include <dae/daeDocument.h> 13 #include <dom/domTypes.h> 14 #include <dom/domElements.h> 15 16 class DAE; 17 18 /** 19 * Creates a symbolic connection between two previously defined parameters. 20 */ 21 class domCg_connect_param_complexType 22 { 23 protected: // Attribute 24 domCg_identifier attrRef; 25 26 27 public: //Accessors and Mutators 28 /** 29 * Gets the ref attribute. 30 * @return Returns a domCg_identifier of the ref attribute. 31 */ 32 domCg_identifier getRef() const { return attrRef; } 33 /** 34 * Sets the ref attribute. 35 * @param atRef The new value for the ref attribute. 36 */ 37 void setRef( domCg_identifier atRef ) { attrRef = atRef; } 38 39 protected: 40 /** 41 * Constructor 42 */ 43 domCg_connect_param_complexType(DAE& dae, daeElement* elt) : attrRef() {} 44 /** 45 * Destructor 46 */ 47 virtual ~domCg_connect_param_complexType() {} 48 /** 49 * Overloaded assignment operator 50 */ 51 virtual domCg_connect_param_complexType &operator=( const domCg_connect_param_complexType &cpy ) { (void)cpy; return *this; } 52 }; 53 54 /** 55 * An element of type domCg_connect_param_complexType. 56 */ 57 class domCg_connect_param : public daeElement, public domCg_connect_param_complexType 58 { 59 public: 60 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::CG_CONNECT_PARAM; } 61 static daeInt ID() { return 133; } 62 virtual daeInt typeID() const { return ID(); } 63 64 public: //Accessors and Mutators 65 /** 66 * Gets the ref attribute. 67 * @return Returns a domCg_identifier of the ref attribute. 68 */ 69 domCg_identifier getRef() const { return attrRef; } 70 /** 71 * Sets the ref attribute. 72 * @param atRef The new value for the ref attribute. 73 */ 74 void setRef( domCg_identifier atRef ) { attrRef = atRef; _validAttributeArray[0] = true; } 75 76 protected: 77 /** 78 * Constructor 79 */ 80 domCg_connect_param(DAE& dae) : daeElement(dae), domCg_connect_param_complexType(dae, this) {} 81 /** 82 * Destructor 83 */ 84 virtual ~domCg_connect_param() {} 85 /** 86 * Overloaded assignment operator 87 */ 88 virtual domCg_connect_param &operator=( const domCg_connect_param &cpy ) { (void)cpy; return *this; } 89 90 public: // STATIC METHODS 91 /** 92 * Creates an instance of this class and returns a daeElementRef referencing it. 93 * @return a daeElementRef referencing an instance of this object. 94 */ 95 static DLLSPEC daeElementRef create(DAE& dae); 96 /** 97 * Creates a daeMetaElement object that describes this element in the meta object reflection framework. 98 * If a daeMetaElement already exists it will return that instead of creating a new one. 99 * @return A daeMetaElement describing this COLLADA element. 100 */ 101 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 102 }; 103 104 105 #endif 106