|
|
@ -12,20 +12,17 @@ |
|
|
|
#include "key.h" |
|
|
|
|
|
|
|
static T_key_structer_t *T_key_structer_s; |
|
|
|
static key_camera_cb camera_callback_s; |
|
|
|
static key_event_cb successful_event_cb_s; |
|
|
|
static key_event_cb failed_event_cb_s; |
|
|
|
static key_event_cb event_cb_s; |
|
|
|
|
|
|
|
void T_key_init(T_key_structer_t *T_key_structer) |
|
|
|
{ |
|
|
|
T_key_structer_s = T_key_structer; |
|
|
|
} |
|
|
|
|
|
|
|
void T_key_registered_cb(key_camera_cb camera_cb, key_event_cb successful_event_cb, key_event_cb failed_event_cb) |
|
|
|
void T_key_registered_cb(key_event_cb event_cb) |
|
|
|
{ |
|
|
|
camera_callback_s = camera_cb; |
|
|
|
successful_event_cb_s = successful_event_cb; |
|
|
|
failed_event_cb_s = failed_event_cb; |
|
|
|
|
|
|
|
event_cb_s = event_cb; |
|
|
|
} |
|
|
|
|
|
|
|
void T_key_on_event(void) |
|
|
@ -37,14 +34,7 @@ void T_key_schedule(void) |
|
|
|
T_key_structer_s->key_now_state = T_key_get_level(); |
|
|
|
if ((T_key_structer_s->key_before_state != T_key_structer_s->key_now_state) && (T_key_structer_s->key_now_state == true)) |
|
|
|
{ |
|
|
|
if (camera_callback_s()) |
|
|
|
{ |
|
|
|
successful_event_cb_s(); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
failed_event_cb_s(); |
|
|
|
} |
|
|
|
event_cb_s(); |
|
|
|
} |
|
|
|
T_key_structer_s->key_before_state = T_key_structer_s->key_now_state; |
|
|
|
} |
|
|
|