MISB 0601 Converter Library  Version 1.0.1.8
Public Member Functions | Static Public Member Functions | Related Functions | List of all members
IEG0601Converter Class Referenceabstract

IEG0601Convertor helper class. More...

Public Member Functions

virtual bool Activate (const char *appName, const char *licPath, const char *key)=0
 Activate IEG0601Converter. More...
 
virtual const bool DecodeValue (const unsigned char tag, const char *value, size_t length, VARIANT *vt)=0
 Converts a "value" into formated value in units defined in EG0601 spec. More...
 
virtual const bool DecodeValue (const unsigned char keyArr[16], const char *value, size_t length, VARIANT *vt)=0
 Converts a "value" into formated value in units defined in EG0601 spec. More...
 
virtual const char * EncodeValue (const unsigned char tag, const void *value, size_t &length)=0
 Converts a value into units according to the EG0601 spec. More...
 
virtual const char * EncodeValue (const unsigned char keyArr[16], const void *value, size_t &length)=0
 Converts a value into units according to the EG0601 spec. More...
 
virtual const unsigned char * LDSTag2UDSKey (const unsigned char tag, int &len)=0
 Converts 1 byte LDS tag to 16 bytes UDS Key. More...
 
virtual const unsigned char UDSKey2LDSTag (const unsigned char keyArr[16])=0
 Converts 16 bytes UDS key Array into 1 byte LDS Key. More...
 
virtual const char * Value2ValueString (const unsigned char tag, const char *value, size_t length, char *buffer, size_t buffer_length, bool noConversion=false)=0
 Converts a a value into string. Id Key helps to determine the length of the value byte array. More...
 
virtual const IKeyConversionItemGetKeyMappingInfo (const unsigned char tag)=0
 GetKeyMappingInfo provides mapping for a LDS Key to Conversion Item. More...
 
virtual const IKeyConversionItemGetKeyMappingInfo (const unsigned char keyArr[16])=0
 GetKeyMappingInfo provides mapping for a UDS Key Array to Conversion Item. More...
 
const char * UnixTime2String (const char *value, char *buffer, size_t buffer_length)
 converts a UNIX time value to string More...
 
SecurityMetadataSetItemGetCurrentSecurityMetadataSet ()
 GetCurrentSecurityMetadataSet returns the detected SecurityMetadataSet. More...
 
ImageHorizonPixelPackGetCurrentImageHorizonPixelPack ()
 GetCurrentImageHorizonPixelPack returns the detected ImageHorizonPixelPack. More...
 
virtual ~IEG0601Converter ()
 Virtual destructor.
 

Static Public Member Functions

static int LatitudeDouble2Int32 (const double lat)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double LatValue2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int LongitudeDouble2Int32 (const double lon)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double LonValue2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static double AltValue2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short SensorTrueAltitude2LDS (double UDSValue)
 Converts a double value in Meters into 2 bytes LDS. More...
 
static double HeadingValue2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static unsigned short PlatformHeadingAngle2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static double PitchValue2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static short PlatformPitchAngle2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static double RollValue2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static short PlatformRollAngle2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static unsigned char PlatformAirspeed2MetersPerSecond (const char *value)
 Converts a 1 bytes into int value in meters/sec. More...
 
static unsigned char PlatformGroundspeed2MetersPerSecond (const char *value)
 Converts 1 byte into int value in meters/sec. More...
 
static const double GroundRange2Meters (const char *value)
 Converts a 4 bytes into double. More...
 
static unsigned int GroundRange2LDS (double UDSValue)
 Converts an int value in meters into 4 bytes LDS. More...
 
static double SensorRelativeAzimuth2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static double SensorRelativeElevation2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int SensorRelativeElevation2LDS (double UDSValue)
 Converts a double value in Degrees into 4 bytes LDS. More...
 
static double SensorRelativeRoll2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static unsigned int SensorRelativeRoll2LDS (double UDSValue)
 Converts a double value in Degrees into 4 bytes LDS. More...
 
static double TargetErrorCE90_2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short TargetErrorCE90_2LDS (double UDSValue)
 Converts a double value in meters into 2 bytes LDS. More...
 
static double TargetErrorLE90_2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short TargetErrorLE90_2LDS (double UDSValue)
 Converts a double value in meters into 2 bytes LDS. More...
 
static double SensorHorizontalFOV_2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static double SensorVerticalFOV_2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static unsigned short SensorFOV_2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static const char * SensorFOVName2String (const char *value)
 Converts a 1 byte value into enum string. More...
 
static const char * IcingDetected2String (const char *value)
 Converts a 1 byte value into enum string. More...
 
static double WindDirection2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static unsigned short WindDirection2LDS (double UDSValue)
 Converts a double value in degrees into 2 bytes LDS. More...
 
static double WindSpeed2MetersPerSecond (const char *value)
 Converts a 1 byte into double value in meters/second. More...
 
static unsigned char WindSpeed2LDS (double UDSValue)
 Converts a double value in meters/second into 1 bytes LDS. More...
 
