]> git.mxchange.org Git - flightgear.git/blobdiff - docs-mini/README.IO
Describe the font tag
[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
-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
-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:
 
@@ -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.
 
+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
@@ -26,7 +70,7 @@ Serial Port Communication:
 
     --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:
 
@@ -63,7 +107,7 @@ File I/O:
 
     example to replay your flight
 
-    --native=file,in,10,flight1.fgfs
+    --native=file,in,10,flight1.fgfs --fdm=external
 
 
 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
-    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.
+
+
+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.