Ejemplo n.º 1
0
static void enkf_tui_analysis_update_title( enkf_main_type * enkf_main , menu_type * menu ) {
  const analysis_config_type * analysis_config = enkf_main_get_analysis_config( enkf_main );
  analysis_module_type * analysis_module = analysis_config_get_active_module( analysis_config );
  char * title = util_alloc_sprintf("Analysis menu [Current module:%s]" , analysis_module_get_name( analysis_module ));
  menu_set_title( menu , title );
  free( title );
}
Ejemplo n.º 2
0
void enkf_tui_fs_select_case(void * arg)
{
  int    prompt_len = 40;
  char * new_case;
  char * menu_title;

  arg_pack_type  * arg_pack     = arg_pack_safe_cast( arg );
  enkf_main_type * enkf_main    = enkf_main_safe_cast( arg_pack_iget_ptr(arg_pack, 0) );
  menu_type      * menu         = arg_pack_iget_ptr(arg_pack, 1);
  new_case = enkf_tui_fs_alloc_existing_case( enkf_main , "Name of case" , prompt_len);
  if (new_case != NULL) {
    enkf_main_select_fs( enkf_main ,  new_case );
    
    menu_title = util_alloc_sprintf("Manage cases. Current: %s", enkf_main_get_current_fs( enkf_main ));
    menu_set_title(menu, menu_title);
    free(menu_title);
    free(new_case);
  }
}
Ejemplo n.º 3
0
void enkf_tui_fs_create_case(void * arg)
{
  int prompt_len = 50;
  char new_case[256];
  char * menu_title;

  arg_pack_type  * arg_pack     = arg_pack_safe_cast( arg );
  enkf_main_type   * enkf_main  = enkf_main_safe_cast( arg_pack_iget_ptr(arg_pack, 0) );
  menu_type      * menu         = arg_pack_iget_ptr(arg_pack, 1);

  util_printf_prompt("Name of new case" , prompt_len , '=' , "=> ");
  if (fgets(new_case, prompt_len, stdin) != NULL){
    char *newline = strchr(new_case, '\n');
    if (newline)
      *newline = 0;

    if(strlen(new_case) != 0)
      enkf_main_select_fs( enkf_main , new_case );

  }
  menu_title = util_alloc_sprintf("Manage cases. Current: %s", enkf_main_get_current_fs(enkf_main));
  menu_set_title(menu, menu_title);
  free(menu_title);
}
Ejemplo n.º 4
0
void benchmark(void)
{
    unsigned long i;
    int row, col;

    menu_settings_t* mset   = &_menu_settings;
    menu_items_t   * mitems = &_menu_items;
    int menu_selected;

    /* Init timer stuff. */
    sc_tmr_start();

    menu_reset_settings(mset);
    menu_reset_items(mitems);
    menu_set_title(mset, "Saturn Memory Benchmark");

    menu_set_item(mitems, 0/*id*/, "Start Benchmarking    ", 0/*tag*/);
    menu_set_item(mitems, 1/*id*/, "Init DRAM             ", 1/*tag*/);
    menu_set_item(mitems, 2/*id*/, "Select test pattern   ", 2/*tag*/);
    menu_set_item(mitems, 3/*id*/, "Hexedit on error      ", 3/*tag*/);

    menu_set_pos(mset, -1/*x0*/, MENU_TOP_ROW/*y0*/, 30/*w*/, 7/*h*/, 1/*cols*/);
    menu_set_erase_on_exit(mset, 0);
    menu_set_callback_redraw(mset, display_bench_settings);

    menu_selected = 0;
    do
    {
        menu_selected = menu_start(mitems, mset, menu_selected/*selected_tag*/);
        if(mset->exit_code == MENU_EXIT_CANCEL)
        {
            return;
        }

        switch(menu_selected)
        {
        default:
        case(0):
            break;

        case(1):
            menu_clear_display(mset);
            my_RB_CartRAM_init(0/*CS0*/);
            bench_display_clear();
            break;

        case(2):
            test_pattern = (test_pattern+1)%PATTERN_CNT;
            break;

        case(3):
            hexedit_on_error = hexedit_on_error ? 0 : 1;
            break;
        }
    } while(menu_selected != 0);

    /* User requested benchmark start, so clear settings menu. */
    menu_clear_display(mset);


    /* Execute benchmarks. */
    bench_display_clear();
    row = 5, col = 2;
    for(i = 0; i < nBenches; i++)
    {
        unsigned short color;

        conio_printf(2, 4, COLOR_GREEN, "[%3d%%]Benchmarking \"%s\" ...", (100*i)/nBenches, benches[i].name);

        /* Perform bench. */
        benches[i].function(benches + i);

        /* Display some data in order to keep user waiting ... */
        display_bench_result(i);

        color = benches[i].status ? COLOR_YELLOW : COLOR_RED;
        conio_printf(col+ 0, row, color, "%s", benches[i].name);
        if(col==2)
        {
            col = 9;
        }
        else if(col==9)
        {
            col = 16;
        }
        else if(col==16)
        {
            col = 23;
        }
        else if(col==23)
        {
            col = 30;
        }
        else
        {
            col = 2;
            row++;
        }

        if(row >= BENCH_RESULT_STARTROW)
        {
            bench_display_clear();
            row = 5;
            col = 2;
        }
    }

prompt_start();//TMP?
    /* Display benchmark results. */
    bench_display_clear();

    menu_reset_settings(mset);
    menu_reset_items(mitems);
    menu_set_title(mset, "Benchmark Results");

    menu_set_pos(mset, -1/*x0*/, MENU_TOP_ROW/*y0*/, 30/*w*/, 12/*h*/, 1/*cols*/);
    menu_set_erase_on_exit(mset, 1);

    menu_set_features(mset, MENU_FEATURES_TEXTCENTER);
    menu_set_callback_getstr(mset, get_bench_name);
    menu_set_callback_redraw(mset, display_bench_result);

    menu_selected = 0;
    menu_selected = menu_list_start(NULL/*Items Array*/, nBenches, mset, menu_selected, NULL/*selection*/);
}