Signature of Predictor::configure must match AnalogComponent::configure,
otherwise the inherited method isn't overridden.
=> predictor couldn't be configured.
=> speed predictor rules in "generic-autopilot-helper.xml" weren't working.
{
}
-bool Predictor::configure(const string& nodeName, SGPropertyNode* configNode)
+bool Predictor::configure(const string& nodeName, SGPropertyNode_ptr configNode)
{
SG_LOG( SG_AUTOPILOT, SG_BULK, "Predictor::configure(" << nodeName << ")" << endl );
+
+ if( AnalogComponent::configure( nodeName, configNode ) )
+ return true;
+
+ if( nodeName == "config" ) {
+ Component::configure( configNode );
+ return true;
+ }
+
if (nodeName == "seconds") {
_seconds.push_back( new InputValue( configNode, 0 ) );
return true;
InputValueList _filter_gain;
protected:
- bool configure(const std::string& nodeName, SGPropertyNode* configNode );
+ bool configure(const std::string& nodeName, SGPropertyNode_ptr configNode );
public:
Predictor();