X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FInstrumentation%2Ftransponder.cxx;h=9fa5f13a34cc76d180357f6a407816225dc10839;hb=2302f040953b030612e1c0cb47fc47414ddbed31;hp=882bd160aeb8568c34262e693c69aa54012594d0;hpb=ba7fd477406904fe9b03e60b0e7ab84c84559be0;p=flightgear.git diff --git a/src/Instrumentation/transponder.cxx b/src/Instrumentation/transponder.cxx index 882bd160a..9fa5f13a3 100644 --- a/src/Instrumentation/transponder.cxx +++ b/src/Instrumentation/transponder.cxx @@ -16,7 +16,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. #ifdef HAVE_CONFIG_H # include @@ -26,29 +26,11 @@ Transponder::Transponder(SGPropertyNode *node) : - name("transponder"), - num(0), - encoder("/instrumentation/encoder") + _name(node->getStringValue("name", "transponder")), + _num(node->getIntValue("number", 0)), + _mode_c_altitude(node->getStringValue("mode-c-altitude", + "/instrumentation/encoder/mode-c-alt-ft")) { - int i; - for ( i = 0; i < node->nChildren(); ++i ) { - SGPropertyNode *child = node->getChild(i); - string cname = child->getName(); - string cval = child->getStringValue(); - if ( cname == "name" ) { - name = cval; - } else if ( cname == "number" ) { - num = child->getIntValue(); - } else if ( cname == "encoder" ) { - encoder = cval; - } else { - SG_LOG( SG_INSTR, SG_WARN, - "Error in transponder config logic" ); - if ( name.length() ) { - SG_LOG( SG_INSTR, SG_WARN, "Section = " << name ); - } - } - } } @@ -60,19 +42,16 @@ Transponder::~Transponder() void Transponder::init() { string branch; - branch = "/instrumentation/" + name; - encoder += "/mode-c-alt-ft"; + branch = "/instrumentation/" + _name; - SGPropertyNode *node = fgGetNode(branch.c_str(), num, true ); + SGPropertyNode *node = fgGetNode(branch.c_str(), _num, true ); // Inputs - pressureAltitudeNode = fgGetNode(encoder.c_str(), true); + pressureAltitudeNode = fgGetNode(_mode_c_altitude.c_str(), true); busPowerNode = fgGetNode("/systems/electrical/outputs/transponder", true); serviceableNode = node->getChild("serviceable", 0, true); // Outputs idCodeNode = node->getChild("id-code", 0, true); flightLevelNode = node->getChild("flight-level", 0, true); - // Init - serviceableNode->setBoolValue(true); }