From: Jinhyung Choi Date: Sun, 28 Jul 2013 11:46:23 +0000 (+0900) Subject: ecs: added device_ntf X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.1~870 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e7a97899e663b0bc57599e6a8c55536eb10ea342;p=sdk%2Femulator%2Fqemu.git ecs: added device_ntf Signed-off-by: Jinhyung Choi --- diff --git a/tizen/src/ecs_msg.c b/tizen/src/ecs_msg.c index 7872a33409..1bcfed3cef 100644 --- a/tizen/src/ecs_msg.c +++ b/tizen/src/ecs_msg.c @@ -394,6 +394,57 @@ bool send_hostkeyboard_ntf(int is_on) bool send_device_ntf(const char* data, const int len) { - return send_injector_ntf(data, len); + type_length length = 0; + type_group group = 0; + type_action action = 0; + + const int catsize = 10; + char cat[catsize + 1]; + memset(cat, 0, catsize + 1); + + read_val_str(data, cat, catsize); + read_val_short(data + catsize, &length); + read_val_char(data + catsize + 2, &group); + read_val_char(data + catsize + 2 + 1, &action); + + + const char* ijdata = (data + catsize + 2 + 1 + 1); + + LOG("<< header cat = %s, length = %d, action=%d, group=%d", cat, length,action, group); + + ECS__Master master = ECS__MASTER__INIT; + ECS__DeviceNtf ntf = ECS__DEVICE_NTF__INIT; + + ntf.category = (char*) g_malloc(catsize + 1); + strncpy(ntf.category, cat, 10); + + + ntf.length = length; + ntf.group = group; + ntf.action = action; + + if (length > 0) + { + ntf.has_data = 1; + + ntf.data.data = g_malloc(length); + ntf.data.len = length; + memcpy(ntf.data.data, ijdata, length); + } + + master.type = ECS__MASTER__TYPE__DEVICE_NTF; + master.device_ntf = &ntf; + + send_to_ecp(&master); + + if (ntf.data.data && ntf.data.len > 0) + { + g_free(ntf.data.data); + } + + if (ntf.category) + g_free(ntf.category); + + return true; }