/**
*
*
- * Copyright (C) 2011 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact:
* GiWoong Kim <giwoong.kim@samsung.com>
public enum SendCommand {
/* This values must match the QEMU definitions */
- SEND_START( (short)1 ),
-
- SEND_MOUSE_EVENT( (short)10 ),
- SEND_KEY_EVENT( (short)11 ),
- SEND_HARD_KEY_EVENT( (short)12 ),
- CHANGE_LCD_STATE( (short)13 ),
- OPEN_SHELL( (short)14 ),
- HOST_KBD( (short)15 ),
- SCREEN_SHOT( (short)16 ),
- DETAIL_INFO( (short)17 ),
- RAM_DUMP( (short)18 ),
- GUEST_DUMP( (short)19 ),
-
- RESPONSE_HEART_BEAT( (short)900 ),
- CLOSE( (short)998 ),
- RESPONSE_SHUTDOWN( (short)999 );
-
+ SEND_START((short) 1),
+
+ SEND_MOUSE_EVENT((short) 10),
+ SEND_KEY_EVENT((short) 11),
+ SEND_HARD_KEY_EVENT((short) 12),
+ CHANGE_LCD_STATE((short) 13),
+ OPEN_SHELL((short) 14),
+ HOST_KBD((short) 15),
+ SCREEN_SHOT((short) 16),
+ DETAIL_INFO((short) 17),
+ RAM_DUMP((short) 18),
+ GUEST_DUMP((short) 19),
+
+ RESPONSE_HEART_BEAT((short) 900),
+ RESPONSE_DRAW_FRAMEBUFFER((short) 901),
+ CLOSE((short) 998),
+ RESPONSE_SHUTDOWN((short) 999);
+
private short value;
- SendCommand( short value ) {
+ SendCommand(short value) {
this.value = value;
}
return this.value;
}
- public static SendCommand getValue( String val ) {
+ public static SendCommand getValue(String val) {
SendCommand[] values = SendCommand.values();
for (int i = 0; i < values.length; i++) {
- if( values[i].value == Short.parseShort( val ) ) {
+ if (values[i].value == Short.parseShort(val)) {
return values[i];
}
}
- throw new IllegalArgumentException( val );
+ throw new IllegalArgumentException(val);
}
- public static SendCommand getValue( short val ) {
+ public static SendCommand getValue(short val) {
SendCommand[] values = SendCommand.values();
for (int i = 0; i < values.length; i++) {
- if( values[i].value == val ) {
+ if (values[i].value == val) {
return values[i];
}
}
- throw new IllegalArgumentException( Integer.toString(val) );
+ throw new IllegalArgumentException(Integer.toString(val));
}
}
BOOTING_PROGRESS((short) 5),
BRIGHTNESS_VALUE((short) 6),
SENSOR_DAEMON_START((short) 800),
+ DRAW_FRAME((short) 900),
SHUTDOWN((short) 999);
private short value;
return this.value;
}
- public static ReceiveCommand getValue( String val ) {
+ public static ReceiveCommand getValue(String val) {
ReceiveCommand[] values = ReceiveCommand.values();
for (int i = 0; i < values.length; i++) {
- if( values[i].value == Short.parseShort( val ) ) {
+ if (values[i].value == Short.parseShort(val)) {
return values[i];
}
}
- throw new IllegalArgumentException( val );
+ throw new IllegalArgumentException(val);
}
- public static ReceiveCommand getValue( short val ) {
+ public static ReceiveCommand getValue(short val) {
ReceiveCommand[] values = ReceiveCommand.values();
for (int i = 0; i < values.length; i++) {
- if( values[i].value == val ) {
+ if (values[i].value == val) {
return values[i];
}
}
- throw new IllegalArgumentException( Integer.toString(val) );
+ throw new IllegalArgumentException(Integer.toString(val));
}
}
/*
* socket server for emulator skin
*
- * Copyright (C) 2011 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact:
* GiWoong Kim <giwoong.kim@samsung.com>
RECV_RAM_DUMP = 18,
RECV_GUESTMEMORY_DUMP = 19,
RECV_RESPONSE_HEART_BEAT = 900,
+ RECV_RESPONSE_DRAW_FRAME = 901,
RECV_CLOSE = 998,
RECV_RESPONSE_SHUTDOWN = 999,
};
SEND_BOOTING_PROGRESS = 5,
SEND_BRIGHTNESS_VALUE = 6,
SEND_SENSOR_DAEMON_START = 800,
+ SEND_DRAW_FRAME = 900,
SEND_SHUTDOWN = 999,
};
parse_skinconfig_prop();
- // arguments have higher priority than '.skinconfig.properties'
+ /* arguments have higher priority than '.skinconfig.properties' */
parse_skin_args();
INFO("ignore_heartbeat:%d\n", ignore_heartbeat);
QemuThread qemu_thread;
- qemu_thread_create( &qemu_thread, run_skin_server, NULL,
- QEMU_THREAD_JOINABLE);
+ qemu_thread_create(&qemu_thread, run_skin_server,
+ NULL, QEMU_THREAD_JOINABLE);
return 1;
pthread_mutex_destroy(&mutex_recv_heartbeat_count);
}
+void notify_draw_frame(void)
+{
+#if 0
+ INFO("notify_draw_frame\n");
+#endif
+
+ if (client_sock) {
+ if (0 > send_skin_header_only(
+ client_sock, SEND_DRAW_FRAME, 1)) {
+
+ ERR("fail to send SEND_DRAW_FRAME to skin.\n");
+ }
+ } else {
+ INFO("skin client socket is not connected yet\n");
+ }
+}
+
void notify_sensor_daemon_start(void)
{
INFO("notify_sensor_daemon_start\n");
onoff_host_kbd(on);
break;
}
+ case RECV_RESPONSE_DRAW_FRAME: {
+ //TODO:
+ log_cnt += sprintf(log_buf + log_cnt, "RECV_RESPONSE_DRAW_FRAME ==\n");
+#if 0
+ TRACE(log_buf);
+#endif
+ break;
+ }
case RECV_CLOSE: {
log_cnt += sprintf(log_buf + log_cnt, "RECV_CLOSE ==\n");
TRACE(log_buf);