00001 #ifndef __domInstance_node_h__ 00002 #define __domInstance_node_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domInstance_with_extra.h> 00009 class DAE; 00010 00015 class domInstance_node : public domInstance_with_extra 00016 { 00017 public: 00018 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INSTANCE_NODE; } 00019 static daeInt ID() { return 111; } 00020 virtual daeInt typeID() const { return ID(); } 00021 protected: // Attribute 00022 xsAnyURI attrProxy; 00023 00024 00025 public: //Accessors and Mutators 00030 xsAnyURI &getUrl() { return attrUrl; } 00035 const xsAnyURI &getUrl() const { return attrUrl; } 00040 void setUrl( const xsAnyURI &atUrl ) { attrUrl = atUrl; } 00045 void setUrl( xsString atUrl ) { attrUrl = atUrl; } 00046 00051 domSid getSid() const { return attrSid; } 00056 void setSid( domSid atSid ) { *(daeStringRef*)&attrSid = atSid;} 00057 00062 xsToken getName() const { return attrName; } 00067 void setName( xsToken atName ) { *(daeStringRef*)&attrName = atName;} 00068 00073 xsAnyURI &getProxy() { return attrProxy; } 00078 const xsAnyURI &getProxy() const { return attrProxy; } 00083 void setProxy( const xsAnyURI &atProxy ) { attrProxy = atProxy; } 00088 void setProxy( xsString atProxy ) { attrProxy = atProxy; } 00089 00090 protected: 00094 domInstance_node(DAE& dae) : domInstance_with_extra(dae), attrProxy(dae, *this) {} 00098 virtual ~domInstance_node() {} 00102 virtual domInstance_node &operator=( const domInstance_node &cpy ) { (void)cpy; return *this; } 00103 00104 public: // STATIC METHODS 00109 static DLLSPEC daeElementRef create(DAE& dae); 00115 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00116 }; 00117 00118 00119 #endif