qmlfrontend/engine_instance.h
author raptor <buckyballreaction@gmail.com>
Tue, 13 Aug 2019 13:10:12 -0600
branch0.9.25
changeset 15331 93b43cf0b792
parent 14290 92e5682810d4
child 14372 b6824a53d4b1
permissions -rw-r--r--
Fix compiling on MacOS X by requiring c++11 standard. Building now requires MacOS X 10.8+ and CMake 3.9+

#ifndef ENGINEINSTANCE_H
#define ENGINEINSTANCE_H

#include "engine_interface.h"

#include <QObject>
#include <QOpenGLContext>

#include "game_config.h"

class EngineInstance : public QObject {
  Q_OBJECT
 public:
  explicit EngineInstance(QObject* parent = nullptr);
  ~EngineInstance();

  void sendConfig(const GameConfig& config);
  void advance(quint32 ticks);
  void renderFrame();
  void setOpenGLContext(QOpenGLContext* context);
  Engine::PreviewInfo generatePreview();

 signals:

 public slots:

 private:
  Engine::EngineInstance* m_instance;
};

#endif  // ENGINEINSTANCE_H