_name(node->getStringValue("name", "nav")),
_num(node->getIntValue("number", 0)),
_time_before_search_sec(-1.0),
- _falseCoursesEnabled(true),
_sgr(NULL)
{
SGPath path( globals->get_fg_root() );
tofrom_serviceable_node = createServiceableProp(node, "to-from");
dme_serviceable_node = createServiceableProp(node, "dme");
- globals->get_props()->tie("sim/realism/false-radio-courses-enabled",
- SGRawValuePointer<bool>(&_falseCoursesEnabled));
-
+ falseCoursesEnabledNode =
+ fgGetNode("/sim/realism/false-radio-courses-enabled");
+ if (!falseCoursesEnabledNode) {
+ falseCoursesEnabledNode =
+ fgGetNode("/sim/realism/false-radio-courses-enabled", true);
+ falseCoursesEnabledNode->setBoolValue(true);
+ }
+
// frequencies
SGPropertyNode *subnode = node->getChild("frequencies", 0, true);
freq_node = subnode->getChild("selected-mhz", 0, true);
SG_NORMALIZE_RANGE(r, -180.0, 180.0);
if ( is_loc ) {
- if (_falseCoursesEnabled) {
+ if (falseCoursesEnabledNode->getBoolValue()) {
// The factor of 30.0 gives a period of 120 which gives us 3 cycles and six
// zeros i.e. six courses: one front course, one back course, and four
// false courses. Three of the six are reverse sensing.
double angle = atan2(dot_v, dot_h) * SGD_RADIANS_TO_DEGREES;
double deflectionAngle = target_gs - angle;
- if (_falseCoursesEnabled) {
+ if (falseCoursesEnabledNode->getBoolValue()) {
// Construct false glideslopes. The scale factor of 1.5
// in the sawtooth gives a period of 6 degrees.
// There will be zeros at 3, 6r, 9, 12r et cetera
SGPropertyNode_ptr gps_xtrack_error_nm_node;
SGPropertyNode_ptr _magvarNode;
+ // realism setting, are false courses and GS lobes enabled?
+ SGPropertyNode_ptr falseCoursesEnabledNode;
+
// internal (private) values
int play_count;
double _gsNeedleDeflection;
double _gsNeedleDeflectionNorm;
- // realism setting, are false courses and GS lobes enabled?
- bool _falseCoursesEnabled;
-
SGSharedPtr<SGSampleGroup> _sgr;
bool updateWithPower(double aDt);