00001 #ifndef __domGles_texture_pipeline_h__ 00002 #define __domGles_texture_pipeline_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domGles_texcombiner_command.h> 00009 #include <dom/domGles_texenv_command.h> 00010 #include <dom/domExtra.h> 00011 class DAE; 00012 00017 class domGles_texture_pipeline : public daeElement 00018 { 00019 public: 00020 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::GLES_TEXTURE_PIPELINE; } 00021 static daeInt ID() { return 267; } 00022 virtual daeInt typeID() const { return ID(); } 00023 protected: // Attribute 00029 domSid attrSid; 00030 00031 protected: // Elements 00036 domGles_texcombiner_command_Array elemTexcombiner_array; 00041 domGles_texenv_command_Array elemTexenv_array; 00046 domExtra_Array elemExtra_array; 00050 daeElementRefArray _contents; 00054 daeUIntArray _contentsOrder; 00055 00059 daeTArray< daeCharArray * > _CMData; 00060 00061 00062 public: //Accessors and Mutators 00067 domSid getSid() const { return attrSid; } 00072 void setSid( domSid atSid ) { *(daeStringRef*)&attrSid = atSid;} 00073 00078 domGles_texcombiner_command_Array &getTexcombiner_array() { return elemTexcombiner_array; } 00083 const domGles_texcombiner_command_Array &getTexcombiner_array() const { return elemTexcombiner_array; } 00088 domGles_texenv_command_Array &getTexenv_array() { return elemTexenv_array; } 00093 const domGles_texenv_command_Array &getTexenv_array() const { return elemTexenv_array; } 00098 domExtra_Array &getExtra_array() { return elemExtra_array; } 00103 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00108 daeElementRefArray &getContents() { return _contents; } 00113 const daeElementRefArray &getContents() const { return _contents; } 00114 00115 protected: 00119 domGles_texture_pipeline(DAE& dae) : daeElement(dae), attrSid(), elemTexcombiner_array(), elemTexenv_array(), elemExtra_array() {} 00123 virtual ~domGles_texture_pipeline() { daeElement::deleteCMDataArray(_CMData); } 00127 virtual domGles_texture_pipeline &operator=( const domGles_texture_pipeline &cpy ) { (void)cpy; return *this; } 00128 00129 public: // STATIC METHODS 00134 static DLLSPEC daeElementRef create(DAE& dae); 00140 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00141 }; 00142 00143 00144 #endif