00001 /* 00002 * Copyright 2006 Sony Computer Entertainment Inc. 00003 * 00004 * Licensed under the MIT Open Source License, for details please see license.txt or the website 00005 * http://www.opensource.org/licenses/mit-license.php 00006 * 00007 */ 00008 00009 #ifndef __domFx_include_common_h__ 00010 #define __domFx_include_common_h__ 00011 00012 #include <dae/daeDocument.h> 00013 #include <dom/domTypes.h> 00014 #include <dom/domElements.h> 00015 00016 class DAE; 00017 00022 class domFx_include_common_complexType 00023 { 00024 protected: // Attributes 00030 xsNCName attrSid; 00037 xsAnyURI attrUrl; 00038 00039 00040 public: //Accessors and Mutators 00045 xsNCName getSid() const { return attrSid; } 00050 void setSid( xsNCName atSid ) { *(daeStringRef*)&attrSid = atSid;} 00051 00056 xsAnyURI &getUrl() { return attrUrl; } 00061 const xsAnyURI &getUrl() const { return attrUrl; } 00066 void setUrl( const xsAnyURI &atUrl ) { attrUrl = atUrl; } 00071 void setUrl( xsString atUrl ) { attrUrl = atUrl; } 00072 00073 protected: 00077 domFx_include_common_complexType(DAE& dae, daeElement* elt) : attrSid(), attrUrl(dae, *elt) {} 00081 virtual ~domFx_include_common_complexType() {} 00085 virtual domFx_include_common_complexType &operator=( const domFx_include_common_complexType &cpy ) { (void)cpy; return *this; } 00086 }; 00087 00091 class domFx_include_common : public daeElement, public domFx_include_common_complexType 00092 { 00093 public: 00094 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FX_INCLUDE_COMMON; } 00095 static daeInt ID() { return 92; } 00096 virtual daeInt typeID() const { return ID(); } 00097 00098 public: //Accessors and Mutators 00103 xsNCName getSid() const { return attrSid; } 00108 void setSid( xsNCName atSid ) { *(daeStringRef*)&attrSid = atSid; _validAttributeArray[0] = true; } 00109 00114 xsAnyURI &getUrl() { return attrUrl; } 00119 const xsAnyURI &getUrl() const { return attrUrl; } 00124 void setUrl( const xsAnyURI &atUrl ) { attrUrl = atUrl; _validAttributeArray[1] = true; } 00129 void setUrl( xsString atUrl ) { attrUrl = atUrl; _validAttributeArray[1] = true; } 00130 00131 protected: 00135 domFx_include_common(DAE& dae) : daeElement(dae), domFx_include_common_complexType(dae, this) {} 00139 virtual ~domFx_include_common() {} 00143 virtual domFx_include_common &operator=( const domFx_include_common &cpy ) { (void)cpy; return *this; } 00144 00145 public: // STATIC METHODS 00150 static DLLSPEC daeElementRef create(DAE& dae); 00156 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00157 }; 00158 00159 00160 #endif