//___________________________________________________________________________________ void CalibEI(const TString &i) { // TControlBar* bar = new TControlBar("vertical", "Intrinsic MWPC-"+i+" calibration"); bar->AddButton("dPhiEI", "CalibEI("+i+",1)", "dPhi shift E wrt I"); bar->AddButton("dPhiEI(Z)", "CalibEI("+i+",2)", "dPhi shift E wrt I as a func of Z"); bar->AddButton("dPhiEI(Phi)", "CalibEI("+i+",3)", "dPhi shift E wrt I as a func of Phi"); bar->AddButton("dPhiEI(Phi,Z)", "CalibEI("+i+",23)", "dPhi shift E wrt I as a func of Phi and Z"); bar->AddButton("dPhiEI(CGW)", "CalibEI("+i+",4)", "dPhi shift E wrt I as a func of CGW"); bar->AddButton("dPhiEI(CGI)", "CalibEI("+i+",5)", "dPhi shift E wrt I as a func of CGI"); bar->AddButton("dPhiEI(CGE)", "CalibEI("+i+",6)", "dPhi shift E wrt I as a func of CGE"); bar->SetButtonWidth(150); bar->Show(); }
void BrowseHistograms(const char* histname) { fHistName=histname; TSystemDirectory dir(".","."); TList *files = dir.GetListOfFiles(); if (!files) { cerr << "Error: No files found in " << fFileDir << endl; return; } files->Sort(); histograms = new TList(); saved = new TList(); c = new TCanvas("canvas","Browse Histograms"); TSystemFile *file; TIter next(files); Int_t n=0; TString fname; while ((file=(TSystemFile*)next())) { fname = file->GetName(); if (!file->IsDirectory() && fname.EndsWith(".root")) { histograms->Add(new TObjString(fname)); n++; //if(n>10) // break; } } DrawCurrHistogram(); TControlBar *bar = new TControlBar("vertical", "Control", 10, 10); bar->AddButton("Next","ProcessClick(1);", "Show next run"); bar->AddButton("Next And Save","NextAndSave();", "Show previous run"); bar->AddButton("Next And Forget","NextAndForget();", "Show previous run"); bar->AddButton("Prev","ProcessClick(-1);", "Show previous run"); bar->AddButton("Print saved","PrintSaved();", "Show previous run"); bar->SetButtonWidth(90); bar->Show(); }
//___________________________________________________________________________________ void CalibMwpcNaI(const TString &i) { // TControlBar* bar = new TControlBar("vertical", "MWPC-"+i+" wrt NaI"); bar->AddButton("dPhi", "CalibMwpcNaI("+i+",1,0,0,0,0)", "dPhi Mwpc-NaI"); bar->AddButton("dX", "CalibMwpcNaI("+i+",2,0,0,0,0)", "X shift"); bar->AddButton("dY", "CalibMwpcNaI("+i+",3,0,0,0,0)", "Y shift"); bar->AddButton("dZ", "CalibMwpcNaI("+i+",4,0,0,0,0)", "Z shift"); bar->AddButton("dPhi tracks", "CalibMwpcNaI("+i+",5,0,0,0,0)", "dPhi between tracks"); bar->AddButton("dTheta tracks", "CalibMwpcNaI("+i+",6,0,0,0,0)", "dTheta between tracks"); bar->AddButton("dPsi tracks", "CalibMwpcNaI("+i+",7,0,0,0,0)", "dPsi between tracks"); bar->AddButton("dZinter vs Zinter", "CalibMwpcNaI("+i+",8,0,0,0,0)", ""); bar->AddButton("dXinter vs Zinter", "CalibMwpcNaI("+i+",9,0,0,0,0)", ""); bar->AddButton("dYinter vs Zinter", "CalibMwpcNaI("+i+",10,0,0,0,0)", ""); bar->AddButton("dZinter vs PhiInter", "CalibMwpcNaI("+i+",11,0,0,0,0)", ""); bar->AddButton("dXinter vs PhiInter", "CalibMwpcNaI("+i+",12,0,0,0,0)", ""); bar->AddButton("dYinter vs PhiInter", "CalibMwpcNaI("+i+",13,0,0,0,0)", ""); bar->AddButton("dPhiInter vs PhiInter", "CalibMwpcNaI("+i+",14,0,0,0,0)", ""); bar->AddButton("dPhiInter vs Zinter", "CalibMwpcNaI("+i+",15,0,0,0,0)", ""); bar->SetButtonWidth(150); bar->Show(); }
//___________________________________________________________________________________ void CalibMwpc() { // TControlBar* bar = new TControlBar("vertical", "MWPC-1 wrt MWPC-0 calibration"); bar->AddButton("dPhi", "CalibMwpc(1, 0, 0, 0, 0)", "dPhi MWPC1 - MWPC0"); bar->AddButton("dX", "CalibMwpc(2, 0, 0, 0, 0)", "dX MWPC1 - MWPC0"); bar->AddButton("dY", "CalibMwpc(3, 0, 0, 0, 0)", "dY MWPC1 - MWPC0"); bar->AddButton("dZ", "CalibMwpc(4, 0, 0, 0, 0)", "dZ MWPC1 - MWPC0"); bar->AddButton("dPhi tracks", "CalibMwpc(5, 0, 0, 0, 0)", "dPhi tracks 1-2"); bar->AddButton("dTheta tracks", "CalibMwpc(6, 0, 0, 0, 0)", "dTheta tracks 1-2"); bar->AddButton("dTheta2 tracks2", "CalibMwpc(66, 0, 0, 0, 0)", "dTheta tracks 1-2"); bar->AddButton("dPsi tracks", "CalibMwpc(7, 0, 0, 0, 0)", "dPsi tracks 1-2"); bar->AddButton("dZinter vs Zinter", "CalibMwpc(8, 0, 0, 0, 0)", "dZ vs Zinter"); bar->AddButton("dXinter vs Zinter", "CalibMwpc(9, 0, 0, 0, 0)", "dX vs Zinter"); bar->AddButton("dYinter vs Zinter", "CalibMwpc(10, 0, 0, 0, 0)", "dY vs Zinter"); bar->AddButton("dZinter vs PhiInter", "CalibMwpc(11, 0, 0, 0, 0)", "dZinter vs PhiInter"); bar->AddButton("dXinter vs PhiInter", "CalibMwpc(12, 0, 0, 0, 0)", "dXinter vs PhiInter"); bar->AddButton("dYinter vs PhiInter", "CalibMwpc(13, 0, 0, 0, 0)", "dYinter vs PhiInter"); bar->AddButton("dPhi vs PhiInter", "CalibMwpc(14, 0, 0, 0, 0)", "dPhi vs PhiInter"); bar->AddButton("dPhi vs ZInter", "CalibMwpc(15, 0, 0, 0, 0)", "dPhi vs ZInter"); bar->SetButtonWidth(150); bar->Show(); }
//__________________________________________________________________ void GetControlBar() { gROOT->Reset(); /* //Add the tutorials directory to the macro path //This is necessary in case this macro is executed from another user directory TString dir = gSystem->UnixPathName(gInterpreter->GetCurrentMacroName()); dir.ReplaceAll("PeakSearch_207Bi_interactive.C",""); dir.ReplaceAll("/./",""); const char *current = gROOT->GetMacroPath(); gROOT->SetMacroPath(Form("%s:%s",current,dir.Data())); */ TControlBar *bar = new TControlBar("vertical", "Controls",20,10); //bar->SetNumberOfColumns(3); //bar->SetNumberOfRows(7); bar->AddButton("Root Browser", "new TBrowser;", "Start the ROOT Browser"); bar->AddButton("Open folder", "OpenDataFile();", "Open data folder, provide name on screen"); bar->AddButton("OpenPeaksFile", "OpenPeaksFile()", "Open the output file of the peaks details"); bar->AddButton("Next histogram", "GetNextHistogram(+1)"," Load the next histogram"); bar->AddButton("Prev histogram", "GetNextHistogram(-1)"," Load the previous histogram"); bar->AddButton("Rebin histogram ", "RebinHistogram()"," Rebin the current histogram"); bar->AddButton("Store binning ", "WriteRebin()"," Write the adequate bining of the histogram "); bar->AddButton("Close", "Close()", "Close the files and exit"); TControlBar *bar2 = new TControlBar("vertical", "Bi207 (keV)",100,100); //bar2->SetNumberOfColumns(3); //bar->SetNumberOfRows(7); bar2->AddButton("XRay 72.8", "AssignEnergy(72.805)", "AssignEnergy this energy : 21.4%"); bar2->AddButton("XRay 75.0", "AssignEnergy(74.969)", "AssignEnergy this energy : 35.7%"); bar2->AddButton("XRay 84.4", "AssignEnergy(84.450)", "AssignEnergy this energy : 4.31%"); bar2->AddButton("XRay 84.9", "AssignEnergy(84.938)", "AssignEnergy this energy : 8.27%"); bar2->AddButton("XRay 87.3", "AssignEnergy(87.300)", "AssignEnergy this energy : 3.02%"); //bar->AddSeparator() ; //TControlBar *bar3 = new TControlBar("vertical", "Bi207 ICE (keV)",50,50); //bar2->SetNumberOfColumns(3); //bar->SetNumberOfRows(7); bar2->AddButton("K 481.7", "AssignEnergy(481.6935)", "AssignEnergy this energy : 1.515%"); bar2->AddButton("L 553.8", "AssignEnergy(553.8372)", "AssignEnergy this energy : 0.438%"); bar2->AddButton("M 565.8", "AssignEnergy(565.8473)", "AssignEnergy this energy : 0.147%"); bar2->AddButton("K 975.6", "AssignEnergy(975.651)", "AssignEnergy this energy : 7.03%"); bar2->AddButton("L 1047.9", "AssignEnergy(1047.795)", "AssignEnergy this energy : 1.84%"); bar2->AddButton("M 1059.8", "AssignEnergy(1059.805)", "AssignEnergy this energy : 0.54%"); bar->SetButtonWidth(200); bar->Show(); bar2->SetButtonWidth(200); bar2->SetTextColor("blue"); //bar2->SetFont("-adobe-helvetica-bold-r-*-*-16-*-*-*-*-*-iso8859-1"); bar2->Show(); /* bar3->SetButtonWidth(100); bar3->SetTextColor("red"); bar3->SetFont("-adobe-helvetica-bold-r-*-*-16-*-*-*-*-*-iso8859-1"); bar3->Show(); */ gROOT->SaveContext(); }