ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_ClusterOnTrackTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
6// Header file for class SCT_ClusterOnTrackTool
8// (c) ATLAS Detector software
10// Interface for SCT_ClusterOnTrack production
12// started 1/05/2004 I.Gavrilenko - see ChangeLog for details
14
15#ifndef SCT_ClusterOnTrackTool_H
16#define SCT_ClusterOnTrackTool_H
17
18#include "GaudiKernel/ToolHandle.h"
19#include "GaudiKernel/ThreadLocalContext.h"
22
27
28namespace InDet {
29
30
40 public AthAlgTool,virtual public Trk::IRIO_OnTrackCreator
41{
43 // Public methods:
45
46public:
47
49 SCT_ClusterOnTrackTool(const std::string&,const std::string&,const IInterface*);
50 virtual ~SCT_ClusterOnTrackTool () = default;
52 virtual StatusCode initialize() override;
54 virtual StatusCode finalize () override;
55
56
64 const Trk::PrepRawData&, const Trk::TrackParameters&, const EventContext& ctx = Gaudi::Hive::currentContext()) const override;
65
74 static double getCorrection(double phi, int nstrip) ;
75
76
87 static double getError(double phi, int nstrip) ;
88
89 private:
90
92 // Private data:
94
97 {this,"SCTErrorScalingKey", "/Indet/TrkErrorScalingSCT", "Key for SCT error scaling conditions data."};
98
99 ToolHandle<ISiLorentzAngleTool> m_lorentzAngleTool
100 {this, "LorentzAngleTool", "SiLorentzAngleTool", "Tool to retrieve Lorentz angle"};
101
104 {this, "MakeTwoDimBarrelClusters", false,
105 "flag if strip length should be part of the measurement"};
107 {this, "ErrorStrategy", -1,
108 "if ErrorStrategy < 0, keep previous errors else recompute"};
110 {this, "CorrectionStrategy", -1,
111 "if CorrectionStrategy >= 0, apply a correction to the cluster position"};
112};
113
114} // end of namespace InDet
115
116#endif // SCT_ClusterOnTrackTool_H
Scalar phi() const
phi method
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
SG::ReadCondHandleKey< RIO_OnTrackErrorScaling > m_sctErrorScalingKey
toolhandle for central error scaling
virtual ~SCT_ClusterOnTrackTool()=default
BooleanProperty m_option_make2dimBarrelClusters
job options
ToolHandle< ISiLorentzAngleTool > m_lorentzAngleTool
SCT_ClusterOnTrackTool(const std::string &, const std::string &, const IInterface *)
AlgTool constructor.
static double getCorrection(double phi, int nstrip)
Returns a correction to be applied to the SCT cluster local x position in simulated events to remove ...
virtual InDet::SCT_ClusterOnTrack * correct(const Trk::PrepRawData &, const Trk::TrackParameters &, const EventContext &ctx=Gaudi::Hive::currentContext()) const override
produces an SCT_ClusterOnTrack using the measured SCT_Cluster and the track prediction.
virtual StatusCode initialize() override
AlgTool initialisation.
static double getError(double phi, int nstrip)
Returns the resolution on the reconstructed position (local x) of SCT clusters in simulated events.
virtual StatusCode finalize() override
AlgTool termination.
Specific class to represent the SCT measurements.
Interface class for transforming Trk::PrepRawData to Trk::RIO_OnTrack using a local track hypothesis.
Primary Vertex Finder.
ParametersBase< TrackParametersDim, Charged > TrackParameters