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