1 // gps.hxx - distance-measuring equipment.
2 // Written by David Megginson, started 2003.
4 // This file is in the Public Domain and comes with no warranty.
7 #ifndef __INSTRUMENTS_GPS_HXX
8 #define __INSTRUMENTS_GPS_HXX 1
11 # error This library requires C++
14 #include <simgear/misc/props.hxx>
15 #include <Main/fgfs.hxx>
23 * /position/longitude-deg
24 * /position/latitude-deg
25 * /position/altitude-ft
26 * /environment/magnetic-variation-deg
27 * /systems/electrical/outputs/gps
28 * /instrumentation/gps/serviceable
32 * /instrumentation/gps/indicated-longitude-deg
33 * /instrumentation/gps/indicated-latitude-deg
34 * /instrumentation/gps/indicated-altitude-ft
35 * /instrumentation/gps/indicated-track-true-deg
36 * /instrumentation/gps/indicated-track-magnetic-deg
37 * /instrumentation/gps/indicated-ground-speed-kt
39 class GPS : public FGSubsystem
48 virtual void update (double delta_time_sec);
52 void search (double frequency, double longitude_rad,
53 double latitude_rad, double altitude_m);
55 SGPropertyNode_ptr _longitude_node;
56 SGPropertyNode_ptr _latitude_node;
57 SGPropertyNode_ptr _altitude_node;
58 SGPropertyNode_ptr _magvar_node;
59 SGPropertyNode_ptr _serviceable_node;
60 SGPropertyNode_ptr _electrical_node;
62 SGPropertyNode_ptr _raim_node;
63 SGPropertyNode_ptr _indicated_longitude_node;
64 SGPropertyNode_ptr _indicated_latitude_node;
65 SGPropertyNode_ptr _indicated_altitude_node;
66 SGPropertyNode_ptr _true_track_node;
67 SGPropertyNode_ptr _magnetic_track_node;
68 SGPropertyNode_ptr _speed_node;
71 double _last_longitude_deg;
72 double _last_latitude_deg;
73 double _last_altitude_m;
78 #endif // __INSTRUMENTS_GPS_HXX