#ifndef OPENGL_RENDERER_API_HPP
#define OPENGL_RENDERER_API_HPP

#include "open_engine/renderer/renderer_api.hpp"
#include <cstdint>

namespace OpenEngine {
    class OpenGLRendererAPI : public RendererAPI
    {
        public:
            virtual void Init() override;

            virtual void SetViewport(uint32_t x, uint32_t y, uint32_t width, uint32_t height) override;

            virtual void SetClearColor(const glm::vec4& color) override;
            virtual void Clear() override;

            virtual void DrawIndexed(const Ref<VertexArray>& vertex_array, uint32_t index_count = 0) override;
    };
}

#endif // OPENGL_RENDEREAPI_HPP
