1 #ifndef TrackingFeedbackProcessor_h
2 #define TrackingFeedbackProcessor_h 1
6 #include "marlin/Processor.h"
8 #include "EVENT/LCCollection.h"
9 #include "EVENT/MCParticle.h"
10 #include "EVENT/LCRelation.h"
11 #include "EVENT/Track.h"
17 #include "TrueTrack.h"
18 #include "RecoTrack.h"
22 using namespace lcio ;
23 using namespace marlin ;
114 virtual void init() ;
118 virtual void processRunHeader( LCRunHeader* run ) ;
122 virtual void processEvent( LCEvent * evt ) ;
125 virtual void check( LCEvent * evt ) ;
142 std::string _TrackCollection;
145 std::string _tableFileName;
152 double _cutDistToIPMax;
155 bool _cutNHitsMin_HitsCountOncePerLayer;
168 unsigned _nCompletePlus;
170 unsigned _nIncomplete;
171 unsigned _nIncompletePlus;
174 unsigned _nFoundCompletely;
175 unsigned _nRecoTracks;
176 unsigned _nDismissedTrueTracks;
177 unsigned _nValidTrueTracks;
181 unsigned _nComplete_Sum;
182 unsigned _nCompletePlus_Sum;
184 unsigned _nIncomplete_Sum;
185 unsigned _nIncompletePlus_Sum;
186 unsigned _nGhost_Sum;
187 unsigned _nFoundCompletely_Sum;
188 unsigned _nRecoTracks_Sum;
189 unsigned _nDismissedTrueTracks_Sum;
190 unsigned _nValidTrueTracks_Sum;
191 unsigned _nClones_Sum;
194 std::vector< TrueTrack* > _trueTracks;
195 std::vector< RecoTrack* > _recoTracks;
198 bool _saveAllEventsSummary;
199 std::string _summaryFileName;
204 void checkTheTrack(
RecoTrack* recoTrack );
205 TrueTrack* getAssignedTrueTrack( std::vector<TrueTrack*> relatedTrueTracks ,
unsigned& nHitsFromAssignedTrueTrack );
207 unsigned getNumberOfHitsFromDifferentLayers( std::vector< TrackerHit* > hits );
208 double getDistToIP( MCParticle* mcp );
210 MarlinTrk::IMarlinTrkSystem* _trkSystem;
212 TTree * _treeTrueTracks;
213 TTree * _treeRecoTracks;
215 std::string _rootFileName;
216 bool _rootFileAppend;
217 std::string _treeNameTrueTracks;
218 std::string _treeNameRecoTracks;
221 void saveRootInformation();
222 void makeRootBranches();
223 void setRootBranches();
226 float _rateOfFoundHitsMin;
227 float _rateOfAssignedHitsMin;
231 int _trueTrack_nComplete;
232 int _trueTrack_nCompletePlus;
233 int _trueTrack_nIncomplete;
234 int _trueTrack_nIncompletePlus;
236 double _trueTrack_pt;
237 double _trueTrack_theta;
238 int _trueTrack_nHits;
239 double _trueTrack_vertexX;
240 double _trueTrack_vertexY;
241 double _trueTrack_vertexZ;
242 double _trueTrack_chi2prob;
243 double _trueTrack_chi2;
246 int _recoTrack_nTrueTracks;
247 double _recoTrack_pt;
248 double _recoTrack_chi2prob;
249 double _recoTrack_chi2;
A class to make linking reconstructed tracks and true tracks easier.
Definition: RecoTrack.h:38
std::string _colNameMCTrueTracksRel
Input collection name.
Definition: TrackingFeedbackProcessor.h:141
Feedback for the efficiency and the ghostrate of the tracking.
Definition: TrackingFeedbackProcessor.h:102
A class to make linking reconstructed tracks and true tracks easier.
Definition: TrueTrack.h:21