MarlinTPC  1.2.0
BiasedResidualsProcessor.h
1 #ifndef BIASED_RESIDUALS_PROCESSOR_H
2 #define BIASED_RESIDUALS_PROCESSOR_H 1
3 
4 //LCIO
5 #include <lcio.h>
6 
7 //MARLIN
8 #include "marlin/Processor.h"
9 
10 namespace AIDA{
11  class IHistogram1D;
12  class IHistogram2D;
13 }
14 
15 
16 namespace marlintpc
17 {
18 
19  class TrackFitterFactory;
20 // class TrackFitterBase;
21 
48  class BiasedResidualsProcessor : public marlin::Processor{
49 
50  public:
51 
52  virtual Processor* newProcessor() { return new BiasedResidualsProcessor ; }
53 
55 
57 
58  virtual void init();
59 
60  virtual void processRunHeader(lcio::LCRunHeader* run ) ;
61 
62  virtual void processEvent(lcio::LCEvent * evt ) ;
63 
64  protected:
65 
66  std::string _inputColName ;
67  std::string _relationsColName ;
68 
69  AIDA::IHistogram1D * _residualsXYHisto;
70  AIDA::IHistogram1D * _residualsZHisto;
71 
72  AIDA::IHistogram2D * _residualsXY_vs_xr;
73  AIDA::IHistogram2D * _residualsXY_vs_yphi;
74  AIDA::IHistogram2D * _residualsXY_vs_z;
75 
76  AIDA::IHistogram2D * _residualsZ_vs_xr;
77  AIDA::IHistogram2D * _residualsZ_vs_yphi;
78  AIDA::IHistogram2D * _residualsZ_vs_z;
79 
82 
85 
87  int _dofXY;
88 
89  float _xrMin;
90  float _xrMax;
91  float _yphiMin;
92  float _yphiMax;
93 
95  };
96 }
97 
98 #endif // BIASED_RESIDUALS_PROCESSOR_H
virtual void processEvent(lcio::LCEvent *evt)
Definition: BiasedResidualsProcessor.cc:223
float _xrMax
Maximal x or r for 2D histograms.
Definition: BiasedResidualsProcessor.h:90
int _dofXY
Degrees of freedom in the XY plane.
Definition: BiasedResidualsProcessor.h:87
AIDA::IHistogram2D * _residualsXY_vs_xr
the residuals in the xy-plane vs x or r
Definition: BiasedResidualsProcessor.h:72
AIDA::IHistogram2D * _residualsXY_vs_yphi
the residuals in the xy-plane vs y or phi
Definition: BiasedResidualsProcessor.h:73
std::string _relationsColName
the name of the relatiobs collection to reference tracks
Definition: BiasedResidualsProcessor.h:67
bool _forceCartesian
Flag whether to force the histograms to cartesian values in case of polar TPC coordinates.
Definition: BiasedResidualsProcessor.h:94
AIDA::IHistogram2D * _residualsZ_vs_xr
the residuals in z vs x or r
Definition: BiasedResidualsProcessor.h:76
float _yphiMin
Minimal y or phi for 2D histograms.
Definition: BiasedResidualsProcessor.h:91
std::string _inputColName
the name of the input collection
Definition: BiasedResidualsProcessor.h:66
float _histogramMinValueXY
Minimum value in xy histogram.
Definition: BiasedResidualsProcessor.h:80
AIDA::IHistogram1D * _residualsZHisto
the residuals in z (time)
Definition: BiasedResidualsProcessor.h:70
bool _applyCorrectionFactor
Multiply residual with .
Definition: BiasedResidualsProcessor.h:86
float _histogramMinValueZ
Minimum value in z histogram.
Definition: BiasedResidualsProcessor.h:83
AIDA::IHistogram2D * _residualsZ_vs_yphi
the residuals z vs y or phi
Definition: BiasedResidualsProcessor.h:77
float _histogramMaxValueXY
Maximum value in xy histogram.
Definition: BiasedResidualsProcessor.h:81
float _yphiMax
Maximal y or phi for 2D histograms.
Definition: BiasedResidualsProcessor.h:92
float _histogramMaxValueZ
Maximum value in z histogram.
Definition: BiasedResidualsProcessor.h:84
AIDA::IHistogram2D * _residualsXY_vs_z
the residuals in the xy-plane vs z
Definition: BiasedResidualsProcessor.h:74
Fill the residuals of the hits into an AIDA histogram.
Definition: BiasedResidualsProcessor.h:48
AIDA::IHistogram1D * _residualsXYHisto
the residuals in the xy-plane
Definition: BiasedResidualsProcessor.h:69
AIDA::IHistogram2D * _residualsZ_vs_z
the residuals z vs z
Definition: BiasedResidualsProcessor.h:78
float _xrMin
Minimal x or r for 2D histograms.
Definition: BiasedResidualsProcessor.h:89