|
ATLAS Offline Software
|
Go to the documentation of this file.
15 #ifndef LARRAWCONDITIONS_LARCONDFEBIDCHANMAP_H
16 #define LARRAWCONDITIONS_LARCONDFEBIDCHANMAP_H
56 typedef std::map<FEBId, unsigned int>
FEBIdMap;
92 unsigned int coolChannel)
const;
98 unsigned int& coolChannel )
const;
103 std::vector<unsigned int>& coolChannels)
const;
111 unsigned int groupNumber(
unsigned int coolChannel)
const;
121 unsigned int nGains()
const;
171 m_totalChannels(PSBA + 3*NCORRTYPE),
175 m_numOffsetChannels(3)
182 unsigned int minGain,
185 m_febIdVecs(chansPerGain),
186 m_chansPerGain(chansPerGain),
187 m_totalChannels(PSBA + 3*NCORRTYPE),
189 m_maxGain(minGain + nGains),
191 m_numOffsetChannels(nGains*NUMOFFSETCHANNELSPERGAIN)
200 for (
unsigned int i = 0;
i < febIdVec.size(); ++
i) {
215 for (
unsigned int j = 0; j <
m_febIdVecs[
i].size(); ++j) {
243 unsigned int& coolChannel )
const
264 std::vector<unsigned int>& coolChannels)
const
266 coolChannels.clear();
273 coolChannels.push_back(
PSBA + gainOffset);
274 coolChannels.push_back(
PSBC + gainOffset);
275 coolChannels.push_back(
PSECA + gainOffset);
276 coolChannels.push_back(
PSECC + gainOffset);
277 coolChannels.push_back(
EMBA + gainOffset);
278 coolChannels.push_back(
EMBC + gainOffset);
279 coolChannels.push_back(
EMECA + gainOffset);
280 coolChannels.push_back(
EMECC + gainOffset);
281 coolChannels.push_back(
HECA + gainOffset);
282 coolChannels.push_back(
HECC + gainOffset);
283 coolChannels.push_back(
FCALA + gainOffset);
284 coolChannels.push_back(
FCALC + gainOffset);
353 #endif // LARRAWCONDITIONS_LARCONDFEBIDCHANMAP_H
unsigned int totalChannels() const
Total number of channels for all gains and includes special offset channels.
void fillMap(unsigned int channel, const FEBIdVector &febIdVec)
Fill map from chan/febid vec - channel here is 0 to chansPerGain-1.
std::vector< FEBIdVector > ChannelMap
unsigned int channelsPerGain() const
Number of cool channels per gain.
virtual ~LArCondFEBIdChanMap()=default
destructor
LArCondFEBIdChanMap()
Default constructor.
unsigned int nOffsetChannels() const
Number of offset channels - i.e. correction channels.
unsigned int m_chansPerGain
bool getChannel(FEBId febId, unsigned int gain, unsigned int &coolChannel) const
Access to the cool channel number for a given FEB ID and gain - bool == false if not found.
unsigned int m_totalChannels
unsigned int groupNumber(unsigned int coolChannel) const
Group number of a cool channel (0 - correction group, 1-N for FEB ID groups)
bool getCorrectionSetChannels(unsigned int gain, std::vector< unsigned int > &coolChannels) const
Access to the cool channel numbers for the correction sets of a particular gain - bool == false if no...
@ NUMOFFSETCHANNELSPERGAIN
unsigned int m_numOffsetChannels
unsigned int minGain() const
Mininum gain value.
const FEBIdVector & febIdVector(unsigned int gain, unsigned int coolChannel) const
Access to a FEB ID vector for a given gain and COOL channel.
unsigned int nGroups() const
Number of groups - minimum is 2 (1 correction group, 1 FEB ID group)
void dump(std::ostream &o, const LArOnlineID *onlineID=NULL) const
std::vector< FEBId > FEBIdVector
unsigned int FEBId
Public typedefs.
unsigned int nGains() const
Number of gain values.
std::map< FEBId, unsigned int > FEBIdMap
void addFEBIdVector(unsigned int channel, const FEBIdVector &febIdVec)
Add in a FEBIdVector - channel number should be from 0 to NChannelsPerGain-1
This class maps FEB IDs to/from COOL channel ids.
ChanMapOffets
Offsets for the special channels.
CorrectionType
Correction type.
ChannelMap m_febIdVecs
File map from existing ChannelMap - e.g. on read back.