FairRoot/PandaRoot
runMvdPid.C
Go to the documentation of this file.
1 {
2  // Verbosity level (0=quiet, 1=event level, 2=track level, 3=debug)
3  Int_t iVerbose = 0;
4 
5  // Input file (MC events)
6  TString inFile = "Mvd_Test.root";
7  // Number of events to process
8  Int_t nEvents = 100;
9  // Parameter file
10  TString parFile = "MvdParams.root";
11  // Output file
12  TString outFile = "MvdPidIdeal.root";
13 
14 
15  // ---- Load libraries -------------------------------------------------
16  gROOT->LoadMacro("$VMCWORKDIR/gconfig/basiclibs.C");
17  basiclibs();
18  gSystem->Load("libGeoBase");
19  gSystem->Load("libParBase");
20  gSystem->Load("libBase");
21  gSystem->Load("libPndData");
22  gSystem->Load("libField");
23  gSystem->Load("libGen");
24  gSystem->Load("libPassive");
25  gSystem->Load("libgenfit");
26  gSystem->Load("libtpc");
27  gSystem->Load("libtpcreco");
28 //gSystem->Load("librecotasks");
29  gSystem->Load("libMvd");
30  gSystem->Load("libMvdReco");
31 
32 
33 // gSystem->Load("libMvdReco");
34 
35  // ----- Timer --------------------------------------------------------
36  TStopwatch timer;
37  timer.Start();
38 
39 
40  // ----- Reconstruction run -------------------------------------------
41  FairRunAna *fRun= new FairRunAna();
42  fRun->SetInputFile(inFile);
43  fRun->SetOutputFile(outFile);
44 
45 
46  // ----- Parameter database --------------------------------------------
47  FairRuntimeDb* rtdb = fRun->GetRuntimeDb();
48  FairParRootFileIo* parInput1 = new FairParRootFileIo();
49  parInput1->open(parFile.Data());
50  //FairParAsciiFileIo* parInput2 = new FairParAsciiFileIo();
51  //TString stsDigiFile = gSystem->Getenv("VMCWORKDIR");
52  //stsDigiFile += "/parameters/sts/sts_digi_new_standard.par";
53  //parInput2->open(stsDigiFile.Data(),"in");
54  rtdb->setFirstInput(parInput1);
55  //rtdb->setSecondInput(parInput2);
56  fRun->LoadGeometry();
57 
58 
59  // ----- Ideal Track Producers ---------------------------------------
61  mvdpid->SetVerbose(iVerbose);
62  fRun->AddTask(mvdpid);
63 
64 
65  // ----- Intialise and run --------------------------------------------
66  fRun->Init();
67  fRun->Run(0,nEvents); // ----- Finish -------------------------------------------------------
68  timer.Stop();
69  Double_t rtime = timer.RealTime();
70  Double_t ctime = timer.CpuTime();
71  cout << endl << endl;
72  cout << "Macro finished succesfully." << endl;
73  cout << "Output file is " << outFile << endl;
74  cout << "Parameter file is " << parFile << endl;
75  cout << "Real time " << rtime << " s, CPU time " << ctime << " s" << endl;
76  cout << endl;
77 
78 }
PndMvdPidIdealTask * mvdpid
Definition: runMvdPid.C:60
Int_t nEvents
Definition: runMvdPid.C:8
FairRunAna * fRun
Definition: runMvdPid.C:41
FairParRootFileIo * parInput1
Definition: runMvdPid.C:48
TString outFile
Definition: runMvdPid.C:12
TString inFile
Definition: runMvdPid.C:6
FairRuntimeDb * rtdb
Definition: runMvdPid.C:47
TString parFile
Definition: runMvdPid.C:10
Double_t
TStopwatch timer
Definition: runMvdPid.C:36
basiclibs()
Double_t rtime
Definition: runMvdPid.C:69
Double_t ctime
Definition: runMvdPid.C:70
Int_t iVerbose
virtual InitStatus Init()