]> git.tdb.fi Git - libs/gl.git/blob - source/core/commands.h
Add an abstraction for queries
[libs/gl.git] / source / core / commands.h
1 #ifndef MSP_GL_COMMANDS_H_
2 #define MSP_GL_COMMANDS_H_
3
4 #include "framebuffer.h"
5
6 namespace Msp {
7 namespace GL {
8
9 class Batch;
10 class PipelineState;
11 class QueryPool;
12
13 class Commands
14 {
15 private:
16         const PipelineState *pipeline_state;
17
18 public:
19         Commands();
20
21         void use_pipeline(const PipelineState *);
22         void clear(const ClearValue *);
23         void draw(const Batch &);
24         void draw_instanced(const Batch &, unsigned);
25         void resolve_multisample(Framebuffer &);
26
27         void begin_query(const QueryPool &, unsigned);
28         void end_query(const QueryPool &, unsigned);
29 };
30
31 } // namespace GL
32 } // namespace Msp
33
34 #endif