void mainMenu(){ /* Prints main menu screen and gets user choice */ int userOption; /* Stores user chosen menu option */ /* Initial message */ system("clear"); printf("Bem vindo ao jogo: Batalha Naval\n\n[Pressione ENTER para ir ao menu principal]\n"); getchar(); /* Waits for ENTER keypress */ /* Menu Loop */ do{ printMainMenu(); /* Prints menu options */ scanf("%i", &userOption); /* Listens to user input */ switch(userOption){ /* Executes input */ case 1: startGame(); break; case 2: configureGame(); break; case 3: getRanking(); break; case 0: break; default: printf("Por favor escolha uma entrada valida!\n"); printf("\n[Pressione ENTER para continuar]"); getchar(); getchar(); } }while(userOption != 0); return; }
// ---------------------------------------------------------------------- void rankingOverlays(string fname, int n = 2) { TH1D* vHist[15]; vector<string> vNames; vNames.push_back("m1pt"); vNames.push_back("m2pt"); vNames.push_back("m1eta"); vNames.push_back("m2eta"); vNames.push_back("pt"); vNames.push_back("eta"); vNames.push_back("fls3d"); vNames.push_back("alpha"); vNames.push_back("maxdoca"); vNames.push_back("pvip"); vNames.push_back("pvips"); vNames.push_back("iso"); vNames.push_back("closetrk"); vNames.push_back("docatrk"); vNames.push_back("chi2dof"); string hsName; TH1D* h; for (int i = 0; i < vNames.size(); ++i) { h = new TH1D(vNames[i].c_str(), vNames[i].c_str(), 100, 0., 0.5); vHist[i] = h; } int seed(100), offset(0); string slabel; double w8; for (int i = 0; i < n; ++i) { offset = seed + i; h = getRanking(fname, "BDT", offset); for (int ibin = 1; ibin < h->GetNbinsX(); ++ibin) { slabel = h->GetXaxis()->GetBinLabel(ibin); if (!strcmp("", slabel.c_str())) break; w8 = h->GetBinContent(ibin); cout << slabel << " " << w8 << endl; for (int iv = 0; iv < vNames.size(); ++iv) { if (slabel == vNames[iv]) { cout << "filling " << w8 << " with name " << slabel << " into hist " << vNames[iv] << endl; vHist[iv]->Fill(w8); } } } } c0.Clear(); c0.Divide(4,4); for (int ic = 1; ic <= 15; ++ic) { c0->cd(ic); if (vHist[ic-1]) { vHist[ic-1]->Draw(); } else { cout << "vHist[" << ic-1 << "] not found" << endl; } } c0.SaveAs("rankingOverlays.pdf"); cout << "done" << endl; c0.Clear(); h->Draw(); }