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

Last change on this file since 15 was 15, checked in by Bayard Gildas, 6 years ago

sources reformatted with flair-format-dir script

File size: 2.2 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 {
27class IrrlichtDevice;
28namespace scene {
29class ISceneManager;
30class IMeshSceneNode;
31class ITriangleSelector;
32}
33namespace video {
34class IVideoDriver;
35}
36namespace gui {
37class IGUIFont;
38class IGUIEnvironment;
39}
40}
41
42namespace flair {
43namespace core {
44class Object;
45}
46namespace simulator {
47class Model;
48class GenericObject;
49class Gui;
50}
51}
52
53class MyEventReceiver;
54
55class Gui_impl {
56public:
57  Gui_impl(flair::simulator::Gui *self, int app_width, int app_height,
58           int scene_width, int scene_height, std::string media_path,
59           irr::video::E_DRIVER_TYPE driver_type = irr::video::EDT_OPENGL);
60  ~Gui_impl();
61  void RunGui(std::vector<flair::simulator::Model *> modeles,
62              std::vector<flair::simulator::GenericObject *> objects);
63  void setMesh(std::string file,
64               irr::core::vector3df position = irr::core::vector3df(0, 0, 0),
65               irr::core::vector3df rotation = irr::core::vector3df(0, 0, 0),
66               irr::core::vector3df scale = irr::core::vector3df(1, 1, 1));
67
68  irr::scene::IMeshSceneNode *node;
69  irr::IrrlichtDevice *device;
70  std::string media_path;
71  irr::video::IVideoDriver *driver;
72  irr::scene::ISceneManager *smgr;
73  int scene_width, scene_height;
74
75private:
76  MyEventReceiver *receiver;
77  irr::scene::ITriangleSelector *selector;
78  irr::gui::IGUIFont *font;
79  irr::gui::IGUIEnvironment *env;
80  void setWindowCaption(flair::core::Object *object, int fps);
81  void takeScreenshot(void);
82  hdfile_t *dbtFile_r, *dbtFile_w;
83  size_t dbtSize(std::vector<flair::simulator::Model *> modeles);
84  char *dbtbuf;
85  flair::simulator::Gui *self;
86};
87
88#endif // GUI_IMPL_H
Note: See TracBrowser for help on using the repository browser.