]> git.mxchange.org Git - flightgear.git/blob - src/FDM/YASim/FGGround.hpp
Merge branch 'durk/atcdcl-cond'
[flightgear.git] / src / FDM / YASim / FGGround.hpp
1 #ifndef _FGGROUND_HPP
2 #define _FGGROUND_HPP
3
4 #include "Ground.hpp"
5
6 class FGInterface;
7 class SGMaterial;
8
9 namespace yasim {
10
11 // The XYZ coordinate system has Z as the earth's axis, the Y axis
12 // pointing out the equator at zero longitude, and the X axis pointing
13 // out the middle of the western hemisphere.
14 class FGGround : public Ground {
15 public:
16     FGGround(FGInterface *iface);
17     virtual ~FGGround();
18
19     virtual void getGroundPlane(const double pos[3],
20                                 double plane[4], float vel[3]);
21
22     virtual void getGroundPlane(const double pos[3],
23                                 double plane[4], float vel[3],
24                                 const SGMaterial **material);
25
26     virtual bool caughtWire(const double pos[4][3]);
27
28     virtual bool getWire(double end[2][3], float vel[2][3]);
29
30     virtual void releaseWire(void);
31
32     virtual float getCatapult(const double pos[3],
33                               double end[2][3], float vel[2][3]);
34
35     void setTimeOffset(double toff);
36
37 private:
38     FGInterface *_iface;
39     double _toff;
40 };
41
42 }; // namespace yasim
43 #endif // _FGGROUND_HPP