]> git.mxchange.org Git - flightgear.git/blobdiff - docs-mini/README.IO
Don't restore initial screen geometry because there is nothing in fg_os* to resize...
[flightgear.git] / docs-mini / README.IO
index ee0a46eb9cf586b6a7a386a99d50b1e320e25205..38607916e13e32dc7193102e79e2504dc0694ee3 100644 (file)
@@ -1,9 +1,9 @@
 This document describes how to invoke FlightGear's generic IO subsystem.
 
 FlightGear has a fairly flexible generic IO subsystem that allows you
 This document describes how to invoke FlightGear's generic IO subsystem.
 
 FlightGear has a fairly flexible generic IO subsystem that allows you
-to speak any supported protocol over any supported medium.  The IO
+to "speak" any supported protocol over any supported medium.  The IO
 options are configured at runtime via command line options.  You can
 options are configured at runtime via command line options.  You can
-specify multiple entries, one per option.
+specify multiple entries if you like, one per command line option.
 
 The general form of the command line option is as follows:
 
 
 The general form of the command line option is as follows:
 
@@ -15,6 +15,50 @@ The general form of the command line option is as follows:
     hz = number of times to process channel per second (floating
          point values are ok.
 
     hz = number of times to process channel per second (floating
          point values are ok.
 
+Generic Communction:
+
+    --generic=params
+
+    With this option it is possible to output a pre-configured
+    ASCII string using a predefined seperator. The configuration is
+    defined in an XML file located in the Protocol directiory of 
+    the base package.
+
+    params can be:
+    serial port communication:    serial,dir,hz,device,baud,protocol
+    socket communication:         socket,dir,hz,machine,port,style,protocol
+    output to a file:             file,dir,hz,filename,protocol
+
+
+    The confinfiguration file is defined as follows:
+
+    <?xml version="1.0"?>
+    <PropertyList>
+
+     <generic>
+      <output>
+       <seperator>\n</seperator>
+
+        <chunk>
+         <name>speed</name>               <!-- for readabillity              -->
+         <type>int</type>                <!-- one of: bool,int,float,string -->
+         <format>V=%d</format>            <!-- output format string          -->
+         <node>/velocities/speed</node>   <!-- location of the value         -->
+         <offset>0.0</offset>             <!-- add this to the value         -->
+         <factor>1.0</factor>             <!-- multiply by this value        -->
+       </chunk>
+
+       <chunk>
+        ...
+       </chunk>
+
+       ...
+
+      </output>
+     </generic>
+    </PropertyList>
+
+
 Serial Port Communication:
 
     --nmea=serial,dir,hz,device,baud
 Serial Port Communication:
 
     --nmea=serial,dir,hz,device,baud
@@ -26,7 +70,7 @@ Serial Port Communication:
 
     --nmea=serial,out,0.5,COM1,4800
 
 
     --nmea=serial,out,0.5,COM1,4800
 
-    Note that for unix varient you might use a device name like "/dev/ttyS0"
+    Note that for unix varients you might use a device name like "/dev/ttyS0"
 
 Socket Communication:
 
 
 Socket Communication:
 
@@ -63,7 +107,7 @@ File I/O:
 
     example to replay your flight
 
 
     example to replay your flight
 
-    --native=file,in,10,flight1.fgfs
+    --native=file,in,10,flight1.fgfs --fdm=external
 
 
 Moving Map Example:
 
 
 Moving Map Example:
@@ -86,5 +130,28 @@ Moving Map Example:
 
     Once both programs are running, the Atlas program should display
     your current location.  Atlas is a really nifty program with many
 
     Once both programs are running, the Atlas program should display
     your current location.  Atlas is a really nifty program with many
-    neat optoins such as the ability to generate and use background
+    neat options such as the ability to generate and use background
     bitmaps that show the terrain, cities, lakes, oceans, rivers, etc.
     bitmaps that show the terrain, cities, lakes, oceans, rivers, etc.
+
+
+HTTP Server Example
+
+    You can now interact with a running copy of FlightGear using your
+    web browser.  You can view all the key internal variables and even
+    change the ones that are writable.  If you have support in your
+    favorite [scripting] language for interacting with an http server,
+    you should be able to use this as a mechanism to interface your
+    script with FlightGear.
+
+    Start up fgfs with the --httpd=<port#> option:
+
+    For example:
+
+        fgfs --httpd=5500
+
+    Now point your web browser to:
+
+        http://host.domain.name:5500/
+
+    When a value is displayed, you can click on it to bring up a form
+    to assign it a new value.