#ifndef SPECTRE_GFXDRIVER_GFXDRIVER_H #define SPECTRE_GFXDRIVER_GFXDRIVER_H #include namespace sp { class GfxDriver { public: enum BufferFlags { CLEAR_BUFFER_BIT, }; public: virtual std::string getVendor() const = 0; virtual void setViewport(int x, int y, int width, int height) = 0; virtual void setClearColor(float r, float g, float b, float a) = 0; virtual void clearBuffer(BufferFlags flags) = 0; virtual void clearColorBuffer() = 0; // Resources. // CreateIndexBuffer() // CreateVertexBuffer() // Draw calls }; } // namespace sp #endif /* SPECTRE_GFXDRIVER_GFXDRIVER_H */