46 lines
700 B
C
46 lines
700 B
C
|
#ifndef TERMG_PRIVATE_H
|
||
|
#define TERMG_PRIVATE_H
|
||
|
|
||
|
#include "glerminal.h"
|
||
|
|
||
|
#include <glad/glad.h>
|
||
|
#include <GLFW/glfw3.h>
|
||
|
|
||
|
#include <stdexcept>
|
||
|
|
||
|
namespace glerminal
|
||
|
{
|
||
|
class glerminal
|
||
|
{
|
||
|
public:
|
||
|
glerminal(glerminal_main_cb main);
|
||
|
~glerminal();
|
||
|
|
||
|
glerminal(const glerminal&) = delete;
|
||
|
glerminal(glerminal&&) = delete;
|
||
|
|
||
|
glerminal& operator=(const glerminal&) = delete;
|
||
|
glerminal& operator=(glerminal&&) = delete;
|
||
|
|
||
|
void run();
|
||
|
|
||
|
void flush();
|
||
|
|
||
|
private:
|
||
|
GLFWwindow* m_window;
|
||
|
|
||
|
unsigned int m_vbo;
|
||
|
unsigned int m_vao;
|
||
|
unsigned int m_program;
|
||
|
|
||
|
glerminal_main_cb m_main;
|
||
|
|
||
|
void init_glfw();
|
||
|
void init_gl();
|
||
|
|
||
|
void deinit_glfw();
|
||
|
void deinit_gl();
|
||
|
};
|
||
|
}
|
||
|
|
||
|
#endif//TERMG_PRIVATE_H
|