source: flair-src/trunk/lib/FlairSimulator/src/unexported/Gui_impl.h@ 10

Last change on this file since 10 was 10, checked in by Sanahuja Guillaume, 7 years ago

lic

File size: 2.3 KB
Line 
1// %flair:license{
2// This file is part of the Flair framework distributed under the
3// CECILL-C License, Version 1.0.
4// %flair:license}
5// created: 2013/03/27
6// filename: Gui_impl.h
7//
8// author: Guillaume Sanahuja
9// Copyright Heudiasyc UMR UTC/CNRS 7253
10//
11// version: $Id: $
12//
13// purpose: classe definissant une Gui
14//
15/*********************************************************************/
16
17#ifndef GUI_IMPL_H
18#define GUI_IMPL_H
19
20#include <string>
21#include <vector>
22#include <io_hdfile.h>
23#include <EDriverTypes.h>
24#include <vector3d.h>
25
26namespace irr
27{
28 class IrrlichtDevice;
29 namespace scene
30 {
31 class ISceneManager;
32 class IMeshSceneNode;
33 class ITriangleSelector;
34 }
35 namespace video
36 {
37 class IVideoDriver;
38 }
39 namespace gui
40 {
41 class IGUIFont;
42 class IGUIEnvironment;
43 }
44}
45
46namespace flair
47{
48 namespace core
49 {
50 class Object;
51 }
52 namespace simulator
53 {
54 class Model;
55 class GenericObject;
56 class Gui;
57 }
58}
59
60class MyEventReceiver;
61
62class Gui_impl
63{
64 public:
65 Gui_impl(flair::simulator::Gui* self,int app_width, int app_height,int scene_width, int scene_height,std::string media_path,irr::video::E_DRIVER_TYPE driver_type=irr::video::EDT_OPENGL);
66 ~Gui_impl();
67 void RunGui(std::vector<flair::simulator::Model*> modeles,std::vector<flair::simulator::GenericObject*> objects);
68 void setMesh(std::string file,irr::core::vector3df position = irr::core::vector3df(0,0,0),irr::core::vector3df rotation= irr::core::vector3df(0,0,0),irr::core::vector3df scale= irr::core::vector3df(1,1,1));
69
70 irr::scene::IMeshSceneNode* node;
71 irr::IrrlichtDevice *device;
72 std::string media_path;
73 irr::video::IVideoDriver* driver;
74 irr::scene::ISceneManager* smgr;
75 int scene_width,scene_height;
76
77 private:
78 MyEventReceiver *receiver;
79 irr::scene::ITriangleSelector* selector;
80 irr::gui::IGUIFont* font;
81 irr::gui::IGUIEnvironment* env;
82 void setWindowCaption(flair::core::Object* object, int fps);
83 void takeScreenshot(void);
84 hdfile_t *dbtFile_r,*dbtFile_w;
85 size_t dbtSize(std::vector<flair::simulator::Model*> modeles);
86 char* dbtbuf;
87 flair::simulator::Gui *self;
88};
89
90#endif // GUI_IMPL_H
Note: See TracBrowser for help on using the repository browser.