00001 #ifndef __domSampler_h__ 00002 #define __domSampler_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domInput_local.h> 00009 class DAE; 00010 00016 class domSampler : public daeElement 00017 { 00018 public: 00019 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SAMPLER; } 00020 static daeInt ID() { return 24; } 00021 virtual daeInt typeID() const { return ID(); } 00022 protected: // Attributes 00028 xsID attrId; 00032 domSampler_behavior attrPre_behavior; 00036 domSampler_behavior attrPost_behavior; 00037 00038 protected: // Element 00043 domInput_local_Array elemInput_array; 00044 00045 public: //Accessors and Mutators 00050 xsID getId() const { return attrId; } 00055 void setId( xsID atId ) { *(daeStringRef*)&attrId = atId; 00056 if( _document != NULL ) _document->changeElementID( this, attrId ); 00057 } 00058 00063 domSampler_behavior getPre_behavior() const { return attrPre_behavior; } 00068 void setPre_behavior( domSampler_behavior atPre_behavior ) { attrPre_behavior = atPre_behavior; } 00069 00074 domSampler_behavior getPost_behavior() const { return attrPost_behavior; } 00079 void setPost_behavior( domSampler_behavior atPost_behavior ) { attrPost_behavior = atPost_behavior; } 00080 00085 domInput_local_Array &getInput_array() { return elemInput_array; } 00090 const domInput_local_Array &getInput_array() const { return elemInput_array; } 00091 protected: 00095 domSampler(DAE& dae) : daeElement(dae), attrId(), attrPre_behavior(), attrPost_behavior(), elemInput_array() {} 00099 virtual ~domSampler() {} 00103 virtual domSampler &operator=( const domSampler &cpy ) { (void)cpy; return *this; } 00104 00105 public: // STATIC METHODS 00110 static DLLSPEC daeElementRef create(DAE& dae); 00116 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00117 }; 00118 00119 00120 #endif