You are on page 1of 5

Version 1.

Released: 8 August 2013

Web: www.fs2crew.com
NOTES:
This SDK is for experienced developers only.

To discuss RAAS licensing opportunities for your payware aircraft, please contact FS2Crew Admin at
www.fs2crew.com.

SDK:
The RAAS module registers the following API variables:

register_named_variable("RAAS_Volume_Adjust");

register_named_variable("RAAS_Enable");

register_named_variable("RAAS_Alert");

register_named_variable("RAAS_Mute");

Note:

You may use these functions as detailed in the FSX C++ Panels and Gauges SDK to read and write
into the RAAS variables:
register_named_variable(..)
get_named_variable_value(..)
set_named_variable_value(..)

API variables - Description:

RAAS_Alert: You *MUST* type cast it to DWORD (32-bits, unsigned integer). It's a bitmask. See
the Define ADVISORIES - Bitmask Flags section below.

RAAS_Enable: RAAS master switch (0 = DISABLED, 1 = ENABLED)

RAAS_Volume_Adjust: A value from 0.0 to 1.0

RAAS_Mute: Mute (0 = *NOT* mute, 1 = MUTE)

These values are read by the RAAS module *EVERY* frame:

"RAAS_Volume_Adjust"

"RAAS_Enable"

"RAAS_Mute"
This value is updated by the RAAS module *EVERY* frame:

"RAAS_Alert"

Define ADVISORIES - Bitmask Flags (*DECIMAL* values)

#define ADVISORIES_BITMASK_APPROACHING_RWY_GROUND 1

#define ADVISORIES_BITMASK_APPROACHING_RWY_AIR 2

#define ADVISORIES_BITMASK_ON_RUNWAY 4

#define ADVISORIES_BITMASK_RUNWAY_END 8

#define ADVISORIES_BITMASK_TAXIWAY_TAKEOFF 16

#define ADVISORIES_BITMASK_INSUFFICIENT_RWY_GROUND 32

#define ADVISORIES_BITMASK_EXTENDED_HOLDING_ON_RWY 64

#define ADVISORIES_BITMASK_APPROACHING_SHORT_RWY_AIR 128

#define ADVISORIES_BITMASK_TAXIWAY_LANDING 256

#define ADVISORIES_BITMASK_TAKEOFF_FLAP_MONITOR 512

#define ADVISORIES_BITMASK_DISTANCE_REMAINING 1024

#define ADVISORIES_BITMASK_LANDING_FLAP_MONITOR 2048

#define ADVISORIES_BITMASK_EXCESSIVE_APPROACH_SPEED 4096

#define ADVISORIES_BITMASK_EXCESSIVE_APPROACH_ANGLE 8192

#define ADVISORIES_BITMASK_UNSTABLE_APPROACH 16384

#define ADVISORIES_BITMASK_ALTIMETER_SETTING 32768

#define ADVISORIES_BITMASK_LONG_LANDING 65536

#define ADVISORIES_BITMASK_CAUTION_OPTION 131072


IMPORTANT Notes:

1- The "ON TAXIWAY, ON TAXIWAY" annunciation is heard when this bit is set:

"ADVISORIES_BITMASK_TAXIWAY_TAKEOFF"

The C++ code would be like this:

if ((dwSoundMask & ADVISORIES_BITMASK_TAXIWAY_TAKEOFF) ==


ADVISORIES_BITMASK_TAXIWAY_TAKEOFF)

2- The "CAUTION SHORT RUNWAY, SHORT RUNWAY" (IN AIR) annunciation is heard when these bits are
set:

"ADVISORIES_BITMASK_APPROACHING_SHORT_RWY_AIR"

"ADVISORIES_BITMASK_CAUTION_OPTION"

The C++ code would be like this:

if ((dwSoundMask & ADVISORIES_BITMASK_APPROACHING_SHORT_RWY_AIR) ==


ADVISORIES_BITMASK_APPROACHING_SHORT_RWY_AIR &&

(dwSoundMask & ADVISORIES_BITMASK_CAUTION_OPTION) ==


ADVISORIES_BITMASK_CAUTION_OPTION)

3- The "CAUTION SHORT RUNWAY, SHORT RUNWAY" (ON GROUND) annunciation is heard when these
bits are set:

"ADVISORIES_BITMASK_ON_RUNWAY"

"ADVISORIES_BITMASK_INSUFFICIENT_RWY_GROUND"

"ADVISORIES_BITMASK_CAUTION_OPTION"

The C++ code would be like this:

if ((dwSoundMask & ADVISORIES_BITMASK_INSUFFICIENT_RWY_GROUND) ==


ADVISORIES_BITMASK_INSUFFICIENT_RWY_GROUND &&

(dwSoundMask & ADVISORIES_BITMASK_CAUTION_OPTION) ==


ADVISORIES_BITMASK_CAUTION_OPTION &&
(dwSoundMask & ADVISORIES_BITMASK_ON_RUNWAY) ==
ADVISORIES_BITMASK_ON_RUNWAY)

Other examples:

If the ADVISORIES_BITMASK_TAXIWAY_TAKEOFF flag is *INSIDE!* of the dwSoundMask value:

if ((dwSoundMask & ADVISORIES_BITMASK_TAXIWAY_TAKEOFF) ==


ADVISORIES_BITMASK_TAXIWAY_TAKEOFF)

If the ADVISORIES_BITMASK_TAXIWAY_TAKEOFF flag is *NOT!* inside of the dwSoundMask


value:

if ((dwSoundMask & ADVISORIES_BITMASK_TAXIWAY_TAKEOFF) == 0)

-SDK END-

You might also like