FairRoot/PandaRoot
PndMasterDigiOnlyTask.cxx
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndMasterDigiOnlyTask source file -----
3 // ----- Created 31/01/16 by S. Spataro -----
4 // ----- Wrapper for digitizing tasks -----
5 // -------------------------------------------------------------------------
6 
7 
9 #include "PndMasterTask.h"
10 
12 #include "PndMvdDigiTask.h"
13 #include "PndMvdClusterTask.h"
14 #include "PndEmcHitsToWaveform.h"
15 #include "PndEmcWaveformToDigi.h"
16 #include "PndEmcMakeCluster.h"
17 #include "PndEmcMakeBump.h"
19 #include "PndSciTDigiTask.h"
20 #include "PndMdtHitProducerIdeal.h"
21 #include "PndMdtTrkProducer.h"
22 #include "PndDrcHitProducerReal.h"
23 #include "PndGemDigitize.h"
24 #include "PndGemFindHits.h"
27 #include "PndRichHitProducer.h"
28 
29 
30 #include <algorithm>
31 
32 
38 // ----- Default constructor -------------------------------------------
40  PndMasterTask("Master Digitization Only Task"), fOptions(options)
41 {
42 
43  fBranchTasks.push_back(new PndSttHitProducerRealFast());
44  fBranchTasks.push_back(new PndMvdDigiTask());
45 
46  fBranchTasks.push_back(new PndEmcHitsToWaveform());
47  fFixedPersistency[fBranchTasks.back()] = false;
48  fBranchTasks.push_back(new PndEmcWaveformToDigi());
49 
50  fBranchTasks.push_back(new PndSciTDigiTask());
51  fBranchTasks.push_back(new PndMdtHitProducerIdeal());
52  ((PndMdtHitProducerIdeal*)(fBranchTasks.back()))->SetPositionSmearing(.3);
53  fBranchTasks.push_back(new PndDrcHitProducerReal());
54 
55  // ----- GEM hit producers ---------------------------------
56  if ( (!fOptions.Contains("nogem")) || (!fOptions.Contains("gem0")) )
57  {
58  fBranchTasks.push_back(new PndGemDigitize("GEM Digitizer", 0));
59  }
60  fBranchTasks.push_back(new PndFtsHitProducerRealFast());
61  fBranchTasks.push_back(new PndFtofHitProducerIdeal());
62 
63  // ----- Rich hit producers ---------------------------
64  if ( !fOptions.Contains("day1") || !fOptions.Contains("phase1") )
65  {
66  fBranchTasks.push_back(new PndRichHitProducer());
67  }
68 
69  std::for_each(fBranchTasks.begin(), fBranchTasks.end(), [this](const FairTask* task){ Add((TTask*)task); } );
70 
71 
72  SetVerbose(0);
73 }
74 // -------------------------------------------------------------------------
75 
76 // ----- Destructor ----------------------------------------------------
78 {
79 }
80 // -------------------------------------------------------------------------
81 
Takes list of PndEmcHits and creates PndEmcWaveform.
mychain Add("run.root")
void SetVerbose(Int_t iVerbose=1)
Set the Verbosity to all the tasks.
virtual ~PndMasterDigiOnlyTask()
Destructor.
Abstract class for all the master task list classes.
Definition: PndMasterTask.h:21
std::vector< PndPersistencyTask * > fBranchTasks
Definition: PndMasterTask.h:80
PndMasterDigiOnlyTask(TString options="")
Default constructor with options This string can be: "" -> default settings full setup "day1" -> Set...
TString fOptions
Options parsed to the digitization.
std::map< PndPersistencyTask *, bool > fFixedPersistency
Definition: PndMasterTask.h:82
ClassImp(PndAnaContFact)
Takes list of PndEmcWaveform and creates PndEmcDigi.
The default digitization tasks.