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 __domChannel_h__ 00010 #define __domChannel_h__ 00011 00012 #include <dae/daeDocument.h> 00013 #include <dom/domTypes.h> 00014 #include <dom/domElements.h> 00015 00016 class DAE; 00017 00021 class domChannel : public daeElement 00022 { 00023 public: 00024 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::CHANNEL; } 00025 static daeInt ID() { return 653; } 00026 virtual daeInt typeID() const { return ID(); } 00027 protected: // Attributes 00033 domURIFragmentType attrSource; 00039 xsToken attrTarget; 00040 00041 00042 public: //Accessors and Mutators 00047 domURIFragmentType &getSource() { return attrSource; } 00052 const domURIFragmentType &getSource() const { return attrSource; } 00057 void setSource( const domURIFragmentType &atSource ) { attrSource = atSource; _validAttributeArray[0] = true; } 00062 void setSource( xsString atSource ) { attrSource = atSource; _validAttributeArray[0] = true; } 00063 00068 xsToken getTarget() const { return attrTarget; } 00073 void setTarget( xsToken atTarget ) { *(daeStringRef*)&attrTarget = atTarget; _validAttributeArray[1] = true; } 00074 00075 protected: 00079 domChannel(DAE& dae) : daeElement(dae), attrSource(dae, *this), attrTarget() {} 00083 virtual ~domChannel() {} 00087 virtual domChannel &operator=( const domChannel &cpy ) { (void)cpy; return *this; } 00088 00089 public: // STATIC METHODS 00094 static DLLSPEC daeElementRef create(DAE& dae); 00100 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00101 }; 00102 00103 00104 #endif