2014-11-14 15:47:47 +00:00
|
|
|
#ifndef MAIN_HH_INCLUDED
|
|
|
|
#define MAIN_HH_INCLUDED
|
2014-10-20 15:31:26 +00:00
|
|
|
#include <ACGL/OpenGL/GL.hh>
|
2014-11-14 15:47:47 +00:00
|
|
|
#include <ACGL/Math/Math.hh>
|
2014-10-20 15:31:26 +00:00
|
|
|
|
|
|
|
#include <GLFW/glfw3.h>
|
|
|
|
#include <ACGL/OpenGL/Objects/ArrayBuffer.hh>
|
2014-11-14 15:47:47 +00:00
|
|
|
////////////////////////////////////////////////////////////////////
|
2014-10-20 15:31:26 +00:00
|
|
|
|
2014-10-20 16:16:47 +00:00
|
|
|
#include "physics.hh"
|
|
|
|
#include "graphics.hh"
|
|
|
|
#include "level.hh"
|
|
|
|
|
2014-11-14 15:47:47 +00:00
|
|
|
/////////////////////////////////////////////////////////////////
|
|
|
|
class Application {
|
|
|
|
public:
|
|
|
|
Application();
|
|
|
|
Graphics* getGraphics();
|
|
|
|
Level* getLevel();
|
|
|
|
ACGL::OpenGL::SharedShaderProgram getShader();
|
|
|
|
void init();
|
2014-11-25 15:01:13 +00:00
|
|
|
void setFocused(bool focused);
|
|
|
|
bool isFocused();
|
|
|
|
void setCameraLock(bool locked);
|
|
|
|
bool isLocked();
|
|
|
|
void ignoreNextMouseUpdate();
|
|
|
|
int getIgnoredMouseUpdates();
|
|
|
|
void ignoredOneMouseUpdate();
|
2014-11-14 15:47:47 +00:00
|
|
|
private:
|
2014-11-25 15:01:13 +00:00
|
|
|
int ignoredMouseUpdates;
|
|
|
|
bool focused;
|
|
|
|
bool cameraLock;
|
2014-11-14 15:47:47 +00:00
|
|
|
Graphics graphics;
|
|
|
|
Level level;
|
|
|
|
ACGL::OpenGL::SharedShaderProgram shader;
|
|
|
|
};
|
2014-10-20 15:31:26 +00:00
|
|
|
|
2014-11-15 14:19:48 +00:00
|
|
|
Application app;
|
2014-11-14 15:47:47 +00:00
|
|
|
#endif
|