Querying for failures in C and XML gauges
The Flight Simulator SDK describes a method of using FAILURE_RECORDS to fail gauge elements via an enumerated list of failure types (freeze, zero, and no_draw). See the "Programming C Gauges" section of the SDK for detailed information.
But what if you're creating a C gauge and want to implement some other sort of behavior in the case of a failure? A gauge programmer can programmatically query whether or not a system has failed using a collection of TOKEN_VARIABLES. The "Token Variables" document in the SDK lists them, but if you didn't know they were there, they can be easy to miss.
"PP" stands for "Partial Panel", a term used to describe the situation of flying without a complete set of instruments.
The following table lists the equivalent GAUGE_TOKENS and Simulation variables (for use in gauge XML or Modeldef.xml animation tags)
FAILURE_RECORD enum |
GAUGE_TOKEN |
XML A: variable |
FAIL_SYSTEM_ENGINE |
PP_ENGINE |
PARTIAL PANEL ENGINE (will only get the state of engine #1) or ENG FAILED:1, ENG FAILED:2, etc. for each engine. |
FAIL_SYSTEM_PITOT_STATIC |
PP_PITOT |
PARTIAL PANEL PITOT |
FAIL_SYSTEM_VACUUM |
PP_VACUUM |
PARTIAL PANEL VACUUM |
FAIL_GAUGE_ADF |
PP_ADF |
PARTIAL PANEL ADF |
FAIL_GAUGE_AIRSPEED |
PP_AIR |
PARTIAL PANEL AIRSPEED |
FAIL_GAUGE_ALTIMETER |
PP_ALTIM |
PARTIAL PANEL ALTIMETER |
FAIL_GAUGE_ATTITUDE |
PP_ATTITUDE |
PARTIAL PANEL ATTITUDE |
FAIL_GAUGE_COMMUNICATIONS |
PP_COM |
PARTIAL PANEL COMM |
FAIL_GAUGE_FUEL_INDICATORS |
PP_FUEL_IND |
PARTIAL PANEL FUEL INDICATOR |
FAIL_GAUGE_GYRO_HEADING |
PP_HEADING |
PARTIAL PANEL HEADING |
FAIL_GAUGE_MAGNETIC_COMPASS |
PP_COMPASS |
PARTIAL PANEL COMPASS |
FAIL_GAUGE_NAVIGATION_VOR1 |
PP_NAV |
PARTIAL PANEL NAV:1 |
FAIL_GAUGE_NAVIGATION_VOR2 |
PARTIAL PANEL NAV:2 |
|
FAIL_GAUGE_TRANSPONDER |
PP_XPNDR |
PARTIAL PANEL TRANSPONDER |
FAIL_GAUGE_TURN_COORDINATOR |
PP_TURN_COORD |
PARTIAL PANEL TURN COORDINATOR |
FAIL_GAUGE_VERTICAL_SPEED |
PP_VERT_VEL |
PARTIAL PANEL VERTICAL VELOCITY |
FAIL_SYSTEM_ELECTRICAL_PANELS |
PP_ELECT |
PARTIAL PANEL ELECTRICAL |
FAIL_SYSTEM_ELECTRICAL_AVIONICS |
PARTIAL PANEL AVIONICS |
|
FAIL_GAUGE_COMMUNICATIONS_COM2 |
PARTIAL PANEL COMM:2 |
The units of partial panel variables are an enum: 0 = operative; 1 = inoperative; 2 = blanked.
Note that there is no token variable for NAV2, avionics, or COM2.
Any questions?
Comments
- Anonymous
May 10, 2007
I want to built flight sim use by MS flightsimulation software.