ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArRecConditions
LArRecConditions
LArBadChannelCont.h
Go to the documentation of this file.
1
//Dear emacs, this is -*-c++-*-
2
/*
3
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
4
*/
5
6
#ifndef LARRECCONDITIONS_LARBADCHANNELCONT_H
7
#define LARRECCONDITIONS_LARBADCHANNELCONT_H
8
9
10
#include "
LArRecConditions/LArBadChannel.h
"
11
#include "
LArRecConditions/LArBadFeb.h
"
12
#include "
Identifier/HWIdentifier.h
"
13
#include <vector>
14
#include <algorithm>
15
#include <cstdint>
//for uint32_t
27
28
template
<
class
LArBC_t>
29
class
LArBadXCont
{
30
public
:
31
typedef
uint32_t
ChanId_t
;
32
typedef
std::pair<ChanId_t,LArBC_t>
BadChanEntry
;
33
typedef
std::vector<BadChanEntry>
BadChanVec
;
34
typedef
typename
BadChanVec::const_iterator
const_iterator
;
35
typedef
typename
BadChanVec::size_type
size_type
;
36
37
public
:
38
40
41
LArBadXCont
() {}
42
44
LArBadXCont
(
const
BadChanVec
&
vec
);
45
50
void
add
(
const
HWIdentifier
channel,
const
LArBC_t stat);
51
57
void
sort
();
58
64
LArBC_t
status
(
const
HWIdentifier
channel)
const
;
65
71
LArBC_t
offlineStatus
(
const
Identifier
id
)
const
;
72
74
const_iterator
begin
()
const
{
return
m_cont
.begin();}
75
77
const_iterator
end
()
const
{
return
m_cont
.end();}
78
80
size_type
size
()
const
{
return
m_cont
.size();}
81
83
void
clear
() {
m_cont
.clear();
m_oflCont
.clear();}
84
85
const
BadChanVec
&
fullCont
()
const
{
return
m_cont
;}
86
87
//Add offline vector
88
void
setOflVec
(
BadChanVec
& input);
89
90
private
:
92
struct
ChannelLess
{
93
bool
operator()
(
const
BadChanEntry
&
a
,
const
BadChanEntry
& b)
const
{
94
return
a
.first < b.first;
95
}
96
};
97
98
//The vector storing bad-channels
99
BadChanVec
m_cont
;
//with their online id
100
BadChanVec
m_oflCont
;
//with their offline id (only for channels, not FEBs)
101
};
102
103
#include "
LArRecConditions/LArBadChannelCont.icc
"
104
105
106
107
//Template instantiation for LArBadChannel
108
typedef
LArBadXCont<LArBadChannel>
LArBadChannelCont
;
109
#include "
AthenaKernel/CLASS_DEF.h
"
110
CLASS_DEF
(
LArBadChannelCont
,64272230,1)
111
#include "AthenaKernel/CondCont.h"
112
CONDCONT_MIXED_DEF
(
LArBadChannelCont
, 144954956);
113
114
//Template instantiation for LArBadFeb
115
typedef
LArBadXCont<LArBadFeb>
LArBadFebCont
;
116
CLASS_DEF
(
LArBadFebCont
,60500160,1)
117
CLASS_DEF
(
CondCont
<
LArBadFebCont
>,18499682, 1)
118
119
120
#endif
vec
std::vector< size_t > vec
Definition
CombinationsGeneratorTest.cxx:9
CONDCONT_MIXED_DEF
#define CONDCONT_MIXED_DEF(...)
Definition
CondCont.h:1446
CLASS_DEF.h
macros to associate a CLID to a type
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition
Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
HWIdentifier.h
LArBadFebCont
LArBadXCont< LArBadFeb > LArBadFebCont
Definition
LArBadChannelCont.h:115
LArBadChannelCont
LArBadXCont< LArBadChannel > LArBadChannelCont
Definition
LArBadChannelCont.h:108
LArBadChannelCont.icc
LArBadChannel.h
LArBadFeb.h
a
static Double_t a
Definition
LArPhysWaveHECTool.cxx:38
CondCont
Hold mapping of ranges to condition objects.
Definition
CondCont.h:889
HWIdentifier
Definition
HWIdentifier.h:13
LArBadXCont
Conditions-Data class holding LAr Bad Channel or Bad Feb information.
Definition
LArBadChannelCont.h:29
LArBadXCont::end
const_iterator end() const
Access to the end iterator of the underlying vector.
Definition
LArBadChannelCont.h:77
LArBadXCont::add
void add(const HWIdentifier channel, const LArBC_t stat)
Add a channel/FEB to the list of bad channels.
LArBadXCont< LArBadChannel >::m_cont
BadChanVec m_cont
Definition
LArBadChannelCont.h:99
LArBadXCont::size
size_type size() const
Number of known bad channels.
Definition
LArBadChannelCont.h:80
LArBadXCont::size_type
BadChanVec::size_type size_type
Definition
LArBadChannelCont.h:35
LArBadXCont< LArBadChannel >::m_oflCont
BadChanVec m_oflCont
Definition
LArBadChannelCont.h:100
LArBadXCont::offlineStatus
LArBC_t offlineStatus(const Identifier id) const
Query the status of a particular channel by offline ID This is the main client access method.
LArBadXCont::begin
const_iterator begin() const
Access to the begin iterator of the underlying vector.
Definition
LArBadChannelCont.h:74
LArBadXCont::BadChanVec
std::vector< BadChanEntry > BadChanVec
Definition
LArBadChannelCont.h:33
LArBadXCont::const_iterator
BadChanVec::const_iterator const_iterator
Definition
LArBadChannelCont.h:34
LArBadXCont::LArBadXCont
LArBadXCont()
Default Constructor.
Definition
LArBadChannelCont.h:41
LArBadXCont::clear
void clear()
Deletes the contents and sets size to 0 (same as stl::vector<T>::clear()).
Definition
LArBadChannelCont.h:83
LArBadXCont::fullCont
const BadChanVec & fullCont() const
Definition
LArBadChannelCont.h:85
LArBadXCont::BadChanEntry
std::pair< ChanId_t, LArBC_t > BadChanEntry
Definition
LArBadChannelCont.h:32
LArBadXCont::LArBadXCont
LArBadXCont(const BadChanVec &vec)
Constructor with payload.
LArBadXCont::setOflVec
void setOflVec(BadChanVec &input)
LArBadXCont::sort
void sort()
Sort and purge the list of bad channels The list of bad channels get sorted by channel-ID For channel...
LArBadXCont::ChanId_t
uint32_t ChanId_t
Definition
LArBadChannelCont.h:31
LArBadXCont::status
LArBC_t status(const HWIdentifier channel) const
Query the status of a particular channel or FEB This is the main client access method.
Identifier
Definition
IdentifierFieldParser.cxx:14
LArBadXCont::ChannelLess
Comparison functor for sorting and searching.
Definition
LArBadChannelCont.h:92
LArBadXCont::ChannelLess::operator()
bool operator()(const BadChanEntry &a, const BadChanEntry &b) const
Definition
LArBadChannelCont.h:93
Generated on
for ATLAS Offline Software by
1.17.0