62 const std::string& cfg_name,
63 SGPropertyNode& prop_root )
65 if (cfg_name ==
"input") {
66 SGPropertyNode_ptr nameNode = cfg_node.getNode(
"name");
68 if( nameNode != NULL ) {
69 name = nameNode->getStringValue();
71 std::ostringstream buf;
72 buf <<
"Input" <<
_input.size();
75 _input[
name] = sgReadCondition(&prop_root, &cfg_node);
79 if (cfg_name ==
"output") {
80 SGPropertyNode_ptr n = cfg_node.getNode(
"name");
83 name = n->getStringValue();
85 std::ostringstream buf;
86 buf <<
"Output" <<
_output.size();
93 if( (n = cfg_node.getNode(
"inverted")) != NULL )
94 o->setInverted( n->getBoolValue() );
96 if( (n = cfg_node.getNode(
"property")) != NULL ) {
97 const auto trimmed = simgear::strutils::strip(n->getStringValue());
98 o->setProperty( prop_root.getNode(trimmed,
true) );
101 if( cfg_node.nChildren() == 0 ) {
102 const auto trimmed = simgear::strutils::strip(cfg_node.getStringValue());
103 o->setProperty( prop_root.getNode(trimmed,
true) );
109 if (cfg_name ==
"inverted") {