ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonReconstruction
MuonSegmentMakers
MuonSegmentMakerTools
MuonSegmentMakerToolInterfaces
MuonSegmentMakerToolInterfaces
IMuonNSWSegmentFinderTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUON_IMUONNSWSEGMENTFINDERTOOL_H
6
#define MUON_IMUONNSWSEGMENTFINDERTOOL_H
7
8
#include <vector>
9
10
#include "GaudiKernel/IAlgTool.h"
11
#include "
MuonPattern/MuonPatternCombinationCollection.h
"
12
#include "
MuonRIO_OnTrack/MuonClusterOnTrack.h
"
13
#include "
MuonSegment/MuonSegment.h
"
14
#include "
TrkSegment/SegmentCollection.h
"
15
16
17
namespace
Muon
{
18
19
class
IMuonNSWSegmentFinderTool
:
virtual
public
IAlgTool {
20
public
:
22
static
const
InterfaceID&
interfaceID
() {
23
static
const
InterfaceID IID_IMuonNSWSegmentFinderTool(
"Muon::IMuonNSWSegmentFinderTool"
, 1, 0);
24
return
IID_IMuonNSWSegmentFinderTool;
25
}
26
27
using
MuonClusterPtr
= std::unique_ptr<const Muon::MuonClusterOnTrack>;
28
using
MuonClusterVec
= std::vector<MuonClusterPtr>;
29
31
struct
SegmentMakingCache
{
33
std::vector<std::unique_ptr<Muon::MuonSegment>>
constructedSegs
{};
35
bool
buildQuads
{
false
};
37
std::vector<std::unique_ptr<Muon::MuonSegment>>
quadSegs
{};
39
std::vector<std::unique_ptr<const Muon::MuonClusterOnTrack>>
inputClust
{};
41
std::set<Identifier>
usedHits
{};
42
43
};
44
virtual
void
find
(
const
EventContext& ctx,
SegmentMakingCache
& cache)
const
= 0;
45
46
virtual
~IMuonNSWSegmentFinderTool
() =
default
;
47
};
48
49
}
// namespace Muon
50
51
#endif
MuonClusterOnTrack.h
MuonPatternCombinationCollection.h
MuonSegment.h
SegmentCollection.h
Muon::IMuonNSWSegmentFinderTool
Definition
IMuonNSWSegmentFinderTool.h:19
Muon::IMuonNSWSegmentFinderTool::interfaceID
static const InterfaceID & interfaceID()
access to tool interface
Definition
IMuonNSWSegmentFinderTool.h:22
Muon::IMuonNSWSegmentFinderTool::~IMuonNSWSegmentFinderTool
virtual ~IMuonNSWSegmentFinderTool()=default
Muon::IMuonNSWSegmentFinderTool::MuonClusterPtr
std::unique_ptr< const Muon::MuonClusterOnTrack > MuonClusterPtr
Definition
IMuonNSWSegmentFinderTool.h:27
Muon::IMuonNSWSegmentFinderTool::find
virtual void find(const EventContext &ctx, SegmentMakingCache &cache) const =0
Muon::IMuonNSWSegmentFinderTool::MuonClusterVec
std::vector< MuonClusterPtr > MuonClusterVec
Definition
IMuonNSWSegmentFinderTool.h:28
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
Muon::IMuonNSWSegmentFinderTool::SegmentMakingCache
Helper struct to parse the data around.
Definition
IMuonNSWSegmentFinderTool.h:31
Muon::IMuonNSWSegmentFinderTool::SegmentMakingCache::buildQuads
bool buildQuads
Toggle whether quad segments should be built or not.
Definition
IMuonNSWSegmentFinderTool.h:35
Muon::IMuonNSWSegmentFinderTool::SegmentMakingCache::quadSegs
std::vector< std::unique_ptr< Muon::MuonSegment > > quadSegs
Output vector to which the quadruplet segments are pushed back.
Definition
IMuonNSWSegmentFinderTool.h:37
Muon::IMuonNSWSegmentFinderTool::SegmentMakingCache::usedHits
std::set< Identifier > usedHits
Set of all hits used in the segment making.
Definition
IMuonNSWSegmentFinderTool.h:41
Muon::IMuonNSWSegmentFinderTool::SegmentMakingCache::constructedSegs
std::vector< std::unique_ptr< Muon::MuonSegment > > constructedSegs
Output vector to which the constructed segments are pushed_back.
Definition
IMuonNSWSegmentFinderTool.h:33
Muon::IMuonNSWSegmentFinderTool::SegmentMakingCache::inputClust
std::vector< std::unique_ptr< const Muon::MuonClusterOnTrack > > inputClust
Input vector containing all muon cluster on track.
Definition
IMuonNSWSegmentFinderTool.h:39
Generated on
for ATLAS Offline Software by
1.17.0