source-tree refactoring
This commit is contained in:
42
src/core/openglwindow.h
Normal file
42
src/core/openglwindow.h
Normal file
@@ -0,0 +1,42 @@
|
||||
#include "qglengine_core_export.h"
|
||||
|
||||
#include <QOpenGLExtraFunctions>
|
||||
#include <QWindow>
|
||||
|
||||
class QPainter;
|
||||
class QOpenGLContext;
|
||||
class QOpenGLPaintDevice;
|
||||
|
||||
|
||||
class QGLENGINE_CORE_EXPORT OpenGLWindow
|
||||
: public QWindow
|
||||
, public QOpenGLExtraFunctions {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit OpenGLWindow(QWindow * parent = nullptr);
|
||||
virtual ~OpenGLWindow() {}
|
||||
|
||||
virtual void render() {}
|
||||
virtual void initialize() {}
|
||||
|
||||
QOpenGLContext * context() { return m_context; }
|
||||
void setVSync(bool on);
|
||||
bool getVSync() const;
|
||||
// void setSamples(int samples);
|
||||
// int getSamples() const;
|
||||
int getFrameCounter() const { return frame_cnt; }
|
||||
|
||||
public slots:
|
||||
void renderLater();
|
||||
void renderNow();
|
||||
|
||||
protected:
|
||||
bool event(QEvent * event) override;
|
||||
void exposeEvent(QExposeEvent * event) override;
|
||||
|
||||
private:
|
||||
QOpenGLContext * m_context = nullptr;
|
||||
bool format_change = false;
|
||||
int frame_cnt = 0;
|
||||
};
|
||||
Reference in New Issue
Block a user