Home | History | Annotate | Download | only in renderer
      1 //
      2 // Copyright 2014 The ANGLE Project Authors. All rights reserved.
      3 // Use of this source code is governed by a BSD-style license that can be
      4 // found in the LICENSE file.
      5 //
      6 
      7 // VertexAttribImpl.h: Defines the abstract rx::VertexAttribImpl class.
      8 
      9 #ifndef LIBGLESV2_RENDERER_VERTEXARRAYIMPL_H_
     10 #define LIBGLESV2_RENDERER_VERTEXARRAYIMPL_H_
     11 
     12 #include "common/angleutils.h"
     13 #include "libGLESv2/Buffer.h"
     14 #include "libGLESv2/VertexAttribute.h"
     15 
     16 namespace rx
     17 {
     18 
     19 class VertexArrayImpl
     20 {
     21   public:
     22     virtual ~VertexArrayImpl() { }
     23 
     24     virtual void setElementArrayBuffer(const gl::Buffer *buffer) = 0;
     25     virtual void setAttribute(size_t idx, const gl::VertexAttribute &attr) = 0;
     26     virtual void setAttributeDivisor(size_t idx, GLuint divisor) = 0;
     27     virtual void enableAttribute(size_t idx, bool enabledState) = 0;
     28 };
     29 
     30 }
     31 
     32 #endif // LIBGLESV2_RENDERER_VERTEXARRAYIMPL_H_
     33