FlightGear next
dme.hxx
Go to the documentation of this file.
1/*
2 * SPDX-License-Identifier: CC0-1.0
3 *
4 * dme.hxx - distance-measuring equipment.
5 * Written by David Megginson, started 2003.
6 *
7 * This file is in the Public Domain and comes with no warranty.
8*/
9
10#pragma once
11
13
14// forward decls
15class FGNavRecord;
16
37class DME : public AbstractInstrument
38{
39public:
40 DME ( SGPropertyNode *node );
41 virtual ~DME ();
42
43 // Subsystem API.
44 void init() override;
45 void reinit() override;
46 void update(double delta_time_sec) override;
47
48 // Subsystem identification.
49 static const char* staticSubsystemClassId() { return "dme"; }
50
51private:
52 void clear();
53
54 SGPropertyNode_ptr _source_node;
55 SGPropertyNode_ptr _frequency_node;
56
57 SGPropertyNode_ptr _in_range_node;
58 SGPropertyNode_ptr _distance_node;
59 SGPropertyNode_ptr _speed_node;
60 SGPropertyNode_ptr _time_node;
61 SGPropertyNode_ptr _ident_btn_node;
62 SGPropertyNode_ptr _volume_node;
63
64 SGPropertyNode_ptr _distance_string;
65 SGPropertyNode_ptr _speed_string;
66 SGPropertyNode_ptr _time_string;
67
68 double _last_distance_nm;
69 double _last_frequency_mhz;
70 double _time_before_search_sec;
71
72 FGNavRecord * _navrecord;
73
74 class AudioIdent * _audioIdent;
75};
void reinit() override
Definition dme.cxx:135
static const char * staticSubsystemClassId()
Definition dme.hxx:49
void update(double delta_time_sec) override
Definition dme.cxx:142
DME(SGPropertyNode *node)
Definition dme.cxx:78
void init() override
Definition dme.cxx:94
virtual ~DME()
Definition dme.cxx:88
static void clear(FGReplayInternal &self)