source: flair-src/trunk/lib/FlairSimulator/src/X8.h@ 370

Last change on this file since 370 was 370, checked in by Sanahuja Guillaume, 3 years ago

add abilitiy to change x4 and x8 arm color from ground station

File size: 1.6 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: 2014/04/03
6// filename: X8.h
7//
8// author: Majd Saied, Guillaume Sanahuja
9// Copyright Heudiasyc UMR UTC/CNRS 7253
10//
11// version: $Id: $
12//
13// purpose: classe definissant un X8
14//
15/*********************************************************************/
16
17#ifndef X8_H
18#define X8_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;
32}
33}
34
35#ifdef GL
36namespace irr {
37namespace scene {
38class IMesh;
39}
40}
41#endif
42
43namespace flair {
44namespace simulator {
45class Blade;
46
47class X8 : public Model {
48public:
49 X8(std::string name, uint32_t modelId);
50 ~X8();
51 virtual void Draw(void);
52 virtual void ExtraDraw(void){};
53
54protected:
55
56private:
57 void CalcModel(void);
58#ifdef GL
59 void AnimateModel(void);
60 size_t dbtSize(void) const;
61 void WritedbtBuf(char *dbtbuf);
62 void ReaddbtBuf(char *dbtbuf);
63 core::Mutex *motor_speed_mutex;
64 Blade *tfl_blade, *tfr_blade, *trl_blade, *trr_blade;
65 Blade *bfl_blade, *bfr_blade, *brl_blade, *brr_blade;
66 irr::scene::IMesh *colored_arm;
67#endif
68
69 actuator::SimuBldc *motors;
70 float motor_speed[8];
71 gui::DoubleSpinBox *m, *arm_length, *l_cg;
72 gui::DoubleSpinBox *k_mot, *c_mot;
73 gui::DoubleSpinBox *f_air_vert, *f_air_lat;
74 gui::DoubleSpinBox *j_roll, *j_pitch, *j_yaw;
75 gui::DoubleSpinBox *j_r, *sigma, *S;
76 gui::SpinBox *motorTimeout;
77 gui::SpinBox *armColorR,*armColorG,*armColorB;
78};
79} // end namespace simulator
80} // end namespace flair
81#endif // X8_H
Note: See TracBrowser for help on using the repository browser.