HEART_BEAT( (short)1 ),
SCREEN_SHOT_DATA( (short)2 ),
DETAIL_INFO_DATA( (short)3 ),
+ RAMDUMP_COMPLETE( (short)4 ),
SENSOR_DAEMON_START( (short)800 ),
SHUTDOWN( (short)999 );
import java.util.logging.Level;
import java.util.logging.Logger;
+import org.eclipse.swt.SWT;
import org.tizen.emulator.skin.EmulatorSkin;
import org.tizen.emulator.skin.comm.ICommunicator;
import org.tizen.emulator.skin.comm.ICommunicator.SendCommand;
private AtomicInteger heartbeatCount;
private boolean isTerminated;
private boolean isSensorDaemonStarted;
+ private boolean isRamdumpCompleted;
private ScheduledExecutorService heartbeatExecutor;
private DataTranfer screenShotDataTransfer;
break;
}
+ case RAMDUMP_COMPLETE: {
+ logger.info("received RAMDUMP_COMPLETE from QEMU.");
+ synchronized ( this ) {
+ isRamdumpCompleted = true;
+ }
+ break;
+ }
case SENSOR_DAEMON_START: {
logger.info( "received SENSOR_DAEMON_START from QEMU." );
synchronized ( this ) {
return isSensorDaemonStarted;
}
+ public synchronized boolean isRamdumpCompleted() {
+ return isRamdumpCompleted;
+ }
+
private void increaseHeartbeatCount() {
int count = heartbeatCount.incrementAndGet();
if ( logger.isLoggable( Level.FINE ) ) {
void do_mouse_event( int event_type, int origin_x, int origin_y, int x, int y, int z )
{
- if( brightness_off ) {
+ if ( brightness_off ) {
TRACE( "reject mouse touch in lcd off : %d, x:%d, y:%d, z:%d\n", event_type, x, y, z );
return;
}
INFO("ram dump!\n");
dump_ram();
+
+ notify_ramdump_complete();
}
void request_close( void )
SEND_HEART_BEAT = 1,
SEND_SCREEN_SHOT = 2,
SEND_DETAIL_INFO = 3,
+ SEND_RAMDUMP_COMPLETE = 4,
SEND_SENSOR_DAEMON_START = 800,
SEND_SHUTDOWN = 999,
};
}
}
- if( success_send ) {
+ if ( success_send ) {
int count = 0;
int max_sleep_count = 10;
}
}
+void notify_ramdump_complete(void) {
+ INFO("notify_ramdump_complete\n");
+
+ if (client_sock) {
+ if (0 > send_skin_header_only( client_sock, SEND_RAMDUMP_COMPLETE, 1)) {
+ ERR("fail to send SEND_RAMDUMP_COMPLETE to skin.\n");
+ }
+ }
+}
+
+
int is_ready_skin_server( void ) {
return ready_server;
}
static void parse_skin_args( void ) {
int i;
- for( i = 0; i < skin_argc; i++ ) {
+ for ( i = 0; i < skin_argc; i++ ) {
char* arg = NULL;
arg = strdup( skin_argv[i] );
- if( arg ) {
+ if ( arg ) {
char* key = strtok( arg, "=" );
char* value = strtok( NULL, "=" );
#ifndef MARUSKIN_SERVER_H_
#define MARUSKIN_SERVER_H_
-int start_skin_server( int argc, char** argv, int qemu_argc, char** qemu_argv );
-void shutdown_skin_server( void );
-void notify_sensor_daemon_start( void );
-int is_ready_skin_server( void );
-int get_skin_server_port( void );
+int start_skin_server(int argc, char** argv, int qemu_argc, char** qemu_argv);
+void shutdown_skin_server(void);
+void notify_sensor_daemon_start(void);
+void notify_ramdump_complete(void);
+int is_ready_skin_server(void);
+int get_skin_server_port(void);
#endif /* MARUSKIN_SERVER_H_ */