ATLAS Offline Software
Loading...
Searching...
No Matches
SeedingAlg.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 ACTSTRKSEEDING_SEEDINGALG_H
6#define ACTSTRKSEEDING_SEEDINGALG_H
7
8// Base Class
10
11// Gaudi includes
12#include "GaudiKernel/ToolHandle.h"
13
14// Tools
18
19// Athena
26
27// Handle Keys
32
34
35namespace ActsTrk {
36
37 class SeedingAlg :
39
40 public:
41 SeedingAlg(const std::string &name,
42 ISvcLocator *pSvcLocator);
43 virtual ~SeedingAlg() = default;
44
45
46 virtual StatusCode initialize() override;
47 virtual StatusCode finalize() override;
48 virtual StatusCode execute(const EventContext& ctx) const override;
49
50 private:
51 // Tool Handles
52 ToolHandle< ActsTrk::ISeedingTool > m_seedsTool {this, "SeedTool", "","Seed Tool"};
53 ToolHandle< GenericMonitoringTool > m_monTool {this, "MonTool", "", "Monitoring tool"};
54
55 // Handle Keys
56 SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey{this, "BeamSpotKey", "BeamSpotData", "SG key for beam spot"};
57 SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCondObjInputKey {this, "AtlasFieldCacheCondObj", "fieldCondObj",
58 "Name of the Magnetic Field conditions object key"};
59
60 SG::ReadHandleKeyArray< xAOD::SpacePointContainer > m_spacePointKey {this,"InputSpacePoints",{},"Input Space Points"};
61 SG::WriteHandleKey< ActsTrk::SeedContainer > m_seedKey {this,"OutputSeeds","","Output Seeds"};
62
63 Gaudi::Property< bool > m_fastTracking {this, "useFastTracking", false};
64 Gaudi::Property< bool > m_usePixel {this, "UsePixel", true};
65
66 public:
72 private:
73 mutable std::array<std::atomic<unsigned int>, kNStat> m_stat ATLAS_THREAD_SAFE {};
74 };
75
76} // namespace
77
78#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey
Definition SeedingAlg.h:56
std::array< std::atomic< unsigned int >, kNStat > m_stat ATLAS_THREAD_SAFE
Definition SeedingAlg.h:73
virtual StatusCode execute(const EventContext &ctx) const override
virtual StatusCode initialize() override
ToolHandle< GenericMonitoringTool > m_monTool
Definition SeedingAlg.h:53
SeedingAlg(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode finalize() override
Gaudi::Property< bool > m_fastTracking
Definition SeedingAlg.h:63
SG::WriteHandleKey< ActsTrk::SeedContainer > m_seedKey
Definition SeedingAlg.h:61
virtual ~SeedingAlg()=default
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCondObjInputKey
Definition SeedingAlg.h:57
SG::ReadHandleKeyArray< xAOD::SpacePointContainer > m_spacePointKey
Definition SeedingAlg.h:60
ToolHandle< ActsTrk::ISeedingTool > m_seedsTool
Definition SeedingAlg.h:52
Gaudi::Property< bool > m_usePixel
Definition SeedingAlg.h:64
An algorithm that can be simultaneously executed in multiple threads.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
HandleKeyArray< ReadHandle< T >, ReadHandleKey< T >, Gaudi::DataHandle::Reader > ReadHandleKeyArray