]> git.mxchange.org Git - flightgear.git/blob - src/Main/model.hxx
Separated 3D model-handling code from main.cxx out into its own
[flightgear.git] / src / Main / model.hxx
1 // model.hxx - manage a 3D aircraft model.
2 // Written by David Megginson, started 2002.
3 //
4 // This file is in the Public Domain, and comes with no warranty.
5
6 #ifndef __MODEL_HXX
7 #define __MODEL_HXX 1
8
9 #ifndef __cplusplus
10 # error This library requires C++
11 #endif
12
13 #include "fgfs.hxx"
14 #include <simgear/timing/timestamp.hxx>
15
16 class FGAircraftModel : public FGSubsystem
17 {
18 public:
19
20   FGAircraftModel ();
21   virtual ~FGAircraftModel ();
22
23   virtual void init ();
24   virtual void bind ();
25   virtual void unbind ();
26   virtual void update (int dt);
27
28 private:
29
30   ssgEntity * _object;
31   ssgSelector * _selector;
32   ssgTransform * _position;
33
34   SGTimeStamp _last_timestamp;
35   SGTimeStamp _current_timestamp;
36
37   ssgTransform * _prop_position;
38
39 };
40
41 extern FGAircraftModel current_model;
42
43 #endif // __MODEL_HXX
44