source: flair-src/trunk/lib/FlairSimulator/src/Plane.h@ 458

Last change on this file since 458 was 458, checked in by Sanahuja Guillaume, 8 months ago

update plane

File size: 1.5 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: 2021/12/22
6// filename: Plane.h
7//
8// author: Armando Alatorre Sevilla, Guillaume Sanahuja
9// Copyright Heudiasyc UMR UTC/CNRS 7253
10//
11// version: $Id: $
12//
13// purpose: classe definissant un avion
14//
15/*********************************************************************/
16
17#ifndef PLANE_H
18#define PLANE_H
19
20#include <Model.h>
21
22namespace flair {
23namespace core {
24class Mutex;
25}
26namespace gui {
27class DoubleSpinBox;
28class SpinBox;
29}
30namespace actuator {
31class SimuBldc;
32class SimuServos;
33}
34}
35
36#ifdef GL
37namespace irr {
38namespace scene {
39class IMesh;
40}
41}
42#endif
43
44namespace flair {
45namespace simulator {
46class Blade;
47class MeshSceneNode;
48
49class Plane : public Model {
50public:
51 Plane(std::string name, uint32_t modelId);
52 ~Plane();
53#ifdef GL
54 virtual void Draw(void);
55 virtual void ExtraDraw(void){};
56#endif
57
58private:
59 void CalcModel(void);
60#ifdef GL
61 void AnimateModel(void);
62 size_t dbtSize(void) const;
63 void WritedbtBuf(char *dbtbuf);
64 void ReaddbtBuf(char *dbtbuf);
65 core::Mutex *actuators_mutex;
66 Blade *f_blade;
67 MeshSceneNode *l_axe_aileron,*r_axe_aileron;
68#endif
69
70 actuator::SimuBldc *motor;
71 actuator::SimuServos *servos;
72 float motor_speed,servos_pos[2];//servo pos in radians
73 gui::DoubleSpinBox *m;
74 gui::SpinBox *motorTimeout;
75};
76} // end namespace simulator
77} // end namespace flair
78#endif // PLANE_H
Note: See TracBrowser for help on using the repository browser.