diff --git a/Protocol/README.Protocol b/Protocol/README.Protocol new file mode 100644 index 000000000..157c9cbea --- /dev/null +++ b/Protocol/README.Protocol @@ -0,0 +1,83 @@ +The generic communication protocol for FlightGear provides a powerfull way +of adding a simple ASCII based output only protocol, just by defining an +XML encoded configuration file. + +The definition of the protocol consists of variable seperators, line seperators, +and chuncks of text. + +Each chunck defines: + + for ease of use + the property tree node which provides the data + the value type (needed for formatting) + defines the actual piece of text which should be sent. + it can include formatting options like: + + %s string + %i integer (default) + %f float + + an optionale multiplication factor which can be used for + unit conversion. (for example, radians to degrees). + an optional offset which can be used for unit conversion. + (for example, degrees Celsius to degrees Fahrenheit). + + +The output section also could define the variable seperator and line seperator. + +The seperators can be either a control character such as a tab or newline, or a +user specified string or other single charachter. The currently supported +control charachters are: + +: +: +Name Charachter + +newline '\n' +tab '\t' +formfeed '\f' +carriagereturn '\r' +verticaltab '\v' + +any other charachters just need to be added to "Network/generic.cxx" + +The var_seperator is placed between each variable, while the line_seperator is +placed at the end of each lot of variables. + + +A simple protocol configuration file then could look something like the +following: + + + + + + + + + newline + newline + + + speed + V=%d + /velocities/airspeed-kt + + + + heading + H=%02d + /orientation/heading-deg + 57.29578 + + + + pitch angle + P=%05.1f + float + /orientation/pitch-deg + + + + + diff --git a/options.xml b/options.xml index 474bd39f7..e84ddb551 100644 --- a/options.xml +++ b/options.xml @@ -633,7 +633,7 @@ start-date-lat yyyy:mm:dd:hh:mm:ss strings/start-date-desc - strings/locale-aricraft-time + strings/locale-aircraft-time