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 __domSampler_h__ 00010 #define __domSampler_h__ 00011 00012 #include <dae/daeDocument.h> 00013 #include <dom/domTypes.h> 00014 #include <dom/domElements.h> 00015 00016 #include <dom/domInputLocal.h> 00017 class DAE; 00018 00024 class domSampler : public daeElement 00025 { 00026 public: 00027 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SAMPLER; } 00028 static daeInt ID() { return 654; } 00029 virtual daeInt typeID() const { return ID(); } 00030 protected: // Attribute 00036 xsID attrId; 00037 00038 protected: // Element 00043 domInputLocal_Array elemInput_array; 00044 00045 public: //Accessors and Mutators 00050 xsID getId() const { return attrId; } 00055 void setId( xsID atId ) { *(daeStringRef*)&attrId = atId; _validAttributeArray[0] = true; 00056 if( _document != NULL ) _document->changeElementID( this, attrId ); 00057 } 00058 00063 domInputLocal_Array &getInput_array() { return elemInput_array; } 00068 const domInputLocal_Array &getInput_array() const { return elemInput_array; } 00069 protected: 00073 domSampler(DAE& dae) : daeElement(dae), attrId(), elemInput_array() {} 00077 virtual ~domSampler() {} 00081 virtual domSampler &operator=( const domSampler &cpy ) { (void)cpy; return *this; } 00082 00083 public: // STATIC METHODS 00088 static DLLSPEC daeElementRef create(DAE& dae); 00094 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00095 }; 00096 00097 00098 #endif