FairRoot/PandaRoot
NEW/apvReadAnalysis.C
Go to the documentation of this file.
1 // root macro to analyze the clusterization output
2 {
3  bool verbose = true;
4 
5  // ----- Load libraries ------------------------------------------------
6  gROOT->Macro("$VMCWORKDIR/gconfig/rootlogon.C");
7  //gROOT->LoadMacro("$VMCWORKDIR/macro/mvd/Tools.C");
8  // LoadPandaStyle();
9  gROOT->LoadMacro("$VMCWORKDIR/macro/mvd/Helper.C");
10  // ----- Timer --------------------------------------------------------
11  TStopwatch timer;
12  timer.Start();
13  // ------------------------------------------------------------------------
14  //TString HitFileName = "strahl_";
15  TString HitFileName = "data100.root";
16  TString CalibFileName = "ExampleBox.calib";
17  TString MapFileName = "desyBox.mapping";
18 
19  TString directory = gSystem->Getenv("VMCWORKDIR");
20  TString geomFile = directory + "/geometry/TrackingStationDesyAli.root";
21  TString digiparFile = directory + "/macro/params/all.par";
22  TString parFile = "par.root";
23 
24  TString outFile = HitFileName + ".digis.root";
25 
26  FairRunAna *fRun= new FairRunAna();
27  //fRun->SetInputFile("mapout.root");
28  fRun->SetOutputFile(outFile);
29 
30  // ----- Parameter database --------------------------------------------
31  FairRuntimeDb* rtdb = fRun->GetRuntimeDb();
32 
33  FairParAsciiFileIo* parInput = new FairParAsciiFileIo();
34  parInput->open(digiparFile.Data(),"in");
35  rtdb->setFirstInput(parInput);
36 
37  FairParRootFileIo* output=new FairParRootFileIo(kTRUE);
38  output->open(parFile.Data());
39  rtdb->setOutput(output);
40 
41  fRun->SetGeomFile(geomFile); // set filname
42 
43  // ----- Converter -----------------------------------------------------
44  PndMvdConvertApv* ApvConverter= new PndMvdConvertApv(CalibFileName, HitFileName);
45  PndMvdBoxMap* ApvMapper = new PndMvdBoxMap(MapFileName.Data());
46 
47  PndMvdConvertApvTask* convertTask = new PndMvdConvertApvTask(ApvConverter,ApvMapper);
48 
49 
50  //convertTask->SetVerbose(3);
51  fRun->AddTask(convertTask);
52 
53  fRun->Init();
54 
55  long int nEvents = ApvConverter->GetNofEvents();
56  if(nEvents>100) nEvents=100;
57  cout<<" ---- Start RUN ----"<<endl;
58  fRun->Run(0,nEvents);
59 
60  rtdb->print();
61  rtdb->saveOutput();
62 
63  // ----- Finish -------------------------------------------------------
64  timer.Stop();
65  Double_t rtime = timer.RealTime();
66  Double_t ctime = timer.CpuTime();
67  cout << endl << endl;
68  cout << "Macro finished succesfully." << endl;
69  cout << "Real time " << rtime << " s, CPU time " << ctime << " s" << endl;
70  cout << endl;
71  // ------------------------------------------------------------------------
72 
73 }
74 
TString outFile
Definition: hit_dirc.C:17
#define verbose
TString MapFileName
PndMvdMapApv * ApvMapper
Convert meassured data into PndSdsDigiStrip.
FairParRootFileIo * output
Definition: sim_emc_apd.C:120
TString geomFile
Convert Task of data.
FairRunAna * fRun
Definition: hit_dirc.C:58
TString HitFileName
Double_t
TString parFile
Definition: hit_dirc.C:14
Int_t nEvents
Definition: hit_dirc.C:11
TStopwatch timer
Definition: hit_dirc.C:51
PndMvdConvertApv * ApvConverter
FairRuntimeDb * rtdb
Definition: hit_dirc.C:66
Double_t ctime
Definition: hit_dirc.C:114
PndMvdConvertApvTask * convertTask
FairParAsciiFileIo * parInput
Double_t rtime
Definition: hit_dirc.C:113
TString directory
TString digiparFile
TString CalibFileName