MarlinTPC  1.2.0
HitTimeRecalculationProcessor.h
1 #ifndef HITTIMERECALCULATIONPROCESSOR_H
2 #define HITTIMERECALCULATIONPROCESSOR_H
3 
4 //LCIO
5 #include <lcio.h>
6 #include <EVENT/LCCollection.h>
7 #include <EVENT/TrackerData.h>
8 #include <IMPL/TrackerDataImpl.h>
9 #include <EVENT/TrackerPulse.h>
10 
11 //Marlin
12 #include <marlin/Processor.h>
13 #include "marlin/Global.h"
14 //GEAR
15 #include "gear/TPCParameters.h"
16 //LCCD
17 #include <lccd/ConditionsMap.hh>
18 #include "Pedestal.h"
19 #include "GenericADCElectronicsParameters.h"
20 // MARLINTPC
21 #include "TPCConditionsListener.h"
22 //C++
23 #include <string>
24 
25 namespace marlintpc
26 {
27  class PulseFinder; // forward declaration of the PulseFinder class.
28 
72  class HitTimeRecalculationProcessor : public marlin::Processor
73  {
74 
75  public:
76 
77  virtual Processor* newProcessor()
78  {
80  }
81 
83 
84  virtual void init();
85 
86  virtual void processRunHeader(lcio::LCRunHeader* run);
87 
88  virtual void processEvent(lcio::LCEvent* evt);
89 
90  virtual void check(lcio::LCEvent* evt);
91 
92  virtual void end();
93 
94  protected:
95 
97  std::string _inputColName;
99  std::string _outputColName;
101  std::string _pedestalColName;
102 
104  std::string _electrParaObjName;
105 
107  std::string _electrParaColName;
108 
115 
118 
123 
124  // override variables
125 
129 
133 
137 
141 
145 
149  double _getDriftVelocity();
150 
152 
153  };
154 }
155 #endif // HITTIMERECALCUILATIONPROCESSOR_H
156 
std::string _inputTPCConditionsCollectionName
the name of the collection the TPC conditions are stored with
Definition: HitTimeRecalculationProcessor.h:111
float _readoutFrequencyOverride
The readout frequency of every readout group (in MHz).
Definition: HitTimeRecalculationProcessor.h:128
std::string _pedestalColName
the name of the pedestal collection
Definition: HitTimeRecalculationProcessor.h:101
float _noiseValuePedestalWidthFactor
factor to calculate the noise cut
Definition: HitTimeRecalculationProcessor.h:122
float _pulseStartPedestalWidthFactor
factor to calculate the start threshold
Definition: HitTimeRecalculationProcessor.h:120
TPCConditionsListener * _tpcConditionsListener
the standard way to access TPC conditions: the TPCConditions object via listening ...
Definition: HitTimeRecalculationProcessor.h:114
int _timeCalculationMode
the mode to calulate the time
Definition: HitTimeRecalculationProcessor.h:116
PulseFinder * _pulseFinder
The instance of the pulse finder object.
Definition: HitTimeRecalculationProcessor.h:151
std::string _outputColName
name of the collection, where TrackerHits are stored
Definition: HitTimeRecalculationProcessor.h:99
This processor recalculates the time of the hit based on the highest pulse in the hit according to th...
Definition: HitTimeRecalculationProcessor.h:72
Helper Class which provides access to the TPC conditions for every event.
Definition: TPCConditionsListener.h:37
The PulseFinder class is working horse of the ModularPulseFinderProcessor.
Definition: PulseFinder.h:66
bool _isPedestalSubtractedOverride
Sets, if the data is already pedestal subtracted in the read-out electronics.
Definition: HitTimeRecalculationProcessor.h:140
float _driftVelocityOverride
drift velocity in [mm/mu s]
Definition: HitTimeRecalculationProcessor.h:148
std::string _inputColName
name of the collection, where input TrackerHits are stored
Definition: HitTimeRecalculationProcessor.h:97
std::string _electrParaColName
Name of the conditions collection in which the parameters of the read out electronics is stored...
Definition: HitTimeRecalculationProcessor.h:107
int _polarityOverride
the polarity of all readout groups, overrides LCCD
Definition: HitTimeRecalculationProcessor.h:144
float _pedestalWidthOverride
The pedestal width to be used for every hardware channel in every readout group.
Definition: HitTimeRecalculationProcessor.h:136
std::string _electrParaObjName
Name of the conditions object in which the parameters of the read out electronics is stored...
Definition: HitTimeRecalculationProcessor.h:104
float _pedestalValueOverride
The pedestal value to be used for every hardware channel in every readout group.
Definition: HitTimeRecalculationProcessor.h:132
double _timeCalculationParameter
parameter for time methods (different meaning for different methods)
Definition: HitTimeRecalculationProcessor.h:117