xref: /aosp_15_r20/external/libkmsxx/kmscube/cube-gles2.h (revision f0687c8a10b3e371dbe09214db6664e37c283cca)
1*f0687c8aSRaman Tenneti #pragma once
2*f0687c8aSRaman Tenneti 
3*f0687c8aSRaman Tenneti #include <GLES2/gl2.h>
4*f0687c8aSRaman Tenneti 
5*f0687c8aSRaman Tenneti class GlScene
6*f0687c8aSRaman Tenneti {
7*f0687c8aSRaman Tenneti public:
8*f0687c8aSRaman Tenneti 	GlScene();
9*f0687c8aSRaman Tenneti 
10*f0687c8aSRaman Tenneti 	GlScene(const GlScene& other) = delete;
11*f0687c8aSRaman Tenneti 	GlScene& operator=(const GlScene& other) = delete;
12*f0687c8aSRaman Tenneti 
13*f0687c8aSRaman Tenneti 	void set_viewport(uint32_t width, uint32_t height);
14*f0687c8aSRaman Tenneti 
15*f0687c8aSRaman Tenneti 	void draw(uint32_t framenum);
16*f0687c8aSRaman Tenneti 
17*f0687c8aSRaman Tenneti private:
18*f0687c8aSRaman Tenneti 	GLint m_modelviewmatrix, m_modelviewprojectionmatrix, m_normalmatrix;
19*f0687c8aSRaman Tenneti 
20*f0687c8aSRaman Tenneti 	uint32_t m_width;
21*f0687c8aSRaman Tenneti 	uint32_t m_height;
22*f0687c8aSRaman Tenneti };
23