1 #ifndef MSP_GL_RENDERER_BACKEND_H_
2 #define MSP_GL_RENDERER_BACKEND_H_
4 #include <msp/core/noncopyable.h>
6 #include "pipelinestate.h"
11 class VulkanRenderer: public NonCopyable
14 std::map<std::uintptr_t, PipelineState> pipeline_states;
15 PipelineState *current_pipeline = 0;
16 Semaphore *begin_semaphore = 0;
17 Semaphore *end_semaphore = 0;
22 void begin(Semaphore &);
25 void end(Semaphore &);
27 void set_pipeline_key(std::uintptr_t);
28 PipelineState &get_pipeline_state() { return *current_pipeline; }
31 using RendererBackend = VulkanRenderer;