CCAux  2.7.2.0
CCAux API reference
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator
Data Structures | Typedefs | Enumerations | Functions | Variables
CrossControl Namespace Reference

Data Structures

struct  BatteryTimerType
 
struct  received_video
 
struct  video_dec_command
 
struct  version_info
 
struct  BuzzerSetup
 
struct  LedTimingType
 
struct  FpgaLedTimingType
 
struct  LedColorMixType
 
struct  TimerType
 
struct  UpgradeStatus
 

Typedefs

typedef void * ABOUTHANDLE
 
typedef void * ADCHANDLE
 
typedef void * AUXVERSIONHANDLE
 
typedef void * BACKLIGHTHANDLE
 
typedef void * BATTERYHANDLE
 
typedef void * BUZZERHANDLE
 
typedef void * CANSETTINGHANDLE
 
typedef struct version_info VersionType
 
typedef void * CFGINHANDLE
 
typedef void * CONFIGHANDLE
 
typedef void * DIAGNOSTICHANDLE
 
typedef void * DIGIOHANDLE
 
typedef void * FIRMWAREUPGHANDLE
 
typedef void * FRONTLEDHANDLE
 
typedef void * LIGHTSENSORHANDLE
 
typedef void * POWERHANDLE
 
typedef enum
CrossControl::PowerMgrConf 
_PowerMgrConf
 
typedef enum
CrossControl::PowerMgrStatus 
_PowerMgrStatus
 
typedef void * POWERMGRHANDLE
 
typedef void * PWMOUTHANDLE
 
typedef void * SMARTHANDLE
 
typedef void * TELEMATICSHANDLE
 
typedef void * TOUCHSCREENHANDLE
 
typedef void * TOUCHSCREENCALIBHANDLE
 
typedef void * VIDEOHANDLE
 

Enumerations

enum  ChargingStatus {
  ChargingStatus_NoCharge = 0, ChargingStatus_Charging = 1, ChargingStatus_FullyCharged = 2, ChargingStatus_TempLow = 3,
  ChargingStatus_TempHigh = 4, ChargingStatus_Unknown = 5
}
 
enum  PowerSource { PowerSource_Battery = 0, PowerSource_ExternalPower = 1 }
 
enum  ErrorStatus {
  ErrorStatus_NoError = 0, ErrorStatus_ThermistorTempSensor = 1, ErrorStatus_SecondaryTempSensor = 2, ErrorStatus_ChargeFail = 3,
  ErrorStatus_Overcurrent = 4, ErrorStatus_Init = 5
}
 
enum  VoltageEnum {
  VOLTAGE_24VIN = 0, VOLTAGE_24V, VOLTAGE_12V, VOLTAGE_12VID,
  VOLTAGE_5V, VOLTAGE_3V3, VOLTAGE_VTFT, VOLTAGE_5VSTB,
  VOLTAGE_1V9, VOLTAGE_1V8, VOLTAGE_1V5, VOLTAGE_1V2,
  VOLTAGE_1V05, VOLTAGE_1V0, VOLTAGE_0V9, VOLTAGE_VREF_INT,
  VOLTAGE_24V_BACKUP, VOLTAGE_2V5, VOLTAGE_1V1, VOLTAGE_1V3_PER,
  VOLTAGE_1V3_VDDA, VOLTAGE_3V3STBY, VOLTAGE_VPMIC, VOLTAGE_VMAIN
}
 
enum  LightSensorOperationRange { RangeStandard = 0, RangeExtended = 1 }
 
enum  LightSensorSamplingMode { SamplingModeStandard = 0, SamplingModeExtended, SamplingModeAuto }
 
enum  CCStatus { Disabled = 0, Enabled = 1 }
 
enum  eErr {
  ERR_SUCCESS = 0, ERR_OPEN_FAILED = 1, ERR_NOT_SUPPORTED = 2, ERR_UNKNOWN_FEATURE = 3,
  ERR_DATATYPE_MISMATCH = 4, ERR_CODE_NOT_EXIST = 5, ERR_BUFFER_SIZE = 6, ERR_IOCTRL_FAILED = 7,
  ERR_INVALID_DATA = 8, ERR_INVALID_PARAMETER = 9, ERR_CREATE_THREAD = 10, ERR_IN_PROGRESS = 11,
  ERR_CHECKSUM = 12, ERR_INIT_FAILED = 13, ERR_VERIFY_FAILED = 14, ERR_DEVICE_READ_DATA_FAILED = 15,
  ERR_DEVICE_WRITE_DATA_FAILED = 16, ERR_COMMAND_FAILED = 17, ERR_EEPROM = 18, ERR_JIDA_TEMP = 19,
  ERR_AVERAGE_CALC_STARTED = 20, ERR_NOT_RUNNING = 21, ERR_I2C_EXPANDER_READ_FAILED = 22, ERR_I2C_EXPANDER_WRITE_FAILED = 23,
  ERR_I2C_EXPANDER_INIT_FAILED = 24, ERR_NEWER_SS_VERSION_REQUIRED = 25, ERR_NEWER_FPGA_VERSION_REQUIRED = 26, ERR_NEWER_FRONT_VERSION_REQUIRED = 27,
  ERR_TELEMATICS_GPRS_NOT_AVAILABLE = 28, ERR_TELEMATICS_WLAN_NOT_AVAILABLE = 29, ERR_TELEMATICS_BT_NOT_AVAILABLE = 30, ERR_TELEMATICS_GPS_NOT_AVAILABLE = 31,
  ERR_MEM_ALLOC_FAIL = 32, ERR_JOIN_THREAD = 33
}
 
enum  DeInterlaceMode { DeInterlace_Even = 0, DeInterlace_Odd = 1, DeInterlace_BOB = 2 }
 
enum  VideoChannel { Analog_Channel_1 = 0, Analog_Channel_2 = 1, Analog_Channel_3 = 2, Analog_Channel_4 = 3 }
 
enum  videoStandard {
  STD_M_J_NTSC = 0, STD_B_D_G_H_I_N_PAL = 1, STD_M_PAL = 2, STD_PAL = 3,
  STD_NTSC = 4, STD_SECAM = 5
}
 
enum  VideoRotation { RotNone = 0, Rot90, Rot180, Rot270 }
 
enum  CanFrameType { FrameStandard, FrameExtended, FrameStandardExtended }
 
enum  TriggerConf {
  Front_Button_Enabled = 1, OnOff_Signal_Enabled = 2, Both_Button_And_Signal_Enabled = 3, CAN_Activity = 4,
  CAN_Button_Activity = 5, CAN_OnOff_Activity = 6, CAN_Button_OnOff_Activity = 7, CI_State_Activity = 8,
  CI_Button_Activity = 9, CI_OnOff_Activity = 10, CI_Button_OnOff_Activity = 11, CI_CAN_Activity = 12,
  CI_CAN_Button_Activity = 13, CI_CAN_OnOff_Activity = 14, All_Events = 15, Last_trigger_conf
}
 
enum  PowerAction { NoAction = 0, ActionSuspend = 1, ActionShutDown = 2 }
 
enum  ButtonPowerTransitionStatus {
  BPTS_No_Change = 0, BPTS_ShutDown = 1, BPTS_Suspend = 2, BPTS_Restart = 3,
  BPTS_BtnPressed = 4, BPTS_BtnPressedLong = 5, BPTS_SignalOff = 6
}
 
enum  OCDStatus { OCD_OK = 0, OCD_OC = 1, OCD_POWER_OFF = 2 }
 
enum  JidaSensorType {
  TEMP_CPU = 0, TEMP_BOX = 1, TEMP_ENV = 2, TEMP_BOARD = 3,
  TEMP_BACKPLANE = 4, TEMP_CHIPSETS = 5, TEMP_VIDEO = 6, TEMP_OTHER = 7
}
 
enum  UpgradeAction {
  UPGRADE_INIT, UPGRADE_PREP_COM, UPGRADE_READING_FILE, UPGRADE_CONVERTING_FILE,
  UPGRADE_FLASHING, UPGRADE_VERIFYING, UPGRADE_COMPLETE, UPGRADE_COMPLETE_WITH_ERRORS
}
 
enum  CCAuxColor {
  RED = 0, GREEN, BLUE, CYAN,
  MAGENTA, YELLOW, UNDEFINED_COLOR
}
 
enum  RS4XXPort { RS4XXPort1 = 1, RS4XXPort2, RS4XXPort3, RS4XXPort4 }
 
enum  CfgInModeEnum {
  CFGIN_NOT_IN_USE = 0, CFGIN_HI_SWITCH, CFGIN_LOW_SWITCH, CFGIN_VOLTAGE_3V3,
  CFGIN_VOLTAGE_5VPD, CFGIN_RESISTANCE, CFGIN_FREQ_FLOATING, CFGIN_FREQ_PULLUP,
  CFGIN_FREQ_PULLDOWN
}
 
enum  ButtonConfigEnum {
  BUTTON_ONLY_MP_ACTION = 0x00, BUTTON_AS_STARTUP_TRIG = 0x02, BUTTON_AS_ACTION_TRIG = 0x04, BUTTON_AS_ACTION_STARTUP_TRIG = 0x06,
  BUTTON_AS_BACKLIGHT_DECREASE = 0x08, BUTTON_AS_BACKLIGHT_DECR_STARTUP_TRIG = 0x0A, BUTTON_AS_BACKLIGHT_INCREASE = 0x0C, BUTTON_AS_BACKLIGHT_INCR_STARTUP_TRIG = 0x0E
}
 
enum  startupReasonCodes {
  startupReasonCodeUndefined = 0x0000, startupReasonCodeButtonPress = 0x0055, startupReasonCodeExtCtrl = 0x00AA, startupReasonCodeMPRestart = 0x00F0,
  startupReasonCodePowerOnStartup = 0x000F, startupReasonCodeCanActivity = 0x003c, startupReasonCodeCIActivity = 0x00c3
}
 
enum  shutDownReasonCodes { shutdownReasonCodeNoError = 0x001F }
 
enum  hwErrorStatusCodes { errCodeNoErr = 0 }
 
enum  PowerMgrConf { Normal = 0, ApplicationControlled = 1, BatterySuspend = 2 }
 
enum  PowerMgrStatus { NoRequestsPending = 0, SuspendPending = 1, ShutdownPending = 2 }
 
enum  TouchScreenModeSettings { MOUSE_NEXT_BOOT = 0, TOUCH_NEXT_BOOT = 1, MOUSE_NOW = 2, TOUCH_NOW = 3 }
 
enum  TSAdvancedSettingsParameter {
  TS_RIGHT_CLICK_TIME = 0, TS_LOW_LEVEL = 1, TS_UNTOUCHLEVEL = 2, TS_DEBOUNCE_TIME = 3,
  TS_DEBOUNCE_TIMEOUT_TIME = 4, TS_DOUBLECLICK_MAX_CLICK_TIME = 5, TS_DOUBLE_CLICK_TIME = 6, TS_MAX_RIGHTCLICK_DISTANCE = 7,
  TS_USE_DEJITTER = 8, TS_CALIBTATION_WIDTH = 9, TS_CALIBRATION_MEASUREMENTS = 10, TS_RESTORE_DEFAULT_SETTINGS = 11,
  TS_TCHAUTOCAL = 12
}
 
enum  CalibrationModeSettings {
  MODE_UNKNOWN = 0, MODE_NORMAL = 1, MODE_CALIBRATION_5P = 2, MODE_CALIBRATION_9P = 3,
  MODE_CALIBRATION_13P = 4
}
 
enum  CalibrationConfigParam {
  CONFIG_CALIBRATION_WITH = 0, CONFIG_CALIBRATION_MEASUREMENTS = 1, CONFIG_5P_CALIBRATION_POINT_BORDER = 2, CONFIG_13P_CALIBRATION_POINT_BORDER = 3,
  CONFIG_13P_CALIBRATION_TRANSITION_MIN = 4, CONFIG_13P_CALIBRATION_TRANSITION_MAX = 5
}
 

Functions

