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, 6 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.