|
ATLAS Offline Software
|
Go to the documentation of this file.
12 MsgStream &
log)
const
23 unsigned int pedestalIndex = 0;
26 for (
unsigned int i = 0;
i < nfebids; ++
i, ++subsetIt){
28 for (
unsigned int j = 0; j < nChannelsPerFeb; ++j){
44 for (
unsigned int i = 0;
i < ncorrs; ++
i){
48 <<
"LArPedestalSubsetCnv_p2::persToTrans - pedestal index too large: pedestal/size "
76 unsigned int nsubsetsNotEmpty = 0;
80 const auto subsetEnd = transObj->
subsetEnd();
82 subsetIt != subsetEnd;
85 unsigned int nfebChans = subsetIt->second.size();
87 if (nfebChans != 0 && nfebChans != nChannelsPerFeb) {
89 <<
"LArPedestalSubsetCnv_p2::transToPers - found incorrect number of channels per feb: " << nfebChans
93 if (nfebChans) ++nsubsetsNotEmpty;
98 persObj->
m_vPedestal.reserve(ncorrs+nsubsetsNotEmpty*nChannelsPerFeb);
99 persObj->
m_vPedestalRMS.reserve(ncorrs+nsubsetsNotEmpty*nChannelsPerFeb);
103 subsetIt != subsetEnd;
106 unsigned int nfebChans = subsetIt->second.size();
108 if (nfebChans == 0)
continue;
110 unsigned int febid = subsetIt->first;
112 for (
unsigned int j=0; j<nfebChans;++j) {
113 persObj->
m_vPedestal.push_back(subsetIt->second[j].m_Pedestal);
114 persObj->
m_vPedestalRMS.push_back(subsetIt->second[j].m_PedestalRMS);
126 persObj->
m_vPedestal.push_back(corrIt->second.m_Pedestal);
void setGroupingType(unsigned int type)
set the type of grouping - defined in LArConditionsContainerBase.h
virtual void persToTrans(const LArPedestalSubset_p2 *persObj, LArPedestalTransType *transObj, MsgStream &log) const override
std::vector< unsigned int > m_corrChannels
std::vector< float > m_vPedestalRMS
float copyFloatPT(const float &pers)
unsigned channelVectorSize() const
unsigned int subsetSize() const
LArConditionsSubset_p1 m_subset
ConstCorrectionVecIt correctionVecEnd() const
std::vector< unsigned int > m_febIds
void initialize(const std::vector< FebId > &ids, unsigned int gain)
Initialize with set of FEB ids.
std::vector< CorrectionPair > CorrectionVec
unsigned int m_groupingType
unsigned int channel() const
Access to the COOL channel number.
std::vector< float > m_vPedestal
void setChannel(unsigned int channel)
set the COOL channel number
template class for use for I/O of conditions data
This file defines the template class used for I/O of conditions data.
persistent class container of LArConditionsSubset for LArPedestal data.
unsigned int gain() const
Access to gain.
size_type correctionVecSize() const
Size of channel set.
ConstSubsetIt subsetBegin() const
Iterators over subset.
ConstSubsetIt subsetEnd() const
Copies a single float from a persistent LAr calibration object, protected against roundoff errors.
virtual void transToPers(const LArPedestalTransType *transObj, LArPedestalSubset_p2 *persObj, MsgStream &log) const override
ConstCorrectionVecIt correctionVecBegin() const
Iterators over channel set.
void insertCorrections(CorrectionVec &&corrs)
Insert a group of corrections.
unsigned int groupingType() const
Type of grouping - defined in LArConditionsContainerBase.h.