EXTERN_C CCAUXDLL_API
ABOUTHANDLE
CCAUXDLL_CALLING_CONV 
GetAbout (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
About_release (ABOUTHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getMainPCBSerial (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getUnitSerial (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getMainPCBArt (ABOUTHANDLE, char *buff, int length)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getMainManufacturingDate (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getMainHWversion (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getMainProdRev (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getMainProdArtNr (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfETHConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfCANConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfVideoConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfUSBConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfSerialConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfDigIOConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsDisplayAvailable (ABOUTHANDLE, bool *available)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsTouchScreenAvailable (ABOUTHANDLE, bool *available)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getDisplayResolution (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getAddOnPCBSerial (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getAddOnPCBArt (ABOUTHANDLE, char *buff, int length)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getAddOnManufacturingDate (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getAddOnHWversion (ABOUTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsWLANMounted (ABOUTHANDLE, bool *mounted)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsGPSMounted (ABOUTHANDLE, bool *mounted)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsGPRSMounted (ABOUTHANDLE, bool *mounted)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsBTMounted (ABOUTHANDLE, bool *mounted)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getFrontPcbRev (ABOUTHANDLE, unsigned char *major, unsigned char *minor)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsIOExpanderMounted (ABOUTHANDLE, bool *mounted)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIOExpanderValue (ABOUTHANDLE, unsigned short *value)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_hasOsBooted (ABOUTHANDLE, bool *bootComplete)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getIsAnybusMounted (ABOUTHANDLE, bool *mounted)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfCfgInConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfPWMOutConnections (ABOUTHANDLE, unsigned char *NrOfConnections)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getNrOfButtons (ABOUTHANDLE, int *numbuttons)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_getUserEepromData (ABOUTHANDLE, char *buff, unsigned short length)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
About_setUserEepromData (ABOUTHANDLE, unsigned short startpos, const char *buff, unsigned short length)
 
EXTERN_C CCAUXDLL_API
ADCHANDLE
CCAUXDLL_CALLING_CONV 
GetAdc (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Adc_release (ADCHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Adc_getVoltage (ADCHANDLE, VoltageEnum selection, double *value)
 
EXTERN_C CCAUXDLL_API
AUXVERSIONHANDLE
CCAUXDLL_CALLING_CONV 
GetAuxVersion (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
AuxVersion_release (AUXVERSIONHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
AuxVersion_getFPGAVersion (AUXVERSIONHANDLE, unsigned char *major, unsigned char *minor, unsigned char *release, unsigned char *build)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
AuxVersion_getSSVersion (AUXVERSIONHANDLE, unsigned char *major, unsigned char *minor, unsigned char *release, unsigned char *build)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
AuxVersion_getFrontVersion (AUXVERSIONHANDLE, unsigned char *major, unsigned char *minor, unsigned char *release, unsigned char *build)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
AuxVersion_getCCAuxVersion (AUXVERSIONHANDLE, unsigned char *major, unsigned char *minor, unsigned char *release, unsigned char *build)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
AuxVersion_getOSVersion (AUXVERSIONHANDLE, unsigned char *major, unsigned char *minor, unsigned char *release, unsigned char *build)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
AuxVersion_getCCAuxDrvVersion (AUXVERSIONHANDLE, unsigned char *major, unsigned char *minor, unsigned char *release, unsigned char *build)
 
EXTERN_C CCAUXDLL_API
BACKLIGHTHANDLE
CCAUXDLL_CALLING_CONV 
GetBacklight (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Backlight_release (BACKLIGHTHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getIntensity (BACKLIGHTHANDLE, unsigned char *intensity)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_setIntensity (BACKLIGHTHANDLE, unsigned char intensity)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getStatus (BACKLIGHTHANDLE, unsigned char *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getHWStatus (BACKLIGHTHANDLE, bool *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_startAutomaticBL (BACKLIGHTHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_stopAutomaticBL (BACKLIGHTHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getAutomaticBLStatus (BACKLIGHTHANDLE, unsigned char *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_setAutomaticBLParams (BACKLIGHTHANDLE, bool bSoftTransitions)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getAutomaticBLParams (BACKLIGHTHANDLE, bool *bSoftTransitions, double *k)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_setAutomaticBLFilter (BACKLIGHTHANDLE, unsigned long averageWndSize, unsigned long rejectWndSize, unsigned long rejectDeltaInLux, LightSensorSamplingMode mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getAutomaticBLFilter (BACKLIGHTHANDLE, unsigned long *averageWndSize, unsigned long *rejectWndSize, unsigned long *rejectDeltaInLux, LightSensorSamplingMode *mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_getLedDimming (BACKLIGHTHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Backlight_setLedDimming (BACKLIGHTHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API
BATTERYHANDLE
CCAUXDLL_CALLING_CONV 
GetBattery (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Battery_release (BATTERYHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_isBatteryPresent (BATTERYHANDLE, bool *batteryIsPresent)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getBatteryVoltageStatus (BATTERYHANDLE, unsigned char *batteryVoltagePercent)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getBatteryChargingStatus (BATTERYHANDLE, ChargingStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getPowerSource (BATTERYHANDLE, PowerSource *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getBatteryTemp (BATTERYHANDLE, signed short *temperature)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getHwErrorStatus (BATTERYHANDLE, ErrorStatus *errorCode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getTimer (BATTERYHANDLE, BatteryTimerType *times)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getMinMaxTemp (BATTERYHANDLE, signed short *minTemp, signed short *maxTemp)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getBatteryHWversion (BATTERYHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getBatterySwVersion (BATTERYHANDLE, unsigned short *major, unsigned short *minor, unsigned short *release, unsigned short *build)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Battery_getBatterySerial (BATTERYHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API
BUZZERHANDLE
CCAUXDLL_CALLING_CONV 
GetBuzzer (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Buzzer_release (BUZZERHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_getFrequency (BUZZERHANDLE, unsigned short *frequency)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_getVolume (BUZZERHANDLE, unsigned short *volume)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_getTrigger (BUZZERHANDLE, bool *trigger)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_setFrequency (BUZZERHANDLE, unsigned short frequency)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_setVolume (BUZZERHANDLE, unsigned short volume)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_setTrigger (BUZZERHANDLE, bool trigger)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Buzzer_buzze (BUZZERHANDLE, int time, bool blocking)
 
EXTERN_C CCAUXDLL_API
CANSETTINGHANDLE
CCAUXDLL_CALLING_CONV 
GetCanSetting (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
CanSetting_release (CANSETTINGHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CanSetting_getBaudrate (CANSETTINGHANDLE, unsigned char net, unsigned short *baudrate)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CanSetting_getFrameType (CANSETTINGHANDLE, unsigned char net, CanFrameType *frameType)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CanSetting_setBaudrate (CANSETTINGHANDLE, unsigned char net, unsigned short baudrate)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CanSetting_setFrameType (CANSETTINGHANDLE, unsigned char net, CanFrameType frameType)
 
EXTERN_C CCAUXDLL_API char
const *CCAUXDLL_CALLING_CONV 
GetErrorStringA (eErr errCode)
 
EXTERN_C CCAUXDLL_API wchar_t
const *CCAUXDLL_CALLING_CONV 
GetErrorStringW (eErr errCode)
 
EXTERN_C CCAUXDLL_API
CFGINHANDLE
CCAUXDLL_CALLING_CONV 
GetCfgIn (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
CfgIn_release (CFGINHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CfgIn_setCfgInMode (CFGINHANDLE, unsigned char channel, CfgInModeEnum set_mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CfgIn_getCfgInMode (CFGINHANDLE, unsigned char channel, CfgInModeEnum *get_mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CfgIn_getValue (CFGINHANDLE, unsigned char channel, unsigned short *sample_value)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
CfgIn_getPwmValue (CFGINHANDLE, unsigned char channel, float *frequency, unsigned char *duty_cycle)
 
EXTERN_C CCAUXDLL_API
CONFIGHANDLE
CCAUXDLL_CALLING_CONV 
GetConfig ()
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Config_release (CONFIGHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getStartupTriggerConfig (CONFIGHANDLE, TriggerConf *config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getShortButtonPressAction (CONFIGHANDLE, PowerAction *action)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getLongButtonPressAction (CONFIGHANDLE, PowerAction *action)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getOnOffSigAction (CONFIGHANDLE, PowerAction *action)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getFrontBtnTrigTime (CONFIGHANDLE, unsigned short *triggertime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getExtOnOffSigTrigTime (CONFIGHANDLE, unsigned long *triggertime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getButtonFunction (CONFIGHANDLE, unsigned char button_number, ButtonConfigEnum *button_config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getSuspendMaxTime (CONFIGHANDLE, unsigned short *maxTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getCanStartupPowerConfig (CONFIGHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getVideoStartupPowerConfig (CONFIGHANDLE, unsigned char *config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getExtFanStartupPowerConfig (CONFIGHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getStartupVoltageConfig (CONFIGHANDLE, double *voltage)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getHeatingTempLimit (CONFIGHANDLE, signed short *temperature)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getPowerOnStartup (CONFIGHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setStartupTriggerConfig (CONFIGHANDLE, TriggerConf conf)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setShortButtonPressAction (CONFIGHANDLE, PowerAction action)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setLongButtonPressAction (CONFIGHANDLE, PowerAction action)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setOnOffSigAction (CONFIGHANDLE, PowerAction action)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setFrontBtnTrigTime (CONFIGHANDLE, unsigned short triggertime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setExtOnOffSigTrigTime (CONFIGHANDLE, unsigned long triggertime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setButtonFunction (CONFIGHANDLE, unsigned char button_number, ButtonConfigEnum button_config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setSuspendMaxTime (CONFIGHANDLE, unsigned short maxTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setCanStartupPowerConfig (CONFIGHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setVideoStartupPowerConfig (CONFIGHANDLE, unsigned char config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setExtFanStartupPowerConfig (CONFIGHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setStartupVoltageConfig (CONFIGHANDLE, double voltage)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setHeatingTempLimit (CONFIGHANDLE, signed short temperature)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setPowerOnStartup (CONFIGHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_setRS485Enabled (CONFIGHANDLE, RS4XXPort port, bool enabled)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Config_getRS485Enabled (CONFIGHANDLE, RS4XXPort port, bool *enabled)
 
EXTERN_C CCAUXDLL_API
DIAGNOSTICHANDLE
CCAUXDLL_CALLING_CONV 
GetDiagnostic (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Diagnostic_release (DIAGNOSTICHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getSSTemp (DIAGNOSTICHANDLE, signed short *temperature)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getPCBTemp (DIAGNOSTICHANDLE, signed short *temperature)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getPMTemp (DIAGNOSTICHANDLE, unsigned char index, signed short *temperature, JidaSensorType *jst)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getStartupReason (DIAGNOSTICHANDLE, unsigned short *reason)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getShutDownReason (DIAGNOSTICHANDLE, unsigned short *reason)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getHwErrorStatus (DIAGNOSTICHANDLE, unsigned short *errorCode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getTimer (DIAGNOSTICHANDLE, TimerType *times)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getMinMaxTemp (DIAGNOSTICHANDLE, signed short *minTemp, signed short *maxTemp)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_getPowerCycles (DIAGNOSTICHANDLE, unsigned short *powerCycles)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Diagnostic_clearHwErrorStatus (DIAGNOSTICHANDLE)
 
EXTERN_C CCAUXDLL_API char
const *CCAUXDLL_CALLING_CONV 
GetHwErrorStatusStringA (unsigned short errCode)
 
EXTERN_C CCAUXDLL_API wchar_t
const *CCAUXDLL_CALLING_CONV 
GetHwErrorStatusStringW (unsigned short errCode)
 
EXTERN_C CCAUXDLL_API char
const *CCAUXDLL_CALLING_CONV 
GetStartupReasonStringA (unsigned short code)
 
EXTERN_C CCAUXDLL_API wchar_t
const *CCAUXDLL_CALLING_CONV 
GetStartupReasonStringW (unsigned short code)
 
EXTERN_C CCAUXDLL_API
DIGIOHANDLE
CCAUXDLL_CALLING_CONV 
GetDigIO (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
DigIO_release (DIGIOHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
DigIO_getDigIO (DIGIOHANDLE, unsigned char *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
DigIO_setDigIO (DIGIOHANDLE, unsigned char state)
 
EXTERN_C CCAUXDLL_API
FIRMWAREUPGHANDLE
CCAUXDLL_CALLING_CONV 
GetFirmwareUpgrade (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_release (FIRMWAREUPGHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_startFpgaUpgrade (FIRMWAREUPGHANDLE, const char *filename, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_startFpgaVerification (FIRMWAREUPGHANDLE, const char *filename, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_startSSUpgrade (FIRMWAREUPGHANDLE, const char *filename, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_startSSVerification (FIRMWAREUPGHANDLE, const char *filename, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_startFrontUpgrade (FIRMWAREUPGHANDLE, const char *filename, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_startFrontVerification (FIRMWAREUPGHANDLE, const char *filename, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_getUpgradeStatus (FIRMWAREUPGHANDLE, UpgradeStatus *status, bool blocking)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FirmwareUpgrade_shutDown (FIRMWAREUPGHANDLE)
 
EXTERN_C CCAUXDLL_API
FRONTLEDHANDLE
CCAUXDLL_CALLING_CONV 
GetFrontLED (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
FrontLED_release (FRONTLEDHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getSignal (FRONTLEDHANDLE, double *frequency, unsigned char *dutyCycle)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getOnTime (FRONTLEDHANDLE, unsigned char *onTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getOffTime (FRONTLEDHANDLE, unsigned char *offTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getIdleTime (FRONTLEDHANDLE, unsigned char *idleTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getNrOfPulses (FRONTLEDHANDLE, unsigned char *nrOfPulses)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getColor (FRONTLEDHANDLE, unsigned char *red, unsigned char *green, unsigned char *blue)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getStandardColor (FRONTLEDHANDLE, CCAuxColor *color)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_getEnabledDuringStartup (FRONTLEDHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setSignal (FRONTLEDHANDLE, double frequency, unsigned char dutyCycle)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setOnTime (FRONTLEDHANDLE, unsigned char onTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setOffTime (FRONTLEDHANDLE, unsigned char offTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setIdleTime (FRONTLEDHANDLE, unsigned char idleTime)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setNrOfPulses (FRONTLEDHANDLE, unsigned char nrOfPulses)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setColor (FRONTLEDHANDLE, unsigned char red, unsigned char green, unsigned char blue)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setStandardColor (FRONTLEDHANDLE, CCAuxColor color)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setOff (FRONTLEDHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
FrontLED_setEnabledDuringStartup (FRONTLEDHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API
LIGHTSENSORHANDLE
CCAUXDLL_CALLING_CONV 
GetLightsensor (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Lightsensor_release (LIGHTSENSORHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_getIlluminance (LIGHTSENSORHANDLE, unsigned short *value)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_getIlluminance2 (LIGHTSENSORHANDLE, unsigned short *value, unsigned char *ch0, unsigned char *ch1)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_getAverageIlluminance (LIGHTSENSORHANDLE, unsigned short *value)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_startAverageCalc (LIGHTSENSORHANDLE, unsigned long averageWndSize, unsigned long rejectWndSize, unsigned long rejectDeltaInLux, LightSensorSamplingMode mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_stopAverageCalc (LIGHTSENSORHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_getOperatingRange (LIGHTSENSORHANDLE, LightSensorOperationRange *range)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Lightsensor_setOperatingRange (LIGHTSENSORHANDLE, LightSensorOperationRange range)
 
EXTERN_C CCAUXDLL_API
POWERHANDLE
CCAUXDLL_CALLING_CONV 
GetPower (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Power_release (POWERHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getBLPowerStatus (POWERHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getCanPowerStatus (POWERHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getVideoPowerStatus (POWERHANDLE, unsigned char *videoStatus)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getExtFanPowerStatus (POWERHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getButtonPowerTransitionStatus (POWERHANDLE, ButtonPowerTransitionStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getVideoOCDStatus (POWERHANDLE, OCDStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_getCanOCDStatus (POWERHANDLE, OCDStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_setBLPowerStatus (POWERHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_setCanPowerStatus (POWERHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_setVideoPowerStatus (POWERHANDLE, unsigned char status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_setExtFanPowerStatus (POWERHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Power_ackPowerRequest (POWERHANDLE)
 
EXTERN_C CCAUXDLL_API
POWERMGRHANDLE
CCAUXDLL_CALLING_CONV 
GetPowerMgr (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
PowerMgr_release (POWERMGRHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PowerMgr_registerControlledSuspendOrShutDown (POWERMGRHANDLE, PowerMgrConf conf)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PowerMgr_getConfiguration (POWERMGRHANDLE, PowerMgrConf *conf)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PowerMgr_getPowerMgrStatus (POWERMGRHANDLE, PowerMgrStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PowerMgr_setAppReadyForSuspendOrShutdown (POWERMGRHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PowerMgr_hasResumed (POWERMGRHANDLE, bool *resumed)
 
EXTERN_C CCAUXDLL_API
PWMOUTHANDLE
CCAUXDLL_CALLING_CONV 
GetPWMOut (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
PWMOut_release (PWMOUTHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PWMOut_setPWMOutputChannelDutyCycle (PWMOUTHANDLE, unsigned char channel, unsigned char duty_cycle)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PWMOut_setPWMOutputChannelFrequency (PWMOUTHANDLE, unsigned char channel, float frequency)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PWMOut_getPWMOutputChannelDutyCycle (PWMOUTHANDLE, unsigned char channel, unsigned char *duty_cycle)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PWMOut_getPWMOutputChannelFrequency (PWMOUTHANDLE, unsigned char channel, float *frequency)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PWMOut_getPWMOutputStatus (PWMOUTHANDLE, unsigned char *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
PWMOut_setPWMOutOff (PWMOUTHANDLE, unsigned char channel)
 
EXTERN_C CCAUXDLL_API
SMARTHANDLE
CCAUXDLL_CALLING_CONV 
GetSmart (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Smart_release (SMARTHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Smart_getRemainingLifeTime (SMARTHANDLE, unsigned char *lifetimepercent)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Smart_getRemainingLifeTime2 (SMARTHANDLE, unsigned char *lifetimepercent)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Smart_getDeviceSerial (SMARTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Smart_getDeviceSerial2 (SMARTHANDLE, char *buff, int len)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Smart_getInitialTime (SMARTHANDLE, time_t *time)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Smart_getInitialTime2 (SMARTHANDLE, time_t *time)
 
EXTERN_C CCAUXDLL_API
TELEMATICSHANDLE
CCAUXDLL_CALLING_CONV 
GetTelematics (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Telematics_release (TELEMATICSHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getTelematicsAvailable (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getGPRSPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getGPRSStartUpPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getWLANPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getWLANStartUpPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getBTPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getBTStartUpPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getGPSPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getGPSStartUpPowerStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_getGPSAntennaStatus (TELEMATICSHANDLE, CCStatus *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setGPRSPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setGPRSStartUpPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setWLANPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setWLANStartUpPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setBTPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setBTStartUpPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setGPSPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Telematics_setGPSStartUpPowerStatus (TELEMATICSHANDLE, CCStatus status)
 
EXTERN_C CCAUXDLL_API
TOUCHSCREENHANDLE
CCAUXDLL_CALLING_CONV 
GetTouchScreen (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
TouchScreen_release (TOUCHSCREENHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreen_getMode (TOUCHSCREENHANDLE, TouchScreenModeSettings *config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreen_getMouseRightClickTime (TOUCHSCREENHANDLE, unsigned short *time)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreen_setMode (TOUCHSCREENHANDLE, TouchScreenModeSettings config)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreen_setMouseRightClickTime (TOUCHSCREENHANDLE, unsigned short time)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreen_setAdvancedSetting (TOUCHSCREENHANDLE, TSAdvancedSettingsParameter param, unsigned short data)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreen_getAdvancedSetting (TOUCHSCREENHANDLE, TSAdvancedSettingsParameter param, unsigned short *data)
 
EXTERN_C CCAUXDLL_API
TOUCHSCREENCALIBHANDLE
CCAUXDLL_CALLING_CONV 
GetTouchScreenCalib (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_release (TOUCHSCREENCALIBHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_setMode (TOUCHSCREENCALIBHANDLE, CalibrationModeSettings mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_getMode (TOUCHSCREENCALIBHANDLE, CalibrationModeSettings *mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_setCalibrationPoint (TOUCHSCREENCALIBHANDLE, unsigned char pointNr)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_checkCalibrationPointFinished (TOUCHSCREENCALIBHANDLE, bool *finished, unsigned char pointNr)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_getConfigParam (TOUCHSCREENCALIBHANDLE, CalibrationConfigParam param, unsigned short *value)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
TouchScreenCalib_setConfigParam (TOUCHSCREENCALIBHANDLE, CalibrationConfigParam param, unsigned short value)
 
EXTERN_C CCAUXDLL_API
VIDEOHANDLE
CCAUXDLL_CALLING_CONV 
GetVideo (void)
 
EXTERN_C CCAUXDLL_API void
CCAUXDLL_CALLING_CONV 
Video_release (VIDEOHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_init (VIDEOHANDLE, unsigned char deviceNr)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_showVideo (VIDEOHANDLE, bool show)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setDeInterlaceMode (VIDEOHANDLE, DeInterlaceMode mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getDeInterlaceMode (VIDEOHANDLE, DeInterlaceMode *mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setMirroring (VIDEOHANDLE, CCStatus mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getMirroring (VIDEOHANDLE, CCStatus *mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setRotation (VIDEOHANDLE, VideoRotation rotation)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getRotation (VIDEOHANDLE, VideoRotation *rotation)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setActiveChannel (VIDEOHANDLE, VideoChannel channel)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getActiveChannel (VIDEOHANDLE, VideoChannel *channel)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setColorKeys (VIDEOHANDLE, unsigned char rKey, unsigned char gKey, unsigned char bKey)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getColorKeys (VIDEOHANDLE, unsigned char *rKey, unsigned char *gKey, unsigned char *bKey)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setVideoArea (VIDEOHANDLE, unsigned short topLeftX, unsigned short topLeftY, unsigned short bottomRightX, unsigned short bottomRightY)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getRawImage (VIDEOHANDLE, unsigned short *width, unsigned short *height, float *frameRate)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getVideoArea (VIDEOHANDLE, unsigned short *topLeftX, unsigned short *topLeftY, unsigned short *bottomRigthX, unsigned short *bottomRigthY)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getVideoStandard (VIDEOHANDLE, videoStandard *standard)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getStatus (VIDEOHANDLE, unsigned char *status)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setScaling (VIDEOHANDLE, float x, float y)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getScaling (VIDEOHANDLE, float *x, float *y)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_activateSnapshot (VIDEOHANDLE, bool activate)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_takeSnapshot (VIDEOHANDLE, const char *path, bool bInterlaced)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_takeSnapshotRaw (VIDEOHANDLE, char *rawImgBuffer, unsigned long rawImgBuffSize, bool bInterlaced)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_takeSnapshotBmp (VIDEOHANDLE, char **bmpBuffer, unsigned long *bmpBufSize, bool bInterlaced, bool bNTSCFormat)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_createBitmap (VIDEOHANDLE, char **bmpBuffer, unsigned long *bmpBufSize, const char *rawImgBuffer, unsigned long rawImgBufSize, bool bInterlaced, bool bNTSCFormat)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_freeBmpBuffer (VIDEOHANDLE, char *bmpBuffer)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_minimize (VIDEOHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_restore (VIDEOHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setDecoderReg (VIDEOHANDLE, unsigned char decoderRegister, unsigned char registerValue)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getDecoderReg (VIDEOHANDLE, unsigned char decoderRegister, unsigned char *registerValue)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setCropping (VIDEOHANDLE, unsigned char top, unsigned char left, unsigned char bottom, unsigned char right)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getCropping (VIDEOHANDLE, unsigned char *top, unsigned char *left, unsigned char *bottom, unsigned char *right)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_showFrame (VIDEOHANDLE)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_setGraphicsOverlay (VIDEOHANDLE, CCStatus mode)
 
EXTERN_C CCAUXDLL_API eErr
CCAUXDLL_CALLING_CONV 
Video_getGraphicsOverlay (VIDEOHANDLE, CCStatus *mode)
 

Variables

const unsigned char Video1Conf = (1 << 0)
 
const unsigned char Video2Conf = (1 << 1)
 
const unsigned char Video3Conf = (1 << 2)
 
const unsigned char Video4Conf = (1 << 3)
 
const unsigned char DigitalIn_1 = (1 << 0)
 
const unsigned char DigitalIn_2 = (1 << 1)
 
const unsigned char DigitalIn_3 = (1 << 2)
 
const unsigned char DigitalIn_4 = (1 << 3)
 

Typedef Documentation

Enumeration of the settings that can be used with the PowerMgr system.

typedef void* ABOUTHANDLE
typedef void* ADCHANDLE
typedef void* AUXVERSIONHANDLE
typedef void* BACKLIGHTHANDLE
typedef void* BATTERYHANDLE
typedef void* BUZZERHANDLE
typedef void* CANSETTINGHANDLE
typedef void* CFGINHANDLE
typedef void* CONFIGHANDLE
typedef void* DIAGNOSTICHANDLE
typedef void* DIGIOHANDLE
typedef void* FIRMWAREUPGHANDLE
typedef void* FRONTLEDHANDLE
typedef void* LIGHTSENSORHANDLE
typedef void* POWERHANDLE
typedef void* POWERMGRHANDLE
typedef void* PWMOUTHANDLE
typedef void* SMARTHANDLE
typedef void* TELEMATICSHANDLE
typedef void* TOUCHSCREENCALIBHANDLE
typedef void* TOUCHSCREENHANDLE
typedef struct version_info VersionType
typedef void* VIDEOHANDLE

Enumeration Type Documentation

Enumeration of Buffon Configuration (bitfield representation)

Enumerator
BUTTON_ONLY_MP_ACTION 
BUTTON_AS_STARTUP_TRIG 

Buttons are only read by Main Processor, i.e. normal button action which is handled in application space

BUTTON_AS_ACTION_TRIG 

Set button to be used as startup trigger, in addition to MP application event

BUTTON_AS_ACTION_STARTUP_TRIG 

Set button to trigger suspend, shutdown or hard shutdown actions

BUTTON_AS_BACKLIGHT_DECREASE 

Set button to trigger startup, suspend, shutdown or hard shutdown actions

BUTTON_AS_BACKLIGHT_DECR_STARTUP_TRIG 

Set button to act as backlight decrease button

BUTTON_AS_BACKLIGHT_INCREASE 

Set button to act as backlight decreaste and startup trigger

BUTTON_AS_BACKLIGHT_INCR_STARTUP_TRIG 

Set button to act as backlight increase button

Current status for front panel button and on/off signal. If any of them generate a suspend or shutdown event, it may also be read, briefly. When the button/signal is released, typically BPTS_Suspend or BPTS_ShutDown follows. Note: Do not rely on getting BPTS_ShutDown or BPTS_Suspend from user applications. The system is likely to start shutting down before the status can be read. Instead, use the PowerMgr class for handling system shutdown/suspend events.

Enumerator
BPTS_No_Change 

No change

BPTS_ShutDown 

A shutdown has been initiated since the front panel button has been pressed longer than the set FrontBtnShutDownTrigTime

BPTS_Suspend 

Suspend mode has been initiated since the front panel button has been pressed (shortly) and suspend mode is enabled

BPTS_Restart 

Not currently in use

BPTS_BtnPressed 

The front panel button is currently pressed. It has not been released and it has not yet been held longer than FrontBtnShutDownTrigTime.

BPTS_BtnPressedLong 

The front panel button is currently pressed. It has not been released and it has been held longer than FrontBtnShutDownTrigTime.

BPTS_SignalOff 

The external on/off signal is low, but not yet long enough for the ExtOnOffSigSuspTrigTime.

Touch screen calibration parameters

Enumerator
CONFIG_CALIBRATION_WITH 
CONFIG_CALIBRATION_MEASUREMENTS 

Accepted error value when calibrating.

CONFIG_5P_CALIBRATION_POINT_BORDER 

Number of measurements to accept a calibration point.

CONFIG_13P_CALIBRATION_POINT_BORDER 

The number of pixels from the border where the 5 point calibration points should be located.

CONFIG_13P_CALIBRATION_TRANSITION_MIN 

The number of pixels from the border where the 13 point calibration points should be located.

CONFIG_13P_CALIBRATION_TRANSITION_MAX 

Min defines the transition area in number of pixels, where the two different calibrations are used.

Touch screen calibration modes

Enumerator
MODE_UNKNOWN 
MODE_NORMAL 

Unknown mode.

MODE_CALIBRATION_5P 

Normal operation mode.

MODE_CALIBRATION_9P 

Calibration with 5 points mode.

MODE_CALIBRATION_13P 

Calibration with 9 points mode.

Can frame type settings

Enumerator
FrameStandard 
FrameExtended 
FrameStandardExtended 
enum CCAuxColor

Enumeration of standard colors

Enumerator
RED 
GREEN 

RGB 0xF, 0x0, 0x0

BLUE 

RGB 0x0, 0xF, 0x0

CYAN 

RGB 0x0, 0x0, 0xF

MAGENTA 

RGB 0x0, 0xF, 0xF

YELLOW 

RGB 0xF, 0x0, 0xF

UNDEFINED_COLOR 

RGB 0xF, 0xF, 0x0

Returns if color is not a standard color

enum CCStatus

Enable/disable enumeration

Enumerator
Disabled 
Enabled 

The setting is disabled or turned off

Enumeration of ConfigurableInput modes

Enumerator
CFGIN_NOT_IN_USE 
CFGIN_HI_SWITCH 

Disable configurable input measurement

CFGIN_LOW_SWITCH 

Read digital input value with waitForCfgInValue

CFGIN_VOLTAGE_3V3 

Read digital input value with waitForCfgInValue

CFGIN_VOLTAGE_5VPD 

Read voltage input value with waitForCfgInValue

CFGIN_RESISTANCE 

Read voltage input value with waitForCfgInValue

CFGIN_FREQ_FLOATING 

Read resistance input value with waitForCfgInValue

CFGIN_FREQ_PULLUP 

Read frequency value with waitForCfgInFrequency

CFGIN_FREQ_PULLDOWN 

Read frequency value with waitForCfgInFrequency

Read frequency value with waitForCfgInFrequency

Current charging status of the battery.

Enumerator
ChargingStatus_NoCharge 

The battery is not being charged. System is running on battery power.

ChargingStatus_Charging 

The battery is currently being charged

ChargingStatus_FullyCharged 

The battery is fully chareged

ChargingStatus_TempLow 

The temperature is too low to allow the battery to be charged

ChargingStatus_TempHigh 

The temperature is too high to allow the battery to be charged

ChargingStatus_Unknown 

There was an error determining the charging status

Enumerator
DeInterlace_Even 
DeInterlace_Odd 

Use only even rows from the interlaced input stream

DeInterlace_BOB 

Use only odd rows from the interlaced input stream

enum eErr

Error code enumeration

Enumerator
ERR_SUCCESS 
ERR_OPEN_FAILED 

Success

ERR_NOT_SUPPORTED 

Open failed

ERR_UNKNOWN_FEATURE 

Not supported

ERR_DATATYPE_MISMATCH 

Unknown feature

ERR_CODE_NOT_EXIST 

Datatype mismatch

ERR_BUFFER_SIZE 

Code doesn't exist

ERR_IOCTRL_FAILED 

Buffer size error

ERR_INVALID_DATA 

IoCtrl operation failed

ERR_INVALID_PARAMETER 

Invalid data

ERR_CREATE_THREAD 

Invalid parameter

ERR_IN_PROGRESS 

Failed to create thread

ERR_CHECKSUM 

Operation in progress

ERR_INIT_FAILED 

Checksum error

ERR_VERIFY_FAILED 

Initalization failed

ERR_DEVICE_READ_DATA_FAILED 

Failed to verify

ERR_DEVICE_WRITE_DATA_FAILED 

Failed to read from device

ERR_COMMAND_FAILED 

Failed to write to device

ERR_EEPROM 

Command failed

ERR_JIDA_TEMP 

Error in EEPROM memory

ERR_AVERAGE_CALC_STARTED 

Failed to get JIDA temperature

ERR_NOT_RUNNING 

Calculation already started

ERR_I2C_EXPANDER_READ_FAILED 

Thread isn't running

ERR_I2C_EXPANDER_WRITE_FAILED 

I2C read failure

ERR_I2C_EXPANDER_INIT_FAILED 

I2C write failure

ERR_NEWER_SS_VERSION_REQUIRED 

I2C initialization failure

ERR_NEWER_FPGA_VERSION_REQUIRED 

SS version too old

ERR_NEWER_FRONT_VERSION_REQUIRED 

FPGA version too old

ERR_TELEMATICS_GPRS_NOT_AVAILABLE 

FRONT version too old

ERR_TELEMATICS_WLAN_NOT_AVAILABLE 

GPRS module not available

ERR_TELEMATICS_BT_NOT_AVAILABLE 

WLAN module not available

ERR_TELEMATICS_GPS_NOT_AVAILABLE 

Bluetooth module not available

ERR_MEM_ALLOC_FAIL 

GPS module not available

ERR_JOIN_THREAD 

Failed to allocate memory

Enumerator
ErrorStatus_NoError 
ErrorStatus_ThermistorTempSensor 
ErrorStatus_SecondaryTempSensor 
ErrorStatus_ChargeFail 
ErrorStatus_Overcurrent 
ErrorStatus_Init 

The error codes returned by getHWErrorStatus.

Enumerator
errCodeNoErr 

Jida temperature sensor types

Enumerator
TEMP_CPU 
TEMP_BOX 
TEMP_ENV 
TEMP_BOARD 
TEMP_BACKPLANE 
TEMP_CHIPSETS 
TEMP_VIDEO 
TEMP_OTHER 

Light sensor operation ranges.

Enumerator
RangeStandard 
RangeExtended 

Light sensor operation range standard

Light sensor sampling modes.

Enumerator
SamplingModeStandard 
SamplingModeExtended 

Standard sampling mode.

SamplingModeAuto 

Extended sampling mode.

Auto switch between standard and extended sampling mode depending on saturation.

enum OCDStatus

Overcurrent detection status.

Enumerator
OCD_OK 

Normal operation, no overcurrent condition detected

OCD_OC 

Overcurrent has been detected, power has therefore been turned off, but may be functioning again if the problem disappeared after re-test

OCD_POWER_OFF 

Overcurrent has been detected, power has been permanently turned off

Button and on/off signal actions.

Enumerator
NoAction 

No action taken

ActionSuspend 

The system enters suspend mode

ActionShutDown 

The system shuts down

Enumeration of the settings that can be used with the PowerMgr system.

Enumerator
Normal 

Applications will not be able to delay suspend/shutdown requests. This is the normal configuration that is used when the PowerMgr class is not being used. Setting this configuration turns off the feature if it is in use.

ApplicationControlled 

Applications can delay suspend/shutdown requests.

BatterySuspend 

In this mode, the computer will automatically enter suspend mode when the unit starts running on battery power. Applications can delay suspend/shutdown requests. This mode is only applicable if the unit has an external battery. Using this configuration on a computer without an external battery will be the same as using the configuration ApplicationControlled.

Enumerator
NoRequestsPending 

No suspend or shutdown requests.

SuspendPending 

A suspend request is pending.

ShutdownPending 

A shutdown request is pending.

Current power source of the computer.

Enumerator
PowerSource_Battery 
PowerSource_ExternalPower 
enum RS4XXPort

Enumeration of RS4XX ports (1-4)

Enumerator
RS4XXPort1 
RS4XXPort2 
RS4XXPort3 
RS4XXPort4 

The shutdown codes returned by getShutDownReason.

Enumerator
shutdownReasonCodeNoError 

The restart codes returned by getStartupReason.

Enumerator
startupReasonCodeUndefined 
startupReasonCodeButtonPress 

Unknown startup reason.

startupReasonCodeExtCtrl 

The system was started by front panel button press

startupReasonCodeMPRestart 

The system was started by the external control signal

startupReasonCodePowerOnStartup 

The system was restarted by OS request

startupReasonCodeCanActivity 

The system was started due to the PowerOnStartup setting

startupReasonCodeCIActivity 

The system was started due to activity on the Can bus (CCpilot VC family)

Touch screen USB profile settings

Enumerator
MOUSE_NEXT_BOOT 
TOUCH_NEXT_BOOT 

Set the touch USB profile to mouse profile. Active upon the next boot.

MOUSE_NOW 

Set the touch USB profile to touch profile. Active upon the next boot.

TOUCH_NOW 

Immediately set the touch USB profile to mouse profile.

Trigger configuration enumeration. Valid settings for enabling of front button and external on/off signal. For platforms XM, XL and XA platforms, front button and on/off (ignition) signal can be configured. For the VC platform, CI state activity and Can data reception can also be used as wakeup sources from suspend mode. bit 0 - enable wakeup by front button (from OFF and suspend mode) bit 1 - enable wakeup by on/off (ignition) signal (from OFF and suspend mode) bit 2 - enable wakeup by CAN activity (from suspend mode, VC only) bit 3 - enable wakeup by CI (Configurabe input) state change (from suspend mode, VC only)

Enumerator
Front_Button_Enabled 

Front button is enabled for startup and wake-up

OnOff_Signal_Enabled 

The external on/off signal is enabled for startup and wake-up

Both_Button_And_Signal_Enabled 

Both of the above are enabled

CAN_Activity 

VC platform, wake up on CAN only

CAN_Button_Activity 

VC platform, wake up on CAN and Buttons

CAN_OnOff_Activity 

VC platform, wake up on CAN and On/Off/Ignition signal

CAN_Button_OnOff_Activity 

VC platform, wake up on CAN, Buttons and On/Off/Ignition signal

CI_State_Activity 

VC platform, wake up on Configurable Input State Change

CI_Button_Activity 

VC platform, wake up on CI and Button State Change

CI_OnOff_Activity 

VC platform, wake up on CI and OnOff Signal State Change

CI_Button_OnOff_Activity 

VC platform, wake up on CI, Button and OnOff Signal State Change

CI_CAN_Activity 

VC platform, wake up on CI and CAN State Change

CI_CAN_Button_Activity 

VC platform, wake up on CI, CAN and Button State Change

CI_CAN_OnOff_Activity 

VC platform, wake up on CI, CAN and OnOff Signal State Change

All_Events 

VC platform, wake up on all events

Last_trigger_conf 

Touch screen advanced settings parameters

Enumerator
TS_RIGHT_CLICK_TIME 

Right click time in ms, except for touch profile on XM platform

TS_LOW_LEVEL 

Lowest A/D value required for registering a touch event. Front uc 0.5.3.1 had the default value of 3300, newer versions: 3400.

TS_UNTOUCHLEVEL 

A/D value where the screen is considered to be untouched.

TS_DEBOUNCE_TIME 

Debounce time is the time after first detected touch event during which no measurements are being taken. This is used to avoid faulty measurements that frequently happens right after the actual touch event. Front uc 0.5.3.1 had the default value of 3ms, newer versions: 24ms.

TS_DEBOUNCE_TIMEOUT_TIME 

After debounce, an event will be ignored if after this time there are no valid measurements above TS_LOW_LEVEL. This time must be larger than TS_DEBOUNCE_TIME. Front uc 0.5.3.1 had the default value of 12ms, newer versions: 36ms.

TS_DOUBLECLICK_MAX_CLICK_TIME 

Parameter used for improving double click accuracy. A touch event this long or shorter is considered to be one of the clicks in a double click.

TS_DOUBLE_CLICK_TIME 

Parameter used for improving double click accuracy. Time allowed between double clicks. Used for double click improvement.

TS_MAX_RIGHTCLICK_DISTANCE 

Maximum distance allowed to move pointer and still consider the event a right click.

TS_USE_DEJITTER 

The dejitter function enables smoother pointer movement. Set to non-zero to enable the function or zero to disable it.

TS_CALIBTATION_WIDTH 

Accepted difference in measurement during calibration of a point.

TS_CALIBRATION_MEASUREMENTS 

Number of measurements needed to accept a calibration point.

TS_RESTORE_DEFAULT_SETTINGS 

Set to non-zero to restore all the above settings to their defaults. This parameter cannot be read and setting it to zero has no effect.

TS_TCHAUTOCAL 

Time (in units of 200 ms) until the touch screen is recalibrated when continuously touching the screen at one point. A setting of zero disables the recalibration. Valid for PCAP touch panels only. Device must be restarted for changes to have any effect. The default value is 50 which corresponds to 10 seconds.

Upgrade Action enumeration

Enumerator
UPGRADE_INIT 
UPGRADE_PREP_COM 

Initiating, checking for compatibility etc

UPGRADE_READING_FILE 

Preparing communication

UPGRADE_CONVERTING_FILE 

Opening and reading the supplied file

UPGRADE_FLASHING 

Converting the mcs format to binary format

UPGRADE_VERIFYING 

Flashing the file

UPGRADE_COMPLETE 

Verifying the programmed image

UPGRADE_COMPLETE_WITH_ERRORS 

Upgrade was finished

Upgrade finished prematurely, see errorCode for the reason of failure

The available analog video channels

Enumerator
Analog_Channel_1 
Analog_Channel_2 
Analog_Channel_3 
Analog_Channel_4 
Enumerator
RotNone 
Rot90 
Rot180 
Rot270 
Enumerator
STD_M_J_NTSC 
STD_B_D_G_H_I_N_PAL 

(M,J) NTSC ITU-R BT.601

STD_M_PAL 

(B, D, G, H, I, N) PAL ITU-R BT.601

STD_PAL 

(M) PAL ITU-R BT.601

STD_NTSC 

PAL-Nc ITU-R BT.601

STD_SECAM 

NTSC 4.43 ITU-R BT.601

Voltage type enumeration

Enumerator
VOLTAGE_24VIN 
VOLTAGE_24V 

< 24VIN

VOLTAGE_12V 

< 24V

VOLTAGE_12VID 

< 12V

VOLTAGE_5V 

< 12VID

VOLTAGE_3V3 

< 5V

VOLTAGE_VTFT 

< 3.3V

VOLTAGE_5VSTB 

< VTFT

VOLTAGE_1V9 

< 5VSTB

VOLTAGE_1V8 

< 1.9V

VOLTAGE_1V5 

< 1.8V

VOLTAGE_1V2 

< 1.5V

VOLTAGE_1V05 

< 1.2V

VOLTAGE_1V0 

< 1.05V

VOLTAGE_0V9 

< 1.0V

VOLTAGE_VREF_INT 

< 0.9V

VOLTAGE_24V_BACKUP 

< SS internal VRef

VOLTAGE_2V5 

< 24V backup capacitor

VOLTAGE_1V1 

< 2.5V

VOLTAGE_1V3_PER 

< 1.1V

VOLTAGE_1V3_VDDA 

< 1.3V_PER

VOLTAGE_3V3STBY 

< 1.3V_VDDA

VOLTAGE_VPMIC 

< 3.3V STBY VC

VOLTAGE_VMAIN 

< V PMIC VC

< V MAIN VC

Function Documentation

EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getAddOnHWversion ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get Add on hardware version.

Supported Platform(s): XL, XM, XS, XA

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getAddOnHWversion (pAbout, buffer, buffer_len);
cout << "Add on hardware version: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getAddOnManufacturingDate ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get Add on manufacturing date.

Supported Platform(s): XL, XM, XS, XA

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getAddOnManufacturingDate (pAbout, buffer, buffer_len);
cout << "Add on manufacturing date: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getAddOnPCBArt ( ABOUTHANDLE  ,
char *  buff,
int  length 
)

Get Add on PCB article number.

Supported Platform(s): XL, XM, XS, XA

Parameters
buffText output buffer.
lengthMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getAddOnPCBArt (pAbout, buffer, buffer_len);
cout << "Add on PCB article number: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getAddOnPCBSerial ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get Add on PCB serial number.

Supported Platform(s): XL, XM, XS, XA

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getAddOnPCBSerial (pAbout, buffer, buffer_len);
cout << "Add on PCB serial number: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getDisplayResolution ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get display resolution.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned. The display resolution will be returned in the format "1024x768"
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getDisplayResolution (pAbout, buffer, buffer_len);
cout << "Display resolution: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getFrontPcbRev ( ABOUTHANDLE  ,
unsigned char *  major,
unsigned char *  minor 
)

Get the front hardware pcb revision in the format major.minor (e.g. 1.1).

Supported Platform(s): XA, XS

Parameters
majorThe major pcb revision.
minorThe minor pcb revision.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIOExpanderValue ( ABOUTHANDLE  ,
unsigned short *  value 
)

Get Value for IO Expander

Supported Platform(s): XA, XS

Parameters
valueIO Expander value.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsAnybusMounted ( ABOUTHANDLE  ,
bool *  mounted 
)

Get Anybus mounting status.

Supported Platform(s): XA, XS

Parameters
mountedIs Anybus mounted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isAnybusMounted;
err = CrossControl::About_getIsAnybusMounted(pAbout, &isAnybusMounted);
cout << "Anybus mounted: " << (isAnybusMounted ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsBTMounted ( ABOUTHANDLE  ,
bool *  mounted 
)

Get BlueTooth module mounting status.

Supported Platform(s): XL, XM, XS, XA

Parameters
mountedIs module mounted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isBTMounted;
err = About_getIsBTMounted (pAbout, &isBTMounted);
cout << "BT mounted: " << (isBTMounted ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsDisplayAvailable ( ABOUTHANDLE  ,
bool *  available 
)

Get Display module status. (Some product variants does not have a display)

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
availableIs display available?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool displayAvailable;
err = About_getIsDisplayAvailable (pAbout, &displayAvailable);
cout << "Display available: " << (displayAvailable ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsGPRSMounted ( ABOUTHANDLE  ,
bool *  mounted 
)

Get GPRS module mounting status.

Supported Platform(s): XL, XM, XS, XA

Parameters
mountedIs module mounted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isGPRSMounted;
err = About_getIsGPRSMounted (pAbout, &isGPRSMounted);
cout << "GPRS mounted: " << (isGPRSMounted ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsGPSMounted ( ABOUTHANDLE  ,
bool *  mounted 
)

Get GPS module mounting status.

Supported Platform(s): XL, XM, XS, XA

Parameters
mountedIs module mounted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isGPSMounted;
err = About_getIsGPSMounted (pAbout, &isGPSMounted);
cout << "GPS mounted: " << (isGPSMounted ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsIOExpanderMounted ( ABOUTHANDLE  ,
bool *  mounted 
)

Get IO Expander mounting status.

Supported Platform(s): XA, XS

Parameters
mountedIs IO Expander mounted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isIOExpanderMounted;
err = CrossControl::About_getIsIOExpanderMounted(pAbout, &isIOExpanderMounted);
cout << "IOExpander mounted: " << (isIOExpanderMounted ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsTouchScreenAvailable ( ABOUTHANDLE  ,
bool *  available 
)

Get Display TouchScreen status.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
availableIs TouchScreen available?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool touchScreenAvailable;
err = About_getIsTouchScreenAvailable (pAbout, &touchScreenAvailable);
cout << "TouchScreen available: " << (touchScreenAvailable ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getIsWLANMounted ( ABOUTHANDLE  ,
bool *  mounted 
)

Get WLAN module mounting status.

Supported Platform(s): XL, XM, XS, XA

Parameters
mountedIs module mounted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isWLANMounted;
err = About_getIsWLANMounted (pAbout, &isWLANMounted);
cout << "WLAN mounted: " << (isWLANMounted ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getMainHWversion ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get main hardware version (PCB revision).

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getMainHWversion (pAbout, buffer, buffer_len);
cout << "Main hardware version: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getMainManufacturingDate ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get main manufacturing date.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getMainManufacturingDate (pAbout, buffer, buffer_len);
cout << "Manufacturing date: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getMainPCBArt ( ABOUTHANDLE  ,
char *  buff,
int  length 
)

Get main PCB article number.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lengthMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getMainPCBArt (pAbout, buffer, buffer_len);
cout << "Main PCB article number: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getMainPCBSerial ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get main PCB serial number.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getMainPCBSerial (pAbout, buffer, buffer_len);
cout << "Main PCB serial: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getMainProdArtNr ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get main product article number.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getMainProdArtNr (pAbout, buffer, buffer_len);
cout << "Main product article number: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getMainProdRev ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get main product revision.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getMainProdRev (pAbout, buffer, buffer_len);
cout << "Main product revision: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfButtons ( ABOUTHANDLE  ,
int *  numbuttons 
)

Get number of configurable buttons.

Supported Platform(s): VC

Parameters
numbuttonsNumber of configurable buttons.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

int nrOfButtons;
err = About_getNrOfButtons (pAbout, &nrOfButtons);
cout << "Nr of configurable buttons: " << (int)nrOfButtons << endl;
cout << "About_getNrOfButtons: Not supported" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfCANConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of CAN connections present.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
NrOfConnectionsReturns the number of connections.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfCANConnections;
err = About_getNrOfCANConnections (pAbout, &nrOfCANConnections);
cout << "Nr of CAN connections: " << (int)nrOfCANConnections << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfCfgInConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of configurable input connections present.

Supported Platform(s): VC

Parameters
NrOfConnectionsReturns the number of inputs.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfCfgIn;
err = About_getNrOfCfgInConnections (pAbout, &nrOfCfgIn);
cout << "Nr of configurable inputs: " << (int)nrOfCfgIn << endl;
cout << "About_getNrOfCfgInConnections: Not supported" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfDigIOConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of digital I/O connections present.

Supported Platform(s): XL, XM, XS, XA

Parameters
NrOfConnectionsReturns the number of input or input/output connections.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfDigIOConnections;
err = About_getNrOfDigIOConnections (pAbout, &nrOfDigIOConnections);
cout << "Nr of digital I/O connections: " << (int)nrOfDigIOConnections << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfETHConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of ethernet connections present.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
NrOfConnectionsReturns the number of connections.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfEthConnections;
err = About_getNrOfETHConnections (pAbout, &nrOfEthConnections);
cout << "Nr of ethernet connections: " << (int)nrOfEthConnections << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfPWMOutConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of PWM Output connections present.

Supported Platform(s): VC

Parameters
NrOfConnectionsReturns the number of outputs.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfPwmOut;
err = About_getNrOfPWMOutConnections (pAbout, &nrOfPwmOut);
cout << "Nr of PWM outputs: " << (int)nrOfPwmOut << endl;
cout << "About_getNrOfPWMOutConnections: Not supported" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfSerialConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of serial port (RS232) connections present.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
NrOfConnectionsReturns the number of connections.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfSerialConnections;
err = About_getNrOfSerialConnections (pAbout, &nrOfSerialConnections);
cout << "Nr of serial connections: " << (int)nrOfSerialConnections << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfUSBConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of USB connections present.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
NrOfConnectionsReturns the number of connections.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfUSBConnections;
err = About_getNrOfUSBConnections (pAbout, &nrOfUSBConnections);
cout << "Nr of USB connections: " << (int)nrOfUSBConnections << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getNrOfVideoConnections ( ABOUTHANDLE  ,
unsigned char *  NrOfConnections 
)

Get number of Video connections present.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
NrOfConnectionsReturns the number of connections.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char nrOfVideoConnections;
err = About_getNrOfVideoConnections (pAbout, &nrOfVideoConnections);
cout << "Nr of video connections: " << (int)nrOfVideoConnections << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getUnitSerial ( ABOUTHANDLE  ,
char *  buff,
int  len 
)

Get unit serial number.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = About_getUnitSerial (pAbout, buffer, buffer_len);
cout << "Unit serial: " << buffer << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_getUserEepromData ( ABOUTHANDLE  ,
char *  buff,
unsigned short  length 
)

Get User Eeprom data. The user eeprom holds 4096 bytes of data which are fully accessible. Data is always read from position 0.

Supported Platform(s): XL, XM, XS, XA

Parameters
buffdata buffer.
lengthdata buffer length or number of data bytes to read.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_hasOsBooted ( ABOUTHANDLE  ,
bool *  bootComplete 
)

Get the status of the OS boot process. In Linux, drivers may be delay-loaded at start-up. If the application is started early in the boot-process, this function can be used to determine when full functionality can be obtained from the API/drivers.

Supported Platform(s): XA, XS

Parameters
bootCompleteIs the OS fully booted?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool isBootComplete;
err = CrossControl::About_hasOsBooted(pAbout, &isBootComplete);
cout << "System bootup complete: " << (isBootComplete ? "YES" : "NO") << endl;
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::About_release ( ABOUTHANDLE  )

Delete the About object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

ABOUTHANDLE pAbout = ::GetAbout();
assert(pAbout);
list_about_information(pAbout);
About_release(pAbout);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::About_setUserEepromData ( ABOUTHANDLE  ,
unsigned short  startpos,
const char *  buff,
unsigned short  length 
)

Set User Eeprom data. The user eeprom holds 4096 bytes of data which are fully accessible.

Supported Platform(s): XL, XM, XS, XA

Parameters
startposeeprom write start position.
buffdata buffer.
lengthbuffer length to write.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Adc_getVoltage ( ADCHANDLE  ,
VoltageEnum  selection,
double *  value 
)

Read measured voltage.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
selectionThe type of voltage to get.
valueVoltage value in Volt. Can be undefined if return value is error code. Not all values are supported on all platforms, ERR_NOT_SUPPORTED will indicate that.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Adc_getVoltage(pAdc, selection, &voltage);
{
cout << left << setw(7) << description << ": " <<
fixed << setprecision(2) << voltage << "V" << endl;
}
{
/* Don't print anything */
}
else
{
cout << left << setw(7) << description << ": " <<
fixed << setprecision(2) << CrossControl::GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Adc_release ( ADCHANDLE  )

Delete the ADC object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

ADCHANDLE pAdc = ::GetAdc();
assert(pAdc);
output_voltage (pAdc, "24VIN", CrossControl::VOLTAGE_24VIN);
output_voltage (pAdc, "24V", CrossControl::VOLTAGE_24V);
output_voltage (pAdc, "12V", CrossControl::VOLTAGE_12V);
output_voltage (pAdc, "12VID", CrossControl::VOLTAGE_12VID);
output_voltage (pAdc, "5V", CrossControl::VOLTAGE_5V);
output_voltage (pAdc, "3V3", CrossControl::VOLTAGE_3V3);
output_voltage (pAdc, "VTFT", CrossControl::VOLTAGE_VTFT);
output_voltage (pAdc, "5VSTB", CrossControl::VOLTAGE_5VSTB);
output_voltage (pAdc, "1V9", CrossControl::VOLTAGE_1V9);
output_voltage (pAdc, "1V8", CrossControl::VOLTAGE_1V8);
output_voltage (pAdc, "1V5", CrossControl::VOLTAGE_1V5);
output_voltage (pAdc, "1V2", CrossControl::VOLTAGE_1V2);
output_voltage (pAdc, "1V05", CrossControl::VOLTAGE_1V05);
output_voltage (pAdc, "1V0", CrossControl::VOLTAGE_1V0);
output_voltage (pAdc, "0V9", CrossControl::VOLTAGE_0V9);
output_voltage (pAdc, "VREF_INT", CrossControl::VOLTAGE_VREF_INT);
output_voltage (pAdc, "24V_BACKUP", CrossControl::VOLTAGE_24V_BACKUP);
output_voltage (pAdc, "2V5", CrossControl::VOLTAGE_2V5);
output_voltage (pAdc, "1V1", CrossControl::VOLTAGE_1V1);
output_voltage (pAdc, "1V3_PER", CrossControl::VOLTAGE_1V3_PER);
output_voltage (pAdc, "1V3_VDDA", CrossControl::VOLTAGE_1V3_VDDA);
output_voltage (pAdc, "3V3 STBY", CrossControl::VOLTAGE_3V3STBY);
output_voltage (pAdc, "VPMIC", CrossControl::VOLTAGE_VPMIC);
output_voltage (pAdc, "VMAIN", CrossControl::VOLTAGE_VMAIN);
Adc_release(pAdc);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_getCCAuxDrvVersion ( AUXVERSIONHANDLE  ,
unsigned char *  major,
unsigned char *  minor,
unsigned char *  release,
unsigned char *  build 
)

Get the CrossControl CCAux CCAuxDrv version. Can be used to check that the correct driver is loaded.

Supported Platform(s): XL, XM

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

pAuxVersion,
&major,
&minor,
&release,
&build);
cout << setw(column_width) << "CCAux Driver Version: ";
cout << (int) major << "." <<
(int) minor << "." <<
(int) release << "." <<
(int) build << endl;
else
cout << "unknown" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_getCCAuxVersion ( AUXVERSIONHANDLE  ,
unsigned char *  major,
unsigned char *  minor,
unsigned char *  release,
unsigned char *  build 
)

Get the CrossControl CCAux API version. CCAux includes: CCAuxService/ccauxd - Windows Service/Linux daemon. CCAux2.dll/libccaux2 - The implementation of this API.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

pAuxVersion,
&major,
&minor,
&release,
&build);
cout << setw(column_width) << "CC Aux Version: ";
cout <<
(int) major << "." <<
(int) minor << "." <<
(int) release << "." <<
(int) build << endl;
else
cout << "unknown" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_getFPGAVersion ( AUXVERSIONHANDLE  ,
unsigned char *  major,
unsigned char *  minor,
unsigned char *  release,
unsigned char *  build 
)

Get the FPGA software version

Supported Platform(s): XL, XM, XS, XA

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

pAuxVersion,
&major,
&minor,
&release,
&build);
cout << setw(column_width) << "FPGA Version: ";
cout << (int) major << "." <<
(int) minor << "." <<
(int) release << "." <<
(int) build << endl;
else
cout << "unknown" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_getFrontVersion ( AUXVERSIONHANDLE  ,
unsigned char *  major,
unsigned char *  minor,
unsigned char *  release,
unsigned char *  build 
)

Get the front microcontroller software version

Supported Platform(s): XL, XM, XS, XA

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

pAuxVersion,
&major,
&minor,
&release,
&build);
cout << setw(column_width) << "Front Micro Controller Version: ";
cout << (int) major << "." <<
(int) minor << "." <<
(int) release << "." <<
(int) build << endl;
else
cout << "unknown" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_getOSVersion ( AUXVERSIONHANDLE  ,
unsigned char *  major,
unsigned char *  minor,
unsigned char *  release,
unsigned char *  build 
)

Get the CrossControl Operating System version.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

pAuxVersion,
&major,
&minor,
&release,
&build);
cout << setw(column_width) << "Operating System Version: ";
cout << (int) major << "." <<
(int) minor << "." <<
(int) release << "." <<
(int) build << endl;
else
cout << "unknown" << endl;
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_getSSVersion ( AUXVERSIONHANDLE  ,
unsigned char *  major,
unsigned char *  minor,
unsigned char *  release,
unsigned char *  build 
)

Get the System Supervisor software version

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

pAuxVersion,
&major,
&minor,
&release,
&build);
cout << setw(column_width) << "System Supervisor Version: ";
cout << (int) major << "." <<
(int) minor << "." <<
(int) release << "." <<
(int) build << endl;
else
cout << "unknown" << endl;
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::AuxVersion_release ( AUXVERSIONHANDLE  )

Delete the AuxVersion object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert (pAuxVersion);
output_versions(pAuxVersion);
AuxVersion_release(pAuxVersion);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getAutomaticBLFilter ( BACKLIGHTHANDLE  ,
unsigned long *  averageWndSize,
unsigned long *  rejectWndSize,
unsigned long *  rejectDeltaInLux,
LightSensorSamplingMode *  mode 
)

Get light sensor filter parameters for automatic backlight control.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
averageWndSizeThe average window size in nr of samples.
rejectWndSizeThe reject window size in nr of samples.
rejectDeltaInLuxThe reject delta in lux.
modeThe configured sampling mode.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getAutomaticBLParams ( BACKLIGHTHANDLE  ,
bool *  bSoftTransitions,
double *  k 
)

Get parameters for automatic backlight control.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
bSoftTransitionsSoft transitions used?
kK value.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getAutomaticBLStatus ( BACKLIGHTHANDLE  ,
unsigned char *  status 
)

Get status from automatic backlight control.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
status1=running, 0=stopped.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getHWStatus ( BACKLIGHTHANDLE  ,
bool *  status 
)

Get backlight hardware status.

Parameters
statusBacklight controller status. true: All backlight drivers works ok, false: one or more backlight drivers are faulty.

Supported Platform(s): XL, XM, XS, XA

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

bool backlightStatus = false;
err = Backlight_getHWStatus(pBacklight, &backlightStatus);
if(err == ERR_SUCCESS)
{
if(backlightStatus)
printf("Backlight hardware status: OK\n");
else
printf("Backlight hardware status: not OK, one or more backlight drivers are faulty\n");
}
else if(err == ERR_NOT_SUPPORTED)
{
printf("Backlight_getHWStatus: Not supported!\n");
}
else
{
printf("Error(%d) in function Backlight_getHWStatus: %s\n", err, GetErrorStringA(err));
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getIntensity ( BACKLIGHTHANDLE  ,
unsigned char *  intensity 
)

Get backlight intensity. Note that there might be hardware limitations, limiting the minimum and/or maximum value to other than (1..255).

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
intensityThe current backlight intensity (1..255).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Backlight_getIntensity(pBacklight, &value);
if(err == ERR_SUCCESS)
{
printf("Current backlight intensity (0-255): %d\n", value);
}
else
{
printf("Error(%d) in function Backlight_getIntensity: %s\n", err, GetErrorStringA(err));
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getLedDimming ( BACKLIGHTHANDLE  ,
CCStatus *  status 
)

Get the current setting for Led dimming. If enabled, the function automatically dimms the LED according to the current backlight setting; Low backlight gives less bright LED. This works with manual backlight setting and automatic backlight, but only if the led is set to pure red, green or blue color. If another color is being used, this functionality must be implemented separately.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_getStatus ( BACKLIGHTHANDLE  ,
unsigned char *  status 
)

Get backlight controller status. Deprecated, use Backlight_getHWStatus instead.

Supported Platform(s): XL, XM

Parameters
statusBacklight controller status. Bit 0: status controller 1. Bit 1: status controller 2. Bit 2: status controller 3. Bit 3: status controller 4. 1=normal, 0=fault.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Backlight_getStatus(pBacklight, &value);
if(err == ERR_SUCCESS)
{
printf("Backlight status: \nBL1:%s\nBL2:%s\nBL3:%s\nBL4:%s\n",
(value & 0x01)? "OK" : "NOT OK or missing",
(value & 0x02)? "OK" : "NOT OK or missing",
(value & 0x04)? "OK" : "NOT OK or missing",
(value & 0x08)? "OK" : "NOT OK or missing");
}
else if(err == ERR_NOT_SUPPORTED)
{
printf("Backlight_getStatus: Not supported!\n");
}
else
{
printf("Error(%d) in function Backlight_getStatus: %s\n", err, GetErrorStringA(err));
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Backlight_release ( BACKLIGHTHANDLE  )

Delete the backlight object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pBacklight);
change_backlight(pBacklight);
Backlight_release(pBacklight);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_setAutomaticBLFilter ( BACKLIGHTHANDLE  ,
unsigned long  averageWndSize,
unsigned long  rejectWndSize,
unsigned long  rejectDeltaInLux,
LightSensorSamplingMode  mode 
)

Set light sensor filter parameters for automatic backlight control.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
averageWndSizeThe average window size in nr of samples.
rejectWndSizeThe reject window size in nr of samples.
rejectDeltaInLuxThe reject delta in lux.
modeThe configured sampling mode.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_setAutomaticBLParams ( BACKLIGHTHANDLE  ,
bool  bSoftTransitions 
)

Set parameters for automatic backlight control.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
bSoftTransitionsUse soft transitions?
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_setIntensity ( BACKLIGHTHANDLE  ,
unsigned char  intensity 
)

Set backlight intensity. Note that there might be hardware limitations, limiting the minimum and/or maximum value to other than (1..255).

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
intensityThe backlight intensity to set (1..255).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Backlight_setIntensity(pBacklight, value);
if(err == ERR_SUCCESS)
{
printf("Setting backlight intensity: %d\n", value);
}
else
{
printf("Error(%d) in function Backlight_setIntensity: %s\n", err, GetErrorStringA(err));
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_setLedDimming ( BACKLIGHTHANDLE  ,
CCStatus  status 
)

Enable/disable Led dimming. If enabled, the function automatically dimms the LED according to the current backlight setting; Low backlight gives less bright LED. This works with manual backlight setting and automatic backlight, but only if the led is set to pure red, green or blue color. If another color is being used, this functionality must be implemented separately.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_startAutomaticBL ( BACKLIGHTHANDLE  )

Start automatic backlight control. Note that reading the light sensor at the same time as running the automatic backlight control is not supported.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Backlight_stopAutomaticBL ( BACKLIGHTHANDLE  )

Stop automatic backlight control.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getBatteryChargingStatus ( BATTERYHANDLE  ,
ChargingStatus *  status 
)

Get battery charging status.

Supported Platform(s): XM

Parameters
statusthe current charging mode of the battery.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

error = Battery_getBatteryChargingStatus(pBattery, &cs);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getBatteryChargingStatus: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getBatteryChargingStatus: " << GetErrorStringA(error) << std::endl;
}
else
{
switch(cs)
{
cout << "getBatteryChargingStatus: Battery is not being charged" << std::endl;
break;
cout << "getBatteryChargingStatus: Battery is being charged" << std::endl;
break;
cout << "getBatteryChargingStatus: Battery is fully charged" << std::endl;
break;
cout << "getBatteryChargingStatus: Temperature is too low to charge the battery" << std::endl;
break;
cout << "getBatteryChargingStatus: Temperature is too high to charge the battery" << std::endl;
break;
cout << "getBatteryChargingStatus: ChargingStatus_Unknown" << std::endl;
break;
default:
cout << "getBatteryChargingStatus: invalid return value" << std::endl;
break;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getBatteryHWversion ( BATTERYHANDLE  ,
char *  buff,
int  len 
)

Get battery hardware version (PCB revision).

Supported Platform(s): XM

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

char buf[255];
error = Battery_getBatteryHWversion(pBattery, buf, sizeof(buf));
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getBatteryHWversion: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getBatteryHWversion: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getBatteryHWversion: " << buf << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getBatterySerial ( BATTERYHANDLE  ,
char *  buff,
int  len 
)

Get battery serial number.

Supported Platform(s): XM

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned. The serial number is 10 characters plus terminating zero, in total 11 bytes in size.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

error = Battery_getBatterySerial(pBattery,buf, sizeof(buf));
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getBatterySerial: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getBatterySerial: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getBatterySerial: " << buf << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getBatterySwVersion ( BATTERYHANDLE  ,
unsigned short *  major,
unsigned short *  minor,
unsigned short *  release,
unsigned short *  build 
)

Get the battery software version

Supported Platform(s): XM

Parameters
majorMajor version number
minorMinor version number
releaseRelease version number
buildBuild version number
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned short major;
unsigned short minor;
unsigned short release;
unsigned short build;
error = Battery_getBatterySwVersion(pBattery, &major, &minor, &release, &build);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getBatterySwVersion: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getBatterySwVersion: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getBatterySwVersion: v" << major << "." << minor << "." << release << "." << build << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getBatteryTemp ( BATTERYHANDLE  ,
signed short *  temperature 
)

Get battery temperature.

Supported Platform(s): XM

Parameters
temperaturePCB Temperature in degrees Celsius.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

short temp;
error = Battery_getBatteryTemp(pBattery, &temp);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getBatteryTemp: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getBatteryTemp: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getBatteryTemp: " << temp << " deg C" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getBatteryVoltageStatus ( BATTERYHANDLE  ,
unsigned char *  batteryVoltagePercent 
)

Get battery voltage status.

Supported Platform(s): XM

Parameters
batteryVoltagePercentthe current voltage level of the battery, in percent [0..100].
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char s;
error = Battery_getBatteryVoltageStatus(pBattery, &s);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getBatteryVoltageStatus: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getBatteryVoltageStatus: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getBatteryVoltageStatus: " << (int)s << " %" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getHwErrorStatus ( BATTERYHANDLE  ,
ErrorStatus *  errorCode 
)

Get hardware error code. If hardware errors are found or other problems are discovered by the battery pack, they are reported here.

Supported Platform(s): XM

Parameters
errorCodeError code. Zero means no error.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

error = Battery_getHwErrorStatus(pBattery, &es);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getHwErrorStatus: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getHwErrorStatus: " << GetErrorStringA(error) << std::endl;
}
else
{
switch(es)
{
cout << "getHwErrorStatus: " << "Battery reports no HW errors" << std::endl;
break;
cout << "getHwErrorStatus: " << "Battery error! The thermistor temp sensor is not working" << std::endl;
break;
cout << "getHwErrorStatus: " << "Battery error! The secondary temp sensor is not working" << std::endl;
break;
cout << "getHwErrorStatus: " << "Battery error! Charging failed" << std::endl;
break;
cout << "getHwErrorStatus: " << "Battery error! Overcurrent detected" << std::endl;
break;
cout << "getHwErrorStatus: " << "Battery error! Battery not initiated" << std::endl;
break;
default:
cout << "getHwErrorStatus: " << "invalid return value" << std::endl;
break;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getMinMaxTemp ( BATTERYHANDLE  ,
signed short *  minTemp,
signed short *  maxTemp 
)

Get temperature interval of the battery.

Supported Platform(s): XM

Parameters
minTempMinimum measured temperature.
maxTempMaximum measured temperature.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

short max;
error = Battery_getMinMaxTemp(pBattery, &temp, &max);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getMinMaxTemp: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getMinMaxTemp: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getMinMaxTemp: MinTemp:" << temp << ", MaxTemp: " << max << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getPowerSource ( BATTERYHANDLE  ,
PowerSource *  status 
)

Get the currently used power source.

Supported Platform(s): XM

Parameters
statusthe current power source, external power or battery.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

error = Battery_getPowerSource(pBattery, &ps);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getPowerSource: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getPowerSource: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getPowerSource: Power source: Battery" << std::endl;
else
cout << "getPowerSource: Power source: External Power" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_getTimer ( BATTERYHANDLE  ,
BatteryTimerType *  times 
)

Get battery diagnostic timer.

Supported Platform(s): XM

Parameters
timesGet a struct with the current diagnostic times.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

BatteryTimerType times;
memset(&times, 0, sizeof(times));
error = Battery_getTimer(pBattery, &times);
if(error == ERR_NOT_SUPPORTED && !bpresent)
{
cout << "getTimer: " << GetErrorStringA(error) << " - battery is not present!" << std::endl;
}
else if(error != ERR_SUCCESS)
{
cout << "getTimer: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "getTimer: " << std::endl;
cout << "Total run time on main power=" << times.TotRunTimeMain*60 << " min(s)" << std::endl
<< "Total run time on battery power=" << times.TotRunTimeBattery*60 << " min(s)" << std::endl
<< "Total run time below -20C=" << times.RunTime_m20 << " min(s)" << std::endl
<< "Total run time -20-0C=" << times.RunTime_m20_0 << " min(s)" << std::endl
<< "Total run time 0-40C=" << times.RunTime_0_40 << " min(s)" << std::endl
<< "Total run time 40-60C=" << times.RunTime_40_60 << " min(s)" << std::endl
<< "Total run time 60-70C=" << times.RunTime_60_70 << " min(s)" << std::endl
<< "Total run time 70-80C=" << times.RunTime_70_80 << " min(s)" << std::endl
<< "Total run time above 80C=" << times.RunTime_Above80 << " min(s)" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Battery_isBatteryPresent ( BATTERYHANDLE  ,
bool *  batteryIsPresent 
)

Is an external battery connected?

Supported Platform(s): XM

Parameters
batteryIsPresenttrue if a battery is connected, otherwise false.
Returns
-

Example Usage:

error = Battery_isBatteryPresent(pBattery, &bpresent);
if(error != ERR_SUCCESS)
{
cout << "isBatteryPresent: " << GetErrorStringA(error) << std::endl;
}
else
{
if(bpresent)
{
cout << "Battery is present. Testing functionality... " << std::endl;
}
else
{
cout << "Battery is NOT present." << std::endl;
}
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Battery_release ( BATTERYHANDLE  )

Delete the Battery object

Supported Platform(s): XM.

Returns
-

Example Usage:

assert(pBattery);
readBatteryInfo(pBattery);
Battery_release(pBattery);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_buzze ( BUZZERHANDLE  ,
int  time,
bool  blocking 
)

Buzzes for a specified time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
timeTime (ms) to buzz.
blockingBlocking or non-blocking function.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Buzzer_setFrequency(pBuzzer, freq);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setFrequency: " << GetErrorStringA(err) << endl;
}
else
{
err = Buzzer_buzze(pBuzzer, duration, true);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function buzze: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_getFrequency ( BUZZERHANDLE  ,
unsigned short *  frequency 
)

Get buzzer frequency.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
frequencyCurrent frequency (700-10000 Hz).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_getTrigger ( BUZZERHANDLE  ,
bool *  trigger 
)

Get buzzer trigger. The Buzzer is enabled when the trigger is enabled.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
triggerCurrent trigger status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_getVolume ( BUZZERHANDLE  ,
unsigned short *  volume 
)

Get buzzer volume.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
volumeCurrent volume (0-51).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Buzzer_getVolume( pBuzzer, &vol);
if(err == ERR_SUCCESS)
{
cout << "Buzzer volume was: " << vol << endl;
}
else
{
cout << "Error(" << err << ") in function getVolume: " << GetErrorStringA(err) << endl;
vol = 40;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Buzzer_release ( BUZZERHANDLE  )

Delete the Buzzer object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pBuzzer);
play_beeps(pBuzzer);
Buzzer_release(pBuzzer);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_setFrequency ( BUZZERHANDLE  ,
unsigned short  frequency 
)

Set buzzer frequency.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
frequencyFrequency to set (700-10000 Hz).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Buzzer_setFrequency(pBuzzer, freq);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setFrequency: " << GetErrorStringA(err) << endl;
}
else
{
err = Buzzer_buzze(pBuzzer, duration, true);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function buzze: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_setTrigger ( BUZZERHANDLE  ,
bool  trigger 
)

Set buzzer trigger. The Buzzer is enabled when the trigger is enabled.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
triggerStatus to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Buzzer_setVolume ( BUZZERHANDLE  ,
unsigned short  volume 
)

Set buzzer volume.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
volumeVolume to set (0-51).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Buzzer_setVolume( pBuzzer, 20);
if(err == ERR_SUCCESS)
{
cout << "Buzzer volume set to 20" << endl;
}
else
{
cout << "Error(" << err << ") in function setVolume: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CanSetting_getBaudrate ( CANSETTINGHANDLE  ,
unsigned char  net,
unsigned short *  baudrate 
)

Get Baud rate

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
netCAN net (1-4) to get settings for.
baudrateCAN baud rate (kbit/s).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = CanSetting_getBaudrate(pCanSetting, net, &baudrates[net-1]);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function getBaudrate: " << GetErrorStringA(err) << endl;
break;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CanSetting_getFrameType ( CANSETTINGHANDLE  ,
unsigned char  net,
CanFrameType *  frameType 
)

Get frame type

Supported Platform(s): XL, XM

Parameters
netCAN net (1-4) to get settings for.
frameTypeCAN frame type
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = CanSetting_getFrameType(pCanSetting, net, &frametypes[net-1]);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function getFrameType: " << GetErrorStringA(err) << endl;
break;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::CanSetting_release ( CANSETTINGHANDLE  )

Delete the CanSetting object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pCanSetting);
read_cansettings(pCanSetting);
CanSetting_release(pCanSetting);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CanSetting_setBaudrate ( CANSETTINGHANDLE  ,
unsigned char  net,
unsigned short  baudrate 
)

Set Baud rate. The changes will take effect after a restart.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
netCAN net (1-4).
baudrateCAN baud rate (kbit/s). The driver will calculate the best supported baud rate if it does not support the given baud rate. The maximum baud rate is 1000 kbit/s.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CanSetting_setFrameType ( CANSETTINGHANDLE  ,
unsigned char  net,
CanFrameType  frameType 
)

Set frame type. The changes will take effect after a restart.

Supported Platform(s): XL, XM

Parameters
netCAN net (1-4).
frameTypeCAN frameType
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CfgIn_getCfgInMode ( CFGINHANDLE  ,
unsigned char  channel,
CfgInModeEnum *  get_mode 
)

Get Configurable Input mode

Supported Platform(s): VC

Parameters
channelWhich configurable input channel to use, 1 or 2, corresponding to physical input channel
get_modeStorage container for retreived mode Configurable input can be set to different measurement modes, this reads the setting back
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = CfgIn_getCfgInMode(pCfgIn, channel, &get_mode);
if(err != ERR_SUCCESS)
{
cout << "CfgIn_getCfgInMode: " << GetErrorStringA(err) << std::endl;
}
else
{
switch(get_mode)
{
case CFGIN_NOT_IN_USE: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_NOT_IN_USE" << std::endl; break;
case CFGIN_HI_SWITCH: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_HI_SWITCH" << std::endl; break;
case CFGIN_LOW_SWITCH: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_LOW_SWITCH" << std::endl; break;
case CFGIN_VOLTAGE_3V3: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_VOLTAGE_3V3" << std::endl; break;
case CFGIN_VOLTAGE_5VPD: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_VOLTAGE_5VPD" << std::endl; break;
case CFGIN_RESISTANCE: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_RESISTANCE" << std::endl; break;
case CFGIN_FREQ_FLOATING: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_FREQ_FLOATING" << std::endl; break;
case CFGIN_FREQ_PULLUP: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_FREQ_PULLUP" << std::endl; break;
case CFGIN_FREQ_PULLDOWN: cout << "CfgIn_getCfgInMode (" << (int)channel << "): CFGIN_FREQ_PULLDOWN" << std::endl; break;
default: cout << "CfgIn_getCfgInMode (" << (int)channel << "): Unknown mode" << std::endl; break;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CfgIn_getPwmValue ( CFGINHANDLE  ,
unsigned char  channel,
float *  frequency,
unsigned char *  duty_cycle 
)

Read the sampled value from configurable input, when in frequency measurement mode (CFGIN_FREQ_FLOATING, CFGIN_FREQ_PULLUP, CFGIN_FREQ_PULLDOWN).

Supported Platform(s): VC

Parameters
channelWhich configurable input channel to use, 1 or 2, corresponding to physical input channel
frequencyRead signal frequency, 0.0 - 50000.0 Hz
duty_cycleRead signal duty cycle, 0-100%
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

float frequency;
unsigned char duty_cycle;
err = CfgIn_getPwmValue(pCfgIn, 2, &frequency, &duty_cycle);
if(err != ERR_SUCCESS)
{
cout << "CfgIn_getPwmValue: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "CfgIn_getPwmValue: channel 2 PWM measurement: " << std::fixed << frequency << "Hz, " << (int)duty_cycle << "% duty cycle" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CfgIn_getValue ( CFGINHANDLE  ,
unsigned char  channel,
unsigned short *  sample_value 
)

Read the sampled value from configurable input, when in modes other than frequency mode: CFGIN_HI_SWITCH - sample_value is 0-1 CFGIN_LOW_SWITCH - sample_value is 0-1 CFGIN_VOLTAGE_3V3 - sample_value is 0-33000 (0.1mV steps) CFGIN_VOLTAGE_5VPD - sample_value is 0-50000 (0.1mV steps) CFGIN_RESISTANCE - sample_value is 0-65535 Ohm

Supported Platform(s): VC

Parameters
channelWhich configurable input channel to use, 1 or 2, corresponding to physical input channel
sample_valueRead value which is relevant to actual mode setting The actual value is dependent on the mode setting
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned short value;
err = CfgIn_getValue(pCfgIn, 1, &value);
if(err != ERR_SUCCESS)
{
cout << "CfgIn_getValue: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "CfgIn_getValue: channel 1 3V3 voltage measurement: " << (int)value << "mV" << std::endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::CfgIn_release ( CFGINHANDLE  )

Delete the CfgIn object.

Supported Platform(s): VC

Returns
-

Example Usage:

CFGINHANDLE pCfgIn = ::GetCfgIn();
assert(pCfgIn);
cfgin_example(pCfgIn);
CfgIn_release(pCfgIn);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::CfgIn_setCfgInMode ( CFGINHANDLE  ,
unsigned char  channel,
CfgInModeEnum  set_mode 
)

Set Configurable Input mode

Supported Platform(s): VC

Parameters
channelWhich configurable input channel to use, 1 or 2, corresponding to physical input channel
set_modeWhich mode to set Configurable input can be set to different measurement modes
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = CfgIn_setCfgInMode(pCfgIn, channel, CFGIN_VOLTAGE_3V3);
if(err != ERR_SUCCESS)
{
cout << "CfgIn_setCfgInMode: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "CfgIn_setCfgInMode: channel 1 mode set to CFGIN_VOLTAGE_3V3" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getButtonFunction ( CONFIGHANDLE  ,
unsigned char  button_number,
ButtonConfigEnum *  button_config 
)

Get Button Function Configuration

Supported Platform(s): VC

Parameters
button_numberWhich button to configure (1-MAX_BUTTONS)
button_configBitfield for button configuration, see enum ButtonConfigEnum for details.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

for (int i = 1; i < 9; i++)
{
error = Config_getButtonFunction(pConfig, i, &btnconf);
if (error != ERR_SUCCESS)
{
cout << "Error(" << error << ") in function Config_getButtonFunction: " << GetErrorStringA(error) << std::endl;
}
else
{
cout << "Button " << (int)i << " is set to: ";
switch(btnconf)
{
case BUTTON_ONLY_MP_ACTION: cout << "Application only" << std::endl; break;
case BUTTON_AS_STARTUP_TRIG: cout << "Startup trigger" << std::endl; break;
case BUTTON_AS_ACTION_TRIG: cout << "Action trigger" << std::endl; break;
case BUTTON_AS_ACTION_STARTUP_TRIG: cout << "Action and Startup trigger" << std::endl; break;
case BUTTON_AS_BACKLIGHT_DECREASE: cout << "Backlight decrease" << std::endl; break;
case BUTTON_AS_BACKLIGHT_DECR_STARTUP_TRIG: cout << "Backlight decrease and Startup trigger" << std::endl; break;
case BUTTON_AS_BACKLIGHT_INCREASE: cout << "Backlight increase" << std::endl; break;
case BUTTON_AS_BACKLIGHT_INCR_STARTUP_TRIG: cout << "Backlight increase and Startup trigger" << std::endl; break;
default: cout << "Invalid value" << std::endl; break;
}
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getCanStartupPowerConfig ( CONFIGHANDLE  ,
CCStatus *  status 
)

Get Can power at startup configuration. The status of Can power at startup and at resume from suspended mode. At resume from suspend, this setting overrides the setting of the setCanPowerStatus function.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getExtFanStartupPowerConfig ( CONFIGHANDLE  ,
CCStatus *  status 
)

Get External fan power at startup configuration. The status at startup and at resume from suspended mode. At resume from suspend, this setting overrides the setting of the setExtFanPowerStatus function.

Supported Platform(s): XL, XM

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getExtOnOffSigTrigTime ( CONFIGHANDLE  ,
unsigned long *  triggertime 
)

Get external on/off signal trigger time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
triggertimeTime in seconds that the external signal has to be low for the unit to enter suspend mode or shut down (trigger an action). This time can be set from one second up to several years, if needed.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getFrontBtnTrigTime ( CONFIGHANDLE  ,
unsigned short *  triggertime 
)

Get front button trigger time for long press.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
triggertimeTime in milliseconds that the button has to be pressed for the press to count as a long button press. A button press twice this time will generate a hard shut down. If this time is set under 4000ms, the hard shut down minimum time of 8s is used instead.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getHeatingTempLimit ( CONFIGHANDLE  ,
signed short *  temperature 
)

Get the temperature limit for heating. When temperature is below this limit, the system is internally heated until the temperature rises above the limit. The default and minimum value is -25 degrees Celsius. The maximum value is +5 degrees Celsius.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
temperatureThe current heating limit, in degrees Celsius (-25 to +5)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getLongButtonPressAction ( CONFIGHANDLE  ,
PowerAction *  action 
)

Get long button press action. Gets the configured action for a long button press: NoAction, ActionSuspend or ActionShutDown. A long button press is determined by the FrontBtnTrigTime.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
actionThe configured action.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getOnOffSigAction ( CONFIGHANDLE  ,
PowerAction *  action 
)

Get On/Off signal action. Gets the configured action for an On/Off signal event: NoAction, ActionSuspend or ActionShutDown. An On/Off signal event is determined by the ExtOnOffSigTrigTime.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
actionThe configured action.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getPowerOnStartup ( CONFIGHANDLE  ,
CCStatus *  status 
)

Get power on start-up behavior. If enabled, the unit always starts when power is turned on, disregarding the setting for StartupTriggerConfig at that time. The StartupTriggerConfig still applies if the unit is shut down or suspended, without removing the power supply.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getRS485Enabled ( CONFIGHANDLE  ,
RS4XXPort  port,
bool *  enabled 
)

Get RS485 mode configuration for RS4XX port.

Supported Platform(s): XA, XS

Parameters
portRS4XX port (RS4XXPort1-4)
enabledIs the RS485 port enabled (true/false)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getShortButtonPressAction ( CONFIGHANDLE  ,
PowerAction *  action 
)

Get short button press action. Gets the configured action for a short button press: NoAction, ActionSuspend or ActionShutDown.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
actionThe configured action.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getStartupTriggerConfig ( CONFIGHANDLE  ,
TriggerConf *  config 
)

Get Start-up trigger configuration. Is the front button and/or the external on/off (ignition) signal enabled as triggers for startup and wake up from suspended mode? VC platform: CI state change and Can activity also available as wakeup triggers from suspend mode.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
configSee enum TriggerConf.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Config_getStartupTriggerConfig(pConfig, &trig);
if(err == ERR_SUCCESS)
{
cout << "Start-up trigger is set to: ";
switch(trig)
{
case Front_Button_Enabled: cout << "Front button only" << endl; break;
case OnOff_Signal_Enabled: cout << "On/Off signal only" << endl; break;
case Both_Button_And_Signal_Enabled: cout << "Front button or On/off signal" << endl; break;
// The below values are only available on the VC platform
case CAN_Activity: cout << "Wake up on CAN only" << endl; break;
case CAN_Button_Activity: cout << "Wake up on CAN and Buttons" << endl; break;
case CAN_OnOff_Activity: cout << "Wake up on CAN and On/Off/Ignition signal" << endl; break;
case CAN_Button_OnOff_Activity: cout << "Wake up on CAN, Buttons and On/Off/Ignition signal" << endl; break;
case CI_State_Activity: cout << "Wake up on Configurable Input State Change" << endl; break;
case CI_Button_Activity: cout << "Wake up on CI and Button State Change" << endl; break;
case CI_OnOff_Activity: cout << "Wake up on CI and OnOff Signal State Change" << endl; break;
case CI_Button_OnOff_Activity: cout << "Wake up on CI, Button and OnOff Signal State Change" << endl; break;
case CI_CAN_Activity: cout << "Wake up on CI and CAN State Change" << endl; break;
case CI_CAN_Button_Activity: cout << "Wake up on CI, CAN and Button State Change" << endl; break;
case CI_CAN_OnOff_Activity: cout << "Wake up on CI, CAN and OnOff Signal State Change" << endl; break;
case All_Events: cout << "Wake up on all events" << endl; break;
default: cout << "Error - Undefined StartupTrigger" << endl; break;
}
}
else
{
cout << "Error(" << err << ") in function getStartupTriggerConfig: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getStartupVoltageConfig ( CONFIGHANDLE  ,
double *  voltage 
)

Get the voltage threshold required for startup. The external voltage must be stable above this value for the unit to start up. The default and minimum value is 9V. It could be set to a higher value for a 24V system.

Supported Platform(s): XL, XM

Parameters
voltageThe current voltage setting. (9V .. 28V)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getSuspendMaxTime ( CONFIGHANDLE  ,
unsigned short *  maxTime 
)

Get suspend mode maximum time.

Supported Platform(s): XL, XM, VC

Parameters
maxTimeMaximum suspend time in minutes. After this time in suspended mode, the unit will shut down to save power. A value of 0 means that the automatic shut down function is not used.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_getVideoStartupPowerConfig ( CONFIGHANDLE  ,
unsigned char *  config 
)

Get Video power at startup configuration. The status of Video power at startup and at resume from suspended mode. At resume from suspend, this setting overrides the setting of the setVideoPowerStatus function.

Supported Platform(s): XL, XM, XS, XA

Parameters
configBitwise representation of the four video channels. See the VideoXConf defines. if the bit is 1, the power is enabled, else disabled.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Config_release ( CONFIGHANDLE  )

Delete the Config object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pConfig);
conf_example(pConfig);
Config_release(pConfig);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setButtonFunction ( CONFIGHANDLE  ,
unsigned char  button_number,
ButtonConfigEnum  button_config 
)

Set button function configuration

Supported Platform(s): VC

Parameters
button_numberWhich button to configure (1-MAX_BUTTONS)
button_configBitfield for button configuration, see enum ButtonConfigEnum for details.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setCanStartupPowerConfig ( CONFIGHANDLE  ,
CCStatus  status 
)

Set Can power at startup configuration. The status of Can power at startup and at resume from suspended mode. At resume from suspend, this setting overrides the setting of the setCanPowerStatus function.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setExtFanStartupPowerConfig ( CONFIGHANDLE  ,
CCStatus  status 
)

Set External fan power at startup configuration. The status at startup and at resume from suspended mode. At resume from suspend, this setting overrides the setting of the setExtFanPowerStatus function.

Supported Platform(s): XL, XM

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setExtOnOffSigTrigTime ( CONFIGHANDLE  ,
unsigned long  triggertime 
)

Set external on/off signal trigger time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
triggertimeTime in seconds that the external signal has to be low for the unit to enter suspend mode or shut down (trigger an action). This time can be set from one second up to several years, if needed.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setFrontBtnTrigTime ( CONFIGHANDLE  ,
unsigned short  triggertime 
)

Set front button trigger time for long press.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
triggertimeTime in milliseconds that the button has to be pressed for the press to count as a long button press. A button press twice this time will generate a hard shut down. If this time is set under 4000ms, the hard shut down minimum time of 8s is used instead.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setHeatingTempLimit ( CONFIGHANDLE  ,
signed short  temperature 
)

Set the temperature limit for heating. When temperature is below this limit, the system is internally heated until the temperature rises above the limit. The default and minimum value is -25 degrees Celsius. The maximum value is +5 degrees Celsius.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
temperatureThe heating limit, in degrees Celsius (-25 to +5)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setLongButtonPressAction ( CONFIGHANDLE  ,
PowerAction  action 
)

Set long button press action. Sets the configured action for a long button press: NoAction, ActionSuspend or ActionShutDown. A long button press is determined by the FrontBtnTrigTime.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
actionThe action to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setOnOffSigAction ( CONFIGHANDLE  ,
PowerAction  action 
)

Set On/Off signal action. Sets the configured action for an On/Off signal event: NoAction, ActionSuspend or ActionShutDown. An On/Off signal event is determined by the ExtOnOffSigTrigTime.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
actionThe action to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setPowerOnStartup ( CONFIGHANDLE  ,
CCStatus  status 
)

Set power on start-up behavior. If enabled, the unit always starts when power is turned on, disregarding the setting for StartupTriggerConfig at that time. The StartupTriggerConfig still applies if the unit is shut down or suspended, without removing the power supply.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusEnabled/Disabled
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setRS485Enabled ( CONFIGHANDLE  ,
RS4XXPort  port,
bool  enabled 
)

Set RS485 mode enabled or disabled for RS4XX port.

Supported Platform(s): XA, XS

Parameters
portRS4XX port (RS4XXPort1-4)
enabledRS485 enabled (true/false)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setShortButtonPressAction ( CONFIGHANDLE  ,
PowerAction  action 
)

Set short button press action. Sets the configured action for a short button press: NoAction, ActionSuspend or ActionShutDown.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
actionThe action to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

if(err == ERR_SUCCESS)
{
cout << "ShortButtonPressAction set to Suspend!" << endl;
}
else
{
cout << "Error(" << err << ") in function setShortButtonPressAction: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setStartupTriggerConfig ( CONFIGHANDLE  ,
TriggerConf  conf 
)

Set Start-up trigger configuration. Should the front button and/or the external on/off (ignition) signal be enabled as triggers for startup and wake up from suspended mode? VC platform: CI state change and Can activity also available as wakeup triggers from suspend mode.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
confSee enum TriggerConf.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setStartupVoltageConfig ( CONFIGHANDLE  ,
double  voltage 
)

Set the voltage threshold required for startup. The external voltage must be stable above this value for the unit to start up. The default and minimum value is 9V. It could be set to a higher value for a 24V system.

Supported Platform(s): XL, XM

Parameters
voltageThe voltage to set (9V .. 28V).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setSuspendMaxTime ( CONFIGHANDLE  ,
unsigned short  maxTime 
)

Set suspend mode maximum time.

Supported Platform(s): XL, XM, VC

Parameters
maxTimeMaximum suspend time in minutes. After this time in suspended mode, the unit will shut down to save power. A value of 0 means that this function is not used.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Config_setVideoStartupPowerConfig ( CONFIGHANDLE  ,
unsigned char  config 
)

Set Video power at startup configuration. The status of Video power at startup and at resume from suspended mode. At resume from suspend, this setting overrides the setting of the setVideoPowerStatus function.

Supported Platform(s): XL, XM, XS, XA

Parameters
configBitwise representation of the four video channels. See the VideoXConf defines. if the bit is 1, the power is enabled, else disabled.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_clearHwErrorStatus ( DIAGNOSTICHANDLE  )

Clear the HW error status (this function is used by the CrossControl service/daemon to log any hardware errors)

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getHwErrorStatus ( DIAGNOSTICHANDLE  ,
unsigned short *  errorCode 
)

Get hardware error code. If hardware errors are found or other problems are discovered by the SS, they are reported here. See DiagnosticCodes.h for error codes.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
errorCodeError code. Zero means no error.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getMinMaxTemp ( DIAGNOSTICHANDLE  ,
signed short *  minTemp,
signed short *  maxTemp 
)

Get diagnostic temperature interval of the unit.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
minTempMinimum measured PCB temperature.
maxTempMaximum measured PCB temperature.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Diagnostic_getMinMaxTemp(pDiagnostic, &sValue, &sValue2);
printString(err, "Minimum temp", sValue, "deg C");
printString(err, "Maximum temp", sValue2, "deg C");
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getPCBTemp ( DIAGNOSTICHANDLE  ,
signed short *  temperature 
)

Get PCB temperature.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
temperaturePCB Temperature in degrees Celsius.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getPMTemp ( DIAGNOSTICHANDLE  ,
unsigned char  index,
signed short *  temperature,
JidaSensorType *  jst 
)

Get Processor Module temperature. This temperature is read from the Kontron JIDA API or Congatec CGOS API. These API's also has a number of other functions, please see the JIDA/CGOS documentation for how to use them separately.

Parameters
indexZero-based index of the temperature sensor. Different boards may have different number of sensors. CCpilot XM and XL currently has 2 sensors, board and cpu. An error is returned if the index is not supported. CCpliot XM 2.0 supports only one sensor, CPU temperature.

Supported Platform(s): XL, XM

Parameters
temperatureTemperature in degrees Celsius.
jstThe type of sensor that is being read.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getPowerCycles ( DIAGNOSTICHANDLE  ,
unsigned short *  powerCycles 
)

Get number of power cycles.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
powerCyclesTotal number of power cycles.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getShutDownReason ( DIAGNOSTICHANDLE  ,
unsigned short *  reason 
)

Get shutdown reason.

Supported Platform(s): XL, XM

Parameters
reasonSee DiagnosticCodes.h for shutdown codes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getSSTemp ( DIAGNOSTICHANDLE  ,
signed short *  temperature 
)

Get System Supervisor temperature.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
temperatureSystem Supervisor temperature in degrees Celsius.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Diagnostic_getSSTemp(pDiagnostic, &sValue);
printString(err, "Main board (SS) temp", sValue, "deg C");
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getStartupReason ( DIAGNOSTICHANDLE  ,
unsigned short *  reason 
)

Get startup reason.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
reasonSee DiagnosticCodes.h for startup codes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_getTimer ( DIAGNOSTICHANDLE  ,
TimerType *  times 
)

Get diagnostic timer.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
timesGet a struct with the current diagnostic times.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Diagnostic_getTimer(pDiagnostic, &tt);
printStringTime(err, "Total run time", tt.TotRunTime);
printStringTime(err, "Total suspend time", tt.TotSuspTime);
printStringTime(err, "Total heat time", tt.TotHeatTime);
printStringTime(err, "Total run time 40-60 deg C", tt.RunTime40_60);
printStringTime(err, "Total run time 60-70 deg C", tt.RunTime60_70);
printStringTime(err, "Total run time 70-80 deg C", tt.RunTime70_80);
printStringTime(err, "Total run time above 80 deg C", tt.Above80RunTime);
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Diagnostic_release ( DIAGNOSTICHANDLE  )

Delete the Diagnostic object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pDiagnostic);
diagnostic_example(pDiagnostic);
Diagnostic_release(pDiagnostic);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::DigIO_getDigIO ( DIGIOHANDLE  ,
unsigned char *  status 
)

Get Digital inputs.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusStatus of the four digital input pins. Bit0: Digital input 1. Bit1: Digital input 2. Bit2: Digital input 3. Bit3: Digital input 4. Bit 4..7 are always zero.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = DigIO_getDigIO (pDigIO, &inputs);
{
cout << "Digital In 1: " <<
((inputs & CrossControl::DigitalIn_1) ? "High" : "Low") << endl;
cout << "Digital In 2: " <<
((inputs & CrossControl::DigitalIn_2) ? "High" : "Low") << endl;
cout << "Digital In 3: " <<
((inputs & CrossControl::DigitalIn_3) ? "High" : "Low") << endl;
cout << "Digital In 4: " <<
((inputs & CrossControl::DigitalIn_4) ? "High" : "Low") << endl;
}
else
{
cout << "Unable to read digital input status." << endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::DigIO_release ( DIGIOHANDLE  )

Delete the DigIO object.

Supported Platform(s): XL, XM, XS, XA

Returns
-

Example Usage:

DIGIOHANDLE pDigIO = ::GetDigIO();
assert(pDigIO);
list_digital_inputs(pDigIO);
DigIO_release(pDigIO);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::DigIO_setDigIO ( DIGIOHANDLE  ,
unsigned char  state 
)

Set Digital outputs.

Supported Platform(s): XA, XS

Parameters
stateState of the four digital output pins. Bit0: Digital output 1. Bit1: Digital output 2. Bit2: Digital output 3. Bit3: Digital output 4. Bit 4..7 not used.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = DigIO_setDigIO (pDigIO, inputs);
{
cout << "Digital out set to the status read." << endl;
}
else
{
cout << "Unable to set digital output status." << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_getUpgradeStatus ( FIRMWAREUPGHANDLE  ,
UpgradeStatus *  status,
bool  blocking 
)

Gets the status of an upgrade operation. The upgrade status is common for all upgrade and verification methods.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusThe current status of the upgrade operation.
blockingWhether or not the function should wait until a new status event has been reported. If blocking is set to false, the function will return immediately with the current status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_release ( FIRMWAREUPGHANDLE  )

Delete the FirmwareUpgrade object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

FirmwareUpgrade_release(pFirmwareUpgrade);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_shutDown ( FIRMWAREUPGHANDLE  )

Shut down the operating system.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_startFpgaUpgrade ( FIRMWAREUPGHANDLE  ,
const char *  filename,
bool  blocking 
)

Start an upgrade of the FPGA. After a FPGA upgrade, the system should be shut down. Full functionality of the system cannot be guaranteed until a fresh startup has been performed.

Supported Platform(s): XL, XM, XS, XA

Parameters
filenamePath and filename to the .mcs file to program.
blockingWhether or not the function should wait until completion. If blocking is set to false, the function will return immediately. One must then call getUpgradeStatus to get the status of the upgrade operation. If blocking is set to true, the function will return when the operation is complete. This might take a few minutes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Upgrading FPGA" << endl;
for(int i=0;i<max_retries;i++)
{
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFpgaUpgrade(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFpgaVerification(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
}
else
{
cout << "Error " << err << " in function startFpgaUpgrade: " << GetErrorStringA(err) << std::endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_startFpgaVerification ( FIRMWAREUPGHANDLE  ,
const char *  filename,
bool  blocking 
)

Start a verification of the FPGA. Verifies the FPGA against the file to program. This could be useful if verification during programming fails.

Supported Platform(s): XL, XM, XS, XA

Parameters
filenamePath and filename to the .mcs file to verify against.
blockingWhether or not the function should wait until completion. If blocking is set to false, the function will return immediately. One must then call getUpgradeStatus to get the status of the operation. If blocking is set to true, the function will return when the operation is complete. This might take a few minutes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Upgrading FPGA" << endl;
for(int i=0;i<max_retries;i++)
{
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFpgaUpgrade(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFpgaVerification(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
}
else
{
cout << "Error " << err << " in function startFpgaUpgrade: " << GetErrorStringA(err) << std::endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_startFrontUpgrade ( FIRMWAREUPGHANDLE  ,
const char *  filename,
bool  blocking 
)

Start an upgrade of the front microprocessor. After a front upgrade, the system should be shut down. The front will not work until a fresh startup has been performed.

Supported Platform(s): XL, XM, XS, XA

Parameters
filenamePath and filename to the .hex file to program.
blockingWhether or not the function should wait until completion. If blocking is set to false, the function will return immediately. One must then call fpgaUpgradeStatus to get the status of the upgrade operation. If blocking is set to true, the function will return when the operation is complete. This might take a few minutes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Upgrading front" << endl;
for(int i=0;i<max_retries;i++)
{
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFrontUpgrade(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFrontVerification(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
}
else
{
cout << "Error " << err << " in function startFrontUpgrade: " << GetErrorStringA(err) << std::endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_startFrontVerification ( FIRMWAREUPGHANDLE  ,
const char *  filename,
bool  blocking 
)

Start a verification of the front microprocessor. Verifies the front microprocessor against the file to program. This could be useful if verification during programming fails.

Supported Platform(s): XL, XM, XS, XA

Parameters
filenamePath and filename to the .hex file to verify against.
blockingWhether or not the function should wait until completion. If blocking is set to false, the function will return immediately. One must then call getUpgradeStatus to get the status of the operation. If blocking is set to true, the function will return when the operation is complete. This might take a few minutes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Upgrading front" << endl;
for(int i=0;i<max_retries;i++)
{
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFrontUpgrade(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startFrontVerification(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
}
else
{
cout << "Error " << err << " in function startFrontUpgrade: " << GetErrorStringA(err) << std::endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_startSSUpgrade ( FIRMWAREUPGHANDLE  ,
const char *  filename,
bool  blocking 
)

Start an upgrade of the System Supervisor microprocessor (SS). After an SS upgrade, the system must be shut down. The SS handles functions for shutting down of the computer. In order to shut down after an upgrade, shut down the OS and then toggle the power. The backlight will still be on after the OS has shut down.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
filenamePath and filename to the .hex file to program.
blockingWhether or not the function should wait until completion. If blocking is set to false, the function will return immediately. One must then call fpgaUpgradeStatus to get the status of the upgrade operation. If blocking is set to true, the function will return when the operation is complete. This might take a few minutes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Upgrading SS" << endl;
for(int i=0;i<max_retries;i++)
{
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startSSUpgrade(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startSSVerification(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
}
else
{
cout << "Error " << err << " in function startSSUpgrade: " << GetErrorStringA(err) << std::endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FirmwareUpgrade_startSSVerification ( FIRMWAREUPGHANDLE  ,
const char *  filename,
bool  blocking 
)

Start a verification of the System Supervisor microprocessor (SS). Verifies the SS against the file to program. This could be useful if verification during programming fails.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
filenamePath and filename to the .hex file to verify against.
blockingWhether or not the function should wait until completion. If blocking is set to false, the function will return immediately. One must then call getUpgradeStatus to get the status of the operation. If blocking is set to true, the function will return when the operation is complete. This might take a few minutes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Upgrading SS" << endl;
for(int i=0;i<max_retries;i++)
{
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startSSUpgrade(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
// Reinitialize upgrade handle
FirmwareUpgrade_release(pFirmwareUpgrade);
pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
err = FirmwareUpgrade_startSSVerification(pFirmwareUpgrade, path.c_str(), true);
cout << "Upgrade Ok" << endl;
break;
}
}
else
{
cout << "Error " << err << " in function startSSUpgrade: " << GetErrorStringA(err) << std::endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getColor ( FRONTLEDHANDLE  ,
unsigned char *  red,
unsigned char *  green,
unsigned char *  blue 
)

Get front LED color mix.

Supported Platform(s): XL, XM, XS, XA, VC On the VC platform - the blue parameter gets the button backlight intensity (0-15)

Parameters
redRed color intensity 0-0x0F.
greenGreen color intensity 0-0x0F.
blueBlue color intensity 0-0x0F.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_getColor(pFrontLED, &red, &green, &blue);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function getColor: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getEnabledDuringStartup ( FRONTLEDHANDLE  ,
CCStatus *  status 
)

Is the front LED enabled during startup? If enabled, the LED will blink yellow to indicate startup progress. It will turn green once the OS has started.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusLED Enabled or Disabled during startup.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getIdleTime ( FRONTLEDHANDLE  ,
unsigned char *  idleTime 
)

Get front LED idle time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
idleTimeTime in 100ms increments.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getNrOfPulses ( FRONTLEDHANDLE  ,
unsigned char *  nrOfPulses 
)

Get number of pulses during a blink sequence.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
nrOfPulsesNumber of pulses.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getOffTime ( FRONTLEDHANDLE  ,
unsigned char *  offTime 
)

Get front LED off time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
offTimeTime in 10ms increments.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getOnTime ( FRONTLEDHANDLE  ,
unsigned char *  onTime 
)

Get front LED on time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
onTimeTime in 10ms increments. 0 = off
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getSignal ( FRONTLEDHANDLE  ,
double *  frequency,
unsigned char *  dutyCycle 
)

Get front LED signal. Note, the values may vary from previously set values with setSignal. This is due to precision-loss in approximations.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
frequencyLED blink frequency (0.2-50 Hz).
dutyCycleLED on duty cycle (0-100%).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_getSignal(pFrontLED, &freq, &dutycycle);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function getSignal: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_getStandardColor ( FRONTLEDHANDLE  ,
CCAuxColor *  color 
)

Get front LED color from a set of standard colors. If the color is not one of the predefined colors, UNDEFINED_COLOR will be returned. It is not recommended to use this function on the VC platform.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
colorColor from CCAuxColor enum.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::FrontLED_release ( FRONTLEDHANDLE  )

Delete the FrontLED object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pFrontLED);
led_example(pFrontLED);
FrontLED_release(pFrontLED);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setColor ( FRONTLEDHANDLE  ,
unsigned char  red,
unsigned char  green,
unsigned char  blue 
)

Set front LED color mix.

Supported Platform(s): XL, XM, XS, XA, VC On the VC platform - use the blue parameter to set the button backlight intensity (0-15)

Parameters
redRed color intensity 0-0x0F.
greenGreen color intensity 0-0x0F.
blueBlue color intensity 0-0x0F.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_setColor(pFrontLED, red, green, blue);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setColor: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setEnabledDuringStartup ( FRONTLEDHANDLE  ,
CCStatus  status 
)

Should the front LED be enabled during startup? If enabled, the LED will blink yellow to indicate startup progress. It will turn green once the OS has started.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusEnable or Disable the LED during startup.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setIdleTime ( FRONTLEDHANDLE  ,
unsigned char  idleTime 
)

Get front LED idle time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
idleTimeTime in 100ms.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setNrOfPulses ( FRONTLEDHANDLE  ,
unsigned char  nrOfPulses 
)

Set front LED number of pulses during a blink sequence.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
nrOfPulsesNumber of pulses.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setOff ( FRONTLEDHANDLE  )

Set front LED off.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setOffTime ( FRONTLEDHANDLE  ,
unsigned char  offTime 
)

Set front LED off time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
offTimeTime in 10ms increments.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_setOffTime(pFrontLED, 25);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setOfftime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setOnTime ( FRONTLEDHANDLE  ,
unsigned char  onTime 
)

Set front LED on time.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
onTimeTime in 10ms increments. 0 = off
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_setOnTime(pFrontLED, 25);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setOnTime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setSignal ( FRONTLEDHANDLE  ,
double  frequency,
unsigned char  dutyCycle 
)

Set front LED signal.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
frequencyLED blink frequency (0.2-50 Hz).
dutyCycleLED on duty cycle (0-100%).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_setSignal(pFrontLED, freq, dutycycle);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setSignal: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::FrontLED_setStandardColor ( FRONTLEDHANDLE  ,
CCAuxColor  color 
)

Set one of the front LED standard colors. It is not recommended to use this function on the VC platform.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
colorColor from CCAuxColor enum.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = FrontLED_setStandardColor(pFrontLED, RED);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setStandardColor: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API ABOUTHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetAbout ( void  )

Factory function that creates instances of the About object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
ABOUTHANDLE to an allocated About object. The returned handle needs to be deallocated using the About_release(ABOUTHANDLE) method when it's no longer needed.

Returns NULL if it fails to allocate memory.

Example Usage:

ABOUTHANDLE pAbout = ::GetAbout();
assert(pAbout);
list_about_information(pAbout);
About_release(pAbout);
EXTERN_C CCAUXDLL_API ADCHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetAdc ( void  )

Factory function that creates instances of the Adc object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
ADCHANDLE to an allocated Adc object. The returned handle needs to be deallocated using the Adc_release(ADCHANDLE) method when it's no longer needed.

Returns NULL if it fails to allocate memory.

Example Usage:

ADCHANDLE pAdc = ::GetAdc();
assert(pAdc);
output_voltage (pAdc, "24VIN", CrossControl::VOLTAGE_24VIN);
output_voltage (pAdc, "24V", CrossControl::VOLTAGE_24V);
output_voltage (pAdc, "12V", CrossControl::VOLTAGE_12V);
output_voltage (pAdc, "12VID", CrossControl::VOLTAGE_12VID);
output_voltage (pAdc, "5V", CrossControl::VOLTAGE_5V);
output_voltage (pAdc, "3V3", CrossControl::VOLTAGE_3V3);
output_voltage (pAdc, "VTFT", CrossControl::VOLTAGE_VTFT);
output_voltage (pAdc, "5VSTB", CrossControl::VOLTAGE_5VSTB);
output_voltage (pAdc, "1V9", CrossControl::VOLTAGE_1V9);
output_voltage (pAdc, "1V8", CrossControl::VOLTAGE_1V8);
output_voltage (pAdc, "1V5", CrossControl::VOLTAGE_1V5);
output_voltage (pAdc, "1V2", CrossControl::VOLTAGE_1V2);
output_voltage (pAdc, "1V05", CrossControl::VOLTAGE_1V05);
output_voltage (pAdc, "1V0", CrossControl::VOLTAGE_1V0);
output_voltage (pAdc, "0V9", CrossControl::VOLTAGE_0V9);
output_voltage (pAdc, "VREF_INT", CrossControl::VOLTAGE_VREF_INT);
output_voltage (pAdc, "24V_BACKUP", CrossControl::VOLTAGE_24V_BACKUP);
output_voltage (pAdc, "2V5", CrossControl::VOLTAGE_2V5);
output_voltage (pAdc, "1V1", CrossControl::VOLTAGE_1V1);
output_voltage (pAdc, "1V3_PER", CrossControl::VOLTAGE_1V3_PER);
output_voltage (pAdc, "1V3_VDDA", CrossControl::VOLTAGE_1V3_VDDA);
output_voltage (pAdc, "3V3 STBY", CrossControl::VOLTAGE_3V3STBY);
output_voltage (pAdc, "VPMIC", CrossControl::VOLTAGE_VPMIC);
output_voltage (pAdc, "VMAIN", CrossControl::VOLTAGE_VMAIN);
Adc_release(pAdc);
EXTERN_C CCAUXDLL_API AUXVERSIONHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetAuxVersion ( void  )

Factory function that creates instances of the AuxVersion object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
AUXVERSIONHANDLE to an allocated AuxVersion object. The returned handle needs to be deallocated using the AuxVersion_release(AUXVERSIONHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert (pAuxVersion);
output_versions(pAuxVersion);
AuxVersion_release(pAuxVersion);
EXTERN_C CCAUXDLL_API BACKLIGHTHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetBacklight ( void  )

Factory function that creates instances of the Backlight object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
BACKLIGHTHANDLE to an allocated Backlight object. The returned handle needs to be deallocated using the Backlight_release(BACKLIGHTHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pBacklight);
change_backlight(pBacklight);
Backlight_release(pBacklight);
EXTERN_C CCAUXDLL_API BATTERYHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetBattery ( void  )

Factory function that creates instances of the Battery object.

Supported Platform(s): XM

Returns
BATTERYHANDLE to an allocated battery object. The returned handle needs to be deallocated using the Battery_release(BATTERYHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pBattery);
readBatteryInfo(pBattery);
Battery_release(pBattery);
EXTERN_C CCAUXDLL_API BUZZERHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetBuzzer ( void  )

Factory function that creates instances of the Buzzer object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
BUZZERHANDLE to an allocated Buzzer object. The returned handle needs to be deallocated using the Buzzer_release(BUZZERHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pBuzzer);
play_beeps(pBuzzer);
Buzzer_release(pBuzzer);
EXTERN_C CCAUXDLL_API CANSETTINGHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetCanSetting ( void  )

Factory function that creates instances of the CanSetting object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
CANSETTINGHANDLE to an allocated CanSetting object. The returned handle needs to be deallocated using the CanSetting_release(CANSETTINGHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pCanSetting);
read_cansettings(pCanSetting);
CanSetting_release(pCanSetting);
EXTERN_C CCAUXDLL_API CFGINHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetCfgIn ( void  )

Factory function that creates instances of the CfgIn object.

Supported Platform(s): VC

Returns
CFGINHANDLE to an allocated CfgIn object. The returned handle needs to be deallocated using the CfgIn_release(CFGINHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

CFGINHANDLE pCfgIn = ::GetCfgIn();
assert(pCfgIn);
cfgin_example(pCfgIn);
CfgIn_release(pCfgIn);
EXTERN_C CCAUXDLL_API CONFIGHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetConfig ( )

Video channel 4 config

Factory function that creates instances of the Config object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
CONFIGHANDLE to an allocated Config object. The returned handle needs to be deallocated using the Config_release(CONFIGHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pConfig);
conf_example(pConfig);
Config_release(pConfig);
EXTERN_C CCAUXDLL_API DIAGNOSTICHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetDiagnostic ( void  )

Factory function that creates instances of the Diagnostic object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
DIAGNOSTICHANDLE to an allocated Diagnostic object. The returned handle needs to be deallocated using the Diagnostic_release(DIAGNOSTICHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pDiagnostic);
diagnostic_example(pDiagnostic);
Diagnostic_release(pDiagnostic);
EXTERN_C CCAUXDLL_API DIGIOHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetDigIO ( void  )

Factory function that creates instances of the DigIO object.

Supported Platform(s): XL, XM, XS, XA

Returns
DIGIOHANDLE to an allocated DigIO object. The returned handle needs to be deallocated using the DigIO_release(DIGIOHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

DIGIOHANDLE pDigIO = ::GetDigIO();
assert(pDigIO);
list_digital_inputs(pDigIO);
DigIO_release(pDigIO);
EXTERN_C CCAUXDLL_API char const* CCAUXDLL_CALLING_CONV CrossControl::GetErrorStringA ( eErr  errCode)

to get a string description.

Get a string description of an error code.

Supported Platform(s): XL, XM, XS, XA

Parameters
errCodeAn error code for which to get a string description.
Returns
String description of an error code.
EXTERN_C CCAUXDLL_API wchar_t const* CCAUXDLL_CALLING_CONV CrossControl::GetErrorStringW ( eErr  errCode)

Get a string description of an error code.

Supported Platform(s): XL, XM, XS, XA

Parameters
errCodeAn error code for which
Returns
String description of an error code.
EXTERN_C CCAUXDLL_API FIRMWAREUPGHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetFirmwareUpgrade ( void  )

Factory function that creates instances of the FirmwareUpgrade object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
FIRMWAREUPGHANDLE to an allocated FirmwareUpgrade object. The returned handle needs to be deallocated using the FirmwareUpgrade_release(FIRMWAREUPGHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

FIRMWAREUPGHANDLE pFirmwareUpgrade = GetFirmwareUpgrade();
assert(pFirmwareUpgrade != NULL);
EXTERN_C CCAUXDLL_API FRONTLEDHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetFrontLED ( void  )

Factory function that creates instances of the FrontLED object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
FRONTLEDHANDLE to an allocated FrontLED object. The returned handle needs to be deallocated using the FrontLED_release(FRONTLEDHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pFrontLED);
led_example(pFrontLED);
FrontLED_release(pFrontLED);
EXTERN_C CCAUXDLL_API char const* CCAUXDLL_CALLING_CONV CrossControl::GetHwErrorStatusStringA ( unsigned short  errCode)

Get a string description of an error code returned from getHwErrorStatus.

Parameters
errCodeAn error code for which to get a string description.
Returns
String description of an error code.
EXTERN_C CCAUXDLL_API wchar_t const* CCAUXDLL_CALLING_CONV CrossControl::GetHwErrorStatusStringW ( unsigned short  errCode)

Get a string description of an error code returned from getHwErrorStatus.

Parameters
errCodeAn error code for which to get a string description.
Returns
String description of an error code.
EXTERN_C CCAUXDLL_API LIGHTSENSORHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetLightsensor ( void  )

Factory function that creates instances of the Lightsensor object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
LIGHTSENSORHANDLE to an allocated Lightsensor object. The returned handle needs to be deallocated using the Lightsensor_release(LIGHTSENSORHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pLightSensor);
ls_example(pLightSensor);
Lightsensor_release(pLightSensor);
EXTERN_C CCAUXDLL_API POWERHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetPower ( void  )

Factory function that creates instances of the Power object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
POWERHANDLE to an allocated Power object. The returned handle needs to be deallocated using the Power_release(POWERHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

POWERHANDLE pPower = ::GetPower();
assert(pPower);
power_example(pPower);
Power_release(pPower);
EXTERN_C CCAUXDLL_API POWERMGRHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetPowerMgr ( void  )

Factory function that creates instances of the PowerMgr object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
POWERMGRHANDLE to an allocated PowerMgr structure. The returned handle needs to be deallocated using the PowerMgr::Release() method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pPowerMgr);
assert(pBattery);
// Register a separate exit handler for the case where OS is initiating the shutdown. The Application must handle this case itself.
atexit(fnExit);
bool bBatt = false;
Battery_isBatteryPresent(pBattery, &bBatt);
if(bBatt) // Ask user wich configuration to use...
cout << "Choose configuration to use, 0 - Normal, 1 - Application Controlled , 2 - Battery Suspend" << endl;
else
cout << "Choose configuration to use, 0 - Normal, 1 - Application Controlled" << endl;
cin >> suspendConfiguration;
Battery_release(pBattery);
// Register that this application needs to delay suspend/shutdown
// This should be done as soon as possible.
// Then the app must poll getPowerMgrStatus() and allow the suspend/shutdown with setAppReadyForSuspendOrShutdown().
// Depending on application design, this might be best handled in a separate thread.
err = PowerMgr_registerControlledSuspendOrShutDown(pPowerMgr, (PowerMgrConf) suspendConfiguration);
cout << "suspendConfiguration " << suspendConfiguration << endl;
if(err == ERR_SUCCESS)
cout << "Registered to powerMgr." << endl;
else
cout << "Error(" << err << ") in function registerControlledSuspendOrShutDown: " << GetErrorStringA(err) << endl;
test_powermgr(pPowerMgr);
PowerMgr_release(pPowerMgr);
EXTERN_C CCAUXDLL_API PWMOUTHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetPWMOut ( void  )

Factory function that creates instances of the PWMOut object.

Supported Platform(s): VC

Returns
PWMOUTHANDLE to an allocated PWMOut object. The returned handle needs to be deallocated using the PWMOut_release(PWMOUTHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pPwmOut);
pwmout_example(pPwmOut);
PWMOut_release(pPwmOut);
EXTERN_C CCAUXDLL_API SMARTHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetSmart ( void  )

Factory function that creates instances of the Smart object.

Supported Platform(s): XL, XM

Returns
SMARTHANDLE to an allocated AuxVersion structure. The returned handle needs to be deallocated using the Smart::Release() method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

SMARTHANDLE pSmart = ::GetSmart();
assert(pSmart);
show_card_data(pSmart);
Smart_release(pSmart);
EXTERN_C CCAUXDLL_API char const* CCAUXDLL_CALLING_CONV CrossControl::GetStartupReasonStringA ( unsigned short  code)

Get a string description of a startup reason code returned from getStartupReason.

Parameters
codeA code for which to get a string description.
Returns
String description of a code.
EXTERN_C CCAUXDLL_API wchar_t const* CCAUXDLL_CALLING_CONV CrossControl::GetStartupReasonStringW ( unsigned short  code)

Get a string description of a startup reason code returned from getStartupReason.

Parameters
codeA code for which to get a string description.
Returns
String description of a code.
EXTERN_C CCAUXDLL_API TELEMATICSHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetTelematics ( void  )

Factory function that creates instances of the Telematics object.

Supported Platform(s): XM, XA, XS

Returns
TELEMATICSHANDLE to an allocated Telematics object. The returned handle needs to be deallocated using the Telematics_release(TELEMATICSHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pTelematics);
telematics_example(pTelematics);
Telematics_release(pTelematics);
EXTERN_C CCAUXDLL_API TOUCHSCREENHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetTouchScreen ( void  )

Factory function that creates instances of the TouchScreen object.

Supported Platform(s): XL, XM, XS, XA

Returns
TOUCHSCREENHANDLE to an allocated TouchScreen object. The returned handle needs to be deallocated using the TouchScreen_release(TOUCHSCREENHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.

Example Usage:

assert(pTouchScreen);
touchscreen_example(pTouchScreen);
TouchScreen_release(pTouchScreen);
EXTERN_C CCAUXDLL_API TOUCHSCREENCALIBHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetTouchScreenCalib ( void  )

Factory function that creates instances of the TouchScreenCalib object.

Supported Platform(s): XL, XM, XS, XA

Returns
TOUCHSCREENCALIBHANDLE to an allocated TouchScreenCalib object. The returned handle needs to be deallocated using the TouchScreenCalib_release(TOUCHSCREENCALIBHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.
EXTERN_C CCAUXDLL_API VIDEOHANDLE CCAUXDLL_CALLING_CONV CrossControl::GetVideo ( void  )

Factory function that creates instances of the Video object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
VIDEOHANDLE to an allocated Video object. The returned handle needs to be deallocated using the Video_release(VIDEOHANDLE) method when it's no longer needed. Returns NULL if it fails to allocate memory.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_getAverageIlluminance ( LIGHTSENSORHANDLE  ,
unsigned short *  value 
)

Get average illuminance (light) value from light sensor.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
valueIlluminance value (Lux).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Lightsensor_getAverageIlluminance(pLightSensor, &value);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function getAverageIlluminance: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_getIlluminance ( LIGHTSENSORHANDLE  ,
unsigned short *  value 
)

Get illuminance (light) value from light sensor.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
valueIlluminace value (Lux).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Lightsensor_getIlluminance(pLightSensor, &value);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function getIlluminance: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_getIlluminance2 ( LIGHTSENSORHANDLE  ,
unsigned short *  value,
unsigned char *  ch0,
unsigned char *  ch1 
)

Get illuminance (light) value from light sensor. The parameters cho and ch1 are raw ADC values read from a TAOS TSL2550 lightsensor.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
valueIlluminance value (Lux).
ch0Channel0 value. (Not applicable on VC platform - always 0)
ch1Channel1 value. (Not applicable on VC platform - always 0)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_getOperatingRange ( LIGHTSENSORHANDLE  ,
LightSensorOperationRange *  range 
)

Get operating range. The light sensor can operate in two ranges. Standard and extended range. In standard range, the range is smaller but resolution higher. See the TSL2550 data sheet for more information. On the VC platform, the ranges correspond to 1000 and 4000 lux maximum value.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
rangeOperating range. RangeStandard or RangeExtended.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_release ( LIGHTSENSORHANDLE  )

Delete the Lightsensor object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pLightSensor);
ls_example(pLightSensor);
Lightsensor_release(pLightSensor);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_setOperatingRange ( LIGHTSENSORHANDLE  ,
LightSensorOperationRange  range 
)

Set operating range. The light sensor can operate in two ranges. Standard and extended range. In standard range, the range is smaller but resolution higher. See the TSL2550 data sheet for more information. On the VC platform, the ranges correspond to 1000 and 4000 lux maximum value.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
rangeOperating range to set. RangeStandard or RangeExtended.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_startAverageCalc ( LIGHTSENSORHANDLE  ,
unsigned long  averageWndSize,
unsigned long  rejectWndSize,
unsigned long  rejectDeltaInLux,
LightSensorSamplingMode  mode 
)

Start average calculation.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
averageWndSizeThe average window size in nr of samples.
rejectWndSizeThe reject window size in nr of samples.
rejectDeltaInLuxThe reject delta in lux.
modeThe configured sampling mode.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

// Start the average calculation background function
// This cannot be used if the automatic backlihgt function is running.
err = Lightsensor_startAverageCalc(pLightSensor, 5, 5, 50, SamplingModeAuto);
{
cout << "Error(" << err << ") in function startAverageCalc: " << GetErrorStringA(err) << endl;
cout << endl << "Please turn off Automatic backlight! (CCsettings - Display tab)" << endl;
return;
}
else if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function startAverageCalc: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Lightsensor_stopAverageCalc ( LIGHTSENSORHANDLE  )

Stop average calculation.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Lightsensor_stopAverageCalc(pLightSensor);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function stopAverageCalc: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_ackPowerRequest ( POWERHANDLE  )

Acknowledge a power request from the system supervisor. This is handled by the service/daemon and should normally not be used by applications unless the CrossControl service/daemon is not being run on the system. If that is the case, the following requests (read by getButtonPowerTransitionStatus) should be acknowledged: BPTS_ShutDown, BPTS_Suspend and BPTS_Restart

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getBLPowerStatus ( POWERHANDLE  ,
CCStatus *  status 
)

Get backlight power status.

Supported Platform(s): XL, XM

Parameters
statusBacklight power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Power_getBLPowerStatus(pPower, &status);
if(err == ERR_SUCCESS)
{
cout << "Backlight power is " << ((status == Enabled)? "ON" : "OFF") << endl;
}
else
{
cout << "Error(" << err << ") in function Power_getBLPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getButtonPowerTransitionStatus ( POWERHANDLE  ,
ButtonPowerTransitionStatus *  status 
)

Get the current status for front panel button and on/off signal.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusThe current status. See the definition of ButtonPowerTransitionStatus for details.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getCanOCDStatus ( POWERHANDLE  ,
OCDStatus *  status 
)

Get Can power overcurrent detection status. Find out if the Can power supervision has detected overcurrent, likely caused by short circuit problems. The overcurrent detection system will immediately turn of the power if such a condition occurs. If the overcurrent remains, Can power is turned off permanently until the unit is restarted. Up to 5 consecutive over-current conditions needed until power is turned off completely. If application software turns off and on the power, the failure counter will be reset.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusThe current overcurrent detection status
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Checking overcurrent status... " << endl;
OCDStatus ocdstatus;
err = Power_getCanOCDStatus(pPower, &ocdstatus);
if(err == ERR_NOT_SUPPORTED)
{
cout << "Not supported." << endl;
}
else if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function Power_getCanOCDStatus: " << GetErrorStringA(err) << endl;
}
else
{
cout << "Power_getCanOCDStatus: Can OCD status is: ";
switch(ocdstatus)
{
case OCD_OK: cout << "OCD_OK" << std::endl; break;
case OCD_OC: cout << "OCD_OC" << std::endl; break;
case OCD_POWER_OFF: cout << "OCD_POWER_OFF" << std::endl; break;
default: cout << "ERROR" << std::endl; break;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getCanPowerStatus ( POWERHANDLE  ,
CCStatus *  status 
)

Get can power status.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusCan power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getExtFanPowerStatus ( POWERHANDLE  ,
CCStatus *  status 
)

Get external fan power status.

Supported Platform(s): XL, XM

Parameters
statusFan power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getVideoOCDStatus ( POWERHANDLE  ,
OCDStatus *  status 
)

Get Video power overcurrent detection status. Find out if the video power supervision has detected overcurrent, likely caused by short circuit problems. The overcurrent detection system will immediately turn of the power if such a condition occurs. If the overcurrent remains, video power is turned off permanently until the unit is restarted. Up to 5 consecutive over-current conditions needed until power is turned off completely. If application software turns off and on the power, the failure counter will be reset.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusThe current overcurrent detection status
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Power_getVideoOCDStatus(pPower, &ocdstatus);
if(err == ERR_NOT_SUPPORTED)
{
/* Don't print anything */
}
else
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function Power_getVideoOCDStatus: " << GetErrorStringA(err) << endl;
}
else
{
cout << "Power_getVideoOCDStatus: Video OCD status is: ";
switch(ocdstatus)
{
case OCD_OK: cout << "OCD_OK" << std::endl; break;
case OCD_OC: cout << "OCD_OC" << std::endl; break;
case OCD_POWER_OFF: cout << "OCD_POWER_OFF" << std::endl; break;
default: cout << "ERROR" << std::endl; break;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_getVideoPowerStatus ( POWERHANDLE  ,
unsigned char *  videoStatus 
)

Get Video power status.

Supported Platform(s): XL, XM, XS, XA

Parameters
videoStatusVideo power status. Bit0: Video 1. Bit1: Video 2. Bit2: Video 3. Bit3: Video 4. (1=on, 0=off)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Power_getVideoPowerStatus(pPower, &value);
if(err == ERR_SUCCESS)
{
cout << "Video power status: " << endl;
cout << "Video1: " << ((value & 0x01)? "ON" : "OFF") << endl;
cout << "Video2: " << ((value & 0x02)? "ON" : "OFF") << endl;
cout << "Video3: " << ((value & 0x04)? "ON" : "OFF") << endl;
cout << "Video4: " << ((value & 0x08)? "ON" : "OFF") << endl;
}
else
{
cout << "Error(" << err << ") in function Power_getVideoPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Power_release ( POWERHANDLE  )

Delete the Power object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

POWERHANDLE pPower = ::GetPower();
assert(pPower);
power_example(pPower);
Power_release(pPower);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_setBLPowerStatus ( POWERHANDLE  ,
CCStatus  status 
)

Set backlight power status.

Supported Platform(s): XL, XM

Parameters
statusBacklight power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

cout << "Blinking backlight... " << endl;
cin.sync();
cout << endl << "Press Enter to to turn off the Backlight and then Enter to turn it on again..." << endl;
cin.get();
cin.sync();
cin.get();
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function Power_setBLPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_setCanPowerStatus ( POWERHANDLE  ,
CCStatus  status 
)

Set can power status.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusCan power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_setExtFanPowerStatus ( POWERHANDLE  ,
CCStatus  status 
)

Set external fan power status.

Supported Platform(s): XL, XM

Parameters
statusFan power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Power_setVideoPowerStatus ( POWERHANDLE  ,
unsigned char  status 
)

Set Video power status.

Supported Platform(s): XL, XM, XS, XA

Parameters
statusVideo power status. Bit0: Video 1. Bit1: Video 2. Bit2: Video 3. Bit3: Video 4. (1=on, 0=off)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PowerMgr_getConfiguration ( POWERMGRHANDLE  ,
PowerMgrConf *  conf 
)

Get the configuration that is in use.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
confThe configuration in use.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = PowerMgr_getConfiguration(pPowerMgr, &conf);
if(err == ERR_SUCCESS)
{
switch (conf)
{
case Normal:
cout << "PowerMgrConf is now: Normal" << endl; break;
cout << "PowerMgrConf is now: ApplicationControlled" << endl; break;
cout << "PowerMgrConf is now: BatterySuspend" << endl; break;
}
}
else
{
cout << "Error(" << err << ") in function getConfiguration: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PowerMgr_getPowerMgrStatus ( POWERMGRHANDLE  ,
PowerMgrStatus *  status 
)

Get the current status of the PowerMgr. This functions should be called periodically, to detect when suspend or shutdown requests arrive.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusThe current status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

while(1)
{
OSSleep(500);
err = PowerMgr_getPowerMgrStatus(pPowerMgr, &status);
if(err == ERR_SUCCESS)
{
switch(status)
{
case NoRequestsPending: // Wait until a PowerMgr request arrives...
break;
{
// Shutdown by means of power button or on/off signal are caught here.
os_shutdown = false;
cout << "A shutdown request detected. App should now do what it needs to do before shutdown can be performed." << endl;
cout << "Press Enter when ready to shutdown... " << endl;
// Make sure to clear cin buffer before read
std::cin.clear();
std::cin.ignore(100,'\n');
cin.get();
cout << "Signalling that app is ready..." << endl;
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setAppReadyForSuspendOrShutdown: " << GetErrorStringA(err) << endl;
}
return; //exit test appp
}
{
os_shutdown = false;
cout << "A suspend request detected. App should now do what it needs to do before suspend can be performed." << endl;
cout << "Press Enter when ready to suspend... " << endl;
// Make sure to clear cin buffer before read
std::cin.clear();
std::cin.ignore(100,'\n');
cin.get();
cout << "Signalling that app is ready..." << endl;
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setAppReadyForSuspendOrShutdown: " << GetErrorStringA(err) << endl;
}
}
break;
default:
cout << "Error: Invalid status returned from getPowerMgrStatus!" << endl;
break;
}
//Wait for resume after notifying that we are ready to suspend
if(status == SuspendPending)
{
bool b = false;
while(!b)
{
OSSleep(100);
cout << "." << endl;
err = PowerMgr_hasResumed(pPowerMgr, &b);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function hasResumed: " << GetErrorStringA(err) << endl;
}
}
cout << "System is now resumed from suspend mode!" << endl <<
"Now we will soon re-register using the registerControlledSuspendOrShutDown function!" << endl;
// Expecting to get configuration Normal after resume from suspend
err = PowerMgr_getConfiguration(pPowerMgr, &conf);
if(err == ERR_SUCCESS)
{
switch (conf)
{
case Normal:
cout << "PowerMgrConf is now: Normal" << endl; break;
cout << "PowerMgrConf is now: ApplicationControlled" << endl; break;
cout << "PowerMgrConf is now: BatterySuspend" << endl; break;
}
}
else
{
cout << "Error(" << err << ") in function getConfiguration: " << GetErrorStringA(err) << endl;
}
// Re-register, do this as soon as possible after resume/startup
PowerMgr_registerControlledSuspendOrShutDown(pPowerMgr, setConfiguration);
if(err == ERR_SUCCESS)
cout << "Re-registered to powerMgr. Ctrl-C to exit." << endl;
else
cout << "Error(" << err << ") in function registerControlledSuspendOrShutDown: " << GetErrorStringA(err) << endl;
}
}
else
{
cout << "Error(" << err << ") in function getPowerMgrStatus: " << GetErrorStringA(err) << endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PowerMgr_hasResumed ( POWERMGRHANDLE  ,
bool *  resumed 
)

This function can be used in a suspend-resume scenario. After the application has used setAppReadyForSuspendOrShutdown() to init the suspend, this function may be polled in order to detect when the system is up and running again. Calling this function before calling setAppReadyForSuspendOrShutdown will return resumed = true.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

while(1)
{
OSSleep(500);
err = PowerMgr_getPowerMgrStatus(pPowerMgr, &status);
if(err == ERR_SUCCESS)
{
switch(status)
{
case NoRequestsPending: // Wait until a PowerMgr request arrives...
break;
{
// Shutdown by means of power button or on/off signal are caught here.
os_shutdown = false;
cout << "A shutdown request detected. App should now do what it needs to do before shutdown can be performed." << endl;
cout << "Press Enter when ready to shutdown... " << endl;
// Make sure to clear cin buffer before read
std::cin.clear();
std::cin.ignore(100,'\n');
cin.get();
cout << "Signalling that app is ready..." << endl;
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setAppReadyForSuspendOrShutdown: " << GetErrorStringA(err) << endl;
}
return; //exit test appp
}
{
os_shutdown = false;
cout << "A suspend request detected. App should now do what it needs to do before suspend can be performed." << endl;
cout << "Press Enter when ready to suspend... " << endl;
// Make sure to clear cin buffer before read
std::cin.clear();
std::cin.ignore(100,'\n');
cin.get();
cout << "Signalling that app is ready..." << endl;
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setAppReadyForSuspendOrShutdown: " << GetErrorStringA(err) << endl;
}
}
break;
default:
cout << "Error: Invalid status returned from getPowerMgrStatus!" << endl;
break;
}
//Wait for resume after notifying that we are ready to suspend
if(status == SuspendPending)
{
bool b = false;
while(!b)
{
OSSleep(100);
cout << "." << endl;
err = PowerMgr_hasResumed(pPowerMgr, &b);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function hasResumed: " << GetErrorStringA(err) << endl;
}
}
cout << "System is now resumed from suspend mode!" << endl <<
"Now we will soon re-register using the registerControlledSuspendOrShutDown function!" << endl;
// Expecting to get configuration Normal after resume from suspend
err = PowerMgr_getConfiguration(pPowerMgr, &conf);
if(err == ERR_SUCCESS)
{
switch (conf)
{
case Normal:
cout << "PowerMgrConf is now: Normal" << endl; break;
cout << "PowerMgrConf is now: ApplicationControlled" << endl; break;
cout << "PowerMgrConf is now: BatterySuspend" << endl; break;
}
}
else
{
cout << "Error(" << err << ") in function getConfiguration: " << GetErrorStringA(err) << endl;
}
// Re-register, do this as soon as possible after resume/startup
PowerMgr_registerControlledSuspendOrShutDown(pPowerMgr, setConfiguration);
if(err == ERR_SUCCESS)
cout << "Re-registered to powerMgr. Ctrl-C to exit." << endl;
else
cout << "Error(" << err << ") in function registerControlledSuspendOrShutDown: " << GetErrorStringA(err) << endl;
}
}
else
{
cout << "Error(" << err << ") in function getPowerMgrStatus: " << GetErrorStringA(err) << endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PowerMgr_registerControlledSuspendOrShutDown ( POWERMGRHANDLE  ,
PowerMgrConf  conf 
)

Configure the PowerMgr. Call this function once initially to turn on the functionality.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
confThe configuration to use.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

assert(pPowerMgr);
assert(pBattery);
// Register a separate exit handler for the case where OS is initiating the shutdown. The Application must handle this case itself.
atexit(fnExit);
bool bBatt = false;
Battery_isBatteryPresent(pBattery, &bBatt);
if(bBatt) // Ask user wich configuration to use...
cout << "Choose configuration to use, 0 - Normal, 1 - Application Controlled , 2 - Battery Suspend" << endl;
else
cout << "Choose configuration to use, 0 - Normal, 1 - Application Controlled" << endl;
cin >> suspendConfiguration;
Battery_release(pBattery);
// Register that this application needs to delay suspend/shutdown
// This should be done as soon as possible.
// Then the app must poll getPowerMgrStatus() and allow the suspend/shutdown with setAppReadyForSuspendOrShutdown().
// Depending on application design, this might be best handled in a separate thread.
err = PowerMgr_registerControlledSuspendOrShutDown(pPowerMgr, (PowerMgrConf) suspendConfiguration);
cout << "suspendConfiguration " << suspendConfiguration << endl;
if(err == ERR_SUCCESS)
cout << "Registered to powerMgr." << endl;
else
cout << "Error(" << err << ") in function registerControlledSuspendOrShutDown: " << GetErrorStringA(err) << endl;
test_powermgr(pPowerMgr);
PowerMgr_release(pPowerMgr);
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::PowerMgr_release ( POWERMGRHANDLE  )

Delete the PowerMgr object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-

Example Usage:

assert(pPowerMgr);
assert(pBattery);
// Register a separate exit handler for the case where OS is initiating the shutdown. The Application must handle this case itself.
atexit(fnExit);
bool bBatt = false;
Battery_isBatteryPresent(pBattery, &bBatt);
if(bBatt) // Ask user wich configuration to use...
cout << "Choose configuration to use, 0 - Normal, 1 - Application Controlled , 2 - Battery Suspend" << endl;
else
cout << "Choose configuration to use, 0 - Normal, 1 - Application Controlled" << endl;
cin >> suspendConfiguration;
Battery_release(pBattery);
// Register that this application needs to delay suspend/shutdown
// This should be done as soon as possible.
// Then the app must poll getPowerMgrStatus() and allow the suspend/shutdown with setAppReadyForSuspendOrShutdown().
// Depending on application design, this might be best handled in a separate thread.
err = PowerMgr_registerControlledSuspendOrShutDown(pPowerMgr, (PowerMgrConf) suspendConfiguration);
cout << "suspendConfiguration " << suspendConfiguration << endl;
if(err == ERR_SUCCESS)
cout << "Registered to powerMgr." << endl;
else
cout << "Error(" << err << ") in function registerControlledSuspendOrShutDown: " << GetErrorStringA(err) << endl;
test_powermgr(pPowerMgr);
PowerMgr_release(pPowerMgr);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PowerMgr_setAppReadyForSuspendOrShutdown ( POWERMGRHANDLE  )

Acknowledge that the application is ready for suspend/shutdown. Should be called after a request has been received in order to execute the request. The application must acknowledge a request within 20s from when it arrives.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

while(1)
{
OSSleep(500);
err = PowerMgr_getPowerMgrStatus(pPowerMgr, &status);
if(err == ERR_SUCCESS)
{
switch(status)
{
case NoRequestsPending: // Wait until a PowerMgr request arrives...
break;
{
// Shutdown by means of power button or on/off signal are caught here.
os_shutdown = false;
cout << "A shutdown request detected. App should now do what it needs to do before shutdown can be performed." << endl;
cout << "Press Enter when ready to shutdown... " << endl;
// Make sure to clear cin buffer before read
std::cin.clear();
std::cin.ignore(100,'\n');
cin.get();
cout << "Signalling that app is ready..." << endl;
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setAppReadyForSuspendOrShutdown: " << GetErrorStringA(err) << endl;
}
return; //exit test appp
}
{
os_shutdown = false;
cout << "A suspend request detected. App should now do what it needs to do before suspend can be performed." << endl;
cout << "Press Enter when ready to suspend... " << endl;
// Make sure to clear cin buffer before read
std::cin.clear();
std::cin.ignore(100,'\n');
cin.get();
cout << "Signalling that app is ready..." << endl;
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function setAppReadyForSuspendOrShutdown: " << GetErrorStringA(err) << endl;
}
}
break;
default:
cout << "Error: Invalid status returned from getPowerMgrStatus!" << endl;
break;
}
//Wait for resume after notifying that we are ready to suspend
if(status == SuspendPending)
{
bool b = false;
while(!b)
{
OSSleep(100);
cout << "." << endl;
err = PowerMgr_hasResumed(pPowerMgr, &b);
if(err != ERR_SUCCESS)
{
cout << "Error(" << err << ") in function hasResumed: " << GetErrorStringA(err) << endl;
}
}
cout << "System is now resumed from suspend mode!" << endl <<
"Now we will soon re-register using the registerControlledSuspendOrShutDown function!" << endl;
// Expecting to get configuration Normal after resume from suspend
err = PowerMgr_getConfiguration(pPowerMgr, &conf);
if(err == ERR_SUCCESS)
{
switch (conf)
{
case Normal:
cout << "PowerMgrConf is now: Normal" << endl; break;
cout << "PowerMgrConf is now: ApplicationControlled" << endl; break;
cout << "PowerMgrConf is now: BatterySuspend" << endl; break;
}
}
else
{
cout << "Error(" << err << ") in function getConfiguration: " << GetErrorStringA(err) << endl;
}
// Re-register, do this as soon as possible after resume/startup
PowerMgr_registerControlledSuspendOrShutDown(pPowerMgr, setConfiguration);
if(err == ERR_SUCCESS)
cout << "Re-registered to powerMgr. Ctrl-C to exit." << endl;
else
cout << "Error(" << err << ") in function registerControlledSuspendOrShutDown: " << GetErrorStringA(err) << endl;
}
}
else
{
cout << "Error(" << err << ") in function getPowerMgrStatus: " << GetErrorStringA(err) << endl;
}
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PWMOut_getPWMOutputChannelDutyCycle ( PWMOUTHANDLE  ,
unsigned char  channel,
unsigned char *  duty_cycle 
)

Get PWM Output channel duty cycle

Supported Platform(s): VC

Parameters
channelWhich channel to get value from There are two output channels, 1 or 2.
duty_cycleThe read back duty cycle value
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char duty;
err = PWMOut_getPWMOutputChannelDutyCycle(pPwmOut, 1, &duty);
if(err != ERR_SUCCESS)
{
cout << "PWMOut_getPWMOutputChannelDutyCycle: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "PWMOut_getPWMOutputChannelDutyCycle channel 1: " << (int)duty << "% duty cycle" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PWMOut_getPWMOutputChannelFrequency ( PWMOUTHANDLE  ,
unsigned char  channel,
float *  frequency 
)

Get PWM Output frequency for a channel

Supported Platform(s): VC

Parameters
channelWhich channel to set There are two output channels, 1 or 2.
frequency0.0 - 5000.0 Hz frequency value
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

float frequency;
err = PWMOut_getPWMOutputChannelFrequency(pPwmOut, 1, &frequency);
if(err != ERR_SUCCESS)
{
cout << "PWMOut_getPWMOutputChannelFrequency: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "PWMOut_getPWMOutputChannelFrequency channel 1: " << std::fixed << frequency << "Hz" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PWMOut_getPWMOutputStatus ( PWMOUTHANDLE  ,
unsigned char *  status 
)

Get PWM Output status

Supported Platform(s): VC

Parameters
statusRead back status value Bit 0 represents PWM Output channel 1. Bit 1 represents PWM Output channel 2. If bit is set, it means short to ground or over temperature detected.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char status;
err = PWMOut_getPWMOutputStatus(pPwmOut, &status);
if(err != ERR_SUCCESS)
{
cout << "PWMOut_getPWMOutputStatus: " << GetErrorStringA(err) << std::endl;
}
else
{
if(status & 0x01)
cout << "PWMOut_getPWMOutputStatus: Status Not OK for channel 1" << std::endl;
if(status & 0x02)
cout << "PWMOut_getPWMOutputStatus: Status Not OK for channel 2" << std::endl;
if((status & 0x03) == 0)
cout << "PWMOut_getPWMOutputStatus: Status OK for both channels" << std::endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::PWMOut_release ( PWMOUTHANDLE  )

Delete the PWMOut object.

Supported Platform(s): VC

Returns
-

Example Usage:

assert(pPwmOut);
pwmout_example(pPwmOut);
PWMOut_release(pPwmOut);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PWMOut_setPWMOutOff ( PWMOUTHANDLE  ,
unsigned char  channel 
)

Turn off a PWM Output channel. This function sets both frequency and duty cycle to 0.

Supported Platform(s): VC

Parameters
channelWhich channel to set
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = PWMOut_setPWMOutOff(pPwmOut, 1);
if(err != ERR_SUCCESS)
{
cout << "PWMOut_setPWMOutOff: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "PWMOut_setPWMOutOff channel 1 turned off" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PWMOut_setPWMOutputChannelDutyCycle ( PWMOUTHANDLE  ,
unsigned char  channel,
unsigned char  duty_cycle 
)

Set PWM Output Duty cycle for a channel

Supported Platform(s): VC

Parameters
channelWhich channel to set There are two output channels, 1 or 2.
duty_cycleWhich duty cycle (0-100 %) to use
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = PWMOut_setPWMOutputChannelDutyCycle(pPwmOut, 1, 50);
if(err != ERR_SUCCESS)
{
cout << "setPWMOutputChannelDutyCycle: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "setPWMOutputChannelDutyCycle: channel 1 set to 50% duty cycle" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::PWMOut_setPWMOutputChannelFrequency ( PWMOUTHANDLE  ,
unsigned char  channel,
float  frequency 
)

Set PWM Output frequency for a channel

Supported Platform(s): VC

Parameters
channelWhich channel to set There are two output channels, 1 or 2.
frequency0.0 - 5000.0 Hz frequency value
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = PWMOut_setPWMOutputChannelFrequency(pPwmOut, 1, (float)100.0);
if(err != ERR_SUCCESS)
{
cout << "PWMOut_setPWMOutputChannelFrequency: " << GetErrorStringA(err) << std::endl;
}
else
{
cout << "PWMOut_setPWMOutputChannelFrequency: channel 1 set to 100Hz" << std::endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Smart_getDeviceSerial ( SMARTHANDLE  ,
char *  buff,
int  len 
)

Get serial number of the secondary storage device.

Supported Platform(s): XL, XM

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned. At least an 21 bytes buffer size must be used since the serial number can be 20 bytes + trailing zero.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

char serial[21];
err = Smart_getDeviceSerial (pSmart, serial, sizeof(serial));
if (ERR_SUCCESS == err)
{
cout << "Device serial number: " << serial << endl;
}
else
{
cout << "Error(" << err << ") in function getDeviceSerial: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Smart_getDeviceSerial2 ( SMARTHANDLE  ,
char *  buff,
int  len 
)

Get serial number of the second secondary storage device. Use this function to access the second card if the the device uses two cards.

Supported Platform(s): XL

Parameters
buffText output buffer.
lenMaximum length of the output buffer. If the actual length of the data is greater, an error will be returned. At least an 21 bytes buffer size must be used since the serial number can be 20 bytes + trailing zero.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. ERR_CODE_NOT_EXIST if only one card is available on XL platform. See the enum eErr for details.

Example Usage:

char serial[21];
err = Smart_getDeviceSerial2 (pSmart, serial, sizeof(serial));
if (ERR_SUCCESS == err)
{
cout << "Device serial number: " << serial << endl;
}
else if (ERR_NOT_SUPPORTED == err)
{
cout << "Smart_getDeviceSerial2 is not supported on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getDeviceSerial: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Smart_getInitialTime ( SMARTHANDLE  ,
time_t *  time 
)

Get the date/time when the SMART monitoring began for this storage device. This time is either when the card first was used or when the system software was updated to support S.M.A.R.T. monitoring for the first time. Logging of time is based on the local time of the computer at the time of logging and may therefore not always be accurate.

Supported Platform(s): XL, XM

Parameters
timeA 32bit time_t value representing the number of seconds elapsed since 00:00 hours, Jan 1, 1970 UTC.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

time_t initialTime;
struct tm * timeinfo;
err = Smart_getInitialTime (pSmart, &initialTime);
if (ERR_SUCCESS == err)
{
cout << "Device was initially timestamped on: ";
timeinfo = localtime (&initialTime);
cout << asctime(timeinfo) << endl;
}
else
{
cout << "Error(" << err << ") in function getInitialTime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Smart_getInitialTime2 ( SMARTHANDLE  ,
time_t *  time 
)

Get the date/time when the SMART monitoring began for this storage device. This time is either when the card first was used or when the system software was updated to support S.M.A.R.T. monitoring for the first time. Logging of time is based on the local time of the computer at the time of logging and may therefore not always be accurate.

Use this function to access the second card if the the device uses two cards.

Supported Platform(s): XL

Parameters
timeA 32bit time_t value representing the number of seconds elapsed since 00:00 hours, Jan 1, 1970 UTC.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. ERR_CODE_NOT_EXIST if only one card is available on XL platform. See the enum eErr for details.

Example Usage:

time_t initialTime;
struct tm * timeinfo;
err = Smart_getInitialTime2 (pSmart, &initialTime);
if (ERR_SUCCESS == err)
{
cout << "Device was initially timestamped on: ";
timeinfo = localtime (&initialTime);
cout << asctime(timeinfo) << endl;
}
else if (ERR_NOT_SUPPORTED == err)
{
cout << "Smart_getInitialTime2 is not supported on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getInitialTime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Smart_getRemainingLifeTime ( SMARTHANDLE  ,
unsigned char *  lifetimepercent 
)

Get remaining lifetime of the secondary storage device.

Supported Platform(s): XL, XM

Parameters
lifetimepercentThe expected remaining lifetime (0..100%).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

unsigned char life;
err = Smart_getRemainingLifeTime (pSmart, &life);
if (ERR_SUCCESS == err)
{
cout << "Estimated remaining lifetime: " << (int)life << "%" << endl;
}
else
{
cout << "Error(" << err << ") in function getRemainingLifeTime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Smart_getRemainingLifeTime2 ( SMARTHANDLE  ,
unsigned char *  lifetimepercent 
)

Get remaining lifetime of the second secondary storage device. Use this function to access the second card if the the device uses two cards.

Supported Platform(s): XL

Parameters
lifetimepercentThe expected remaining lifetime (0..100%).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. ERR_CODE_NOT_EXIST if only one card is available on XL platform. See the enum eErr for details.

Example Usage:

unsigned char life;
err = Smart_getRemainingLifeTime2 (pSmart, &life);
if (ERR_SUCCESS == err)
{
cout << "Estimated remaining lifetime: " << (int)life << "%" << endl;
}
else if (ERR_NOT_SUPPORTED == err)
{
cout << "Smart_getRemainingLifeTime2 is not supported on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getRemainingLifeTime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Smart_release ( SMARTHANDLE  )

Delete the Smart object.

Supported Platform(s): XL, XM

Returns
-

Example Usage:

SMARTHANDLE pSmart = ::GetSmart();
assert(pSmart);
show_card_data(pSmart);
Smart_release(pSmart);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getBTPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get Bluetooth power status.

Supported Platform(s): XM, XA, XS

Parameters
statusBluetooth power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getBTPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "Bluetooth power is " << ((status == Enabled)? "ON" : "OFF") << endl;
}
{
cout << "getBLPowerStatus: Bluetooth is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getBLPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getBTStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get Bluetooth power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusBluetooth power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getBTStartUpPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "Bluetooth power is " << ((status == Enabled)? "Enabled" : "Disabled") << " at start-up" << endl;
}
{
cout << "getBTStartUpPowerStatus: Bluetooth is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getBTStartUpPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getGPRSPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get GPRS power status.

Supported Platform(s): XM, XA, XS

Parameters
statusGPRS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getGPRSPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "GSM/GPRS power is " << ((status == Enabled)? "ON" : "OFF") << endl;
}
{
cout << "getGPRSPowerStatus: GSM/GPRS is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getGPRSPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getGPRSStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get GPRS power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusGPRS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getGPRSStartUpPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "GSM/GPRS power is " << ((status == Enabled)? "Enabled" : "Disabled") << " at start-up" << endl;
}
{
cout << "getGPRSStartUpPowerStatus: GSM/GPRS is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getGPRSStartUpPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getGPSAntennaStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get GPS antenna status. Antenna open/short detection. The status is set to disabled if no antenna is present or a short is detected.

Supported Platform(s): XM, XA, XS

Parameters
statusGPS antenna power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getGPSAntennaStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "GPS antenna status: " << ((status == Enabled)? "OK" : "ERROR: Open connection or short-circuit") << endl;
}
{
cout << "getGPSAntennaStatus: GPS is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getGPSAntennaStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getGPSPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get GPS power status. Note that it can take some time after calling setGPSPowerStatus before the status is reported correctly.

Supported Platform(s): XM, XA, XS

Parameters
statusGPS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getGPSPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "GPS power is " << ((status == Enabled)? "ON" : "OFF") << endl;
}
{
cout << "getGPSPowerStatus: GPS is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getGPSPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getGPSStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get GPS power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusGPS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getGPSStartUpPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "GPS power is " << ((status == Enabled)? "Enabled" : "Disabled") << " at start-up" << endl;
}
{
cout << "getGPSStartUpPowerStatus: GPS is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getGPSStartUpPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getTelematicsAvailable ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Is a telematics add-on card installed?

Supported Platform(s): XM, XA, XS

Parameters
statusEnabled if a telematics add-on card is installed, otherwise Disabled.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getTelematicsAvailable(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "Telematics add-on board: " << ((status == Enabled)? "available" : "not available") << endl;
if(status == Disabled)
return;
}
else
{
cout << "Error(" << err << ") in function getTelematicsAvailable: " << GetErrorStringA(err) << endl;
return;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getWLANPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get WLAN power status.

Supported Platform(s): XM, XA, XS

Parameters
statusWLAN power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getWLANPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "WLAN power is " << ((status == Enabled)? "ON" : "OFF") << endl;
}
{
cout << "getWLANPowerStatus: WLAN is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getWLANPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_getWLANStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus *  status 
)

Get WLAN power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusWLAN power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = Telematics_getWLANStartUpPowerStatus(pTelematics, &status);
if(err == ERR_SUCCESS)
{
cout << "WLAN power is " << ((status == Enabled)? "Enabled" : "Disabled") << " at start-up" << endl;
}
{
cout << "getWLANStartUpPowerStatus: WLAN is not available on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getWLANStartUpPowerStatus: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Telematics_release ( TELEMATICSHANDLE  )

Delete the Telematics object.

Supported Platform(s): XM, XA, XS

Returns
-

Example Usage:

assert(pTelematics);
telematics_example(pTelematics);
Telematics_release(pTelematics);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setBTPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set Bluetooth power status.

Supported Platform(s): XM, XA, XS

Parameters
statusBluetooth power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setBTStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set Bluetooth power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusBluetooth power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setGPRSPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set GPRS modem power status.

Supported Platform(s): XM, XA, XS

Parameters
statusGPRS modem power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setGPRSStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set GPRS power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusGPRS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setGPSPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set GPS power status.

Supported Platform(s): XM, XA, XS

Parameters
statusGPS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setGPSStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set GPS power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusGPS power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setWLANPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set WLAN power status.

Supported Platform(s): XM, XA, XS

Parameters
statusWLAN power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Telematics_setWLANStartUpPowerStatus ( TELEMATICSHANDLE  ,
CCStatus  status 
)

Set WLAN power status at startup and at resume from suspended mode.

Supported Platform(s): XM, XA, XS

Parameters
statusWLAN power status.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_getAdvancedSetting ( TOUCHSCREENHANDLE  ,
TSAdvancedSettingsParameter  param,
unsigned short *  data 
)

Get advanced touch screen settings. See the description of TSAdvancedSettingsParameter for a description of the parameters.

Supported Platform(s): XL, XM, XS, XA

Parameters
paramThe setting to get.
dataThe current data for the setting.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = TouchScreen_getAdvancedSetting(pTouchScreen, TS_DEBOUNCE_TIME, &debouncetime);
if(err == ERR_SUCCESS)
{
cout << "Touchscreen debounce time is set to: " << (int)debouncetime << " ms" << endl;
}
else
{
cout << "Error(" << err << ") in function getAdvancedSetting: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_getMode ( TOUCHSCREENHANDLE  ,
TouchScreenModeSettings *  config 
)

Get Touch Screen mode. Gets the current mode of the USB profile.

Supported Platform(s): XL, XM, XS, XA

Parameters
configThe current mode.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = TouchScreen_getMode(pTouchScreen, &ts_mode);
if(err == ERR_SUCCESS)
{
switch(ts_mode)
{
case MOUSE_NEXT_BOOT: cout << "USB profile is set to Mouse profile (active next boot)" << endl; break;
case TOUCH_NEXT_BOOT: cout << "USB profile is set to Touch profile (active next boot)" << endl; break;
case MOUSE_NOW: cout << "USB profile is set to Mouse profile" << endl; break;
case TOUCH_NOW: cout << "USB profile is set to Touch profile" << endl; break;
default: cout << "Error: invalid setting returned from getMode" << endl; break;
}
}
else if (err == ERR_NOT_SUPPORTED) {
cout << "Function TouchScreen_getMode() is not supported on this platform" << endl;
}
else
{
cout << "Error(" << err << ") in function getMode: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_getMouseRightClickTime ( TOUCHSCREENHANDLE  ,
unsigned short *  time 
)

Get mouse right click time. Applies only to the mouse profile. Use the OS settings for the touch profile.

Supported Platform(s): XL, XM, XS, XA

Parameters
timeThe right click time, in milliseconds.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Example Usage:

err = TouchScreen_getMouseRightClickTime(pTouchScreen, &rightclicktime);
if(err == ERR_SUCCESS)
{
cout << "Right click time is set to: " << (int)rightclicktime << " ms" << endl;
}
else
{
cout << "Error(" << err << ") in function getMouseRightClickTime: " << GetErrorStringA(err) << endl;
}
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_release ( TOUCHSCREENHANDLE  )

Delete the TouchScreen object.

Supported Platform(s): XL, XM, XS, XA

Returns
-

Example Usage:

assert(pTouchScreen);
touchscreen_example(pTouchScreen);
TouchScreen_release(pTouchScreen);
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_setAdvancedSetting ( TOUCHSCREENHANDLE  ,
TSAdvancedSettingsParameter  param,
unsigned short  data 
)

Set advanced touch screen settings. See the description of TSAdvancedSettingsParameter for a description of the parameters.

Supported Platform(s): XL, XM, XS, XA

Parameters
paramThe setting to set.
dataThe data value to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_setMode ( TOUCHSCREENHANDLE  ,
TouchScreenModeSettings  config 
)

Set Touch Screen mode. Sets the mode of the USB profile.

Supported Platform(s): XL, XM, XS, XA

Parameters
configThe mode to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreen_setMouseRightClickTime ( TOUCHSCREENHANDLE  ,
unsigned short  time 
)

Set mouse right click time. Applies only to the mouse profile. Use the OS settings for the touch profile.

Supported Platform(s): XL, XM, XS, XA

Parameters
timeThe right click time, in milliseconds.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_checkCalibrationPointFinished ( TOUCHSCREENCALIBHANDLE  ,
bool *  finished,
unsigned char  pointNr 
)

Check if a calibration point is finished

Supported Platform(s): XL, XM, XS, XA

Parameters
finishedIs current point finished?
pointNrCalibration point number (1 to total number of points)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_getConfigParam ( TOUCHSCREENCALIBHANDLE  ,
CalibrationConfigParam  param,
unsigned short *  value 
)

Get calibration config parameters

Supported Platform(s): XL, XM, XS, XA

Parameters
paramConfig parameter
valueParameter value
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_getMode ( TOUCHSCREENCALIBHANDLE  ,
CalibrationModeSettings *  mode 
)

Get mode of front controller.

Supported Platform(s): XL, XM, XS, XA

Parameters
modeCurrent calibration mode
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_release ( TOUCHSCREENCALIBHANDLE  )

Delete the TouchScreenCalib object.

Supported Platform(s): XL, XM, XS, XA

Returns
-
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_setCalibrationPoint ( TOUCHSCREENCALIBHANDLE  ,
unsigned char  pointNr 
)

Set calibration point

Supported Platform(s): XL, XM, XS, XA

Parameters
pointNrCalibartion point number (1 to total number of points)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_setConfigParam ( TOUCHSCREENCALIBHANDLE  ,
CalibrationConfigParam  param,
unsigned short  value 
)

Set calibration config parameters

Supported Platform(s): XL, XM, XS, XA

Parameters
paramConfig parameter
valueparameter value
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::TouchScreenCalib_setMode ( TOUCHSCREENCALIBHANDLE  ,
CalibrationModeSettings  mode 
)

Set mode of front controller.

Supported Platform(s): XL, XM, XS, XA

Parameters
modeSelected calibration mode
Returns
error status. 0 = ERR_SUCCESS, otherwise error code.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_activateSnapshot ( VIDEOHANDLE  ,
bool  activate 
)

To be able to take snapshot the snapshot function has to be active. After activation it takes 120ms before first snapshot can be taken. The Snapshot function can be active all the time. If power consumption and heat is an issue, snapshot may be turned off.

Supported Platform(s): XL, XM (Windows)

Parameters
activateSet to true if the snapshot function shall be active.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_createBitmap ( VIDEOHANDLE  ,
char **  bmpBuffer,
unsigned long *  bmpBufSize,
const char *  rawImgBuffer,
unsigned long  rawImgBufSize,
bool  bInterlaced,
bool  bNTSCFormat 
)

Create a bitmap from a raw image buffer. The bmp buffer is allocated in the function and has to be deallocated by the application.

Supported Platform(s): XL, XM (Windows)

Parameters
bmpBufferBitmap ram buffer allocated by the API, has to be deallocated with freeBmpBuffer() by the application.
bmpBufSizeSize of the returned bitmap buffer.
rawImgBufferRaw image buffer from takeSnapShotRaw.
rawImgBufSizeSize of the raw image buffer.
bInterlacedInterlaced, if true the bitmap only contains every second line in the image, to save bandwidth.
bNTSCFormatTrue if the video format in rawImageBuffer is NTSC format.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_freeBmpBuffer ( VIDEOHANDLE  ,
char *  bmpBuffer 
)

Free the memory allocated for BMP buffer.

Supported Platform(s): XL, XM (Windows)

Parameters
bmpBufferThe bmp buffer to free.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getActiveChannel ( VIDEOHANDLE  ,
VideoChannel *  channel 
)

Get the current video channel.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
channelEnum defining available channels. (VC platform ha sonly 1 channel, Analog_Channel_1)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getColorKeys ( VIDEOHANDLE  ,
unsigned char *  rKey,
unsigned char *  gKey,
unsigned char *  bKey 
)

Get color key values. Note that the system uses 18 bit colors, so the two least significant bits are not used.

Supported Platform(s): XL, XM

Parameters
rKeyRed value.
gKeyGreen value.
bKeyBlue value.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getCropping ( VIDEOHANDLE  ,
unsigned char *  top,
unsigned char *  left,
unsigned char *  bottom,
unsigned char *  right 
)

Get Crop parameters.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
topCrop top (lines).
leftCrop left (lines).
bottomCrop bottom (lines).
rightCrop right (lines).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getDecoderReg ( VIDEOHANDLE  ,
unsigned char  decoderRegister,
unsigned char *  registerValue 
)

Get Video decoder bus register. Advanced function for direct access to the video decoder TVP5150AM1 registers.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
decoderRegisterDecoder Register Address.
registerValueregister value.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getDeInterlaceMode ( VIDEOHANDLE  ,
DeInterlaceMode *  mode 
)

Get the deinterlace mode used when decoding the interlaced video stream.

Supported Platform(s): XL, XM

Parameters
modeThe current mode. See enum DeInterlaceMode for descriptions of the modes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getGraphicsOverlay ( VIDEOHANDLE  ,
CCStatus *  mode 
)

Get the current graphics overlaying mode.

Supported Platform(s): XA, XS, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getMirroring ( VIDEOHANDLE  ,
CCStatus *  mode 
)

Get the current mirroring mode of the video image.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
modeThe current mode. Enabled or Disabled.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getRawImage ( VIDEOHANDLE  ,
unsigned short *  width,
unsigned short *  height,
float *  frameRate 
)

Get the raw image size of moving image before any scaling and frame rate. For snapshot the height is 4 row less.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
widthWidth of raw image.
heightHeight of raw moving image, snapshot are 4 bytes less.
frameRateReceived video frame rate.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getRotation ( VIDEOHANDLE  ,
VideoRotation *  rotation 
)

Get the current rotation of the video image.

Supported Platform(s): XA, XS, VC

Parameters
rotationEnum defining the current rotation.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getScaling ( VIDEOHANDLE  ,
float *  x,
float *  y 
)

Get Video Scaling (image size). If the deinterlace mode is set to DeInterlace_Even or DeInterlace_Odd, this function divides the actual vertical scaling by a factor of two, to get the same scaling factor as set with setScaling.

Supported Platform(s): XL, XM

Parameters
xHorizontal scaling (0.25-4).
yVertical scaling (0.25-4 DeInterlace_BOB) (0.125-2 DeInterlace_Even, DeInterlace_Odd).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getStatus ( VIDEOHANDLE  ,
unsigned char *  status 
)

Video status byte.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
statusStatus byte Bit 0: video on/off 0 = Off, 1 = On. Bit 2-1: De-interlacing method, 0 = Only even rows, 1 = Only odd rows, 2 = BOB, 3 = invalid. Bit 3: Mirroring mode, 0 = Off, 1 = On Bit 4: Read or write operation to analogue video decoder in progress. Bit 5: Analogue video decoder ready bit.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getVideoArea ( VIDEOHANDLE  ,
unsigned short *  topLeftX,
unsigned short *  topLeftY,
unsigned short *  bottomRigthX,
unsigned short *  bottomRigthY 
)

Get the area where video is shown.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
topLeftXTop left X coordinate on screen.
topLeftYTop left Y coordinate on screen.
bottomRigthXBottom right X coordinate on screen.
bottomRigthYBottom right Y coordinate on screen.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_getVideoStandard ( VIDEOHANDLE  ,
videoStandard *  standard 
)

Get video standard. The video decoder auto detects the video standard of the source.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
standardVideo standard.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_init ( VIDEOHANDLE  ,
unsigned char  deviceNr 
)

Initialize a video device. The video device will initially use the following settings: DeInterlace_BOB and mirroring disabled.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
deviceNrDevice to connect to (1,2). Select one of 2 devices to connect to. (VC platform has only 1 device)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_minimize ( VIDEOHANDLE  )

Minimizes the video area. Restore with restore() call.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API void CCAUXDLL_CALLING_CONV CrossControl::Video_release ( VIDEOHANDLE  )

Delete the Video object.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
-
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_restore ( VIDEOHANDLE  )

Restores the video area to the size it was before a minimize() call. Don't use restore if minimize has not been used first.

Supported Platform(s): XL, XM, XS, XA, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setActiveChannel ( VIDEOHANDLE  ,
VideoChannel  channel 
)

Sets the active video channel.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
channelEnum defining available channels. (VC platform ha sonly 1 channel, Analog_Channel_1)
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setColorKeys ( VIDEOHANDLE  ,
unsigned char  rKey,
unsigned char  gKey,
unsigned char  bKey 
)

Set color keys. Writes RGB color key values. Note that the system uses 18 bit colors, so the two least significant bits are not used.

Supported Platform(s): XL, XM

Parameters
rKeyRed key value.
gKeyGreen key value.
bKeyBlue key value.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setCropping ( VIDEOHANDLE  ,
unsigned char  top,
unsigned char  left,
unsigned char  bottom,
unsigned char  right 
)

Crop video image. Note that the video chip manual says the following about horisontal cropping: The number of pixels of active video must be an even number. The parameters top and bottom are internally converted to an even number. This is due to the input video being interlaced, a pair of odd/even lines are allways cropped together. On XA/XS platforms, cropping from top/bottom on device 2 (channels 3 and 4) is not supported.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
topCrop top (0-255 lines).
leftCrop left (0-127 lines).
bottomCrop bottom (0-255 lines).
rightCrop right (0-127 lines).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setDecoderReg ( VIDEOHANDLE  ,
unsigned char  decoderRegister,
unsigned char  registerValue 
)

Set Video decoder bus register. Advanced function for direct access to the video decoder TVP5150AM1 registers.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
decoderRegisterDecoder Register Address.
registerValueregister value.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setDeInterlaceMode ( VIDEOHANDLE  ,
DeInterlaceMode  mode 
)

Set the deinterlace mode used when decoding the interlaced video stream.

Supported Platform(s): XL, XM

Parameters
modeThe mode to set. See enum DeInterlaceMode for descriptions of the modes.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setGraphicsOverlay ( VIDEOHANDLE  ,
CCStatus  mode 
)

Enable or disable overlaying of graphics on top of video.

Supported Platform(s): XA, XS, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setMirroring ( VIDEOHANDLE  ,
CCStatus  mode 
)

Enable or disable mirroring of the video image.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
modeThe mode to set. Enabled or Disabled.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setRotation ( VIDEOHANDLE  ,
VideoRotation  rotation 
)

Set the current rotation of the video image.

Supported Platform(s): XA, XS, VC

Parameters
rotationEnum defining the rotation to set.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setScaling ( VIDEOHANDLE  ,
float  x,
float  y 
)

Set Video Scaling (image size). If the deinterlace mode is set to DeInterlace_Even or DeInterlace_Odd, this function multiplies the vertical scaling by a factor of two, to get the correct image proportions.

Supported Platform(s): XL, XM

Parameters
xHorizontal scaling (0.25-4).
yVertical scaling (0.25-4 DeInterlace_BOB) (0.125-2 DeInterlace_Even, DeInterlace_Odd).
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_setVideoArea ( VIDEOHANDLE  ,
unsigned short  topLeftX,
unsigned short  topLeftY,
unsigned short  bottomRightX,
unsigned short  bottomRightY 
)

Set the area where video is shown.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
topLeftXTop left X coordinate on screen.
topLeftYTop left Y coordinate on screen.
bottomRightXBottom right X coordinate on screen.
bottomRightYBottom right Y coordinate on screen.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_showFrame ( VIDEOHANDLE  )

Copy one frame from camera to the display.

Supported Platform(s): XA, XS, VC

Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_showVideo ( VIDEOHANDLE  ,
bool  show 
)

Show or hide the video image. Note that it may take some time before the video is shown and correct input info can be read by getRawImage.

Supported Platform(s): XL, XM, XS, XA, VC

Parameters
showTrue shows the video image.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_takeSnapshot ( VIDEOHANDLE  ,
const char *  path,
bool  bInterlaced 
)

Takes a snapshot of the current video image and stores it to a bitmap file. This is a combination of takeSnapShotRaw, getVideoStandard and createBitMap and then storing of the bmpBuffer to file. To be able to take a snapshot, the snapshot function has to be active.

Supported Platform(s): XL, XM (Windows)

Parameters
pathThe file path to where the image should be stored.
bInterlacedIf true the bitmap only contains every second line in the image, to save bandwidth.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_takeSnapshotBmp ( VIDEOHANDLE  ,
char **  bmpBuffer,
unsigned long *  bmpBufSize,
bool  bInterlaced,
bool  bNTSCFormat 
)

Takes a snapshot of the current video image and return a data buffer with a bitmap image. The bmp buffer is allocated in the function and has to be deallocated with freeBmpBuffer() by the application. This is a combination of the function takeSnapShotRaw and createBitMap. To be able to take a snapshot, the snapshot function has to be active.

Supported Platform(s): XL, XM (Windows)

Parameters
bmpBufferBitmap ram buffer allocated by the API, has to be deallocated with freeBmpBuffer() by the application.
bmpBufSizeSize of the returned bitmap buffer.
bInterlacedIf true the bitmap only contains every second line in the image, to save bandwidth.
bNTSCFormatTrue if the video format in rawImageBuffer is NTSC format.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.
EXTERN_C CCAUXDLL_API eErr CCAUXDLL_CALLING_CONV CrossControl::Video_takeSnapshotRaw ( VIDEOHANDLE  ,
char *  rawImgBuffer,
unsigned long  rawImgBuffSize,
bool  bInterlaced 
)

Takes a snapshot of the current video image and return raw image data. The size of the raw image is when interlaced = false 0x100 + line count * row count * 4. The size of the raw image is when interlaced = true 0x100 + line count * row count * 2. To be able to take a snapshot, the snapshot function has to be active. This function is blocking until a new frame is available from the decoder. An error will be returned if the decoder doesn't return any frames before a timeout.

Supported Platform(s): XL, XM (Windows)

Parameters
rawImgBufferBuffer for image to be stored in.
rawImgBuffSizeSize of the buffer.
bInterlacedIf true the bitmap only contains every second line in the image, to save bandwidth.
Returns
error status. 0 = ERR_SUCCESS, otherwise error code. See the enum eErr for details.

Variable Documentation

const unsigned char DigitalIn_1 = (1 << 0)

Bit defines for getDigIO

const unsigned char DigitalIn_2 = (1 << 1)
const unsigned char DigitalIn_3 = (1 << 2)
const unsigned char DigitalIn_4 = (1 << 3)
const unsigned char Video1Conf = (1 << 0)

Bit defines for getVideoStartupPowerConfig and setVideoStartupPowerConfig

const unsigned char Video2Conf = (1 << 1)

Video channel 1 config

const unsigned char Video3Conf = (1 << 2)

Video channel 2 config

const unsigned char Video4Conf = (1 << 3)

Video channel 3 config