]> git.mxchange.org Git - flightgear.git/blob - src/Systems/static.hxx
Fix a couple of 64-bit warnings identified by GCC.
[flightgear.git] / src / Systems / static.hxx
1 // static.hxx - the static air system.
2 // Written by David Megginson, started 2002.
3 //
4 // This file is in the Public Domain and comes with no warranty.
5
6
7 #ifndef __SYSTEMS_STATIC_HXX
8 #define __SYSTEMS_STATIC_HXX 1
9
10 #ifndef __cplusplus
11 # error This library requires C++
12 #endif
13
14 #include <simgear/props/props.hxx>
15 #include <simgear/structure/subsystem_mgr.hxx>
16
17
18 /**
19  * Model a static air system.
20  *
21  * Input properties:
22  *
23  * /environment/pressure-inhg
24  * /systems/"name"/serviceable
25  *
26  * Output properties:
27  *
28  * /systems/"name"/pressure-inhg
29  *
30  * TODO: support specific locations
31  * TODO: support alternate air with errors
32  */
33 class StaticSystem : public SGSubsystem
34 {
35
36 public:
37
38     StaticSystem ( SGPropertyNode *node );
39     StaticSystem ( int i );
40     virtual ~StaticSystem ();
41
42     virtual void init ();
43     virtual void reinit ();
44     virtual void bind ();
45     virtual void unbind ();
46     virtual void update (double dt);
47
48 private:
49
50     std::string _name;
51     int _num;
52     double _tau;
53     SGPropertyNode_ptr _serviceable_node;
54     SGPropertyNode_ptr _pressure_in_node;
55     SGPropertyNode_ptr _pressure_out_node;
56     
57 };
58
59 #endif // __SYSTEMS_STATIC_HXX