void emit_ERROR( int code, const char* text ) { char bfr[ 32 ] = {0}; sprintf( bfr, "%d", code ); vl_set( &g_RS.varlist, strlitlen( "error.code" ), bfr, strlen( bfr ) ); vl_set( &g_RS.varlist, strlitlen( "error.text" ), text, strlen( text ) ); }
int runner_fsprog_callback( int numerator, int denominator, const char* utf8_filename ) { X_DBG( printf( "--------- %03d%% --- %s ---\n", 100 * numerator / denominator, utf8_filename ) ); char bfr[ 32 ] = {0}; if( g_isTesting ) vl_set( &g_RS.varlist, strlitlen( "_action" ), strlitlen( "archive.test" ) ); else vl_set( &g_RS.varlist, strlitlen( "_action" ), strlitlen( "archive.extract" ) ); vl_set( &g_RS.varlist, strlitlen( "archive.cur_entry" ), utf8_filename, strlen( utf8_filename ) ); sprintf( bfr, "%d", numerator ); vl_set( &g_RS.varlist, strlitlen( "archive.num_processed" ), bfr, strlen( bfr ) ); sprintf( bfr, "%d", denominator ); vl_set( &g_RS.varlist, strlitlen( "archive.num_total" ), bfr, strlen( bfr ) ); sprintf( bfr, "%d", 100 * numerator / denominator ); vl_set( &g_RS.varlist, strlitlen( "archive.percent" ), bfr, strlen( bfr ) ); rsl_run( &g_RS ); runner_apply_changes(); while( win_process( 1 ) ); return 0; }
void runner_fsproc( int test ) { g_isTesting = test; vl_set( &g_RS.varlist, strlitlen( "_action.done" ), strlitlen( "" ) ); fsc_extract_files( test, runner_fsprog_callback ); vl_set( &g_RS.varlist, strlitlen( "_action.done" ), strlitlen( "1" ) ); runner_fsprog_callback( 2, 1, "100" ); vl_set( &g_RS.varlist, strlitlen( "_action" ), strlitlen( "" ) ); }
*/ return filterState.isEnabled(); } bool TraceAnalyzer::filterActive(FilterState::filter_t filter) const { return filterState.isEnabled(filter) || OR_filterState.isEnabled(filter); } #define WRITE_BUFFER_SIZE (256 * sysconf(_SC_PAGESIZE)) #define WRITE_BUFFER_LIMIT ((WRITE_BUFFER_SIZE - 64 * 1024)) const char TraceAnalyzer::spaceStr[] = \ " "; const int TraceAnalyzer::spaceStrLen = strlitlen(spaceStr); const char *const TraceAnalyzer::cpuevents[] = { "cpu-cycles", "cycles", }; const int TraceAnalyzer::CPUEVENTS_NR = sizeof(cpuevents) / sizeof(char*); event_t TraceAnalyzer::determineCPUEvent(bool &ok) { int i, j; int maxevent; const StringTree<> *stree = TraceEvent::getStringTree(); const TString *ename; event_t rval = (event_t) 0;
int main( int argc, char* argv[] ) { if( fs_init() ) return 1; win_initialize( argc, argv ); g_RS = rsl_create(); g_RS.change_cb = runner_change_callback; g_winActCb = runner_action_callback; rsl_compile( &g_RS, g_scriptData, NULL ); X_DBG( rsl_dump( &g_RS ) ); #if 0 /////////////////////////////////////////////////// // win_set_title( "Testā rešpekt" ); // win_set_background_color( 120, 150, 180 ); // win_set_background_image( 0 ); win_ctl_resize( 2 ); g_controls[0].type = WCTL_BUTTON; g_controls[0].x1 = 100; g_controls[0].y1 = 100; g_controls[0].x2 = 300; g_controls[0].y2 = 140; byte colors[ 24 ] = { 50, 50, 50, 1, 50, 50, 50, 1, 50, 50, 50, 1, 200, 200, 200, 1, 220, 220, 220, 1, 180, 180, 180, 1, }; memcpy( g_controls[0].fgColorN, colors, 24 ); strcpy( g_controls[0].text, "Spēlēt" ); win_ctl_updated( 0, WCU_EVERYTHING ); g_controls[1].type = WCTL_BUTTON; g_controls[1].x1 = 100; g_controls[1].y1 = 200; g_controls[1].x2 = 300; g_controls[1].y2 = 240; byte colors2[ 24 ] = { 50, 30, 30, 1, 60, 40, 40, 1, 70, 50, 50, 1, 190, 190, 210, 1, 210, 210, 230, 1, 170, 170, 190, 1, }; memcpy( g_controls[1].fgColorN, colors2, 24 ); strcpy( g_controls[1].text, "Instalēt" ); win_ctl_updated( 1, WCU_EVERYTHING ); /////////////////////////////////////////////////// #endif vl_set( &g_RS.varlist, strlitlen( "_action" ), strlitlen( "init" ) ); rsl_run( &g_RS ); vl_set( &g_RS.varlist, strlitlen( "_action" ), strlitlen( "" ) ); runner_apply_changes(); while( win_process( 0 ) ); rsl_destroy( &g_RS ); fs_free(); win_destroy(); return 0; }
void runner_action_callback( wcontrol* CTL, int action, int* data ) { char bfr[ 32 ] = {0}; if( action == WA_PROC_LAUNCH || action == WA_PROC_EXIT ) { if( action == WA_PROC_EXIT && g_have_tmpfiles ) { if( platfs_nukedir() ) ; // ERROR else g_have_tmpfiles = 0; } const char* actstr = action == WA_PROC_LAUNCH ? "launch" : "exit"; const char* statestr = action == WA_PROC_LAUNCH ? "1" : ""; vl_set( &g_RS.varlist, strlitlen( "_action" ), actstr, strlen( actstr ) ); vl_set( &g_RS.varlist, strlitlen( "_running" ), statestr, strlen( statestr ) ); rsl_run( &g_RS ); runner_apply_changes(); return; } g_event_control = CTL; int ctlid = CTL - g_controls; const char* actstr = "<unknown>"; switch( action ) { case WA_MOUSE_CLICK: actstr = "clicked"; break; case WA_MOUSE_ENTER: actstr = "mouseenter"; break; case WA_MOUSE_LEAVE: actstr = "mouseleave"; break; case WA_MOUSE_BTNDN: actstr = "buttondown"; break; case WA_MOUSE_BTNUP: actstr = "buttonup"; break; case WA_CTRL_CREATED: actstr = "created"; break; } sprintf( bfr, "#%d.%s", ctlid, actstr ); vl_set( &g_RS.varlist, strlitlen( "_action" ), bfr, strlen( bfr ) ); sprintf( bfr, "#%d", ctlid ); vl_set( &g_RS.varlist, strlitlen( "event.control" ), bfr, strlen( bfr ) ); const char* typestr = "none"; switch( CTL->type ) { case WCTL_TEXT: typestr = "text"; break; case WCTL_BUTTON: typestr = "button"; break; } vl_set( &g_RS.varlist, strlitlen( "event.control.type" ), typestr, strlen( typestr ) ); sprintf( bfr, "%d", CTL->state ); vl_set( &g_RS.varlist, strlitlen( "event.control.state" ), bfr, strlen( bfr ) ); rsl_run( &g_RS ); vl_set( &g_RS.varlist, strlitlen( "_action" ), strlitlen( "" ) ); vl_set( &g_RS.varlist, strlitlen( "event.control" ), strlitlen( "" ) ); vl_set( &g_RS.varlist, strlitlen( "event.control.type" ), strlitlen( "" ) ); vl_set( &g_RS.varlist, strlitlen( "event.control.state" ), strlitlen( "" ) ); g_event_control = NULL; runner_apply_changes(); }