mirror of
https://github.com/TomHarte/CLK.git
synced 2024-12-13 00:29:14 +00:00
46 lines
823 B
C++
46 lines
823 B
C++
//
|
|
// Rectangle.hpp
|
|
// Clock Signal
|
|
//
|
|
// Created by Thomas Harte on 11/07/2018.
|
|
// Copyright © 2018 Thomas Harte. All rights reserved.
|
|
//
|
|
|
|
#ifndef Rectangle_hpp
|
|
#define Rectangle_hpp
|
|
|
|
#include "../OpenGL.hpp"
|
|
#include "Shader.hpp"
|
|
#include <memory>
|
|
|
|
namespace Outputs {
|
|
namespace Display {
|
|
namespace OpenGL {
|
|
|
|
/*!
|
|
Provides a wrapper for drawing a solid, single-colour rectangle.
|
|
*/
|
|
class Rectangle {
|
|
public:
|
|
/*!
|
|
Instantiates an instance of Rectange with the coordinates given.
|
|
*/
|
|
Rectangle(float x, float y, float width, float height);
|
|
|
|
/*!
|
|
Draws this rectangle in the colour supplied.
|
|
*/
|
|
void draw(float red, float green, float blue);
|
|
|
|
private:
|
|
Shader pixel_shader_;
|
|
GLuint drawing_vertex_array_ = 0, drawing_array_buffer_ = 0;
|
|
GLint colour_uniform_;
|
|
};
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
#endif /* Rectangle_hpp */
|