Tatooine
vertexarray.h
Go to the documentation of this file.
1#ifndef TATOOINE_GL_VERTEXARRAY_H
2#define TATOOINE_GL_VERTEXARRAY_H
3//==============================================================================
8#include <tatooine/gl/type.h>
10
11#include <iostream>
12//==============================================================================
13namespace tatooine::gl {
14//==============================================================================
15class vertexarray : public id_holder<GLuint> {
16 public:
18
19 DLL_API vertexarray();
20 DLL_API vertexarray(vertexarray const& other) = delete;
21 DLL_API vertexarray(vertexarray&& other) = default;
22 DLL_API vertexarray& operator=(vertexarray const& other) = delete;
23 DLL_API vertexarray& operator=(vertexarray&& other) = default;
24 DLL_API ~vertexarray();
25
26 DLL_API void destroy_handle();
27 DLL_API void bind() const;
28 DLL_API void unbind() const;
29 DLL_API void draw(Primitive primitive, GLsizei num_primitives) const;
30 DLL_API void draw(GLsizei num_primitives) const;
31 DLL_API void draw_points(GLsizei num_primitives) const;
32 DLL_API void draw_line_strip(GLsizei num_primitives) const;
33 DLL_API void draw_line_loop(GLsizei num_primitives) const;
34 DLL_API void draw_lines(GLsizei num_primitives) const;
35 DLL_API void draw_line_strip_adjacency(GLsizei num_primitives) const;
36 DLL_API void draw_triangle_strip(GLsizei num_primitives) const;
37 DLL_API void draw_triangle_fan(GLsizei num_primitives) const;
38 DLL_API void draw_triangles(GLsizei num_primitives) const;
39 DLL_API void draw_triangle_strip_adjacency(GLsizei num_primitives) const;
40 DLL_API void draw_triangles_adjacency(GLsizei num_primitives) const;
41 DLL_API void draw_patches(GLsizei num_primitives) const;
42};
43//==============================================================================
44} // namespace tatooine::gl
45//==============================================================================
46#endif
Definition: vertexarray.h:15
DLL_API void draw_triangle_fan(GLsizei num_primitives) const
DLL_API void draw_triangle_strip(GLsizei num_primitives) const
DLL_API void unbind() const
DLL_API void draw_lines(GLsizei num_primitives) const
DLL_API vertexarray(vertexarray const &other)=delete
DLL_API void bind() const
DLL_API void draw_triangles(GLsizei num_primitives) const
DLL_API vertexarray(vertexarray &&other)=default
DLL_API void draw_triangle_strip_adjacency(GLsizei num_primitives) const
DLL_API void destroy_handle()
DLL_API void draw_triangles_adjacency(GLsizei num_primitives) const
DLL_API void draw_line_strip_adjacency(GLsizei num_primitives) const
DLL_API void draw_points(GLsizei num_primitives) const
DLL_API vertexarray & operator=(vertexarray const &other)=delete
DLL_API void draw_line_loop(GLsizei num_primitives) const
DLL_API void draw_patches(GLsizei num_primitives) const
DLL_API void draw(Primitive primitive, GLsizei num_primitives) const
DLL_API vertexarray & operator=(vertexarray &&other)=default
DLL_API void draw(GLsizei num_primitives) const
DLL_API void draw_line_strip(GLsizei num_primitives) const
Definition: ansiformat.h:6
Primitive
Definition: primitive.h:8
Definition: idholder.h:31