MarlinTPC  1.2.0
TimePixTrackEventDisplayProcessor.h
1 #ifndef TIMEPIXTRACKEVENTDISPLAYPROCESSOR_H
2 #define TIMEPIXTRACKEVENTDISPLAYPROCESSOR_H
3 
4 // include what you need from lcio
5 #include <EVENT/LCEvent.h>
6 #include <IMPL/LCCollectionVec.h>
7 #include <EVENT/Track.h>
8 #include <EVENT/TrackerHit.h>
9 #include <Exceptions.h>
10 #include <gear/BField.h>
11 #include "SimpleHelixTrackModel.h"
12 
13 // ROOT
14 #include "TList.h" // TH2D->GetListOfFunctions()
15 #include "TCanvas.h"
16 #include "TF1.h"
17 #include "TMarker.h"
18 #include "TGraph.h"
19 #include "TLegend.h"
20 #include "TMath.h"
21 #include "TH2D.h"
22 #include "TFile.h"
23 
24 #include <marlin/Processor.h>
25 #include <lcio.h>
26 #include <sstream>
27 #include <string>
28 #include <vector>
29 #include <iomanip> // setw()
30 
31 
32 namespace AIDA{
33  class IHistogram1D;
34  class IHistogram2D;
35 }
36 
37 namespace marlintpc
38 {
48 class TimePixTrackEventDisplayProcessor : public marlin::Processor
49 {
50  public:
51 
52  virtual Processor* newProcessor() { return new TimePixTrackEventDisplayProcessor; }
53 
56  {
57  }
58 
59  virtual void init();
60 
61  virtual void processRunHeader(lcio::LCRunHeader* run);
62 
63  virtual void processEvent(lcio::LCEvent* evt);
64 
65  virtual void check(lcio::LCEvent* evt);
66 
67  virtual void end();
68 
69  public:
76  static TGraph * DrawHelixXY( const Track * const myTrack );
77 
78 
85  static TGraph * DrawStraightLineXY( const Track * const myTrack );
86 
93  static TGraph * DrawStraightLineZX( const Track * const myTrack );
94 
101  static TGraph * DrawHelixZX( const Track * const myTrack );
102 
103  protected:
104  std::string _inputColNameTracks ;
105  std::string _TrackerHitColName;
107  /* the place for protected and private member data and functions */
108  TH2D * _FullXYHist;
109  TH2D * _FullZXHist;
110  TH2D * _FullZYHist;
111  float _xMin;
112  float _xMax;
113  float _yMin;
114  float _yMax;
115  float _zMin;
116  float _zMax;
117  int _xPixel;
118  int _yPixel;
121  TFile * _file;
122  bool _fileOpen;
123 };
124 } // namespace marlintpc
125 #endif // TIMEPIXTRACKEVENTDISPLAYPROCESSOR_H
TH2D * _FullZXHist
Definition: TimePixTrackEventDisplayProcessor.h:109
int _outputIsTransient
Definition: TimePixTrackEventDisplayProcessor.h:106
float _xMin
Definition: TimePixTrackEventDisplayProcessor.h:111
int _MaxNumberOfHistograms
Definition: TimePixTrackEventDisplayProcessor.h:119
std::string _inputColNameTracks
Definition: TimePixTrackEventDisplayProcessor.h:104
float _zMin
Definition: TimePixTrackEventDisplayProcessor.h:115
float _zMax
Definition: TimePixTrackEventDisplayProcessor.h:116
float _xMax
Definition: TimePixTrackEventDisplayProcessor.h:112
TH2D * _FullZYHist
Definition: TimePixTrackEventDisplayProcessor.h:110
static TGraph * DrawHelixZX(const Track *const myTrack)
Returns TGraph with points on the helix projection in zyx-plane.
Definition: TimePixTrackEventDisplayProcessor.cc:549
float _yMax
Definition: TimePixTrackEventDisplayProcessor.h:114
TFile * _file
Definition: TimePixTrackEventDisplayProcessor.h:121
std::string _TrackerHitColName
Definition: TimePixTrackEventDisplayProcessor.h:105
static TGraph * DrawHelixXY(const Track *const myTrack)
Return TGraph with points on the helix projection in xy-plane .
Definition: TimePixTrackEventDisplayProcessor.cc:451
static TGraph * DrawStraightLineZX(const Track *const myTrack)
Returns TGraph with two points in the zx-plane.
Definition: TimePixTrackEventDisplayProcessor.cc:499
TH2D * _FullXYHist
Definition: TimePixTrackEventDisplayProcessor.h:108
static TGraph * DrawStraightLineXY(const Track *const myTrack)
Returns TGraph with two points in the xy-plane.
Definition: TimePixTrackEventDisplayProcessor.cc:399
int _xPixel
Definition: TimePixTrackEventDisplayProcessor.h:117
bool _fileOpen
Definition: TimePixTrackEventDisplayProcessor.h:122
TimePixTrackEventDisplayProcessor draws all TrackerHits in an event as black dots (kFullDotMedium)...
Definition: TimePixTrackEventDisplayProcessor.h:48
int _yPixel
Definition: TimePixTrackEventDisplayProcessor.h:118
int _CurNumberOfHistograms
Definition: TimePixTrackEventDisplayProcessor.h:120
float _yMin
Definition: TimePixTrackEventDisplayProcessor.h:113