-
- string device = config.substr(begin, end - begin);
- begin = end + 1;
- SG_LOG( SG_IO, SG_INFO, " device = " << device );
-
- // baud
- string baud = config.substr(begin);
- SG_LOG( SG_IO, SG_INFO, " baud = " << baud );
-
- SGSerial *ch = new SGSerial( device, baud );
- io->set_io_channel( ch );
- } else if ( medium == "file" ) {
- // file name
- string file = config.substr(begin);
- SG_LOG( SG_IO, SG_INFO, " file name = " << file );
-
- SGFile *ch = new SGFile( file );
- io->set_io_channel( ch );
- } else if ( medium == "socket" ) {
- // hostname
- end = config.find(",", begin);
- if ( end == string::npos ) {
- return NULL;
+ if ( tokens[1] == "no-pedals" ) {
+ fgSetBool( "/input/atcsim/ignore-pedal-controls", true );
+ } else {
+ fgSetBool( "/input/atcsim/ignore-pedal-controls", false );
+ }
+ atcsim->set_path_names(tokens[2], tokens[3], tokens[4], tokens[5]);
+ return atcsim;
+ } else if ( protocol == "atlas" ) {
+ FGAtlas *atlas = new FGAtlas;
+ io = atlas;
+ } else if ( protocol == "opengc" ) {
+ // char wait;
+ // printf("Parsed opengc\n"); cin >> wait;
+ FGOpenGC *opengc = new FGOpenGC;
+ io = opengc;
+ } else if ( protocol == "AV400" ) {
+ FGAV400 *av400 = new FGAV400;
+ io = av400;
+ } else if ( protocol == "AV400Sim" ) {
+ FGAV400Sim *av400sim = new FGAV400Sim;
+ io = av400sim;
+ } else if ( protocol == "garmin" ) {
+ FGGarmin *garmin = new FGGarmin;
+ io = garmin;
+ } else if ( protocol == "httpd" ) {
+ // determine port
+ string port = tokens[1];
+ return new FGHttpd( atoi(port.c_str()) );
+#ifdef FG_JPEG_SERVER
+ } else if ( protocol == "jpg-httpd" ) {
+ // determine port
+ string port = tokens[1];
+ return new FGJpegHttpd( atoi(port.c_str()) );
+#endif
+ } else if ( protocol == "joyclient" ) {
+ FGJoyClient *joyclient = new FGJoyClient;
+ io = joyclient;
+ } else if ( protocol == "jsclient" ) {
+ FGJsClient *jsclient = new FGJsClient;
+ io = jsclient;
+ } else if ( protocol == "native" ) {
+ FGNative *native = new FGNative;
+ io = native;
+ } else if ( protocol == "native-ctrls" ) {
+ FGNativeCtrls *native_ctrls = new FGNativeCtrls;
+ io = native_ctrls;
+ } else if ( protocol == "native-fdm" ) {
+ FGNativeFDM *native_fdm = new FGNativeFDM;
+ io = native_fdm;
+ } else if ( protocol == "native-gui" ) {
+ FGNativeGUI *net_gui = new FGNativeGUI;
+ io = net_gui;
+ } else if ( protocol == "nmea" ) {
+ FGNMEA *nmea = new FGNMEA;
+ io = nmea;
+ } else if ( protocol == "props" || protocol == "telnet" ) {
+ io = new FGProps( tokens );
+ return io;
+ } else if ( protocol == "pve" ) {
+ FGPVE *pve = new FGPVE;
+ io = pve;
+ } else if ( protocol == "ray" ) {
+ FGRAY *ray = new FGRAY;
+ io = ray;
+ } else if ( protocol == "rul" ) {
+ FGRUL *rul = new FGRUL;
+ io = rul;
+ } else if ( protocol == "generic" ) {
+ size_t configToken;
+ if (tokens[1] == "socket") {
+ configToken = 7;
+ } else if (tokens[1] == "file") {
+ configToken = 5;
+ } else {
+ configToken = 6;