#ifndef _demo_h_
#define _demo_h_
/**HEADER********************************************************************
* 
* Copyright (c) 2010 Avnet Japan Co.,Ltd (NIKE Borad Project.)
* All Rights Reserved
*
*************************************************************************** 
*
* $FileName: NIKE_demo.h$
* $Version : 3.0.18.0$
* $Date    : Jul-29-2009$
*
* Comments:
*   The main configuration file for WEB_HVAC demo
*
*END************************************************************************/

#include <mqx.h>
#include <bsp.h>
#include <lwevent.h>
#include <message.h>
#if MQX_KERNEL_LOGGING
#include <klog.h>
#endif


/* API CONFIG SETUP */
#define NIKE_TESTMODE	                      0

#define NIKE_USB_DEVICE_MASS_STORAGE	      1


/*  */

#define DEMOCFG_ENABLE_SERIAL_SHELL           1   /* enable shell task for serial console */
#define DEMOCFG_ENABLE_AUTO_LOGGING           0   /* enable logging to serial console (or USB drive) */
#define DEMOCFG_ENABLE_USB_FILESYSTEM         1   /* enable USB mass storage */
#define DEMOCFG_USE_POOLS                     0   /* enable external memory pools for USB and RTCS */
#define DEMOCFG_ENABLE_USB_HOST               0   /* enable USB mass storage */
#define DEMOCFG_ENABLE_USB_DEVICE             1   /* enable USB mass storage */


//    #warning External pools will not be used on this board.

#if DEMOCFG_ENABLE_USB_FILESYSTEM
   #include <mfs.h>
   #include <part_mgr.h>
   #include <usbmfs.h>

   #define LOG_FILE "c:\\hvac_log.txt"
#endif

#include <shell.h>

enum 
{
   HVAC_TASK = 1,
   SWITCH_TASK,
   SHELL_TASK,
   LOGGING_TASK,
   USB_TASK,
   SIGNAL_TASK,
   SENSOR_TASK,
   TEST_TASK,
   MC_TASK,
   ALIVE_TASK
};



//void HVAC_Task(uint_32);
void Switch_Task(uint_32);
void Switch_Poll(void);
void Shell_Task(uint_32);
//void Logging_task(uint_32);
//void USB_task(uint_32);
//void HeartBeat_Task(uint_32);
//void Sensor_task(uint_32);
//void Signal_Task(uint_32 temp);
//void Test_Task(uint_32 temp);
//void Mfs_Control_Task(uint_32 temp);


#if 0
void   MfsControlEvent_Set_SetOpen(int Number);
void   MfsControlEvent_Set_SetClose(void);
void   MfsControlEvent_Set_SetSignalData(uchar* data, int size);
void   MfsControlEvent_Set_GetOpen(int Number);
void   MfsControlEvent_Set_GetClose(void);
void   MfsControlEvent_Set_GetSignalData(uchar* data, int size);
int_32 MfsControl_Get_file_mode(void);
#endif

void   USB_DEV_Task(uint_32 param);

#endif
