ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArRecConditions
LArRecConditions
LArBadFebBitPacking.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 LArBadFebBitPacking_H
6
#define LArBadFebBitPacking_H
7
8
#include "
LArRecConditions/LArBadFebEnum.h
"
9
#include "
LArRecConditions/LArBadFeb.h
"
10
#include <string>
11
#include <vector>
12
#include <map>
13
14
class
LArBadFeb
;
15
16
class
LArBadFebBitPacking
:
public
LArBadFebEnum
{
17
public
:
18
19
typedef
std::vector<PosType>
PosContainer
;
20
21
LArBadFebBitPacking
();
22
23
const
std::string&
stringName
(
ProblemType
pb)
const
;
24
25
std::pair<bool, ProblemType>
enumName
(
const
std::string&
str
)
const
;
26
27
PosType
bitPosition
(
ProblemType
pb)
const
{
return
LArBadFeb::bitPosition
(pb);}
28
29
PosType
wordSize
()
const
{
return
sizeof
(
BitWord
);}
30
31
void
setBit
(
ProblemType
pb,
BitWord
& word,
bool
value=
true
)
const
;
32
void
setBit
(
ProblemType
pb,
LArBadFeb
& word,
bool
value=
true
)
const
;
33
34
bool
setBit
(
const
std::string& name,
BitWord
& word,
bool
value=
true
)
const
;
35
bool
setBit
(
const
std::string& name,
LArBadFeb
& word,
bool
value=
true
)
const
;
36
37
std::string
stringStatus
(
const
LArBadFeb
& bc)
const
;
38
39
int
numberOfProblemTypes
()
const
{
return
m_nameVec
.size();}
40
41
private
:
42
43
std::vector<int>
m_index
;
44
45
std::vector< ProblemType>
m_enumVec
;
46
std::vector<std::string>
m_nameVec
;
47
std::map<std::string, ProblemType>
m_nameMap
;
48
49
void
addBit
(
ProblemType
pb,
const
std::string& name);
50
int
index
(
ProblemType
pb)
const
{
return
m_index
[pb];}
51
52
};
53
54
#endif
55
LArBadFebEnum.h
LArBadFeb.h
LArBadFebBitPacking::m_nameMap
std::map< std::string, ProblemType > m_nameMap
Definition
LArBadFebBitPacking.h:47
LArBadFebBitPacking::m_index
std::vector< int > m_index
Definition
LArBadFebBitPacking.h:43
LArBadFebBitPacking::PosContainer
std::vector< PosType > PosContainer
Definition
LArBadFebBitPacking.h:19
LArBadFebBitPacking::m_nameVec
std::vector< std::string > m_nameVec
Definition
LArBadFebBitPacking.h:46
LArBadFebBitPacking::m_enumVec
std::vector< ProblemType > m_enumVec
Definition
LArBadFebBitPacking.h:45
LArBadFebBitPacking::stringName
const std::string & stringName(ProblemType pb) const
Definition
LArBadFebBitPacking.cxx:44
LArBadFebBitPacking::bitPosition
PosType bitPosition(ProblemType pb) const
Definition
LArBadFebBitPacking.h:27
LArBadFebBitPacking::LArBadFebBitPacking
LArBadFebBitPacking()
Definition
LArBadFebBitPacking.cxx:8
LArBadFebBitPacking::wordSize
PosType wordSize() const
Definition
LArBadFebBitPacking.h:29
LArBadFebBitPacking::index
int index(ProblemType pb) const
Definition
LArBadFebBitPacking.h:50
LArBadFebBitPacking::numberOfProblemTypes
int numberOfProblemTypes() const
Definition
LArBadFebBitPacking.h:39
LArBadFebBitPacking::enumName
std::pair< bool, ProblemType > enumName(const std::string &str) const
Definition
LArBadFebBitPacking.cxx:50
LArBadFebBitPacking::setBit
void setBit(ProblemType pb, BitWord &word, bool value=true) const
Definition
LArBadFebBitPacking.cxx:58
LArBadFebBitPacking::stringStatus
std::string stringStatus(const LArBadFeb &bc) const
Definition
LArBadFebBitPacking.cxx:86
LArBadFebBitPacking::addBit
void addBit(ProblemType pb, const std::string &name)
Definition
LArBadFebBitPacking.cxx:36
LArBadFebEnum
Definition
LArBadFebEnum.h:8
LArBadFebEnum::PosType
unsigned int PosType
Definition
LArBadFebEnum.h:12
LArBadFebEnum::ProblemType
ProblemType
Definition
LArBadFebEnum.h:15
LArBadFebEnum::BitWord
unsigned int BitWord
Definition
LArBadFebEnum.h:13
LArBadFeb
Definition
LArBadFeb.h:10
LArBadFeb::bitPosition
static PosType bitPosition(ProblemType pb)
Definition
LArBadFeb.h:43
str
Definition
BTagTrackIpAccessor.cxx:11
Generated on
for ATLAS Offline Software by
1.17.0