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/props/props.hxx>
16 #include <Main/fgfs.hxx>
24 * /position/longitude-deg
25 * /position/latitude-deg
26 * /position/altitude-ft
27 * /environment/magnetic-variation-deg
28 * /systems/electrical/outputs/gps
29 * /instrumentation/gps/serviceable
33 * /instrumentation/gps/indicated-longitude-deg
34 * /instrumentation/gps/indicated-latitude-deg
35 * /instrumentation/gps/indicated-altitude-ft
36 * /instrumentation/gps/indicated-track-true-deg
37 * /instrumentation/gps/indicated-track-magnetic-deg
38 * /instrumentation/gps/indicated-ground-speed-kt
40 class GPS : public FGSubsystem
49 virtual void update (double delta_time_sec);
53 void search (double frequency, double longitude_rad,
54 double latitude_rad, double altitude_m);
56 SGPropertyNode_ptr _longitude_node;
57 SGPropertyNode_ptr _latitude_node;
58 SGPropertyNode_ptr _altitude_node;
59 SGPropertyNode_ptr _magvar_node;
60 SGPropertyNode_ptr _serviceable_node;
61 SGPropertyNode_ptr _electrical_node;
63 SGPropertyNode_ptr _raim_node;
64 SGPropertyNode_ptr _indicated_longitude_node;
65 SGPropertyNode_ptr _indicated_latitude_node;
66 SGPropertyNode_ptr _indicated_altitude_node;
67 SGPropertyNode_ptr _true_track_node;
68 SGPropertyNode_ptr _magnetic_track_node;
69 SGPropertyNode_ptr _speed_node;
72 double _last_longitude_deg;
73 double _last_latitude_deg;
74 double _last_altitude_m;
79 #endif // __INSTRUMENTS_GPS_HXX