12#ifndef GAMP_GLDATAARRAYHANDLER_HPP_
13#define GAMP_GLDATAARRAYHANDLER_HPP_
19namespace gamp::render::gl::data::impl {
20 using namespace gamp::render::gl;
21 using namespace gamp::render::gl::data;
32 template <
typename Value_type>
33 class GLDataArrayHandler :
public GLArrayHandler<Value_type> {
35 typedef GLArrayHandler<Value_type> glarray_t;
39 GLDataArrayHandler() noexcept = default;
41 void setSubArrayVBOName(GLuint)
override {
42 throw jau::UnsupportedOperationException(
"@GLDataArrayHandler",
E_FILE_LINE);
45 void addSubHandler(GLSLSubArrayHandler&&)
override {
46 throw jau::UnsupportedOperationException(
"@GLDataArrayHandler",
E_FILE_LINE);
49 void enableState(
GL& gl,
bool enable, ShaderState*)
override {
53 throw RenderException(
"GLDataArrayHandler can only handle VBOs.",
E_FILE_LINE);
55 glarray_t::bindBuffer(gl,
true);
56 glarray_t::bindBuffer(gl,
false);