ATLAS Offline Software
Loading...
Searching...
No Matches
LArBadChanContainerHashed.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef LArBadChanContainerHashed_H
6#define LArBadChanContainerHashed_H
7
12
14public:
15
16 typedef std::pair<HWIdentifier,LArBadChannel> BadChanEntry;
17 typedef std::pair<HWIdentifier,LArBadFeb> BadFebEntry;
18 typedef std::vector<BadChanEntry> BadChanVec;
19 typedef BadChanVec::const_iterator const_iterator;
20 typedef BadChanVec::size_type size_type;
21
22public:
23
25
27
29
30 LArBadChannel status( const HWIdentifier& channelID) const {
31 return m_febVec.at( m_hasher.febHashByChan( channelID)).status( m_hasher.channelInFeb( channelID));
32 }
33
34 LArBadChannel status( const HWIdentifier& feb, int ch) const {
35 return m_febVec.at( m_hasher.hashFEB( feb)).status( ch);
36 }
37
38 bool febBad( HWIdentifier febId) const {
39 return m_febVec.at( m_hasher.hashFEB( febId)).bad();
40 }
41
42 bool febAllGood( HWIdentifier febId) const {
43 return m_febVec.at( m_hasher.hashFEB( febId)).empty();
44 }
45
47 return m_febVec.at( m_hasher.hashFEB( febId)).febStatus();
48 }
49
50 const_iterator begin() const {return m_bcv.begin();}
51 const_iterator end() const {return m_bcv.end();}
52 size_type size() const {return m_bcv.size();}
53
54 void set( const BadChanVec& cont);
55
56 void setBadFEBs( const std::vector<BadFebEntry>& badFebs);
57
58 void setHasher( const LArBadChanFEBHasher& hasher) { m_hasher = hasher;}
59
60private:
61
62 typedef unsigned int HashType;
63
64 std::vector<LArBadChanFebState> m_febVec;
67
68 void init();
69
70};
71
72#endif
std::vector< size_t > vec
Header file for AthHistogramAlgorithm.
void set(const BadChanVec &cont)
BadChanVec::const_iterator const_iterator
std::pair< HWIdentifier, LArBadFeb > BadFebEntry
std::vector< LArBadChanFebState > m_febVec
std::vector< BadChanEntry > BadChanVec
LArBadChanContainerHashed(const LArBadChanFEBHasher &h)
bool febAllGood(HWIdentifier febId) const
LArBadChanContainerHashed(const BadChanVec &vec)
std::pair< HWIdentifier, LArBadChannel > BadChanEntry
LArBadFeb febStatus(HWIdentifier febId) const
LArBadChannel status(const HWIdentifier &channelID) const
void setBadFEBs(const std::vector< BadFebEntry > &badFebs)
bool febBad(HWIdentifier febId) const
LArBadChannel status(const HWIdentifier &feb, int ch) const
void setHasher(const LArBadChanFEBHasher &hasher)