ATLAS Offline Software
Trigger
EFTracking
FPGATrackSim
FPGATrackSimHough
src
FPGATrackSimRoadUnionTool.cxx
Go to the documentation of this file.
1
// Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2
11
#include "
FPGATrackSimRoadUnionTool.h
"
12
13
14
FPGATrackSimRoadUnionTool::FPGATrackSimRoadUnionTool
(
const
std::string&
algname
,
const
std::string &
name
,
const
IInterface *ifc) :
15
base_class(
algname
,
name
, ifc),
16
m_tools(this)
17
{
18
declareInterface<IFPGATrackSimRoadFinderTool>(
this
);
19
declareProperty(
"tools"
,
m_tools
,
"Array of FPGATrackSimRoadFinderTools"
);
20
}
21
22
23
StatusCode
FPGATrackSimRoadUnionTool::initialize
()
24
{
25
// Retrieve
26
ATH_MSG_INFO
(
"Using "
<<
m_tools
.size() <<
" tools"
);
27
ATH_CHECK
(
m_tools
.retrieve());
28
29
if
(
m_tools
.empty()) {
30
ATH_MSG_FATAL
(
"initialize() Tool list empty"
);
31
return
StatusCode::FAILURE;
32
}
33
return
StatusCode::SUCCESS;
34
}
35
36
37
StatusCode
FPGATrackSimRoadUnionTool::getRoads
(
const
std::vector<std::shared_ptr<const FPGATrackSimHit>> &
hits
, std::vector<std::shared_ptr<const FPGATrackSimRoad>> & roads)
38
{
39
roads.clear();
40
for
(
auto
&
tool
:
m_tools
)
41
{
42
std::vector<std::shared_ptr<const FPGATrackSimRoad>>
r
;
43
ATH_CHECK
(
tool
->getRoads(
hits
,
r
));
44
roads.insert(roads.end(), std::make_move_iterator(
r
.begin()), std::make_move_iterator(
r
.end()));
45
}
46
47
return
StatusCode::SUCCESS;
48
}
beamspotman.r
def r
Definition:
beamspotman.py:676
getMenu.algname
algname
Definition:
getMenu.py:54
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition:
AthMsgStreamMacros.h:34
TRTCalib_Extractor.hits
hits
Definition:
TRTCalib_Extractor.py:35
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition:
AthMsgStreamMacros.h:31
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
FPGATrackSimRoadUnionTool::FPGATrackSimRoadUnionTool
FPGATrackSimRoadUnionTool(const std::string &, const std::string &, const IInterface *)
Definition:
FPGATrackSimRoadUnionTool.cxx:14
FPGATrackSimRoadUnionTool::initialize
virtual StatusCode initialize() override
Definition:
FPGATrackSimRoadUnionTool.cxx:23
ATH_CHECK
#define ATH_CHECK
Definition:
AthCheckMacros.h:40
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:221
AtlCoolConsole.tool
tool
Definition:
AtlCoolConsole.py:453
FPGATrackSimRoadUnionTool.h
Wrapper class to combine multiple road-finding tools.
FPGATrackSimRoadUnionTool::getRoads
virtual StatusCode getRoads(const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits, std::vector< std::shared_ptr< const FPGATrackSimRoad >> &roads) override
Definition:
FPGATrackSimRoadUnionTool.cxx:37
FPGATrackSimRoadUnionTool::m_tools
ToolHandleArray< IFPGATrackSimRoadFinderTool > m_tools
Definition:
FPGATrackSimRoadUnionTool.h:49
Generated on Thu Nov 7 2024 21:15:29 for ATLAS Offline Software by
1.8.18