#ifndef POWERDOWN_H
#define POWERDOWN_H

#include <apps.h>

/* Эт?структур?идентифицирует приложение. Передаёт? ?любо?обработчик событи?*/
typedef struct
{ 
    APPLICATION_T           apt; /* Должно обязательно присутствовать, причём первым */
	
    /* Здес?кладут? прочие данные приложен? */
    /* ... */

} APP_PowerDown_T;

/* Сост?ния приложен? */
typedef enum
{
    HW_STATE_ANY, /* ANY-state всегда первым */

    HW_STATE_MAIN,

    HW_STATE_MAX /* Для удобства */
} HW_STATES_T;



UINT32 Register( char* file_uri,  char* param,  UINT32 reserve );

UINT32 startApp( EVENT_STACK_T *ev_st,  REG_ID_T reg_id,  UINT32 param2 );
UINT32 destroyApp( EVENT_STACK_T *ev_st,  void *app );

UINT32 MainStateEnter( EVENT_STACK_T *ev_st,  void *app,  ENTER_STATE_TYPE_T type );

UINT32 HandleKeypress( EVENT_STACK_T *ev_st,  void *app );

UINT32 HandleKeyrelease( EVENT_STACK_T *ev_st,  void *app );

UINT32 Timer( EVENT_STACK_T *ev_st,  void *app );





#endif