ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCellRec
src
LArCellMaskingTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef LARCELLREC_LARCELLMASKINGTOOL_H
6
#define LARCELLREC_LARCELLMASKINGTOOL_H
7
8
9
#include "
AthenaBaseComps/AthAlgTool.h
"
10
#include "
Identifier/IdentifierHash.h
"
11
#include "
LArIdentifier/LArOnlineID.h
"
12
#include "
CaloIdentifier/CaloCell_ID.h
"
13
#include "
CaloInterface/ICaloCellMakerTool.h
"
14
#include "
StoreGate/ReadCondHandleKey.h
"
15
#include "
LArCabling/LArOnOffIdMapping.h
"
16
#include "
CxxUtils/checker_macros.h
"
17
#include <bitset>
18
#include <mutex>
19
20
21
class
LArCellMaskingTool
22
:
public
extends<AthAlgTool, ICaloCellMakerTool >
23
{
24
25
public
:
26
27
LArCellMaskingTool
(
const
std::string&
type
,
28
const
std::string& name,
29
const
IInterface* parent) ;
30
31
32
virtual
StatusCode
initialize
()
override
;
33
34
// update theCellContainer
35
virtual
StatusCode
process
(
CaloCellContainer
* theCellContainer,
36
const
EventContext& ctx)
const override
;
37
38
virtual
StatusCode
finalize
()
override
;
39
40
private
:
41
StatusCode
fillIncludedCellsMap
(
const
LArOnOffIdMapping
* cabling)
const
;
42
const
LArOnlineID
*
m_onlineID
;
43
const
CaloCell_ID
*
m_offlineID
;
44
SG::ReadCondHandleKey<LArOnOffIdMapping>
m_cablingKey
{
this
,
"CablingKey"
,
"LArOnOffIdMap"
,
"SG Key of LArOnOffIdMapping object"
};
45
46
47
std::vector<std::string>
m_rejLArChannels
;
48
mutable
std::bitset<200000> m_includedCellsMap
ATLAS_THREAD_SAFE
;
//Slightly too big but who cares....
49
50
mutable
std::atomic<bool>
m_mapInitialized
;
51
IdentifierHash
m_offlinehashMax
;
52
IdentifierHash
m_onlinehashMax
;
53
mutable
std::mutex
m_mutex
;
54
};
55
56
#endif
57
AthAlgTool.h
CaloCell_ID.h
ICaloCellMakerTool.h
IdentifierHash.h
LArOnOffIdMapping.h
LArOnlineID.h
ReadCondHandleKey.h
checker_macros.h
Define macros for attributes used to control the static checker.
CaloCellContainer
Container class for CaloCell.
Definition
CaloCellContainer.h:55
CaloCell_ID
Helper class for offline cell identifiers.
Definition
CaloCell_ID.h:34
IdentifierHash
This is a "hash" representation of an Identifier.
Definition
IdentifierHash.h:25
LArCellMaskingTool::initialize
virtual StatusCode initialize() override
Definition
LArCellMaskingTool.cxx:45
LArCellMaskingTool::m_onlineID
const LArOnlineID * m_onlineID
Definition
LArCellMaskingTool.h:42
LArCellMaskingTool::m_offlinehashMax
IdentifierHash m_offlinehashMax
Definition
LArCellMaskingTool.h:51
LArCellMaskingTool::m_rejLArChannels
std::vector< std::string > m_rejLArChannels
Definition
LArCellMaskingTool.h:47
LArCellMaskingTool::m_offlineID
const CaloCell_ID * m_offlineID
Definition
LArCellMaskingTool.h:43
LArCellMaskingTool::LArCellMaskingTool
LArCellMaskingTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition
LArCellMaskingTool.cxx:21
LArCellMaskingTool::ATLAS_THREAD_SAFE
std::bitset< 200000 > m_includedCellsMap ATLAS_THREAD_SAFE
Definition
LArCellMaskingTool.h:48
LArCellMaskingTool::m_mapInitialized
std::atomic< bool > m_mapInitialized
Definition
LArCellMaskingTool.h:50
LArCellMaskingTool::finalize
virtual StatusCode finalize() override
Definition
LArCellMaskingTool.cxx:184
LArCellMaskingTool::fillIncludedCellsMap
StatusCode fillIncludedCellsMap(const LArOnOffIdMapping *cabling) const
Definition
LArCellMaskingTool.cxx:68
LArCellMaskingTool::m_mutex
std::mutex m_mutex
Definition
LArCellMaskingTool.h:53
LArCellMaskingTool::m_onlinehashMax
IdentifierHash m_onlinehashMax
Definition
LArCellMaskingTool.h:52
LArCellMaskingTool::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Definition
LArCellMaskingTool.h:44
LArOnOffIdMapping
Definition
LArOnOffIdMapping.h:20
LArOnlineID
Definition
LArOnlineID.h:21
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
process
const std::string process
Definition
fbtTestBasics.cxx:76
type
Generated on
for ATLAS Offline Software by
1.17.0