From 9adb0522f2e88da3300d4e8fd79fbd9d1390d378 Mon Sep 17 00:00:00 2001 From: scott snyder <sss@karma> Date: Sun, 27 Sep 2020 20:40:11 -0400 Subject: [PATCH] ZdcRec: Fix cppcheck warnings. - Prohibit copying of class owning memory. - Prefer pre-increment (or range-for) to postincrement. --- .../ZDC/ZdcRec/ZdcRec/ZdcSignalSinc.h | 6 ++++- ForwardDetectors/ZDC/ZdcRec/src/ZdcRec.cxx | 4 ++-- .../ZDC/ZdcRec/src/ZdcRecChannelTool.cxx | 18 +++++++-------- .../ZDC/ZdcRec/src/ZdcRecChannelToolV2.cxx | 23 ++++++++----------- 4 files changed, 26 insertions(+), 25 deletions(-) diff --git a/ForwardDetectors/ZDC/ZdcRec/ZdcRec/ZdcSignalSinc.h b/ForwardDetectors/ZDC/ZdcRec/ZdcRec/ZdcSignalSinc.h index 1c6fbd2f84d..09f5ab1c10a 100644 --- a/ForwardDetectors/ZDC/ZdcRec/ZdcRec/ZdcSignalSinc.h +++ b/ForwardDetectors/ZDC/ZdcRec/ZdcRec/ZdcSignalSinc.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ /* @@ -18,6 +18,10 @@ class ZdcSignalSinc { ZdcSignalSinc(int); ~ZdcSignalSinc(); + + ZdcSignalSinc(const ZdcSignalSinc&) = delete; + ZdcSignalSinc& operator= (const ZdcSignalSinc&) = delete; + int process(double *,double gain=1., double ped=0., double frac=1., bool corr=true); int getError(); diff --git a/ForwardDetectors/ZDC/ZdcRec/src/ZdcRec.cxx b/ForwardDetectors/ZDC/ZdcRec/src/ZdcRec.cxx index d8f780dc8d0..2e9ebbe8b05 100644 --- a/ForwardDetectors/ZDC/ZdcRec/src/ZdcRec.cxx +++ b/ForwardDetectors/ZDC/ZdcRec/src/ZdcRec.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ /* @@ -153,7 +153,7 @@ StatusCode ZdcRec::execute() // SG has the ownership of m_rawCollection, and it should be copyed intead of just // being passed around. - for (iter=tmpCollection->begin();iter!=tmpCollection->end();iter++) { + for (iter=tmpCollection->begin();iter!=tmpCollection->end();++iter) { m_rawCollection->push_back(*iter); } diff --git a/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelTool.cxx b/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelTool.cxx index da8b4776619..0b2fbe8312e 100644 --- a/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelTool.cxx +++ b/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelTool.cxx @@ -289,10 +289,10 @@ int ZdcRecChannelTool::makeRawFromDigits( //We need to be carefull. Sometimes the vector size here is zero (PPM flaw) and //the code crashs if we do not treat this. i = 0; - for (vit = wfm.begin(); vit<wfm.end(); vit++) { + for (vit = wfm.begin(); vit<wfm.end(); ++vit) { if (vit->size() == 0) vit->resize(7); ped = *vit->begin(); - for (it=vit->begin(); it<vit->end();it++) { + for (it=vit->begin(); it<vit->end();++it) { (*it) -= ped; //if ((i==1) || (i==3) ) (*it) = (*it) * s_GAIN_RATIO; } @@ -356,7 +356,7 @@ int ZdcRecChannelTool::makeRawFromDigits( /// Traditional code bellow (Energy by peak or sum, /// time by ratio of samples ////////////////////////////////////////////////// - for (vit = wfm.begin(); vit<wfm.end(); vit++) { + for (vit = wfm.begin(); vit<wfm.end(); ++vit) { v = *vit; soma = std::accumulate(v.begin(), v.end(), 0) ; pico = *(std::max_element(v.begin(),v.end()) ); @@ -400,7 +400,7 @@ int ZdcRecChannelTool::makeRawFromDigits( " m=" << m << " Time by CFD=" << tzc << " Peak at imax = " << imax << - " v[imax-1] = " << v[imax-1] << + " v[imax-1] = " << (imax > 0 ? v[imax-1] : 0) << " V[imax] = " << v[imax] << " Sample Ratio A1/A2=" << tsr << endmsg; k++; @@ -528,10 +528,10 @@ int ZdcRecChannelTool::getTimingCFD(const Identifier& id, const std::vector<std vf[i] = 0.; } - for (vit = wfm.begin(); vit<wfm.end(); vit++) { + for (vit = wfm.begin(); vit<wfm.end(); ++vit) { y = *vit; i = 4; - for (it=y.begin();it != y.end();it++) { + for (it=y.begin();it != y.end();++it) { v[i] = *it; i++; } @@ -679,7 +679,7 @@ int ZdcRecChannelTool::getTimingSinc(const Identifier& id, const std::vector<st << mType << ";" << mChannel << endmsg; - for (vvi_it = wfm.begin(); vvi_it<wfm.end(); vvi_it++) { + for (vvi_it = wfm.begin(); vvi_it<wfm.end(); ++vvi_it) { //FIXME: Change to the method of ID identification //if ((zId == 0xec000000) || (zId == 0xed000000) || // (zId == 0xec200000) || (zId == 0xed200000) || @@ -692,7 +692,7 @@ int ZdcRecChannelTool::getTimingSinc(const Identifier& id, const std::vector<st t = 0; //Fill the interpolated vector - for (vf_it = m_wfm_bwl.begin(); vf_it != m_wfm_bwl.end(); vf_it++ ) { + for (vf_it = m_wfm_bwl.begin(); vf_it != m_wfm_bwl.end(); ++vf_it ) { z = 0.; for (i=0;i<m_nsamples;i++) { x = (TMath::Pi() *(t*0.1 - i*25.))/25. ; @@ -817,7 +817,7 @@ int ZdcRecChannelTool::getTimingSinc2(const Identifier& id, const std::vector<st //from only a subset wfmIndex = 2; i = 0; - for (vit = wfm.begin(); vit<wfm.end(); vit++) { + for (vit = wfm.begin(); vit<wfm.end(); ++vit) { if ( (i < wfmIndex) && (mType == 0) ) { y = *vit; diff --git a/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelToolV2.cxx b/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelToolV2.cxx index 11dbef359e3..4ce9f9be544 100644 --- a/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelToolV2.cxx +++ b/ForwardDetectors/ZDC/ZdcRec/src/ZdcRecChannelToolV2.cxx @@ -119,17 +119,14 @@ int ZdcRecChannelToolV2::convertTT2ZM(const xAOD::TriggerTowerContainer* ttColle hashmapType digits_map; Identifier chan_id; - xAOD::TriggerTowerContainer::const_iterator tt_itr = ttCollection->begin(); - xAOD::TriggerTowerContainer::const_iterator tt_end = ttCollection->end(); - //std::cout << "Zdc TT's have " << ttCollection->size() << " towers" << std::endl; - for (;tt_itr != tt_end;tt_itr++) + for (const xAOD::TriggerTower* tt : *ttCollection) { - //std::cout << "ZdcTT coolId = " << (*tt_itr)->coolId() << std::endl; - //std::cout << ZdcToString(*(*tt_itr)) << std::endl; + //std::cout << "ZdcTT coolId = " << tt->coolId() << std::endl; + //std::cout << ZdcToString(*tt) << std::endl; - uint32_t coolId = (*tt_itr)->coolId(); + uint32_t coolId = tt->coolId(); uint32_t pin = (coolId>>8) & 0xf; uint32_t asic = coolId & 0xf; uint32_t slinkChannel = asic*16 + pin; @@ -173,10 +170,10 @@ int ZdcRecChannelToolV2::convertTT2ZM(const xAOD::TriggerTowerContainer* ttColle (*iter).second->setType(m_zdcId->type(chan_id)); (*iter).second->setChannel(m_zdcId->channel(chan_id)); //std::cout << "Trying to set element links of " << chan_id << std::dec << std::endl; - if (gain==0&&delay==0) (*iter).second->setTTg0d0Link( ElementLink<xAOD::TriggerTowerContainer_v2> ((*tt_itr),*ttCollection ) ); - if (gain==0&&delay==1) (*iter).second->setTTg0d1Link( ElementLink<xAOD::TriggerTowerContainer_v2> ((*tt_itr),*ttCollection ) ); - if (gain==1&&delay==0) (*iter).second->setTTg1d0Link( ElementLink<xAOD::TriggerTowerContainer_v2> ((*tt_itr),*ttCollection ) ); - if (gain==1&&delay==1) (*iter).second->setTTg1d1Link( ElementLink<xAOD::TriggerTowerContainer_v2> ((*tt_itr),*ttCollection ) ); + if (gain==0&&delay==0) (*iter).second->setTTg0d0Link( ElementLink<xAOD::TriggerTowerContainer_v2> (tt,*ttCollection ) ); + if (gain==0&&delay==1) (*iter).second->setTTg0d1Link( ElementLink<xAOD::TriggerTowerContainer_v2> (tt,*ttCollection ) ); + if (gain==1&&delay==0) (*iter).second->setTTg1d0Link( ElementLink<xAOD::TriggerTowerContainer_v2> (tt,*ttCollection ) ); + if (gain==1&&delay==1) (*iter).second->setTTg1d1Link( ElementLink<xAOD::TriggerTowerContainer_v2> (tt,*ttCollection ) ); } } @@ -188,7 +185,7 @@ int ZdcRecChannelToolV2::convertTT2ZM(const xAOD::TriggerTowerContainer* ttColle hashmapType::iterator iter = digits_map.begin(); hashmapType::iterator iter_end = digits_map.end(); - for (;iter != iter_end;iter++) + for (;iter != iter_end;++iter) { makeWaveformFromDigits( *((*iter).second) ); } @@ -345,7 +342,7 @@ int ZdcRecChannelToolV2::splitWaveform(std::map<int,float>& waveform, std::vecto adcs.clear(); std::map<int,float>::const_iterator wf_it = waveform.begin(); std::map<int,float>::const_iterator wf_end = waveform.end(); - for (;wf_it != wf_end;wf_it++) + for (;wf_it != wf_end;++wf_it) { //std::cout << iwf++ << "t=" << (*wf_it).first << " a=" << (*wf_it).second << std::endl; times.push_back((*wf_it).first / 10. ); // convert back to ns -- GitLab