ATLAS Offline Software
IValidationNtupleTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // IValidationNtupleTool.h
7 // Header file for interface of ValidationNtupleTools
9 // (c) ATLAS Detector software
11 // Sebastian.Fleischmann@cern.ch
13 
14 #ifndef TRK_IVALIDATIONNTUPLETOOL_H
15 #define TRK_IVALIDATIONNTUPLETOOL_H
16 
17 #include "GaudiKernel/IAlgTool.h"
20 //#include "GeneratorObjects/HepMcParticleLink.h"
21 #include <vector>
22 
23 class TrackTruth;
24 class TTree;
25 class HepMcParticleLink;
26 
27 namespace Trk {
28 static const InterfaceID IID_IValidationNtupleTool("IValidationNtupleTool",1,0);
29 
30 class TrackParticleBase;
31 class MeasurementBase;
32 class Track;
33 class TrackStateOnSurface;
34 
35 
41 class IValidationNtupleTool : virtual public IAlgTool {
42 public:
44  static const InterfaceID& interfaceID();
45 
50  TTree* tree ) = 0;
51 
54  const Trk::Track&,
55  const int iterationIndex,
56  const unsigned int fitStatCode = 0 ) = 0;
57 
60  const Trk::TrackParticleBase& ) = 0;
61 
65  const Trk::Track&,
66  const int iterationIndex,
67  const unsigned int fitStatCode = 0 ) = 0;
68 
72  const Trk::TrackParticleBase&) = 0;
73 
77  const Trk::TrackParameters*,
78  const int iterationIndex ) = 0;
79 
82  const Trk::MeasurementBase*,
83  const Trk::TrackParameters* ) = 0;
84 
89  const Trk::MeasurementBase*,
90  const Trk::TrackParameters*,
91  const Trk::FitQualityOnSurface* ) = 0;
92 
95  const Trk::TrackStateOnSurface&) = 0;
96 
98  const TrackTruth&,
99  const int truthIndex = -1 ) = 0;
100 
102  virtual StatusCode writeRecord( TTree* tree ) = 0;
103 };
104 
105 inline const InterfaceID& Trk::IValidationNtupleTool::interfaceID() {
106  return IID_IValidationNtupleTool;
107 }
108 
109 } // end of namespace
110 
111 #endif // TRK_IVALIDATIONNTUPLETOOL_H
TrackParameters.h
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Trk::IValidationNtupleTool::writeTrackData
virtual StatusCode writeTrackData(const Trk::Track &, const int iterationIndex, const unsigned int fitStatCode=0)=0
fill AND write ntuple data of a given track
tree
TChain * tree
Definition: tile_monitor.h:30
Trk::IValidationNtupleTool::writeTrackParticleData
virtual StatusCode writeTrackParticleData(const Trk::TrackParticleBase &)=0
fill AND write ntuple data of a given track particle
FitQualityOnSurface.h
Trk::IValidationNtupleTool::addNtupleItems
virtual StatusCode addNtupleItems(TTree *tree)=0
add branches to the tree Should be called once (per track collection and tree) dunring the initialisa...
Trk::IValidationNtupleTool::writeRecord
virtual StatusCode writeRecord(TTree *tree)=0
write the filled data into the ntuple
Trk::TrackParticleBase
Definition: TrackParticleBase.h:41
Trk::FitQualityOnSurface
Definition: FitQualityOnSurface.h:19
Trk::IValidationNtupleTool::fillOutlierData
virtual StatusCode fillOutlierData(const Trk::MeasurementBase *, const Trk::TrackParameters *, const Trk::FitQualityOnSurface *)=0
fill ntuple data of an outlier measurement (without writing the record yet).
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::IValidationNtupleTool::interfaceID
static const InterfaceID & interfaceID()
Interface ID, declared here, and defined below.
Definition: IValidationNtupleTool.h:105
Trk::IValidationNtupleTool::fillMeasurementData
virtual StatusCode fillMeasurementData(const Trk::MeasurementBase *, const Trk::TrackParameters *)=0
fill ntuple data of given measurement and track parameters without writing the record
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::MeasurementBase
Definition: MeasurementBase.h:58
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::TrackStateOnSurface
represents the track state (measurement, material, fit parameters and quality) at a surface.
Definition: TrackStateOnSurface.h:71
Trk::IValidationNtupleTool
Definition: IValidationNtupleTool.h:41
Trk::IValidationNtupleTool::fillTrackParticleData
virtual StatusCode fillTrackParticleData(const Trk::TrackParticleBase &)=0
fill ntuple data of a given track particle without writing the record.
TrackTruth
MC particle associated with a reco track + the quality of match.
Definition: TrackTruth.h:14
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
Trk::IValidationNtupleTool::fillTrackParameter
virtual StatusCode fillTrackParameter(const Trk::TrackParameters *, const int iterationIndex)=0
fill ntuple data of a given track without writing the record.
Trk::IValidationNtupleTool::fillTrackData
virtual StatusCode fillTrackData(const Trk::Track &, const int iterationIndex, const unsigned int fitStatCode=0)=0
fill ntuple data of a given track without writing the record.
Trk::IValidationNtupleTool::fillTrackTruthData
virtual StatusCode fillTrackTruthData(const TrackParameters *&, const TrackTruth &, const int truthIndex=-1)=0
Trk::IValidationNtupleTool::fillHoleData
virtual StatusCode fillHoleData(const Trk::TrackStateOnSurface &)=0
fill ntuple data of holes on track without writing the record