65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef IOT_DEV_MGMT_EVENT_AND_STATE_H
 | 
						|
#define IOT_DEV_MGMT_EVENT_AND_STATE_H
 | 
						|
 | 
						|
/* Event of plug-in device and our monitor. */
 | 
						|
typedef enum _iot_dm_event_e {
 | 
						|
    /* Customer event start. Customer care about those events. */
 | 
						|
    DM_EVENT_DEV_POWER_ON   = 0x0,/* Device power on. I > I(standby). */
 | 
						|
    DM_EVENT_DEV_POWER_OFF  = 0x1,/* Device power off. I <= I(standby). */
 | 
						|
    DM_EVENT_DEV_WORK_START = 0x2,/* Device start working. I > I(work). */
 | 
						|
    DM_EVENT_DEV_WORK_STOP  = 0x3,/* Device stop working. I <= I(work). */
 | 
						|
    DM_EVENT_DEV_TRAP_START = 0x4,/* Device work in trap. P > P(trap). */
 | 
						|
    DM_EVENT_DEV_TRAP_STOP  = 0x5,/* Device restore from trap. P <= P(trap). */
 | 
						|
    DM_EVENT_MON_NETWORK_IN = 0x6,/* Monitor joins one network. */
 | 
						|
    DM_EVENT_MON_NETWORK_OUT= 0x7,/* Monitor leaves one network. */
 | 
						|
    /* Customer event end. */
 | 
						|
 | 
						|
    /* Private event start. Event for debugging. */
 | 
						|
    DM_EVENT_MON_POWER_ON   = 0x8,/* Monitor power on. Maybe restore from power cut off. */
 | 
						|
    DM_EVENT_MON_POWER_OFF  = 0x9,/* Monitor power off. Maybe power cut off*/
 | 
						|
    /* Private event end. */
 | 
						|
 | 
						|
    DM_EVENT_INVALID
 | 
						|
}iot_dm_event_e;
 | 
						|
 | 
						|
/* State of plug-in device. */
 | 
						|
typedef enum _iot_dm_device_state_e {
 | 
						|
    /* No device plug into our monitor. */
 | 
						|
    DM_STATE_DEV_OFFLINE = 0x00,
 | 
						|
    /* Device plug into our monitor, staying in standby. */
 | 
						|
    DM_STATE_DEV_STANDBY = 0x01,
 | 
						|
    /* Device plug into our monitor, working right. */
 | 
						|
    DM_STATE_DEV_WORKING = 0x02,
 | 
						|
    /* Device plug into our monitor, running in trouble. */
 | 
						|
    DM_STATE_DEV_TRAPING = 0x03,
 | 
						|
 | 
						|
    DM_STATE_DEV_MAX    = 0x0F
 | 
						|
}iot_dm_dev_state_e;
 | 
						|
 | 
						|
/* State of monitor. */
 | 
						|
typedef enum _iot_dm_monitor_state_e {
 | 
						|
    /* Our monitor is not in any network. */
 | 
						|
    DM_STATE_MON_OFFLINE = 0x00,
 | 
						|
    /* Our monitor is in a network. */
 | 
						|
    DM_STATE_MON_ONLINE  = 0x10,
 | 
						|
 | 
						|
    DM_STATE_MON_MAX    = 0xF0
 | 
						|
}iot_dm_mon_state_e;
 | 
						|
 | 
						|
/* State should be iot_dm_mon_state_e | iot_dm_dev_state_e */
 | 
						|
 | 
						|
/* State of led on monitor.*/
 | 
						|
typedef enum _iot_dm_led_state_e {
 | 
						|
    /* Data send / receive by monitor. Blinks on rate. */
 | 
						|
    DM_STATE_LED_TRANSFER   = 0x0,
 | 
						|
    /* Monitor or plug-in device in trap. Blinks every 1 second. */
 | 
						|
    DM_STATE_LED_TRAPPING   = 0x1,
 | 
						|
    /* Monitor offline. Light on alawys.*/
 | 
						|
    DM_STATE_LED_OFFLINE    = 0x2,
 | 
						|
    /* Monitor online. Light off always. */
 | 
						|
    DM_STATE_LED_ONLINE     = 0x3,
 | 
						|
    DM_STATE_LED_MAX
 | 
						|
}iot_dm_led_state_e;
 | 
						|
 | 
						|
#endif
 |