From ccc344f34ce7d1114db4c14c7e013ecb1014e6d5 Mon Sep 17 00:00:00 2001 From: Susumu Oda <susumu.oda@cern.ch> Date: Fri, 19 Jun 2020 11:04:03 +0000 Subject: [PATCH] Add ATLAS_CHECK_THREAD_SAFETY to PixelConditionsData with fixing constness issues. --- .../ATLAS_CHECK_THREAD_SAFETY | 1 + .../PixelClusterOnTrackErrorData.h | 32 +++++++++---------- .../PixelOfflineCalibData.h | 28 ++++++++++++---- .../src/PixelClusterOnTrackErrorData.cxx | 28 ++++++---------- .../src/SpecialPixelMap.cxx | 4 +-- 5 files changed, 51 insertions(+), 42 deletions(-) create mode 100644 InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/ATLAS_CHECK_THREAD_SAFETY diff --git a/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/ATLAS_CHECK_THREAD_SAFETY b/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/ATLAS_CHECK_THREAD_SAFETY new file mode 100644 index 00000000000..eed4ad1258e --- /dev/null +++ b/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/ATLAS_CHECK_THREAD_SAFETY @@ -0,0 +1 @@ +InnerDetector/InDetConditions/PixelConditionsData diff --git a/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelClusterOnTrackErrorData.h b/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelClusterOnTrackErrorData.h index f40cef7ad2d..bc9ba56fc70 100644 --- a/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelClusterOnTrackErrorData.h +++ b/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelClusterOnTrackErrorData.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ /////////////////////////////////////////////////////////////////// @@ -44,24 +44,24 @@ class PixelClusterOnTrackErrorData { // get parametrizations - const std::vector<float> getClusterSizeBinsX(){return m_csx;} - const std::vector<float> getClusterSizeBinsY(){return m_csy;} - const std::vector<float> getEtaBins(){return m_etaref;} - const std::vector<float> getIncidenceAngleBins(){return m_phibins;} + const std::vector<float> getClusterSizeBinsX() const {return m_csx;} + const std::vector<float> getClusterSizeBinsY() const {return m_csy;} + const std::vector<float> getEtaBins() const {return m_etaref;} + const std::vector<float> getIncidenceAngleBins() const {return m_phibins;} // IBL - const std::vector<float> getEtaIBLBins(){return m_ibletaref;} - const std::vector<float> getIncidenceAngleIBLBins(){return m_iblphibins;} + const std::vector<float> getEtaIBLBins() const {return m_ibletaref;} + const std::vector<float> getIncidenceAngleIBLBins() const {return m_iblphibins;} // old parametrization (analytical formula) - double getPixelBarrelPhiError(double ang, int phiClusterSize); + double getPixelBarrelPhiError(double ang, int phiClusterSize) const; // new parametrization (read from DB) - float getPixelBarrelEtaError(int ibin); - float getPixelBarrelPhiError(int ibin); + float getPixelBarrelEtaError(int ibin) const; + float getPixelBarrelPhiError(int ibin) const; // IBL - float getPixelIBLEtaError(int ibin); - float getPixelIBLPhiError(int ibin); + float getPixelIBLEtaError(int ibin) const; + float getPixelIBLPhiError(int ibin) const; void setParameters(const int ncsx, const int ncsy, const int neta, const int nalpha, int offset, std::vector<float> constants); @@ -76,13 +76,13 @@ class PixelClusterOnTrackErrorData { m_ibletaerror[ibin] = error; } - int getBarrelBinPhi(double angle, int phiClusterSize); + int getBarrelBinPhi(double angle, int phiClusterSize) const; int getBarrelBinEta(double eta, int etaClusterSize, - int phiClusterSize); + int phiClusterSize) const; // IBL - int getIBLBinPhi(double angle, int phiClusterSize); - int getIBLBinEta(double eta, int etaClusterSize); + int getIBLBinPhi(double angle, int phiClusterSize) const; + int getIBLBinEta(double eta, int etaClusterSize) const; // save constants on text file void Print(std::string file) const; diff --git a/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelOfflineCalibData.h b/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelOfflineCalibData.h index f6b9af934b5..c77c29d0da4 100644 --- a/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelOfflineCalibData.h +++ b/InnerDetector/InDetConditions/PixelConditionsData/PixelConditionsData/PixelOfflineCalibData.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ /////////////////////////////////////////////////////////////////// @@ -51,9 +51,12 @@ class PixelOfflineCalibData{ int size() const; // get the pointer to pixel cluster error data - PixelClusterErrorData* getPixelClusterErrorData() const; - PixelChargeInterpolationParameters* getPixelChargeInterpolationParameters() const; - PixelClusterOnTrackErrorData* getPixelClusterOnTrackErrorData() const; + PixelClusterErrorData* getPixelClusterErrorData(); + PixelChargeInterpolationParameters* getPixelChargeInterpolationParameters(); + PixelClusterOnTrackErrorData* getPixelClusterOnTrackErrorData(); + const PixelClusterErrorData* getPixelClusterErrorData() const; + const PixelChargeInterpolationParameters* getPixelChargeInterpolationParameters() const; + const PixelClusterOnTrackErrorData* getPixelClusterOnTrackErrorData() const; // Get/Set the numerical constants int GetNumberOfConstants() const; @@ -109,15 +112,28 @@ inline bool PixelOfflineCalibData::update(const PixelClusterOnTrackErrorData& id return true; } -inline PixelClusterErrorData* PixelOfflineCalibData::getPixelClusterErrorData() const { +inline PixelClusterErrorData* PixelOfflineCalibData::getPixelClusterErrorData() { return m_clustererrordata; } -inline PixelChargeInterpolationParameters* PixelOfflineCalibData::getPixelChargeInterpolationParameters() const { +inline PixelChargeInterpolationParameters* PixelOfflineCalibData::getPixelChargeInterpolationParameters() { return m_chargeinterpolationparameters; } inline PixelClusterOnTrackErrorData* + PixelOfflineCalibData::getPixelClusterOnTrackErrorData() { + return m_clusterontrackerrordata; +} + +inline const PixelClusterErrorData* PixelOfflineCalibData::getPixelClusterErrorData() const { + return m_clustererrordata; +} + +inline const PixelChargeInterpolationParameters* PixelOfflineCalibData::getPixelChargeInterpolationParameters() const { + return m_chargeinterpolationparameters; +} + +inline const PixelClusterOnTrackErrorData* PixelOfflineCalibData::getPixelClusterOnTrackErrorData() const { return m_clusterontrackerrordata; } diff --git a/InnerDetector/InDetConditions/PixelConditionsData/src/PixelClusterOnTrackErrorData.cxx b/InnerDetector/InDetConditions/PixelConditionsData/src/PixelClusterOnTrackErrorData.cxx index 569e6aa6886..83f75b2a922 100644 --- a/InnerDetector/InDetConditions/PixelConditionsData/src/PixelClusterOnTrackErrorData.cxx +++ b/InnerDetector/InDetConditions/PixelConditionsData/src/PixelClusterOnTrackErrorData.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ #include "PixelConditionsData/PixelClusterOnTrackErrorData.h" @@ -124,7 +124,7 @@ int PixelClusterOnTrackErrorData::getNumberOfEtaIBLBins() const{ } double PixelClusterOnTrackErrorData::getPixelBarrelPhiError(double ang, - int deltax){ + int deltax) const { double errphi=50*CLHEP::micrometer/pow(12,0.5); // error on phi coordinate if(deltax == 1){ @@ -159,39 +159,35 @@ double PixelClusterOnTrackErrorData::getPixelBarrelPhiError(double ang, return errphi; } -float PixelClusterOnTrackErrorData::getPixelBarrelEtaError(int ibin){ +float PixelClusterOnTrackErrorData::getPixelBarrelEtaError(int ibin) const { if(ibin < 0) return -1; if(static_cast<unsigned int>(ibin) >= m_barreletaerror.size()) return -2; return m_barreletaerror[ibin]; } -float PixelClusterOnTrackErrorData::getPixelBarrelPhiError(int ibin){ +float PixelClusterOnTrackErrorData::getPixelBarrelPhiError(int ibin) const { if(ibin < 0){ return -1; } if(static_cast<unsigned int>(ibin) >= m_barrelphierror.size()){ return -2;} return m_barrelphierror[ibin]; } -float PixelClusterOnTrackErrorData::getPixelIBLEtaError(int ibin){ +float PixelClusterOnTrackErrorData::getPixelIBLEtaError(int ibin) const { if(ibin < 0||m_version>-2) return -1; if(static_cast<unsigned int>(ibin) >= m_ibletaerror.size()) return -2; return m_ibletaerror[ibin]; } -float PixelClusterOnTrackErrorData::getPixelIBLPhiError(int ibin){ +float PixelClusterOnTrackErrorData::getPixelIBLPhiError(int ibin) const { if(ibin < 0||m_version>-2){ return -1; } if(static_cast<unsigned int>(ibin) >= m_iblphierror.size()){ return -2;} return m_iblphierror[ibin]; } int PixelClusterOnTrackErrorData::getBarrelBinPhi(double angle, - int phiClusterSize){ + int phiClusterSize) const { int iang =0; int nang = m_phibins.size(); - if(nang == 0) { - Initialize(); - nang = m_phibins.size(); - } for(int i=0; i<nang; i++){ if(angle > m_phibins[i]) iang=i; } @@ -205,14 +201,10 @@ int PixelClusterOnTrackErrorData::getBarrelBinPhi(double angle, } int PixelClusterOnTrackErrorData::getBarrelBinEta(double eta, int etaClusterSize, - int phiClusterSize){ + int phiClusterSize) const { int ieta=0; int neta = m_etaref.size(); - if(neta == 0) { - Initialize(); - neta = m_etaref.size(); - } for(int i=0; i<neta; i++){ if(eta>m_etaref[i]) ieta=i; } @@ -232,7 +224,7 @@ int PixelClusterOnTrackErrorData::getBarrelBinEta(double eta, int etaClusterSize } int PixelClusterOnTrackErrorData::getIBLBinPhi(double angle, - int phiClusterSize){ + int phiClusterSize) const { if(m_version>-2) return -1; int iang =0; int nang = m_iblphibins.size(); @@ -246,7 +238,7 @@ int PixelClusterOnTrackErrorData::getIBLBinPhi(double angle, return m_csxbinsibl*iang+iphi; } -int PixelClusterOnTrackErrorData::getIBLBinEta(double eta, int etaClusterSize){ +int PixelClusterOnTrackErrorData::getIBLBinEta(double eta, int etaClusterSize) const { if(m_version>-2) return -1; int ieta=0; diff --git a/InnerDetector/InDetConditions/PixelConditionsData/src/SpecialPixelMap.cxx b/InnerDetector/InDetConditions/PixelConditionsData/src/SpecialPixelMap.cxx index 51aa639ac91..c8296aaf9b9 100755 --- a/InnerDetector/InDetConditions/PixelConditionsData/src/SpecialPixelMap.cxx +++ b/InnerDetector/InDetConditions/PixelConditionsData/src/SpecialPixelMap.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ #include "PixelConditionsData/SpecialPixelMap.h" @@ -20,7 +20,7 @@ //***** DetectorSpecialPixelMap *****// const int nmtype(5); -static unsigned int columnsPerFEIX[5]={18,80,132,80,132}; // number of columns per FEI3, 4, 50, 51, 52 +static const unsigned int columnsPerFEIX[5]={18,80,132,80,132}; // number of columns per FEI3, 4, 50, 51, 52 //static unsigned int rowsPerFEIX[5]={164, 336, 672, 339, 678}; // number of rows per FEI3, 4, 50, 51, 52 //static unsigned int rowsRdoPerFEIX[5]={160, 336, 672, 336, 672}; // number of rows readout per FEI3, 4, 50, 51, 52 -- GitLab