#ifndef __APP_CONFIG_H_
#define __APP_CONFIG_H_

/* Task id list. */
enum
{
     TSK_ID_LOG
	,TSK_ID_UPDATE
	,TSK_ID_SPIMANAGER
	,TSK_ID_SPISEND
	,TSK_ID_SPIRECV
    ,TSK_ID_CANAPP
    ,TSK_ID_CANCYC
	,TSK_ID_CANSTACK
    ,TSK_ID_PCTools
    ,TSK_ID_SHARETASK
	,TSK_ID_CANMGR
	,TSK_ID_POWERMGR
	,TSK_ID_POWERCYC
	,TSK_ID_SENSORAPP
	,TSK_ID_SENSORCYC
	,TSK_ID_BACKUPBATTERY
    ,TSK_ID_MAX
    ,TSK_ID_INVALID
};

/* Message id list. */
enum
{
     MSG_ID_LOG
	,MSG_ID_UPDATE
	,MSG_ID_SPIMANAGER
	,MSG_ID_SPISEND
	,MSG_ID_SPIRECV
    ,MSG_ID_CANAPP
    ,MSG_ID_CANCYC
	,MSG_ID_CANSTACK
	,MSG_ID_PCTOOLS
    ,MSG_ID_SHARETASK
	,MSG_ID_CANMGR
	,MSG_ID_POWERMGR
	,MSG_ID_SENSOR_APP
	,MSG_ID_SENSOR_CYC
	,MSG_ID_BACKUPBATTERY
    ,MSG_ID_MAX
    ,MSG_ID_INVALID
};

/* Timer id list. */
enum
{
     TIMER_ID_TEST
    ,TIMER_ID_CANMGR_RELEASE
    ,TIMER_ID_MAX
    ,TIMER_ID_INVALID
	,TIMER_ID_POWER_STANDBYOUT
	,TIMER_ID_POWER_STANDBYIN
	,TIMER_ID_SOC_OFF
	,TIMER_ID_NAD_SLEEP
	,TIMER_ID_NAD_SLEEP_PENDING
	,TIMER_ID_NAD_OFF_PENDING
	,TIMER_ID_ALL_SLEEP_TEST
	,TIMER_ID_JTOOLS
	,TIMER_ID_BATTERY_CHARGER
	,TIMER_ID_BATTERY_CHECK
};

extern void* LOG_getTaskParam();
extern void* Update_getTaskParam();
extern void* SpiManager_getTaskParam();
extern void* SpiSend_getTaskParam();
extern void* SpiRecv_getTaskParam();
extern void* CANAPP_getTaskParam();
extern void* CANCYC_getTaskParam();
extern void* CanStackMgr_getTaskParam();
extern void* ShareTask_getTaskParam();
extern void* PCToolsMgr_getTaskParam();
extern void* PowerMgr_getTaskParam();
extern void* PowerCyc_getTaskParam();
extern void* CanMgr_getTaskParam();
extern void* SensorApp_getTaskParam();
extern void* SensorCyc_getTaskParam();
extern void* BackupBattery_getTaskParam();
void QUEUE_Init();
void TASK_Init();

#endif
