ATLAS Offline Software
Loading...
Searching...
No Matches
BremPositionNtupleHelper.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
6// BremPositionNtupleHelper.h
7// Header file for BremPositionNtupleHelper
9// (c) ATLAS Detector software
11
12#ifndef TRK_BREMPOSITIONNTUPLEHELPER_H
13#define TRK_BREMPOSITIONNTUPLEHELPER_H
14
16
19
20class TTree;
21
22namespace Trk {
23
24class MeasurementBase;
26
39
41public:
42
43 // standard AlgToolmethods
44 BremPositionNtupleHelper(const std::string&,const std::string&,const IInterface*);
46
47 // standard Athena methods
48 StatusCode initialize();
49 StatusCode finalize();
50
51
53 virtual StatusCode fillMeasurementData (
56 //const NTuple::Item<long>& numberOfHits,
57 //const std::bitset<8>& detectorType
58 const int& detectorType,
59 const bool& isOutlier );
60
62 virtual StatusCode fillHoleData (
64 const int&);
65
66
69 virtual StatusCode addNtupleItems (
70 TTree* tree,
71 const int& detectorType );
72
74 virtual StatusCode resetVariables (
75 const int& detectorType );
76
77private:
78
79 //bool m_trkParametersWarning;//!< warn only once if no track pars exist
80
81 // --- ntuple variables ---
82 std::vector<float>* m_bremX;
83 std::vector<float>* m_bremY;
84 std::vector<float>* m_bremZ;
85 std::vector<float>* m_trkQoverP;
86 std::vector<float>* m_thicknessInX0;
87 std::vector<float>* m_dna;
88 std::vector<int>* m_dnaDirection;
89 std::vector<int>* m_trackStateIndices;
90
91};
92
93
94} // end of namespace
95
96#endif // TRK_BREMPOSITIONNTUPLEHELPER_H
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
BremPositionNtupleHelper(const std::string &, const std::string &, const IInterface *)
std::vector< float > * m_trkQoverP
curvature q/p of track at brem UNIT:1/MeV
std::vector< float > * m_bremZ
global position Z of track at estimated brem surface UNIT:mm
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...
virtual StatusCode fillMeasurementData(const Trk::MeasurementBase *, const Trk::TrackParameters *, const int &detectorType, const bool &isOutlier)
fill hit position data
std::vector< float > * m_bremX
global position X of track at estimated brem surface UNIT:mm
std::vector< float > * m_dna
DNA-value q*sigma2(q/p) as additional noise term UNIT:1.
std::vector< int > * m_dnaDirection
DNA-direction along momentum (1) opposite (-1) or both (0) UNIT:alongP:1.
virtual StatusCode resetVariables(const int &detectorType)
reset ntuple variables
std::vector< int > * m_trackStateIndices
index of track state in full nHits vector
std::vector< float > * m_thicknessInX0
thickness of material layer at brem UNIT:fraction of X0
virtual StatusCode fillHoleData(const Trk::TrackStateOnSurface &, const int &)
fill special data about holes on track (here: do nothing)
std::vector< float > * m_bremY
global position Y of track at estimated brem surface UNIT:mm
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.
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