ATLAS Offline Software
Loading...
Searching...
No Matches
TrackPositionNtupleHelper.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// TrackPositionNtupleHelper.h
7// Header file for TrackPositionNtupleHelper
9// (c) ATLAS Detector software
11// Anna.Franckowiak@cern.ch, Sebastian.Fleischmann@cern.ch
13
14#ifndef TRK_TRACKPOSITIONNTUPLEHELPER_H
15#define TRK_TRACKPOSITIONNTUPLEHELPER_H
16
18
21
22class INTupleSvc;
23class TTree;
24
25namespace Trk {
26
27class MeasurementBase;
28
33
35public:
36
37 // standard AlgToolmethods
38 TrackPositionNtupleHelper(const std::string&,const std::string&,const IInterface*);
40
41 // standard Athena methods
42 StatusCode initialize();
43 StatusCode finalize();
44
45
47 virtual StatusCode fillMeasurementData (
50 //const NTuple::Item<long>& numberOfHits,
51 //const std::bitset<8>& detectorType
52 const int& detectorType,
53 const bool& isOutlier );
54
56 virtual StatusCode fillHoleData (
58 const int&);
59
60
63 virtual StatusCode addNtupleItems (
64 TTree* tree,
65 const int& detectorType );
66
68 virtual StatusCode resetVariables (
69 const int& detectorType );
70
71private:
72
74
75 std::vector<float>* m_trkX;
76 std::vector<float>* m_trkY;
77 std::vector<float>* m_trkZ;
78 std::vector<float>* m_trkMomentumX;
79 std::vector<float>* m_trkMomentumY;
80 std::vector<float>* m_trkMomentumZ;
81 std::vector<float>* m_trkLoc1;
82 std::vector<float>* m_trkLoc2;
83
84};
85
86} // end of namespace
87
88#endif // TRK_TRACKPOSITIONNTUPLEHELPER_H
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
provides the interface for validation helper tools which write special information about generated tr...
This class is the pure abstract base class for all fittable tracking measurements.
std::vector< float > * m_trkMomentumZ
global momentum Z of track at measurement
std::vector< float > * m_trkLoc1
local position 1st coord.
std::vector< float > * m_trkY
global position Y of track intersecting meas't surface
virtual StatusCode addNtupleItems(TTree *tree, const int &detectorType)
add items to the ntuple and configure the helper tool: should be called once (per detector type) by t...
std::vector< float > * m_trkX
global position X of track intersecting meas't surface
virtual StatusCode fillHoleData(const Trk::TrackStateOnSurface &, const int &)
fill special data about holes on track (here: do nothing)
std::vector< float > * m_trkLoc2
local position 2nd coord.
virtual StatusCode resetVariables(const int &detectorType)
reset ntuple variables
bool m_trkParametersWarning
warn only once if no track pars exist
TrackPositionNtupleHelper(const std::string &, const std::string &, const IInterface *)
virtual StatusCode fillMeasurementData(const Trk::MeasurementBase *, const Trk::TrackParameters *, const int &detectorType, const bool &isOutlier)
fill hit position data
std::vector< float > * m_trkMomentumX
global momentum X of track at measurement
std::vector< float > * m_trkZ
global position Z of track intersection meas't surface
std::vector< float > * m_trkMomentumY
global momentum Y of track at measurement
represents the track state (measurement, material, fit parameters and quality) at a surface.
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< TrackParametersDim, Charged > TrackParameters
TChain * tree