ATLAS Offline Software
Loading...
Searching...
No Matches
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
17#include <bitset>
18#include <mutex>
19
20
22 : public extends<AthAlgTool, ICaloCellMakerTool >
23{
24
25public:
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;
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;
53 mutable std::mutex m_mutex;
54};
55
56#endif
57
Define macros for attributes used to control the static checker.
Container class for CaloCell.
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
This is a "hash" representation of an Identifier.
virtual StatusCode initialize() override
const LArOnlineID * m_onlineID
IdentifierHash m_offlinehashMax
std::vector< std::string > m_rejLArChannels
const CaloCell_ID * m_offlineID
LArCellMaskingTool(const std::string &type, const std::string &name, const IInterface *parent)
std::bitset< 200000 > m_includedCellsMap ATLAS_THREAD_SAFE
std::atomic< bool > m_mapInitialized
virtual StatusCode finalize() override
StatusCode fillIncludedCellsMap(const LArOnOffIdMapping *cabling) const
IdentifierHash m_onlinehashMax
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
const std::string process