preanalysis/PreanalyzeFinudaRun.cxx

00001 // @(#)fROOT/preanalysis:$Name:  $:$Id: PreanalyzeFinudaRun.cxx,v 1.2 2007/09/05 10:25:02 Diego_Faso Exp $
00002 // Author: Diego Faso <mailto:faso@to.infn.it>, 2007/01/15
00003 
00004 #include "TFndPreanProcess.h"
00005 
00006 void PreanalyzeFinudaRun(const TString &run_type, const Int_t &run_num, const Int_t &n_evs_run){
00007   // NOTE:
00008 
00009   Int_t debug_lev = 0;
00010 
00011   TFndPreanProcess *PreanProc = new TFndPreanProcess();
00012 
00013   PreanProc->SetDBhost("$MSQL_DB_HOST");
00014   PreanProc->SetDataPath("$RDT");
00015   PreanProc->SetRunType(run_type);
00016   PreanProc->SetRunEventTarget(n_evs_run);
00017   PreanProc->SetTotEventTarget(-1);
00018   PreanProc->SetDebugLevel(debug_lev);
00019 
00020   cout << " -> FinudaPreanalysis starting for run " << run_num << " ..." << endl;
00021 
00022   PreanProc->InitPreanalysis();
00023   PreanProc->SetCurrentRun(run_num);
00024   PreanProc->ProcessSingleRun();
00025   
00026   // ---
00027   delete PreanProc; // free used memory
00028   
00029   cout << "    -> done!" << endl;
00030   cout << " -> FinudaPreanalysis completed!" << endl;
00031   gApplication->Terminate();
00032   return;
00033 }
00034 
00035 
00039 int main(int argc, char **argv)
00040 {
00041 
00042   //   if(argc < 4){
00043   //     cerr << "geb2hdt error: too few arguments received" << endl;
00044   //     exit(0);
00045   //   }
00046   cout << "PreanProcFinuda executable started: number of arguments: " << argc << endl;
00047 
00048 
00049 
00050   TString run_type = "FINU";
00051   if(argc > 1) run_type = TString(argv[1]);
00052   Int_t run_num = -1;
00053   if(argc > 2) run_num = atoi(argv[2]);
00054   Int_t n_evs_run=-1;
00055   if(argc > 3) n_evs_run = atoi(argv[3]);  
00056   
00057   cout << "run_type: \"" << run_type << "\"; run_num: \"" << run_num << "\"; n_evs_run: " << n_evs_run << endl;
00058   
00059   argc = 0;
00060   for(Int_t ar=0;ar<argc;ar++)argv[ar] = '\0';
00061 
00062   for(Int_t ar=0;ar<argc;ar++) cout << "arg[" << ar << "]: \"" << argv[ar] << "\"." << endl;
00063   cout << endl;
00064 
00065   cout << " -------------> \"" << *(argv+2) << "\"" << endl;
00066   TApplication *theApp = new TApplication("PreanProcFinuda run application", &argc,argv,0,1);
00067   //  TApplication *theApp = new TApplication("geb2hdt run application", &argc,argv,0,-1);
00068 
00069   theApp->ProcessFile("$FROOTSYS/preanalysis/preanlogon.C");
00070 
00071   PreanalyzeFinudaRun(run_type, run_num, n_evs_run);
00072 
00073   theApp->Run();
00074   theApp->Terminate(0);
00075   delete theApp;
00076   return 0;
00077 }

Generated on Tue Oct 16 15:40:47 2007 by  doxygen 1.5.2