#pragma once

#include "Program.hpp"

namespace pass {
    /// Solid colors pass
    class ColorProgram: public Program {
    public:
        ColorProgram();
        ~ColorProgram();

        void setup(render::gl::Renderer *, glm::mat4 modelMatrix, glm::vec4 color);

    protected:
        std::string getName() const override;
        void setMVP(const GLfloat *matrix);
        void setCol(const GLfloat *color);

    private:
        GLuint MVPMatrixID;
        GLuint ColID;
    };
}
