61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef BLUECORE_APPLICATION_H
 | |
| #define BLUECORE_APPLICATION_H
 | |
| 
 | |
| #include "RenderWindow.h"
 | |
| #include "RenderDevice.h"
 | |
| #include "FontManager.h"
 | |
| #include "MeshManager.h"
 | |
| #include "TextureManager.h"
 | |
| #include "ShaderManager.h"
 | |
| #include "ModelManager.h"
 | |
| #include "TextureImage.h"
 | |
| #include "ScriptSystem.h"
 | |
| #include "RigidBodySimulation.h"
 | |
| #include "SceneGraph.h"
 | |
| 
 | |
| namespace BlueCore
 | |
| {
 | |
| class Application : public Referenced, public sigslot::has_slots<>
 | |
| {
 | |
| 	bool _Running;
 | |
| 	bool _Paused;
 | |
| 	
 | |
| 	double _SimulationTime;
 | |
| 	double _StartTime;
 | |
| 	double _LastTime;
 | |
| 
 | |
| 	double _CameraPhi, _CameraTheta, _CameraRadius;
 | |
| 	int _LastMouseX, _LastMouseY, _LastWheel;
 | |
| 
 | |
| 	ref_ptr<RenderWindow> _Window;
 | |
| 	ref_ptr<RenderDevice> _Device;
 | |
| 	ref_ptr<FontManager> _FontManager;
 | |
| 	ref_ptr<MeshManager> _MeshManager;
 | |
| 	ref_ptr<TextureManager> _TextureManager;
 | |
| 	ref_ptr<ScriptSystem> _ScriptSystem;
 | |
| 	ref_ptr<ShaderManager> _ShaderManager;
 | |
| 	ref_ptr<RigidBodySimulation> _Simulation;
 | |
| 	ref_ptr<ModelManager> _ModelManager;
 | |
| 	ref_ptr<RenderQueue> _RenderQueue;
 | |
| 	ref_ptr<SceneGraph>	_SceneGraph;
 | |
| 	
 | |
| 
 | |
| 	void KeySlot(int key, int action);
 | |
| 	void MouseMoveSlot(int x, int y);
 | |
| 	void MouseWheelSlot(int z);
 | |
| 
 | |
| public:
 | |
| 
 | |
| 	bool initialize();
 | |
| 	void shutdown();
 | |
| 	void quit();
 | |
| 	void run();
 | |
| 	void togglePause();
 | |
| 	
 | |
| 	void setSceneGraph (SceneGraph *scenegraph);
 | |
| };
 | |
| 
 | |
| }
 | |
| 
 | |
| #endif /*APPLICATION_H_*/
 | 