static double StaticPressure2Millibar (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static unsigned short StaticPressure2LDS (double UDSValue)
 Converts a double value in Millibar into 2 bytes LDS. More...
 
static double DensityAltitude2Meters (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static unsigned short DensityAltitude2LDS (double UDSValue)
 Converts a double value in Meters into 2 bytes LDS. More...
 
static char OutsideAirTemperature2Celcius (const char *value)
 Converts a 1 byte into char value in Celcius. More...
 
static double TargetLocationLatitude2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int TargetLocationLatitude2LDS (double UDSValue)
 Converts a double value in Meters into 4 bytes LDS. More...
 
static double TargetLocationLongitude2Degrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int TargetLocationLongitude2LDS (double UDSValue)
 Converts a double value in Degrees into 4 bytes LDS. More...
 
static double TargetLocationElevation2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short TargetLocationElevation2LDS (double UDSValue)
 Converts a double value in Meters into 2 bytes LDS. More...
 
static unsigned short TargetTrackGateWidth2Pixels (const char *value)
 Converts a 1 byte into short value in pixels. More...
 
static unsigned char TargetTrackGateWidth2LDS (unsigned short UDSValue)
 Converts a short value in Pixels into 1 bytes LDS. More...
 
static unsigned short TargetTrackGateHeight2Pixels (const char *value)
 Converts a 1 byte into short value in pixels. More...
 
static unsigned char TargetTrackGateHeight2LDS (unsigned short UDSValue)
 Converts a short value in Pixels into 1 bytes LDS. More...
 
static unsigned char GenericFlagData01 (const char *value)
 Converts a 1 byte value into unsigned char. More...
 
static double DifferentialPressure2Millibar (const char *value)
 Converts a 2 bytes into double value in millibar. More...
 
static unsigned short DifferentialPressure2LDS (double UDSValue)
 Converts a double value in Millibar into 2 bytes LDS. More...
 
static double PlatformAngleOfAttack2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static short PlatformAngleOfAttack2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static double PlatformVerticalSpeed2MetersPerSecond (const char *value)
 Converts a 2 bytes into double value in Meters/Second. More...
 
static short PlatformVerticalSpeed2LDS (double UDSValue)
 Converts a double value in Meters/Second into 2 bytes LDS. More...
 
static double PlatformSideslipAngle2Degrees (const char *value)
 Converts a 2 bytes into double value in Degrees. More...
 
static short PlatformSideslipAngle2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static double AirfieldBarometricPressure2Millibar (const char *value)
 Converts a 2 bytes into double value in Millibar. More...
 
static unsigned short AirfieldBarometricPressure2LDS (double UDSValue)
 Converts a double value in Millibar into 2 bytes LDS. More...
 
static double AirfieldElevation2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short AirfieldElevation2LDS (double UDSValue)
 Converts a double value in Millibar into 2 bytes LDS. More...
 
static double RelativeHumidity2Percent (const char *value)
 Converts a 1 byte into double value in percents. More...
 
static unsigned char RelativeHumidity2LDS (double UDSValue)
 Converts a double value in % into 1 byte LDS. More...
 
static double PlatformFuelRemaining2Kilogram (const char *value)
 Converts a 2 bytes into double value in kilogram. More...
 
static unsigned short PlatformFuelRemaining2LDS (double UDSValue)
 Converts a double value in kilogram into 2 bytes LDS. More...
 
static unsigned short WeaponLoad2Short (const char *value)
 Converts a 2 bytes into unsigned short. More...
 
static unsigned char WeaponFired2Char (const char *value)
 Converts a 1 byte into unsigned char. More...
 
static unsigned short LaserPRFCode2Short (const char *value)
 Converts a 2 bytes into unsigned short. More...
 
static double PlatformMagneticHeading2Degrees (const char *value)
 Converts a 2 bytes into double value in Degrees. More...
 
static unsigned short PlatformMagneticHeading2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static double AlternatePlatformLatitude2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static int AlternatePlatformLatitude2LDS (double UDSValue)
 Converts a double value in Degrees into 4 bytes LDS. More...
 
static double AlternatePlatformLongitude2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static int AlternatePlatformLongitude2LDS (double UDSValue)
 Converts a double value in Degrees into 4 bytes LDS. More...
 
static double AlternatePlatformAltitude2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short AlternatePlatformAltitude2LDS (double UDSValue)
 Converts a double value in meters into 2 bytes LDS. More...
 
static double AlternatePlatformHeading2Degrees (const char *value)
 Converts a 2 bytes into double value in Degrees. More...
 
static unsigned short AlternatePlatformHeading2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static double SensorEllipsoidHeight2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static double AltPlatformEllipsHeight2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static double FrameCenterEllipsHeight2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short FrameCenterEllipsHeight2LDS (double UDSValue)
 Converts a double value in meters into 2 bytes LDS. More...
 
static const char * OperationalMode2String (const char *value)
 Converts a 1 byte value into enum string. More...
 
static double SensorNorthVel2MetersPerSecond (const char *value)
 Converts a 2 bytes into double value in Meters/Sec. More...
 
static double SensorEastVel2MetersPerSecond (const char *value)
 Converts a 2 bytes into double value in Meters/Sec. More...
 
static short SensorEastVelocity2LDS (double UDSValue)
 Converts a double value in Meters/Sec into 2 bytes LDS. More...
 
static unsigned char PlatformTrueAirspeed2MetersPerSecond (const char *value)
 Converts a 1 byte into unsigned char value in Meters/Second. More...
 
static const double SlantRange2Meters (const char *value)
 Converts a 4 bytes into double value in meters. More...
 
static const double TargetWidth2Meters (const char *value)
 Converts a 2 bytes into double value in meters. More...
 
static unsigned short TargetWidth2LDS (double UDSValue)
 Converts a double value in meters into 2 bytes LDS. More...
 
static const double OffsetCornerLatitudePoint2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static short OffsetCornerLatitudePoint2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static const double OffsetCornerLongitudePoint2Degrees (const char *value)
 Converts a 2 bytes into double value in degrees. More...
 
static short OffsetCornerLongitudePoint2LDS (double UDSValue)
 Converts a double value in Degrees into 2 bytes LDS. More...
 
static const double OffsetCornerLatitude (const char *value)
 
static const double OffsetCornerLongitude (const char *value)
 
static double CornerLatPointToDegrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int CornerLatPointToLDS (double UDSValue)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double CornerLonPointToDegrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int CornerLonPointToLDS (double UDSValue)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double PlatformFullPitchAngleToDegrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int PlatformFullPitchAngleToLDS (double UDSValue)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double PlatformFullRollAngleToDegrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int PlatformFullRollAngleToLDS (double UDSValue)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double PlatformFullAttackAngleToDegrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int PlatformFullAttackAngleToLDS (double UDSValue)
 Converts a double value in degrees into 4 bytes LDS. More...
 
static double PlatformFullSideslipAngleToDegrees (const char *value)
 Converts a 4 bytes into double value in degrees. More...
 
static int PlatformFullSideslipAngleToLDS (double UDSValue)
 Converts a double value in degrees into 4 bytes LDS. More...
 

Related Functions

(Note that these are not member functions.)

EG0601_API void EndianSwap (unsigned short &x)
 Swap 16 bit values. More...
 
EG0601_API void EndianSwap (short &x)
 Swap 16 bit values. More...
 
EG0601_API void EndianSwap (unsigned int &x)
 Swap 32 bit values. More...
 
EG0601_API void EndianSwap (int &x)
 Swap 32 bit values. More...
 
EG0601_API void EndianSwap (unsigned __int64 &x)
 Swap 64 bit values. More...
 
EG0601_API __int64 TimeToPosixTime (double time)
 Converts time in ms into posix. More...
 

Detailed Description


MISB 0601 Standard details the Unmanned Air System (UAS) Datalink Local Data Set(LDS) for UAS platforms. It also provides a mapping between UAS Datalink Local Data Set items, ESD items, and Universal Data Set (UDS) items defined in the SMPTE KLV dictionary (RP-210) as well as in the MISB-managed Department of Defense (DoD) keyspace. The latest revision of the specification (0601.4, released 4 March 2010) defines some 80 keys and their mapping to the corresponding UDS items.
EG0601ConvLib C++ helper library is a complete programming tool set which simplifies the task of decoding the metadata (usually carried in KLV format) according to the standard. Primarily intended for use by developers working on the UAV related appications, IEG0601Converter provides the following functionality:

Member Function Documentation

virtual bool IEG0601Converter::Activate ( const char *  appName,
const char *  licPath,
const char *  key 
)
pure virtual

Activates EG0601Converter's features according to the license

Parameters
appNamea const char*. Application name.
licPatha const char*. License file path.
keya const char*. License Key.
Returns
bool.
static unsigned short IEG0601Converter::AirfieldBarometricPressure2LDS ( double  UDSValue)
static

Airfield Barometric Pressure. Local pressure at airfield of known height. Pilot's responsibility to update.

  • Map 0..(2^16-1) to 0..5000 mbar.
  • 1013.25mbar = 29.92inHg
  • Min/max recorded values of 870/1086mbar.
  • Resolution: ~0.08 Millibar This function converts a double value in Millibar into 2 bytes LDS value
    Parameters
    AirfieldBarometric Pressure double. Airfield Barometric Pressure;
    Returns
    unsigned short. Returns converted Airfield Barometric Pressure.
static double IEG0601Converter::AirfieldBarometricPressure2Millibar ( const char *  value)
static

Airfield Barometric Pressure. Local pressure at airfield of known height. Pilot's responsibility to update.

  • Map 0..(2^16-1) to 0..5000 mbar.
  • 1013.25mbar = 29.92inHg
  • Min/max recorded values of 870/1086mbar.
  • Resolution: ~0.08 Millibar This function converts a 2 bytes value into Millibar
    Parameters
    valuea pointer to 2 bytes value. Airfield Barometric Pressure;
    Returns
    Millibar double. Returns converted Airfield Barometric Pressure.
static unsigned short IEG0601Converter::AirfieldElevation2LDS ( double  UDSValue)
static

Airfield Elevation. Elevation of Airfield corresponding to Airfield Barometric Pressure.

  • Map 0..(2^16-1) to -900..19000 meters.
  • Offset = -900.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a double value in Millibar into 2 bytes LDS value
    Parameters
    AirfieldElevation double. Airfield Elevation;
    Returns
    unsigned short. Returns converted Airfield Elevation.
static double IEG0601Converter::AirfieldElevation2Meters ( const char *  value)
static

Airfield Elevation. Elevation of Airfield corresponding to Airfield Barometric Pressure.

  • Map 0..(2^16-1) to -900..19000 meters.
  • Offset = -900.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Target Airfield Elevation;
    Returns
    Meters double. Returns converted Target Airfield Elevation.
static unsigned short IEG0601Converter::AlternatePlatformAltitude2LDS ( double  UDSValue)
static

Alternate Platform Altitude. Altitude of alternate platform as measured from Mean Sea Level (MSL). Represents altitude of platform conneted with UAS.

  • Map -900..19000 meters to 0..(2^16-1).
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a double value in meters into 2 bytes LDS value
    Parameters
    AlternatePlatform Altitude double. Alternate Platform Altitude;
    Returns
    unsigned short. Returns converted Alternate Platform Altitude.
static double IEG0601Converter::AlternatePlatformAltitude2Meters ( const char *  value)
static

Alternate Platform Altitude. Altitude of alternate platform as measured from Mean Sea Level (MSL). Represents altitude of platform conneted with UAS.

  • Map 0..(2^16-1) to -900..19000 meters.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Alternate Platform Altitude;
    Returns
    Meters double. Returns converted Alternate Platform Altitude.
static double IEG0601Converter::AlternatePlatformHeading2Degrees ( const char *  value)
static

Alternate Platform Heading. Heading angle of alternate platform connected to UAS. Relative between longitudinal axis and True North measured in the horizontal plane.

  • Map 0..(2^16-1) to 0..360.
  • Resolution: ~5.5 milli degrees. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Alternate Platform Heading;
    Returns
    Degrees double. Returns converted Alternate Platform Heading.
static unsigned short IEG0601Converter::AlternatePlatformHeading2LDS ( double  UDSValue)
static

Alternate Platform Heading. Heading angle of alternate platform connected to UAS. Relative between longitudinal axis and True North measured in the horizontal plane.

  • Map 0..360 to 0..(2^16-1).
  • Resolution: ~5.5 milli degrees. This function converts a double value in Degrees into 2 bytes LDS value
    Parameters
    AlternatePlatform Heading double. Alternate Platform Heading;
    Returns
    unsigned short. Returns converted Alternate Platform Heading.
static double IEG0601Converter::AlternatePlatformLatitude2Degrees ( const char *  value)
static

Alternate Platform Latitude. Represents latitude of platform conneted with UAS. Based on WGS84 ellipsoid.

  • Map -(2^31-1)..(2^31-1) to +/-90.
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~42 nano degrees. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Alternate Platform Latitude;
    Returns
    degrees double. Returns converted Alternate Platform Latitude.
static int IEG0601Converter::AlternatePlatformLatitude2LDS ( double  UDSValue)
static

Alternate Platform Latitude. Represents latitude of platform conneted with UAS. Based on WGS84 ellipsoid.

  • Map +/-90 to -(2^31-1)..(2^31-1).
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~42 nano degrees. This function converts a double value in Degrees into 4 bytes LDS value
    Parameters
    AlternatePlatform Latitude double. Alternate Platform Latitude;
    Returns
    int. Returns converted Alternate Platform Latitude.
static double IEG0601Converter::AlternatePlatformLongitude2Degrees ( const char *  value)
static

Alternate Platform Longitude. Represents longitude of platform conneted with UAS. Based on WGS84 ellipsoid.

  • Map -(2^31-1)..(2^31-1) to +/-180.
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~84 nano degrees. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Alternate Platform Longitude;
    Returns
    degrees double. Returns converted Alternate Platform Longitude.
static int IEG0601Converter::AlternatePlatformLongitude2LDS ( double  UDSValue)
static

Alternate Platform Longitude. Represents longitude of platform conneted with UAS. Based on WGS84 ellipsoid.

  • Map +/-180 to -(2^31-1)..(2^31-1).
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~84 nano degrees. This function converts a double value in Degrees into 4 bytes LDS value
    Parameters
    AlternatePlatform Longitude double. Alternate Platform Longitude;
    Returns
    int. Returns converted Alternate Platform Longitude.
static double IEG0601Converter::AltPlatformEllipsHeight2Meters ( const char *  value)
static

Alternate Platform Ellipsoid Height. Alternate Platform Ellipsoid Height as measured from the reference WGS84 Ellipsoid.

  • Map 0..(2^16-1) to -900..19000 meters.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Alternate Platform Ellipsoid Height;
    Returns
    Meters double. Returns converted Alternate Platform Ellipsoid Height.
static double IEG0601Converter::AltValue2Meters ( const char *  value)
static

Altitude of sensor as measured from Mean Sea Level (MSL). Meters -900..19000 uint16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Altitude;
Returns
Meters double. Returns converted Altitude.
static double IEG0601Converter::CornerLatPointToDegrees ( const char *  value)
static

Corner Latitude Point. Frame Latitude for image corner. Full Range. Based on WGS84 ellipsoid. Map -(2^31-1)..(2^31-1) to +/-90.

  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~42 nano degrees. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Corner Latitude Point;
    Returns
    degrees double. Returns converted Corner Latitude Point.
static int IEG0601Converter::CornerLatPointToLDS ( double  UDSValue)
static

Corner Latitude Point. Frame Latitude for image corner. Full Range. Based on WGS84 ellipsoid. Map -(2^31-1)..(2^31-1) to +/-90.

  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~42 nano degrees. This function converts a double value in degrees into 4 bytes LDS value
    Parameters
    CornerLatitude Point double. Corner Latitude Point;
    Returns
    int. Returns converted Corner Latitude Point.
static double IEG0601Converter::CornerLonPointToDegrees ( const char *  value)
static

Corner Longitude Point. Frame Longitude for image corner. Full Range. Based on WGS84 ellipsoid. Map -(2^31-1)..(2^31-1) to +/-180.

  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~84 nano degrees. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Corner Longitude Point;
    Returns
    degrees double. Returns converted Corner Longitude Point.
static int IEG0601Converter::CornerLonPointToLDS ( double  UDSValue)
static

Corner Longitude Point. Frame Longitude for image corner. Full Range. Based on WGS84 ellipsoid. Map -(2^31-1)..(2^31-1) to +/-180.

  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~84 nano degrees. This function converts a double value in degrees into 4 bytes LDS value
    Parameters
    CornerLongitude Point double. Corner Longitude Point;
    Returns
    int. Returns converted Corner Longitude Point.
virtual const bool IEG0601Converter::DecodeValue ( const unsigned char  tag,
const char *  value,
size_t  length,
VARIANT *  vt 
)
pure virtual

DecodeValue converts a "value" into formated value in units defined in EG0601 spec.

Parameters
tagan int. Key Tag
valuea char*. Value
lengtha size_t. Value's length.
vta VARIANT*. Value
Returns
bool.
virtual const bool IEG0601Converter::DecodeValue ( const unsigned char  keyArr[16],
const char *  value,
size_t  length,
VARIANT *  vt 
)
pure virtual

DecodeValueUDS converts a "value" into formated value in units defined in EG0601 spec.

Parameters
keyArra 16 bytes Key Array
valuea char*. Value
lengtha size_t. Value's length.
vta VARIANT*. Value
Returns
bool.
static unsigned short IEG0601Converter::DensityAltitude2LDS ( double  UDSValue)
static

Density Altitude. Density altitude at aircraft location. Relative aircraft performance metric based on outside air temperature, static pressure, and humidity.

  • Map 0..(2^16-1) to -900..19000 meters.
  • Offset = -900.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a double value in Meters into 2 bytes LDS value
    Parameters
    DensityAltitude double. Density Altitude;
    Returns
    unsigned short. Returns converted Density Altitude.
static double IEG0601Converter::DensityAltitude2Meters ( const char *  value)
static

Density Altitude. Density altitude at aircraft location. Relative aircraft performance metric based on outside air temperature, static pressure, and humidity.

  • Map 0..(2^16-1) to -900..19000 meters.
  • Offset = -900.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Density Altitude;
    Returns
    meters double. Returns converted Density Altitude.
static unsigned short IEG0601Converter::DifferentialPressure2LDS ( double  UDSValue)
static

Differential Pressure. Differential pressure at aircraft location. Measured as the Stagnation/impact/total pressure minus static pressure.

  • Map 0..(2^16-1) to 0..5000 mbar.
  • 1 mbar = 0.0145037738 PSI.
  • Res: ~0.08 mbar This function converts a double value in Millibar into 2 bytes LDS value
    Parameters
    DifferentialPressure double. Differential Pressure;
    Returns
    unsigned short. Returns converted Differential Pressure.
static double IEG0601Converter::DifferentialPressure2Millibar ( const char *  value)
static

Differential Pressure. Differential pressure at aircraft location. Measured as the Stagnation/impact/total pressure minus static pressure.

  • Map 0..(2^16-1) to 0..5000 mbar.
  • 1 mbar = 0.0145037738 PSI.
  • Res: ~0.08 mbar This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Differential Pressure;
    Returns
    millibar double. Returns converted Differential Pressure.
virtual const char* IEG0601Converter::EncodeValue ( const unsigned char  tag,
const void *  value,
size_t &  length 
)
pure virtual

EncodeValue converts a value into formated value in units defined in EG0601 spec.

Parameters
taga 1 byte Key Tag
valuea void*. Pointer to value
lengtha size_t&. A number of bytes (according to EG0601 spec) in returned buffer.
Returns
const char* A pointer to the converted buffer.
Note
This function returns a pointer to the statically allocated buffer! This means that the next call to EncodeValue with the same Tag will rewrite this buffer! You should copy it before the next call to EncodeValue Usage: Convert Platform Heading Angle (Tag 5) to 2 bytes (unsigned short)
double_val = 159.9744;
p = conv->EncodeValue( 5, &double_val , length );
virtual const char* IEG0601Converter::EncodeValue ( const unsigned char  keyArr[16],
const void *  value,
size_t &  length 
)
pure virtual

EncodeValue converts a value into formated value in units defined in EG0601 spec.

Parameters
tagkeyArr a 16 bytes Key Array
valuea void*. Pointer to value
lengtha size_t&. A number of bytes (according to EG0601 spec) in returned buffer.
Returns
const char* A pointer to the converted buffer.
Note
This function returns a pointer to the statically allocated buffer! This means that the next call to EncodeValue with the same Tag will rewrite this buffer! You should copy it before the next call to EncodeValue Usage: Convert Platform Heading Angle (Tag 5) to 2 bytes (unsigned short)
double_val = 159.9744;
p = conv->EncodeValue( 5, &double_val , length );
static unsigned short IEG0601Converter::FrameCenterEllipsHeight2LDS ( double  UDSValue)
static

Frame Center Height Above Ellipsoid. Frame Center Ellipsoid Height as measured from the reference WGS84 Ellipsoid.

  • Map 0..(2^16-1) to -900..19000 meters.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a double value in meters into 2 bytes LDS value
    Parameters
    AlternatePlatform Ellipsoid double. Alternate Platform Ellipsoid;
    Returns
    unsigned short. Returns converted Alternate Platform Ellipsoid.
static double IEG0601Converter::FrameCenterEllipsHeight2Meters ( const char *  value)
static

Frame Center Height Above Ellipsoid. Frame Center Ellipsoid Height as measured from the reference WGS84 Ellipsoid.

  • Map 0..(2^16-1) to -900..19000 meters.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Frame Center Height Above Ellipsoid;
    Returns
    Meters double. Returns converted Frame Center Height Above Ellipsoid.
static unsigned char IEG0601Converter::GenericFlagData01 ( const char *  value)
static

Generic Flag Data 01 Generic Flagged Metadata.

  • Position Format msb87654321lsb
  • 1- Laser Range Finder 1on,0off
  • 2- Auto-Track 1on,0off
  • 3- IR Polarity 1blk,0wht
  • 4- Icing detected 1ice,0(no ice/sensor off)
  • 5- Slant Range 1 measured, 0 calculated
  • 6->8- Not defined. Use 0 This function converts a 1 byte value into unsigned char
    Parameters
    valuea pointer to 1 byte value. Generic Flag Data 01
    Returns
    unsigned char. Returns converted Generic Flag Data 01
ImageHorizonPixelPack* IEG0601Converter::GetCurrentImageHorizonPixelPack ( )

GetCurrentImageHorizonPixelPack returns the detected ImageHorizonPixelPack

Returns
ImageHorizonPixelPack*. ImageHorizonPixelPack Returns detected ImageHorizonPixelPack
SecurityMetadataSetItem* IEG0601Converter::GetCurrentSecurityMetadataSet ( )

GetCurrentSecurityMetadataSet returns the detected SecurityMetadataSet

Returns
SecurityMetadataSetItem*. SecurityMetadataSetItem Returns detected SecurityMetadataSet
virtual const IKeyConversionItem* IEG0601Converter::GetKeyMappingInfo ( const unsigned char  tag)
pure virtual
Parameters
tagan unsigned char. 1 byte LDS Tag
Returns
const IKeyConversionItem*. Returns a conversion item. NULL if the specified tag is not found. Get auxiliary information on the LDS Tag.
\b Usage: Get auxiliary information on the tag 14 (LDS).
// Get auxiliary information on the tag 14.
const IKeyConversionItem* convItem = conv->GetKeyMappingInfo(14);
cout << "LDS Tag : " << convItem->LDS_KeyStr << endl;
cout << "LDS Name : " << convItem->LDS_Name << endl;
cout << "UDS Key : " << convItem->UDS_KeyStr << endl;
cout << "UDS Name : " << convItem->UDS_Name << endl;
The above code will provide the following output:
ConvMapInfo.PNG
virtual const IKeyConversionItem* IEG0601Converter::GetKeyMappingInfo ( const unsigned char  keyArr[16])
pure virtual
Parameters
tagan unsigned char. 16 bytes UDS Key Array
Returns
const IKeyConversionItem*. Returns a conversion item. NULL if the specified byte array is not found. Get auxiliary information on the UDS Key.
\b Usage: Get auxiliary information on the tag 14 (UDS) .
unsigned char udsArr[] = {0x06, 0x0E, 0x2B, 0x34, 0x01, 0x01, 0x01, 0x03, 0x07, 0x01, 0x02, 0x01, 0x02, 0x06, 0x02, 0x00 };
const IKeyConversionItem* convItem = conv->GetKeyMappingInfo(udsArr);
cout << "LDS Tag : " << convItem->LDS_KeyStr << endl;
cout << "LDS Name : " << convItem->LDS_Name << endl;
cout << "UDS Key : " << convItem->UDS_KeyStr << endl;
cout << "UDS Name : " << convItem->UDS_Name << endl;
The above code will provide the following output:
ConvMapInfo.PNG
static unsigned int IEG0601Converter::GroundRange2LDS ( double  UDSValue)
static

Ground Range Horizontal distance from ground position of aircraft relative to nadir, and target of interest. Dependent upon Slant Range and Depression Angle.

  • Map 0..(2^32-1) to 0..5000000 meters.
  • 1 nautical mile (knot) = 1852 meters.
  • Resoluiton: ~1.2 milli meters. Meters 0..5,000,000 uint32 This function converts an int value in meters into 4 bytes LDS value
    Parameters
    GroundRange int. Ground Range;
    Returns
    unsigned int. Returns converted Ground Range.
static const double IEG0601Converter::GroundRange2Meters ( const char *  value)
static

Ground Range Horizontal distance from ground position of aircraft relative to nadir, and target of interest. Dependent upon Slant Range and Depression Angle.

  • Map 0..(2^32-1) to 0..5000000 meters.
  • 1 nautical mile (knot) = 1852 meters.
  • Resoluiton: ~1.2 milli meters. Meters 0..5,000,000 uint32 This function converts 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Ground Range
    Returns
    Ground Range doubleint. Returns converted Ground Range
static double IEG0601Converter::HeadingValue2Degrees ( const char *  value)
static

Platform Heading Angle Aircraft heading angle. Relative between fuselage chord line and True North. Degrees 0..360 uint16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Platform Heading Angle;
Returns
Degrees double. Returns converted Platform Heading Angle.
static const char* IEG0601Converter::IcingDetected2String ( const char *  value)
static

Icing Detected

  • Flag for icing detected at aircraft location.
  • 0: Detector off
  • 1: No icing Detected
  • 2: Icing Detected Icing Code 0..255 uint8 This function converts a 1 byte value into string
    Parameters
    valuea pointer to 1 bytes value. Icing Code
    Returns
    Degrees double. Returns converted Icing Code
static unsigned short IEG0601Converter::LaserPRFCode2Short ( const char *  value)
static

Laser PRF Code. A laser's Pulse Repetition Frequency (PRF) code used to mark a target.

  • The Laser PRF code is a three or four digit number consisting of the values 1..8.
  • Only the values 1111..8888 can be used without 0's or 9's. This function converts a 2 bytes value into unsigned short
    Parameters
    valuea pointer to 2 bytes value. Laser PRF Code;
    Returns
    unsigned short. Returns converted Laser PRF Code.
static int IEG0601Converter::LatitudeDouble2Int32 ( const double  lat)
static

Latitude is the angular distance north or south of the earth's equator, measured in degrees along a meridian. Degrees +/- 90; 4 bytes. This function converts a double value in degrees into 4 bytes LDS value based on Based on WGS84 ellipsoid.

Parameters
lata double. Latitude;
Returns
unsigned int. Returns converted Latitude.
static double IEG0601Converter::LatValue2Degrees ( const char *  value)
static

Latitude is the angular distance north or south of the earth's equator, measured in degrees along a meridian. Degrees +/- 90; 4 bytes. This function converts a 4 bytes value into double based on Based on WGS84 ellipsoid.

Parameters
valuea pointer to 4 bytes value. Latitude;
Returns
Degrees double. Returns converted Latitude.
virtual const unsigned char* IEG0601Converter::LDSTag2UDSKey ( const unsigned char  tag,
int &  len 
)
pure virtual

LDSTag2UDSKey converts 1 byte LDS Tag into 16 bytes UDS Key. LDSTag2UDSKey function converts 1 byte LDS tag to corresponding 16 bytes UDS Key according to the mapping defined in MISB EG0601 standard

Parameters
constunsigned char tag
int&returned array length
Returns
const char* keyArr. Returns converted UDS key byte array.
static int IEG0601Converter::LongitudeDouble2Int32 ( const double  lon)
static

Longitude is the angular distance on the earth's surface, measured east or west from the prime meridian at Greenwich, to the meridian passing through a position of interest. Degrees +/- 180; 4 bytes This function converts a double value in degrees into 4 bytes LDS value based on Based on WGS84 ellipsoid.

Parameters
lona double. Longitude;
Returns
unsigned int. Returns converted Longitude.
static double IEG0601Converter::LonValue2Degrees ( const char *  value)
static

Longitude is the angular distance on the earth's surface, measured east or west from the prime meridian at Greenwich, to the meridian passing through a position of interest. Degrees +/- 180; 4 bytes This function converts a 4 bytes value into double based on Based on WGS84 ellipsoid.

Parameters
valuea pointer to 4 bytes value. Longitude;
Returns
Degrees double. Returns converted Longitude.
static const double IEG0601Converter::OffsetCornerLatitudePoint2Degrees ( const char *  value)
static

Offset Corner Latitude Point Conversion Frame Latitude, offset. Based on WGS84 ellipsoid.

  • Use with Frame Center Latitude.
  • Map -(2^15-1)..(2^15-1) to +/-0.075.
  • Use -(2^15) as an "error" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~1.2micro deg, ~0.25meters at equator. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value.
    Returns
    double. Returns Offset Corner Latitude
static short IEG0601Converter::OffsetCornerLatitudePoint2LDS ( double  UDSValue)
static

Offset Corner Latitude Point. Frame Latitude, offset. Based on WGS84 ellipsoid.

  • Use with Frame Center Latitude.
  • Map +/-0.075 to -(2^15-1)..(2^15-1).
  • Use -(2^15) as an "error" indicator.
  • -(2^15) = 0x8000. This function converts a double value in Degrees into 2 bytes LDS value
    Parameters
    OffsetCorner Latitude Point double. Offset Corner Latitude Point;
    Returns
    short. Returns converted Offset Corner Latitude Point.
static const double IEG0601Converter::OffsetCornerLongitudePoint2Degrees ( const char *  value)
static

Offset Corner Longitude Point Conversion Frame Longitude, offset. Based on WGS84 ellipsoid. corner. Based on WGS84 ellipsoid.

  • Use with Frame Center Longitude.
  • Map -(2^15-1)..(2^15-1) to +/-0.075.
  • Use -(2^15) as an "error" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~1.2micro deg, ~0.25meters at equator. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value.
    Returns
    double. Returns Offset Corner Longitude
static short IEG0601Converter::OffsetCornerLongitudePoint2LDS ( double  UDSValue)
static

Offset Corner Longitude Point Conversion Frame Longitude, offset. Based on WGS84 ellipsoid. corner. Based on WGS84 ellipsoid.

  • Use with Frame Center Longitude.
  • Map +/-0.075 to -(2^15-1)..(2^15-1).
  • Use -(2^15) as an "error" indicator.
  • -(2^15) = 0x8000. This function converts a double value in Degrees into 2 bytes LDS value
    Parameters
    OffsetCorner Longitude Point double. Offset Corner Longitude Point;
    Returns
    short. Returns converted Offset Corner Longitude Point.
static const char* IEG0601Converter::OperationalMode2String ( const char *  value)
static

Operational Mode Indicates the mode of operations of the event portrayed in metadata. Enumerated.

  • 0x00 = "Other"
  • 0x01 = "Operational"
  • 0x02 = "Training"
  • 0x03 = "Exercise"
  • 0x04 = "Maintenance"
  • 0x05 = "Test" This function converts a 1 byte value into string
    Parameters
    valuea pointer to 1 bytes value. Operational Mode
    Returns
    string. Returns converted Operational Mode
static char IEG0601Converter::OutsideAirTemperature2Celcius ( const char *  value)
static

Outside Air Temperature. Temperature outside of aircraft.

  • -128..127 Degrees Celcius.
  • Resolution: 1 degree celcius. This function converts a 1 byte value into integer
    Parameters
    valuea pointer to 1 byte value. Outside Air Temperature;
    Returns
    Degrees Celcius integer. Returns converted Outside Air Temperature.
static double IEG0601Converter::PitchValue2Degrees ( const char *  value)
static

Platform Pitch Angle Aircraft pitch angle. Relative between fuselage chord line and the horizon. Positive angles above horizon, negative below. Degrees +/- 20 int16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Platform Pitch Angle;
Returns
Degrees double. Returns converted Platform Pitch Angle.
static unsigned char IEG0601Converter::PlatformAirspeed2MetersPerSecond ( const char *  value)
static

Platform Indicated Airspeed Indicated airspeed (IAS) of platform. Derived from Pitot tube and static pressure sensors. 0..255 meters/sec. Meters/Second 0..255 uint8 This function converts a 1 byte value into integer

Parameters
valuea pointer to 1 bytes value. Platform Indicated Airspeed
Returns
Meters/Second int. Returns converted Platform Indicated Airspeed
static double IEG0601Converter::PlatformAngleOfAttack2Degrees ( const char *  value)
static

Platform Angle of Attack. Angle between platform longitudinal axis and relative wind.

  • Positive angles for upward relative wind.
  • Map -(2^15-1)..(2^15-1) to +/-20.
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Res: ~610 micro degrees. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Platform Angle of Attack;
    Returns
    degrees double. Returns converted Platform Angle of Attack.
static short IEG0601Converter::PlatformAngleOfAttack2LDS ( double  UDSValue)
static

Platform Angle of Attack. Angle between platform longitudinal axis and relative wind.

  • Positive angles for upward relative wind.
  • Map -(2^15-1)..(2^15-1) to +/-20.
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Res: ~610 micro degrees. This function converts a double value in Degrees into 2 bytes LDS value
    Parameters
    PlatformAngle of Attack double. Platform Angle of Attack;
    Returns
    unsigned short. Returns converted Platform Angle of Attack.
static double IEG0601Converter::PlatformFuelRemaining2Kilogram ( const char *  value)
static

Platform Fuel Remaining. Remainging fuel on airborne platform. Metered as fuel weight remaining.

  • Map 0..(2^16-1) to 0..10000 Kilograms.
  • 1 kilogram = 2.20462262 pounds.
  • Resolution: ~.16 kilograms. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Platform Fuel Remaining;
    Returns
    kilogram double. Returns converted Platform Fuel Remaining.
static unsigned short IEG0601Converter::PlatformFuelRemaining2LDS ( double  UDSValue)
static

Platform Fuel Remaining. Remainging fuel on airborne platform. Metered as fuel weight remaining.

  • Map 0..(2^16-1) to 0..10000 Kilograms.
  • 1 kilogram = 2.20462262 pounds.
  • Resolution: ~.16 kilograms. This function converts a double value in kilogram into 2 bytes LDS value
    Parameters
    PlatformFuel Remaining double. Platform Fuel Remaining;
    Returns
    unsigned short. Returns converted Platform Fuel Remaining.
static double IEG0601Converter::PlatformFullAttackAngleToDegrees ( const char *  value)
static

Platform Angle of Attack(Full) Platform Attack Angle. Angle between platform longitudinal axis and relative wind. - Map -(2^31-1)..(2^31-1) to +/-90.

  • Use -(2^31) as an "out of range" indicator.
  • -(2^31) = 0x80000000.
  • Res: ~42 nano deg. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Platform Angle of Attack(Full);
    Returns
    degrees double. Returns converted Platform Angle of Attack(Full).
static int IEG0601Converter::PlatformFullAttackAngleToLDS ( double  UDSValue)
static

Platform Angle of Attack(Full) Platform Attack Angle. Angle between platform longitudinal axis and relative wind. - Map -(2^31-1)..(2^31-1) to +/-90.

  • Use -(2^31) as an "out of range" indicator.
  • -(2^31) = 0x80000000.
  • Res: ~42 nano deg. This function converts a double value in degrees into 4 bytes LDS value
    Parameters
    PlatformAngle of Attack(Full) double. Platform Angle of Attack(Full).
    Returns
    int. Returns converted Platform Angle of Attack(Full).
static double IEG0601Converter::PlatformFullPitchAngleToDegrees ( const char *  value)
static

Platform Pitch Angle(Full). Aircraft pitch angle. Angle between longitudinal axis and horzontal plane.

  • Positive angles above horizontal plane.
  • Map -(2^15-1)..(2^15-1) to +/-20.
  • Use -(2^15) as "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~610 micro degrees. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Platform Pitch Angle(Full);
    Returns
    degrees double. Returns converted Platform Pitch Angle(Full).
static int IEG0601Converter::PlatformFullPitchAngleToLDS ( double  UDSValue)
static

Platform Pitch Angle(Full). Aircraft pitch angle. Angle between longitudinal axis and horzontal plane.

  • Positive angles above horizontal plane.
  • Map -(2^15-1)..(2^15-1) to +/-20.
  • Use -(2^15) as "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~610 micro degrees. This function converts a double value in degrees into 4 bytes LDS value
    Parameters
    PlatformPitch Angle(Full) double. Platform Pitch Angle(Full);
    Returns
    int. Returns converted Platform Pitch Angle(Full).
static double IEG0601Converter::PlatformFullRollAngleToDegrees ( const char *  value)
static

Platform Roll Angle(Full). Platform roll angle. Angle between transverse axis and horizontal plane. Positive angles for right wing lowered below horizontal plane.

  • Map (-2^15-1)..(2^15-1) to +/-50.
  • Use -(2^15) as "out of range" indicator.
  • -(2^15) = 0x8000.
  • Res: ~1525 micro deg. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Platform Roll Angle(Full);
    Returns
    degrees double. Returns converted Platform Roll Angle(Full).
static int IEG0601Converter::PlatformFullRollAngleToLDS ( double  UDSValue)
static

Platform Roll Angle(Full). Platform roll angle. Angle between transverse axis and horizontal plane. Positive angles for right wing lowered below horizontal plane.

  • Map (-2^15-1)..(2^15-1) to +/-50.
  • Use -(2^15) as "out of range" indicator.
  • -(2^15) = 0x8000.
  • Res: ~1525 micro deg. This function converts a double value in degrees into 4 bytes LDS value
    Parameters
    PlatformRoll Angle(Full) double. Platform Roll Angle(Full);
    Returns
    int. Returns converted Platform Roll Angle(Full).
static double IEG0601Converter::PlatformFullSideslipAngleToDegrees ( const char *  value)
static

Platform Sideslip Angle (Full) Angle between the platform longitudinal axis and relative wind. Full Range.

  • Positive angles to right wing, neg to left.
  • Map -(2^31-1)..(2^31-1) to +/-90.
  • Use -(2^31) as an "out of range" indicator.
  • -(2^31) = 0x80000000.
  • Res: ~42 nano deg. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Platform Sideslip Angle(Full);
    Returns
    degrees double. Returns converted Platform Sideslip Angle(Full).
static int IEG0601Converter::PlatformFullSideslipAngleToLDS ( double  UDSValue)
static

Platform Sideslip Angle (Full) Angle between the platform longitudinal axis and relative wind. Full Range.

  • Positive angles to right wing, neg to left.
  • Map -(2^31-1)..(2^31-1) to +/-90.
  • Use -(2^31) as an "out of range" indicator.
  • -(2^31) = 0x80000000.
  • Res: ~42 nano deg. This function converts a double value in degrees into 4 bytes LDS value
    Parameters
    PlatformSideslip Angle(Full) double. Platform Sideslip Angle(Full);
    Returns
    int. Returns converted Platform Sideslip Angle(Full).
static unsigned char IEG0601Converter::PlatformGroundspeed2MetersPerSecond ( const char *  value)
static

Platform Ground Speed Speed projected to the ground of an airborne platform passing overhead.

  • 0..255 meters/sec.
  • 1 m/s = 1.94384449 knots.
  • Resolution: 1 meter/second. Meters/Second 0..255 uint8 This function converts a 1 byte value into integer
    Parameters
    valuea pointer to 1 bytes value. Platform Ground Speed
    Returns
    Meters/Second int. Returns converted Platform Ground Speed
static unsigned short IEG0601Converter::PlatformHeadingAngle2LDS ( double  UDSValue)
static

Platform Heading Angle Aircraft heading angle. Relative between fuselage chord line and True North. Degrees 0..360 uint16 This function converts a double value in Degrees into 2 bytes LDS value

Parameters
PlatformHeading Angle double. Platform Heading Angle;
Returns
unsigned short. Returns converted Platform Heading Angle.
static double IEG0601Converter::PlatformMagneticHeading2Degrees ( const char *  value)
static

Platform Magnetic Heading. Aircraft magnetic heading angle. Relative between longitudinal axis and Magnetic North measured in the horizontal plane.

  • Map 0..(2^16-1) to 0..360.
  • Resolution: ~5.5 milli degrees. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Platform Magnetic Heading;
    Returns
    Degrees double. Returns converted Platform Magnetic Heading.
static unsigned short IEG0601Converter::PlatformMagneticHeading2LDS ( double  UDSValue)
static

Platform Magnetic Heading. Aircraft magnetic heading angle. Relative between longitudinal axis and Magnetic North measured in the horizontal plane.

  • Map 0..360 to 0..(2^16-1).
  • Resolution: ~5.5 milli degrees. This function converts a double value in Degrees into 2 bytes LDS value
    Parameters
    PlatformMagnetic Heading double. Platform Magnetic Heading;
    Returns
    unsigned short. Returns converted Platform Magnetic Heading.
static short IEG0601Converter::PlatformPitchAngle2LDS ( double  UDSValue)
static

Platform Pitch Angle Aircraft pitch angle. Relative between fuselage chord line and the horizon. Positive angles above horizon, negative below. Degrees +/- 20 int16 This function converts a double value in Degrees into 2 bytes LDS value

Parameters
PlatformPitch Angle double. Platform Pitch Angle;
Returns
short. Returns converted Platform Pitch Angle.
static short IEG0601Converter::PlatformRollAngle2LDS ( double  UDSValue)
static

Platform Roll Angle Aircraft roll angle. Relative between horizon and wing chord line. Wings level is 0 degrees. Positive angles for elevated left wing. Degrees +/- 50 int16 This function converts a double value in Degrees into 2 bytes LDS value

Parameters
PlatformRoll Angle double. Platform Roll Angle;
Returns
short. Returns converted Platform Roll Angle.
static double IEG0601Converter::PlatformSideslipAngle2Degrees ( const char *  value)
static

Platform Sideslip Angle. The angle between the platform longitudinal axis and relative wind.

  • Positive angles to right wing, neg to left.
  • Map -(2^15-1)..(2^15-1) to +/-20.
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Res: ~610 micro deg. This function converts a 2 bytes value into Degrees
    Parameters
    valuea pointer to 2 bytes value. Platform Sideslip Angle;
    Returns
    Degrees double. Returns converted Platform Sideslip Angle.
static short IEG0601Converter::PlatformSideslipAngle2LDS ( double  UDSValue)
static

Platform Sideslip Angle. The angle between the platform longitudinal axis and relative wind.

  • Positive angles to right wing, neg to left.
  • Map -(2^15-1)..(2^15-1) to +/-20.
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Res: ~610 micro deg. This function converts a double value in Degrees into 2 bytes LDS value
    Parameters
    PlatformSideslip Angle double. Platform Sideslip Angle;
    Returns
    short. Returns converted Platform Sideslip Angle.
static unsigned char IEG0601Converter::PlatformTrueAirspeed2MetersPerSecond ( const char *  value)
static

Platform True Airspeed. True airspeed (TAS) of platform. Indicated Airspeed adjusted for temperature and altitude.

  • 0..255 meters/sec.
  • 1 m/s = 1.94384449 knots.
  • Resolution: 1 meter/second. This function converts a 1 byte value into unsigned char
    Parameters
    valuea pointer to 1 byte value. Platform True Airspeed;
    Returns
    Meters/Second unsigned char. Returns converted Platform True Airspeed.
static short IEG0601Converter::PlatformVerticalSpeed2LDS ( double  UDSValue)
static

Platform Vertical Speed. Vertical speed of the aircraft relative to zenith. Positive ascending, negative descending.

  • Map-(2^15-1)..(2^15-1) to +/-180
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~ 0.0055 meters/second. This function converts a double value in Meters/Second into 2 bytes LDS value
    Parameters
    PlatformVertical Speed double. Platform Vertical Speed;
    Returns
    short. Returns converted Platform Vertical Speed.
static double IEG0601Converter::PlatformVerticalSpeed2MetersPerSecond ( const char *  value)
static

Platform Vertical Speed. Vertical speed of the aircraft relative to zenith. Positive ascending, negative descending.

  • Map-(2^15-1)..(2^15-1) to +/-180
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~ 0.0055 meters/second. This function converts a 2 bytes value into Meters/Second
    Parameters
    valuea pointer to 2 bytes value. Platform Vertical Speed;
    Returns
    Meters/Second double. Returns converted Platform Vertical Speed.
static unsigned char IEG0601Converter::RelativeHumidity2LDS ( double  UDSValue)
static

Relative Humidity. Relative Humidty at aircraft location.

  • Map 0..(2^8-1) to 0..100.
  • Resolution: ~0.4%. This function converts a double value in % into 1 byte LDS value
    Parameters
    RelativeHumidity double. Relative Humidity;
    Returns
    unsigned char. Returns converted Relative Humidity.
static double IEG0601Converter::RelativeHumidity2Percent ( const char *  value)
static

Relative Humidity. Relative Humidty at aircraft location.

  • Map 0..(2^8-1) to 0..100.
  • Resolution: ~0.4%. This function converts a 1 byte value into double
    Parameters
    valuea pointer to 1 byte value. Relative Humidity;
    Returns
    % double. Returns converted Relative Humidity.
static double IEG0601Converter::RollValue2Degrees ( const char *  value)
static

Platform Roll Angle Aircraft roll angle. Relative between horizon and wing chord line. Wings level is 0 degrees. Positive angles for elevated left wing. Degrees +/- 50 int16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Platform Roll Angle
Returns
Degrees double. Returns converted Platform Roll Angle
static double IEG0601Converter::SensorEastVel2MetersPerSecond ( const char *  value)
static

Sensor East Velocity. Easting velocity of the sensor or platform. Positive towards East.

  • Map-(2^15-1)..(2^15-1) to +/-327
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~ 1 cm/sec. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Sensor East Velocity;
    Returns
    Meters/Sec double. Returns converted Sensor East Velocity.
static short IEG0601Converter::SensorEastVelocity2LDS ( double  UDSValue)
static

Sensor East Velocity. Easting velocity of the sensor or platform. Positive towards East.

  • Map +/-327 to -(2^15-1)..(2^15-1)
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~ 1 cm/sec. This function converts a double value in Meters/Sec into 2 bytes LDS value
    Parameters
    SensorEast Velocity double. Sensor East Velocity;
    Returns
    short. Returns converted Sensor East Velocity.
static double IEG0601Converter::SensorEllipsoidHeight2Meters ( const char *  value)
static

Sensor Ellipsoid Height. Sensor Ellipsoid Height as measured from the reference WGS84 Ellipsoid.

  • Map 0..(2^16-1) to -900..19000 meters.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Sensor Ellipsoid Height;
    Returns
    Meters double. Returns converted Sensor Ellipsoid Height.
static unsigned short IEG0601Converter::SensorFOV_2LDS ( double  UDSValue)
static

Sensor Field of View Horizontal/vertical field of view of selected imaging sensor. Degrees 0..180 uint16 This function converts a double value in Degrees into 2 bytes LDS value

Parameters
SensorHorizontal Field of View double. Sensor Field of View;
Returns
unsigned short. Returns converted Sensor Field of View.
static const char* IEG0601Converter::SensorFOVName2String ( const char *  value)
static

Sensor Field of View Name

  • Names sensor field of view quantized steps. x
  • 00 = Ultranarrow
    • 01 = Narrow
    • 02 = Medium
    • 03 = Wide
    • 04 = Ultrawide
    • 05 = Narrow Medium
    • 06 = 2x Ultranarrow
    • 07 = 4x Ultranarrow List 0..255 uint8 This function converts a 1 byte value into string
      Parameters
      valuea pointer to 1 bytes value. Sensor Field of View Name
      Returns
      Degrees double. Returns converted Sensor Field of View Name
static double IEG0601Converter::SensorHorizontalFOV_2Degrees ( const char *  value)
static

Sensor Horizontal Field of View Horizontal field of view of selected imaging sensor. Degrees 0..180 uint16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Sensor Horizontal Field of View
Returns
Degrees double. Returns converted Sensor Horizontal Field of View
static double IEG0601Converter::SensorNorthVel2MetersPerSecond ( const char *  value)
static

Sensor North Velocity. Northing velocity of the sensor or platform. Positive towards True North.

  • Map-(2^15-1)..(2^15-1) to +/-327
  • Use -(2^15) as an "out of range" indicator.
  • -(2^15) = 0x8000.
  • Resolution: ~ 1 cm/sec. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Sensor North Velocity;
    Returns
    Meters/Sec double. Returns converted Sensor North Velocity.
static double IEG0601Converter::SensorRelativeAzimuth2Degrees ( const char *  value)
static

Sensor Relative Azimuth Angle Relative rotation angle of sensor to aircraft platform in azimuth. Rotation angle between aircraft fuselage chord and camera pointing direction as seen from above the platform. Degrees 0..360 uint32 This function converts a 4 byte value into double

Parameters
valuea pointer to 4 bytes value. Sensor Relative Azimuth Angle
Returns
Degrees double. Returns converted Sensor Relative Azimuth Angle
static double IEG0601Converter::SensorRelativeElevation2Degrees ( const char *  value)
static

Sensor Relative Sensor Relative Elevation Angle Relative Elevation Angle of sensor to aircraft platform. Level flight with camera pointing forward is zero degrees. Negative angles down. Degrees +/- 180 int32 This function converts a 4 byte value into double

Parameters
valuea pointer to 4 bytes value. Sensor Relative Elevation Angle
Returns
Degrees double. Returns converted. Sensor Relative Elevation Angle
static int IEG0601Converter::SensorRelativeElevation2LDS ( double  UDSValue)
static

Sensor Relative Elevation Angle Relative Elevation Angle of sensor to aircraft platform. Level flight with camera pointing forward is zero degrees. Negative angles down. Degrees +/- 180 int32 This function converts a double value in Degrees into 4 bytes LDS value

Parameters
SensorRelative Elevation Angle double. Sensor Relative Elevation Angle;
Returns
int. Returns converted Sensor Relative Elevation Angle.
static double IEG0601Converter::SensorRelativeRoll2Degrees ( const char *  value)
static

Sensor Relative Roll Angle Relative roll angle of sensor to aircraft platform. Twisting angle of camera about lens axis. Top of image is zero degrees. Positive angles are clockwise when looking from behind camera. Degrees 0..360 uint32 This function converts a 4 byte value into double

Parameters
valuea pointer to 4 bytes value. Sensor Relative Roll Angle
Returns
Degrees double. Returns converted Sensor Relative Roll Angle
static unsigned int IEG0601Converter::SensorRelativeRoll2LDS ( double  UDSValue)
static

Sensor Relative Roll Angle Relative roll angle of sensor to aircraft platform. Twisting angle of camera about lens axis. Top of image is zero degrees. Positive angles are clockwise when looking from behind camera. This function converts a double value in Degrees into 4 bytes LDS value

Parameters
SensorRelative Roll Angle double. Sensor Relative Roll Angle;
Returns
unsigned int. Returns converted Sensor Relative Roll Angle.
static unsigned short IEG0601Converter::SensorTrueAltitude2LDS ( double  UDSValue)
static

This function converts a double value in Meters into 2 bytes LDS value

Parameters
SensorTrue Altitude double. Sensor True Altitude;
Returns
unsigned short. Returns converted Sensor True Altitude.
static double IEG0601Converter::SensorVerticalFOV_2Degrees ( const char *  value)
static

Sensor Vertical Field of View Vertical field of view of selected imaging sensor. Degrees 0..180 uint16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Sensor Vertical Field of View
Returns
Degrees double. Returns converted Sensor Vertical Field of View
static const double IEG0601Converter::SlantRange2Meters ( const char *  value)
static

Slant Range Conversion Slant range in meters. Distance to target.

  • Map 0..(2^32-1) to 0..5000000 meters.
  • 1 nautical mile (knot) = 1852 meters.
  • Resoluiton: ~1.2 milli meters. Distance from the sensor to the center point on ground of the framed subject (image) depicted in the captured essence, (default metres) This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 2 bytes value.
    Returns
    double. Returns converted Slant Range
static unsigned short IEG0601Converter::StaticPressure2LDS ( double  UDSValue)
static

Static Pressure. Static pressure at aircraft location.

  • Map 0..5000 mbar to 0..(2^16-1).
  • 1 mbar = 0.0145037738 PSI.
  • Resolution: ~0.08 Millibar This function converts a double value in Millibar into 2 bytes LDS value
    Parameters
    StaticPressure double. Wind Direction;
    Returns
    unsigned short. Returns converted Static Pressure.
static double IEG0601Converter::StaticPressure2Millibar ( const char *  value)
static

Static Pressure. Static pressure at aircraft location.

  • Map 0..(2^16-1) to 0..5000 mbar.
  • 1 mbar = 0.0145037738 PSI.
  • Resolution: ~0.08 Millibar This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Static Pressure;
    Returns
    millibar double. Returns converted Static Pressure.
static unsigned short IEG0601Converter::TargetErrorCE90_2LDS ( double  UDSValue)
static

Target Error Estimate - CE90 Circular Error 90 (CE90) is the estimated error distance in the horizontal direction. Specifies the radius of 90% probability on a plane tangent to the earth’s surface. Meters 0..4095 to uint16 This function converts a double value in meters into 2 bytes LDS value

Parameters
TargetError Estimate - CE90 double. Target Error Estimate - CE90;
Returns
unsigned short. Returns converted Target Error Estimate - CE90.
static double IEG0601Converter::TargetErrorCE90_2Meters ( const char *  value)
static

TargetErrorCE90_2Meters Circular Error 90 (CE90) is the estimated error distance in the horizontal direction. Specifies the radius of 90% probability on a plane tangent to the earth’s surface. Meters 0..4095 uint16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Circular Error 90 (CE90)
Returns
Meters double. Returns converted Circular Error 90 (CE90)
static unsigned short IEG0601Converter::TargetErrorLE90_2LDS ( double  UDSValue)
static

Target Error Estimate - LE90 Lateral Error 90 (LE90) is the estimated error distance in the vertical (or lateral) direction. Specifies the interval of 90% probability in the local vertical direction. Meters 0..4095 uint16 This function converts a double value in meters into 2 bytes LDS value

Parameters
TargetError Estimate - LE90 double. Target Error Estimate - LE90;
Returns
unsigned short. Returns converted Target Error Estimate - LE90.
static double IEG0601Converter::TargetErrorLE90_2Meters ( const char *  value)
static

TargetErrorLE90_2Meters Lateral Error 90 (LE90) is the estimated error distance in the vertical (or lateral) direction. Specifies the interval of 90% probability in the local vertical direction. Meters 0..4095 uint16 This function converts a 2 bytes value into double

Parameters
valuea pointer to 2 bytes value. Target Error Estimate - LE90
Returns
Meters double. Returns converted Target Error Estimate - LE90
static unsigned short IEG0601Converter::TargetLocationElevation2LDS ( double  UDSValue)
static

Target Location Elevation. Calculated target elevation. This is the crosshair loaciton if different from frame center.

  • Map -900..19000 meters to 0..(2^16-1).
  • Offset = -900.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a double value in Meters into 2 bytes LDS value
    Parameters
    TargetLocation Elevation double. Target Location Elevation;
    Returns
    unsigned short. Returns converted Target Location Elevation.
static double IEG0601Converter::TargetLocationElevation2Meters ( const char *  value)
static

Target Location Elevation. Calculated target elevation. This is the crosshair loaciton if different from frame center.

  • Map 0..(2^16-1) to -900..19000 meters.
  • Offset = -900.
  • 1 meter = 3.2808399 feet.
  • Resolution: ~0.3 meters. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Target Location Elevation;
    Returns
    Meters double. Returns converted Target Location Elevation.
static double IEG0601Converter::TargetLocationLatitude2Degrees ( const char *  value)
static

Target Location Latitude. Calculated Target latitude. This is the crosshair loaction if different from frame center.

  • Based on WGS84 ellipsoid.
  • Map -(2^31-1)..(2^31-1) to +/-90.
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~42 nano degrees. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Target Location Latitude;
    Returns
    Degrees double. Returns converted Target Location Latitude.
static int IEG0601Converter::TargetLocationLatitude2LDS ( double  UDSValue)
static

Target Location Latitude. Calculated Target latitude. This is the crosshair loaction if different from frame center.

  • Based on WGS84 ellipsoid.
  • Map +/-90 to -(2^31-1)..(2^31-1).
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~42 nano degrees. This function converts a double value in Meters into 4 bytes LDS value
    Parameters
    TargetLocation Latitude double. Target Location Latitude;
    Returns
    int. Returns converted Target Location Latitude.
static double IEG0601Converter::TargetLocationLongitude2Degrees ( const char *  value)
static

Target Location Longitude. Calculated Target longitude. This is the crosshair location if different from frame center.

  • Based on WGS84 ellipsoid.
  • Map -(2^31-1)..(2^31-1) to +/-180.
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~84 nano degrees. This function converts a 4 bytes value into double
    Parameters
    valuea pointer to 4 bytes value. Target Location Longitude;
    Returns
    Degrees double. Returns converted Target Location Longitude.
static int IEG0601Converter::TargetLocationLongitude2LDS ( double  UDSValue)
static

Target Location Longitude. Calculated Target longitude. This is the crosshair location if different from frame center.

  • Based on WGS84 ellipsoid.
  • Map +/-180 to -(2^31-1)..(2^31-1).
  • Use -(2^31) as an "error" indicator.
  • -(2^31) = 0x80000000.
  • Resolution: ~84 nano degrees. This function converts a double value in Degrees into 4 bytes LDS value
    Parameters
    TargetLocation Longitude double. Target Location Longitude;
    Returns
    int. Returns converted Target Location Longitude.
static unsigned char IEG0601Converter::TargetTrackGateHeight2LDS ( unsigned short  UDSValue)
static

Target Track Gate Height. Tracking gate height (x value) of tracked target within field of view.

  • Closely tied to source video resolution in pixels. This function converts a short value in Pixels into 1 byte LDS value
    Parameters
    TrackGate Height short. Target Track Gate Height;
    Returns
    unsigned char. Returns converted Target Track Gate Height.
static unsigned short IEG0601Converter::TargetTrackGateHeight2Pixels ( const char *  value)
static

Target Track Gate Height. Tracking gate height (y value) of tracked target within field of view.

  • Closely tied to source video resolution in pixels. This function converts a 1 byte value into short
    Parameters
    valuea pointer to 1 byte value. Target Track Gate Height;
    Returns
    pixels short. Returns converted Target Track Gate Height.
static unsigned char IEG0601Converter::TargetTrackGateWidth2LDS ( unsigned short  UDSValue)
static

Target Track Gate Width. Tracking gate width (x value) of tracked target within field of view.

  • Closely tied to source video resolution in pixels. This function converts a short value in Pixels into 1 byte LDS value
    Parameters
    TrackGate Width short. Target Track Gate Width;
    Returns
    unsigned char. Returns converted Target Track Gate Width.
static unsigned short IEG0601Converter::TargetTrackGateWidth2Pixels ( const char *  value)
static

Target Track Gate Width. Tracking gate width (x value) of tracked target within field of view.

  • Closely tied to source video resolution in pixels. This function converts a 1 byte value into short
    Parameters
    valuea pointer to 1 byte value. Target Track Gate Width;
    Returns
    pixels short. Returns converted Target Track Gate Width.
static unsigned short IEG0601Converter::TargetWidth2LDS ( double  UDSValue)
static

Target Width Conversion Horizontal half width of the target frame image; used to compute the four corner points of the frame, (default metres) -Target Width within sensor field of view.

  • Map 0..(2^16-1) to 0..10000 meters.
  • 1 meter = 3.2808399 feet.
    • Resolution: ~.16 meters. This function converts a double value in meters into 2 bytes LDS value
      Parameters
      TargetWidth double. Target Width;
      Returns
      unsigned short. Returns converted Target Width.
static const double IEG0601Converter::TargetWidth2Meters ( const char *  value)
static

Target Width Conversion Horizontal half width of the target frame image; used to compute the four corner points of the frame, (default metres) -Target Width within sensor field of view.

  • Map 0..(2^16-1) to 0..10000 meters.
  • 1 meter = 3.2808399 feet.
    • Resolution: ~.16 meters. This function converts a 2 bytes value into double
      Parameters
      valuea pointer to 2 bytes value.
      Returns
      double. Returns converted Target Width
virtual const unsigned char IEG0601Converter::UDSKey2LDSTag ( const unsigned char  keyArr[16])
pure virtual

UDSKey2LDSTag converts 16 bytes UDS key Array into 1 byte LDS Key UDSKey2LDSTag function converts 16 bytes UDS key Array into corresponding 1 bytes LDS Key according to the mapping defined in MISB EG0601 standard

Parameters
constunsigned char [16] 16 bytes UDS key Array
Returns
const char* tag. Returns converted LDS key.
const char* IEG0601Converter::UnixTime2String ( const char *  value,
char *  buffer,
size_t  buffer_length 
)

UnixTime2String converts a UNIX time value to string (UTC)

Parameters
valuea char*. Pointer to value 8 bytes array
buffer_lengtha size_t. Targer buffer size.
Returns
time string char*. Returns converted UTC time.
virtual const char* IEG0601Converter::Value2ValueString ( const unsigned char  tag,
const char *  value,
size_t  length,
char *  buffer,
size_t  buffer_length,
bool  noConversion = false 
)
pure virtual

Value2ValueString converts a value into string. Id Key helps to determine the length of the value byte array

Parameters
tagan int. Key Tag
valuea char*. Value
lengtha size_t. Value's length.
buffera char*. A poiner to the buffer where the converted string will be copied.
buffer_lengtha size_t. Targer buffer size.
Returns
Value string const char*. Returns a value string converted according to the tag ID.
static unsigned char IEG0601Converter::WeaponFired2Char ( const char *  value)
static

Weapon Fired. Indication when a particular weapon is released. Correlate with Unix Time stamp.

  • Identical format to Weapon Load byte 2: [byteN] = [[nib1][nib2]]
  • nib1 = Station Number
  • nib2 = Substation Number This function converts a 1 byte value into unsigned char
    Parameters
    valuea pointer to 1 byte value. Weapon Fired;
    Returns
    unsigned char. Returns converted Weapon Fired.
static unsigned short IEG0601Converter::WeaponLoad2Short ( const char *  value)
static

Weapon Load. Current weapons stored on aircraft broken into two bytes:

  • [K][L][V] = [0x41][0x02][[byte1][byte2]]
  • [byteN] = [[nib1][nib2]], nib1= msn
  • byte1-nib1 = Station Number
  • byte1-nib2 = Substation Number
  • byte2-nib1 = Weapon Type
  • byte2-nib2 = Weapon Variant This function converts a 2 bytes value into unsigned short
    Parameters
    valuea pointer to 2 bytes value. Weapon Load;
    Returns
    unsigned short. Returns converted Weapon Load.
static double IEG0601Converter::WindDirection2Degrees ( const char *  value)
static

Wind Direction. The direction the wind is coming from relative to True North. Degrees 0..360 uint16

  • Map 0..(2^16-1) to 0..360.
  • Resolution: ~5.5 milli degrees. This function converts a 2 bytes value into double
    Parameters
    valuea pointer to 2 bytes value. Wind Direction;
    Returns
    Degrees double. Returns converted Wind Direction.
static unsigned short IEG0601Converter::WindDirection2LDS ( double  UDSValue)
static

Wind Direction. The direction the wind is coming from relative to True North. Degrees 0..360 uint16

  • Map 0..360 to 0..(2^16-1).
  • Resolution: ~5.5 milli degrees. This function converts a double value in degrees into 2 bytes LDS value
    Parameters
    WindDirection double. Wind Direction;
    Returns
    unsigned short. Returns converted Wind Direction.
static unsigned char IEG0601Converter::WindSpeed2LDS ( double  UDSValue)
static

Wind Speed. Wind speed at aircraft location. Meters/Second 0..100 uint8

  • Map 0..100 meters/second to 0..255.
  • 1 m/s = 1.94384449 knots.
  • Resolution: ~0.4 meters/second. This function converts a double value in meters/second into 1 byte LDS value
    Parameters
    WindSpeed double. Wind Speed;
    Returns
    unsigned char. Returns converted Wind Direction.
static double IEG0601Converter::WindSpeed2MetersPerSecond ( const char *  value)
static

Wind Speed. Wind speed at aircraft location. Meters/Second 0..100 uint8

  • Map 0..255 to 0..100 meters/second.
  • 1 m/s = 1.94384449 knots.
  • Resolution: ~0.4 meters/second. This function converts a 1 byte value into double
    Parameters
    valuea pointer to 1 byte value. Wind Speed;
    Returns
    meters/second double. Returns converted Wind Speed.

Friends And Related Function Documentation

EG0601_API void EndianSwap ( unsigned short &  x)
related

Helper function. Swaps 16 bit values

EG0601_API void EndianSwap ( short &  x)
related

Helper function. Swaps 16 bit values

EG0601_API void EndianSwap ( unsigned int &  x)
related

Helper function. Swaps 32 bit values

EG0601_API void EndianSwap ( int &  x)
related

Helper function. Swaps 32 bit values

EG0601_API void EndianSwap ( unsigned __int64 &  x)
related

Helper function. Swaps 64 bit values

EG0601_API __int64 TimeToPosixTime ( double  time)
related

Helper function. Converts time in ms into posix

Untitled 1




 Copyright 2010,    IMPLEOTV SYSTEMS LTD