"MarlinReco"  1.16.0
LEPTrackingProcessor.h
1 #ifndef LEPTrackingProcessor_h
2 #define LEPTrackingProcessor_h 1
3 
4 #include "marlin/Processor.h"
5 #include "lcio.h"
6 #include <string>
7 #include <EVENT/TrackerHit.h>
8 #include <IMPL/LCCollectionVec.h>
9 #include <EVENT/SimTrackerHit.h>
10 #include "TFile.h"
11 #include "TH1.h"
12 #include "TH2.h"
13 
14 
15 using namespace lcio ;
16 using namespace marlin ;
17 
18 
19 
83 class LEPTrackingProcessor : public Processor {
84 
85  public:
86 
87  virtual Processor* newProcessor() { return new LEPTrackingProcessor ; }
88 
89 
91 
95  virtual void init() ;
96 
99  virtual void processRunHeader( LCRunHeader* run ) ;
100 
103  virtual void processEvent( LCEvent * evt ) ;
104 
105 
106  virtual void check( LCEvent * evt ) ;
107 
108 
111  virtual void end() ;
112 
115  void selectTPCHits(LCCollection* tpcTHcol, LCCollectionVec* remainingCol, LCCollectionVec* cutCol, int binHeight, int binWidth, float zmin=-10000., float zmax=+10000.);
116 
119  void selectTPCHits(LCCollection* tpcTHcol, LCCollection* usedCol, float zmin = -10000., float zmax = +10000.);
120 
123  void FillTPCHitBanks();
124 
125  protected:
126 
129  std::string _colNameTPC ;
130  std::string _colNameVTX ;
131  std::string _colNameSIT ;
132  std::string _colNameTPCTracks ;
133  std::string _colNameTracks ;
134  std::string _colNameMCTPCTracksRel ;
135  std::string _colNameMCTracksRel ;
136  std::string _usedColName;
137  std::string _droppedColName;
138 
139  LCCollectionVec* _tpcTrackVec ;
140  LCCollectionVec* _tpclcRelVec ;
141  LCCollectionVec* _usedCol ;
142  LCCollectionVec* _droppedCol ;
143  LCCollectionVec* _usedColForOutput ;
144  LCCollectionVec* _droppedColForOutput ;
145 
146  int _nRun ;
147  int _nEvt ;
148 
149  int _binHeight ;
150  int _nSlicesInZ ;
151  int _binWidth ;
152  int _multiplicityCut ;
153  int _AlwaysRunCurlKiller ;
154  std::vector<EVENT::TrackerHit*> _goodHits;
155  std::vector<EVENT::TrackerHit*> _savedGoodHits;
156  int _histograms;
157  TH1F* fTPCR;
158  TH1F* fTPCRRaw;
159  TH1F* fTPCZ;
160  TH1F* fTPCZRaw;
161  TH2F* fTPCRZ;
162  TH2F* fTPCXYRaw;
163  TH2F* fTPCXY;
164  TH2F* fTPCRZRaw;
165 
166 
167 } ;
168 
169 #endif
170 
171 
172 
std::string _colNameTPC
Input collections name.
Definition: LEPTrackingProcessor.h:129
Produces Track collection from TPC TrackerHit collections using LEP tracking algorithms.
Definition: LEPTrackingProcessor.h:83