00001 #ifndef VRS_TRANSFORMFEEDBACKCONTENTTABLE_H 00002 #define VRS_TRANSFORMFEEDBACKCONTENTTABLE_H 00003 00004 // 00005 // VRS 00006 // 00007 #include <vrs/engine.h> 00008 #include <vrs/monoattribute.h> 00009 #include <vrs/opengl/openglconfig.h> 00010 00011 00012 namespace VRS 00013 { 00014 class VRS_CORE_API TransformFeedbackContentTable: public VRS::MonoAttribute 00015 { 00016 public: 00017 00018 TransformFeedbackContentTable( 00019 GLenum storageMode = GL_SEPARATE_ATTRIBS_EXT, 00020 bool enabled = true); 00021 00022 00023 void setStorageMode(GLenum storageMode); 00024 inline GLenum getStorageMode(void) const 00025 { 00026 return this->storageMode_; 00027 } 00028 00029 virtual void apply(const VRS::SO<VRS::Engine>& engine) = 0; 00030 00031 VRS_TYPEINFO(TransformFeedbackContentTable, VRS::MonoAttribute); 00032 VRS_SERIALIZABLE_ABSTRACT_CLASS(TransformFeedbackContentTable); 00033 00034 private: 00035 00036 GLenum storageMode_; 00037 00038 };//endclass TransformFeedbackContentTable 00039 00040 };//endnamespace VRS 00041 00042 00043 #endif //VRS_TRANSFORMFEEDBACKCONTENTTABLE_H