ATLAS Offline Software
SeedsToTrackParamsAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSTRKANALYSIS_SEEDSTOTRACKPARAMSALG_H
6 #define ACTSTRKANALYSIS_SEEDSTOTRACKPARAMSALG_H
7 
9 
11 
16 
20 
22 
23 #include <vector>
24 namespace ActsTrk {
25 
27  public:
28  SeedsToTrackParamsAlg(const std::string& name, ISvcLocator* pSvcLocator);
29 
30  virtual StatusCode initialize() override;
31  virtual StatusCode execute(const EventContext &ctx) const override;
32 
33  private:
34  ToolHandle<ActsTrk::IExtrapolationTool> m_extrapolationTool{this, "ExtrapolationTool", ""};
35  PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", ""};
36  ToolHandle< ActsTrk::IActsToTrkConverterTool > m_ATLASConverterTool{this, "ATLASConverterTool", ""};
37  ToolHandle<ActsTrk::ITrackParamsEstimationTool> m_paramEstimationTool{this, "TrackParamsEstimationTool", "", "Track Param Estimation from Seeds"};
38 
39  SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_detEleCollKey{this, "DetectorElementsKey", {}, "Key of input SiDetectorElementCollection"};
40 
41  SG::ReadHandleKey<ActsTrk::SeedContainer> m_inputSeedContainerKey{this, "InputSeedContainerKey", "", "Name of the input seed container"};
42  SG::WriteHandleKey<ActsTrk::BoundTrackParametersContainer> m_outputTrackParamsCollectionKey{this, "OutputTrackParamsCollectionKey","", "Name of the output track parameters collection"};
43 
44  Gaudi::Property<bool> m_autoReverseSearch{this, "autoReverseSearch", false, "Whether to run the finding in seed parameter direction (false or not specified) or reverse direction (true), automatically determined by the param estimation tool"};
45  Gaudi::Property<std::vector<double>> m_useTopSpRZboundary {this, "useTopSpRZboundary", {350. * Acts::UnitConstants::mm, 1060. * Acts::UnitConstants::mm}, "R/Z boundary for using the top space point in the track parameter estimation"};
46 
47  bool shouldReverseSearch(const ActsTrk::Seed& seed) const;
48 
49  };
50 
51 }
52 
53 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
ActsTrk::SeedsToTrackParamsAlg::m_inputSeedContainerKey
SG::ReadHandleKey< ActsTrk::SeedContainer > m_inputSeedContainerKey
Definition: SeedsToTrackParamsAlg.h:41
ActsTrk::SeedsToTrackParamsAlg::m_paramEstimationTool
ToolHandle< ActsTrk::ITrackParamsEstimationTool > m_paramEstimationTool
Definition: SeedsToTrackParamsAlg.h:37
python.SystemOfUnits.mm
float mm
Definition: SystemOfUnits.py:98
TrackParameters.h
ActsTrk::SeedsToTrackParamsAlg
Definition: SeedsToTrackParamsAlg.h:26
IExtrapolationTool.h
ActsTrk::SeedsToTrackParamsAlg::m_useTopSpRZboundary
Gaudi::Property< std::vector< double > > m_useTopSpRZboundary
Definition: SeedsToTrackParamsAlg.h:45
ActsTrk::SeedsToTrackParamsAlg::SeedsToTrackParamsAlg
SeedsToTrackParamsAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: SeedsToTrackParamsAlg.cxx:12
SG::ReadHandleKey< ActsTrk::SeedContainer >
SeedContainer.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ActsTrk::SeedsToTrackParamsAlg::m_detEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_detEleCollKey
Definition: SeedsToTrackParamsAlg.h:39
ActsTrk::SeedsToTrackParamsAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: SeedsToTrackParamsAlg.cxx:32
columnar::final
CM final
Definition: ColumnAccessor.h:106
ActsTrk::SeedsToTrackParamsAlg::m_autoReverseSearch
Gaudi::Property< bool > m_autoReverseSearch
Definition: SeedsToTrackParamsAlg.h:44
AthReentrantAlgorithm.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
ActsTrk::SeedsToTrackParamsAlg::m_trackingGeometryTool
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
Definition: SeedsToTrackParamsAlg.h:35
SiDetectorElementCollection.h
ActsTrk::SeedsToTrackParamsAlg::shouldReverseSearch
bool shouldReverseSearch(const ActsTrk::Seed &seed) const
Definition: SeedsToTrackParamsAlg.cxx:86
ActsTrk::SeedsToTrackParamsAlg::m_extrapolationTool
ToolHandle< ActsTrk::IExtrapolationTool > m_extrapolationTool
Definition: SeedsToTrackParamsAlg.h:34
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection >
ActsTrk::SeedsToTrackParamsAlg::initialize
virtual StatusCode initialize() override
Definition: SeedsToTrackParamsAlg.cxx:17
ActsTrk::SeedsToTrackParamsAlg::m_outputTrackParamsCollectionKey
SG::WriteHandleKey< ActsTrk::BoundTrackParametersContainer > m_outputTrackParamsCollectionKey
Definition: SeedsToTrackParamsAlg.h:42
ActsTrk::Seed
Definition: SeedContainer.h:75
ITrackingGeometryTool.h
ActsTrk::SeedsToTrackParamsAlg::m_ATLASConverterTool
ToolHandle< ActsTrk::IActsToTrkConverterTool > m_ATLASConverterTool
Definition: SeedsToTrackParamsAlg.h:36
ITrackParamsEstimationTool.h
IActsToTrkConverterTool.h
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MdtCalibInput.h:31
TrackParametersContainer.h