Zen 0.3.0
Loading...
Searching...
No Matches
ZEN_RendererAPI.h
1#pragma once
2
3#include <zen/zen_pch.h>
4
5#include <zen/renderer/ZEN_VertexArray.h>
6
7namespace Zen {
8 class RendererAPI {
9 public:
10 enum class API { None = 0, OpenGL = 1 };
11
12 virtual void setClearColour(const glm::vec4 &colour) = 0;
13
14 virtual void clear() = 0;
15
16 virtual void setViewport(int width, int height) = 0;
17
18 virtual void drawIndexed(const std::shared_ptr<VertexArray> &vertexArray) = 0;
19
20 static API getAPI() { return s_API; }
21
22 private:
23 static API s_API;
24 };
25}; // namespace Zen