ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonOverlay
MuonOverlayBase
MuonOverlayBase
IDC_MuonOverlayBase.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
// Dear emacs, this is -*-c++-*-
6
18
19
#ifndef IDC_MUONOVERLAYCOMMON_H
20
#define IDC_MUONOVERLAYCOMMON_H
21
22
#include <
AthenaBaseComps/AthReentrantAlgorithm.h
>
23
#include <
Identifier/IdentifierHash.h
>
24
25
26
class
IDC_MuonOverlayBase
:
public
AthReentrantAlgorithm
27
{
28
public
:
29
IDC_MuonOverlayBase
(
const
std::string &name, ISvcLocator *pSvcLocator)
30
:
AthReentrantAlgorithm
(name, pSvcLocator) {}
31
32
protected
:
33
template
<
class
IDC_Container>
34
StatusCode
overlayContainer
(
const
IDC_Container *bkgContainer,
35
const
IDC_Container *signalContainer,
36
IDC_Container *outputContainer)
const
37
{
38
return
overlayContainerImpl<false>
(bkgContainer, signalContainer, outputContainer);
39
}
40
41
template
<
class
IDC_Container>
42
StatusCode
overlayMultiHitContainer
(
const
IDC_Container *bkgContainer,
43
const
IDC_Container *signalContainer,
44
IDC_Container *outputContainer)
const
45
{
46
return
overlayContainerImpl<true>
(bkgContainer, signalContainer, outputContainer);
47
}
48
49
private
:
50
template
<
bool
isMultiHitCollection,
class
IDC_Container>
51
StatusCode
overlayContainerImpl
(
const
IDC_Container *bkgContainer,
52
const
IDC_Container *signalContainer,
53
IDC_Container *outputContainer)
const
;
54
55
template
<
class
Collection>
56
std::unique_ptr<Collection>
copyCollection
(
const
IdentifierHash
&hashId,
57
const
Collection *collection)
const
;
58
59
};
60
61
#include "
IDC_MuonOverlayBase.icc
"
62
63
#endif
AthReentrantAlgorithm.h
IDC_MuonOverlayBase.icc
IdentifierHash.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
IDC_MuonOverlayBase::overlayMultiHitContainer
StatusCode overlayMultiHitContainer(const IDC_Container *bkgContainer, const IDC_Container *signalContainer, IDC_Container *outputContainer) const
Definition
IDC_MuonOverlayBase.h:42
IDC_MuonOverlayBase::copyCollection
std::unique_ptr< Collection > copyCollection(const IdentifierHash &hashId, const Collection *collection) const
IDC_MuonOverlayBase::overlayContainerImpl
StatusCode overlayContainerImpl(const IDC_Container *bkgContainer, const IDC_Container *signalContainer, IDC_Container *outputContainer) const
IDC_MuonOverlayBase::overlayContainer
StatusCode overlayContainer(const IDC_Container *bkgContainer, const IDC_Container *signalContainer, IDC_Container *outputContainer) const
Definition
IDC_MuonOverlayBase.h:34
IDC_MuonOverlayBase::IDC_MuonOverlayBase
IDC_MuonOverlayBase(const std::string &name, ISvcLocator *pSvcLocator)
Definition
IDC_MuonOverlayBase.h:29
IdentifierHash
This is a "hash" representation of an Identifier.
Definition
IdentifierHash.h:25
Generated on
for ATLAS Offline Software by
1.17.0