ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonReconstruction
MuonRecTools
MuonRecToolInterfaces
MuonRecToolInterfaces
IMuonSystemExtensionTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUON_IMUONSYSTEMEXTENSIONTOOL_H
6
#define MUON_IMUONSYSTEMEXTENSIONTOOL_H
7
12
13
#include <map>
14
#include <optional>
15
#include <set>
16
17
#include "GaudiKernel/IAlgTool.h"
18
#include "
MuonStationIndex/MuonStationIndex.h
"
19
#include "
xAODTracking/TrackParticle.h
"
20
#include "
TrkCaloExtension/CaloExtensionCollection.h
"
21
#include "
MuonLayerEvent/MuonSystemExtension.h
"
22
23
namespace
MuonCombined
{
24
class
InDetCandidate
;
25
class
TagBase
;
26
}
27
namespace
Muon
{
28
29
class
IMuonSystemExtensionTool
:
virtual
public
IAlgTool {
30
public
:
32
virtual
~IMuonSystemExtensionTool
() =
default
;
33
35
static
const
InterfaceID&
interfaceID
() {
36
static
const
InterfaceID IID_IMuonSystemExtensionTool(
"Muon::IMuonSystemExtensionTool"
, 1, 0);
37
return
IID_IMuonSystemExtensionTool;
38
}
39
41
struct
SystemExtensionCache
{
42
44
std::unique_ptr<MuonCombined::InDetCandidate>
candidate
;
47
const
std::map<MuonStationIndex::DetectorRegionIndex, std::set<int>>*
sectorsWithHits
{
nullptr
};
49
const
CaloExtensionCollection
*
extensionContainer
{
nullptr
};
52
bool
useHitSectors
{
false
};
54
bool
createSystemExtension
{
true
};
56
bool
requireSystemExtension
{
false
};
57
};
58
60
virtual
bool
muonSystemExtension
(
const
EventContext& ctx,
SystemExtensionCache
& cache)
const
= 0;
61
63
virtual
bool
muonLayerInterSections
(
const
EventContext& ctx,
64
const
MuonCombined::TagBase
& cmb_tag,
65
SystemExtensionCache
& cache)
const
= 0;
66
};
67
68
}
// namespace Muon
69
70
#endif
CaloExtensionCollection.h
CaloExtensionCollection
DataVector< Trk::CaloExtension > CaloExtensionCollection
Definition
CaloExtensionCollection.h:12
TrackParticle.h
MuonStationIndex.h
MuonSystemExtension.h
MuonCombined::InDetCandidate
Definition
InDetCandidate.h:18
MuonCombined::TagBase
base-class for combined reconstruction output Provides access to MuonType and Author
Definition
TagBase.h:49
Muon::IMuonSystemExtensionTool
Definition
IMuonSystemExtensionTool.h:29
Muon::IMuonSystemExtensionTool::~IMuonSystemExtensionTool
virtual ~IMuonSystemExtensionTool()=default
Virtual destructor.
Muon::IMuonSystemExtensionTool::muonSystemExtension
virtual bool muonSystemExtension(const EventContext &ctx, SystemExtensionCache &cache) const =0
get muon system extension
Muon::IMuonSystemExtensionTool::muonLayerInterSections
virtual bool muonLayerInterSections(const EventContext &ctx, const MuonCombined::TagBase &cmb_tag, SystemExtensionCache &cache) const =0
Constructs the layer intersections from a primary muon track using the track states in the muon spect...
Muon::IMuonSystemExtensionTool::interfaceID
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
Definition
IMuonSystemExtensionTool.h:35
MuonCombined
The MuonTagToSegMap is an auxillary construct that links the MuonSegments associated with a combined ...
Definition
IMuonSystemExtensionTool.h:23
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
Muon::IMuonSystemExtensionTool::SystemExtensionCache
Helper struct to pipe all data needed by the tool to equip the Id track with a MuonSystemExtension.
Definition
IMuonSystemExtensionTool.h:41
Muon::IMuonSystemExtensionTool::SystemExtensionCache::requireSystemExtension
bool requireSystemExtension
Require that the muon system extension was successful.
Definition
IMuonSystemExtensionTool.h:56
Muon::IMuonSystemExtensionTool::SystemExtensionCache::createSystemExtension
bool createSystemExtension
Try to create the muon system extension.
Definition
IMuonSystemExtensionTool.h:54
Muon::IMuonSystemExtensionTool::SystemExtensionCache::sectorsWithHits
const std::map< MuonStationIndex::DetectorRegionIndex, std::set< int > > * sectorsWithHits
Cache the sectors which have a recorded hit.
Definition
IMuonSystemExtensionTool.h:47
Muon::IMuonSystemExtensionTool::SystemExtensionCache::useHitSectors
bool useHitSectors
Switch to restrict the intersection search only to the sectors with hits.
Definition
IMuonSystemExtensionTool.h:52
Muon::IMuonSystemExtensionTool::SystemExtensionCache::extensionContainer
const CaloExtensionCollection * extensionContainer
Cache of the CaloExtensions.
Definition
IMuonSystemExtensionTool.h:49
Muon::IMuonSystemExtensionTool::SystemExtensionCache::candidate
std::unique_ptr< MuonCombined::InDetCandidate > candidate
Inner detector candidate.
Definition
IMuonSystemExtensionTool.h:44
Generated on
for ATLAS Offline Software by
1.17.0