]> git.mxchange.org Git - flightgear.git/blobdiff - src/Instrumentation/dme.hxx
Allow distinct rule and symbol definitions for navDisplays.
[flightgear.git] / src / Instrumentation / dme.hxx
index 2604b831db641fa4159d83f2c46719c3aa1c21b3..084fd8207569fc5e770258116112ee873d444ddd 100644 (file)
@@ -7,15 +7,9 @@
 #ifndef __INSTRUMENTS_DME_HXX
 #define __INSTRUMENTS_DME_HXX 1
 
-#ifndef __cplusplus
-# error This library requires C++
-#endif
-
-#include <simgear/math/point3d.hxx>
 #include <simgear/props/props.hxx>
 #include <simgear/structure/subsystem_mgr.hxx>
 
-
 /**
  * Model a DME radio.
  *
  * /position/latitude-deg
  * /position/altitude-ft
  * /systems/electrical/outputs/dme
- * /instrumentation/dme/serviceable
- * /instrumentation/dme/frequencies/source
- * /instrumentation/dme/frequencies/selected-mhz
+ * /instrumentation/"name"/serviceable
+ * /instrumentation/"name"/frequencies/source
+ * /instrumentation/"name"/frequencies/selected-mhz
  *
  * Output properties:
  *
- * /instrumentation/dme/in-range
- * /instrumentation/dme/indicated-distance-nm
- * /instrumentation/dme/indicated-ground-speed-kt
- * /instrumentation/dme/indicated-time-kt
+ * /instrumentation/"name"/in-range
+ * /instrumentation/"name"/indicated-distance-nm
+ * /instrumentation/"name"/indicated-ground-speed-kt
+ * /instrumentation/"name"/indicated-time-kt
  */
 class DME : public SGSubsystem
 {
 
 public:
 
-    DME ();
+    DME ( SGPropertyNode *node );
     virtual ~DME ();
 
     virtual void init ();
@@ -49,12 +43,6 @@ public:
 
 private:
 
-    void search (double frequency, double longitude_rad,
-                 double latitude_rad, double altitude_m);
-
-    SGPropertyNode_ptr _longitude_node;
-    SGPropertyNode_ptr _latitude_node;
-    SGPropertyNode_ptr _altitude_node;
     SGPropertyNode_ptr _serviceable_node;
     SGPropertyNode_ptr _electrical_node;
     SGPropertyNode_ptr _source_node;
@@ -64,17 +52,19 @@ private:
     SGPropertyNode_ptr _distance_node;
     SGPropertyNode_ptr _speed_node;
     SGPropertyNode_ptr _time_node;
+    SGPropertyNode_ptr _ident_btn_node;
+    SGPropertyNode_ptr _volume_node;
 
     double _last_distance_nm;
     double _last_frequency_mhz;
     double _time_before_search_sec;
 
-    bool _transmitter_valid;
-    Point3D _transmitter;
-    double _transmitter_elevation_ft;
-    double _transmitter_range_nm;
-    double _transmitter_bias;
+    FGNavRecord * _navrecord;
+
+    std::string _name;
+    int _num;
 
+    class AudioIdent * _audioIdent;
 };