 |
ATLAS Offline Software
|
Go to the documentation of this file.
13 ISvcLocator* pSvcLocator)
46 ATH_CHECK(boundTrackParamsHandle.
record(std::make_unique<ActsTrk::BoundTrackParametersContainer>()));
52 for (std::size_t iseed = 0; iseed < seeds.
size(); ++iseed) {
57 auto retrieveSurfaceFunction =
58 [
this, &detElements] (
const ActsTrk::Seed& seed,
bool useTopSp) ->
const Acts::Surface& {
59 const xAOD::SpacePoint* sp = useTopSp ? seed.sp().back() : seed.sp().front();
66 std::optional<Acts::BoundTrackParameters> optTrackParams =
72 retrieveSurfaceFunction);
74 if (!optTrackParams.has_value()) {
75 ATH_MSG_DEBUG(
"Failed to estimate track parameters for seed " << iseed);
76 trackParams->
push_back(std::unique_ptr<Acts::BoundTrackParameters>());
80 trackParams->
push_back(std::make_unique<Acts::BoundTrackParameters>(std::move(*optTrackParams)));
83 return StatusCode::SUCCESS;
87 const auto& bottom_sp = seed.sp().front();
89 const double r = bottom_sp->radius();
90 const double z = std::abs(bottom_sp->z());
95 return r > rBoundary ||
z > zBoundary;
SG::ReadHandleKey< ActsTrk::SeedContainer > m_inputSeedContainerKey
ToolHandle< ActsTrk::ITrackParamsEstimationTool > m_paramEstimationTool
const std::vector< DetectorIDHashType > & elementIdList() const
Returns the IdentifierHash of the spacepoint (corresponds to the detector element IdentifierHash)
Trk::Surface & surface()
Element Surface.
Gaudi::Property< std::vector< double > > m_useTopSpRZboundary
SeedsToTrackParamsAlg(const std::string &name, ISvcLocator *pSvcLocator)
An algorithm that can be simultaneously executed in multiple threads.
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
::StatusCode StatusCode
StatusCode definition for legacy code.
pointer_type ptr()
Dereference the pointer.
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_detEleCollKey
virtual StatusCode execute(const EventContext &ctx) const override
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Gaudi::Property< bool > m_autoReverseSearch
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
value_type push_back(value_type pElem)
Add an element to the end of the collection.
StatusCode initialize(bool used=true)
bool shouldReverseSearch(const ActsTrk::Seed &seed) const
virtual StatusCode initialize() override
SG::WriteHandleKey< ActsTrk::BoundTrackParametersContainer > m_outputTrackParamsCollectionKey
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
ToolHandle< IActsExtrapolationTool > m_extrapolationTool
ToolHandle< ActsTrk::IActsToTrkConverterTool > m_ATLASConverterTool
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
size_type size() const noexcept
Returns the number of elements in the collection.
const SiDetectorElement * getDetectorElement(const IdentifierHash &hash) const
const_pointer_type cptr()