CmGLGpuParamBlockBuffer.h 770 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #pragma once
  2. #include "CmGLPrerequisites.h"
  3. #include "CmGpuParamBlockBuffer.h"
  4. #include "CmCommonEnums.h"
  5. namespace CamelotFramework
  6. {
  7. class CM_RSGL_EXPORT GLGpuParamBlockBuffer : public GpuParamBlockBuffer
  8. {
  9. public:
  10. GLGpuParamBlockBuffer();
  11. /**
  12. * @copydoc GpuParamBlockBuffer::writeAll.
  13. */
  14. void writeData(const UINT8* data);
  15. /**
  16. * @copydoc GpuParamBlockBuffer::readAll.
  17. */
  18. void readData(UINT8* data) const;
  19. GLuint getGLHandle() const { return mGLHandle; }
  20. protected:
  21. /**
  22. * @copydoc CoreGpuObject::initialize_internal.
  23. */
  24. virtual void initialize_internal();
  25. /**
  26. * @copydoc CoreGpuObject::destroy_internal.
  27. */
  28. virtual void destroy_internal();
  29. private:
  30. GLuint mGLHandle;
  31. };
  32. }