diff --git a/LArCalorimeter/LArGeoModel/LArReadoutGeometry/LArReadoutGeometry/LArDetectorManager.h b/LArCalorimeter/LArGeoModel/LArReadoutGeometry/LArReadoutGeometry/LArDetectorManager.h index d5bc418c774625ca3b6db2213276291c6b6ad8aa..ba1bc35961e19a9c54b9d246805a509b3e353c22 100755 --- a/LArCalorimeter/LArGeoModel/LArReadoutGeometry/LArReadoutGeometry/LArDetectorManager.h +++ b/LArCalorimeter/LArGeoModel/LArReadoutGeometry/LArReadoutGeometry/LArDetectorManager.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ #ifndef LARREADOUTGEOMETRY_LARDETECTORMANAGER_H @@ -30,11 +30,6 @@ class LArDetectorManager : public GeoVDetectorManager */ LArDetectorManager (const EMBDetectorManager* emb, const EMECDetectorManager* emec, const HECDetectorManager* hec, const FCALDetectorManager* fcal); - /** - * @brief Destructor - */ - ~LArDetectorManager(); - /** * @brief Gets the ith tree top. */ @@ -48,7 +43,7 @@ class LArDetectorManager : public GeoVDetectorManager /** * @brief Add a Tree Top */ - void addTreeTop (PVLink treeTop); + void addTreeTop (PVConstLink treeTop); /** * @brief Pointer to the manager for the Electromagnetic Barrel. May be NULL. @@ -94,7 +89,7 @@ class LArDetectorManager : public GeoVDetectorManager const EMECDetectorManager* m_emecManager{nullptr}; const HECDetectorManager* m_hecManager{nullptr}; const FCALDetectorManager* m_fcalManager{nullptr}; - std::vector<PVLink> m_treeTop; + std::vector<PVConstLink> m_treeTop; bool m_isTestBeam{false}; }; diff --git a/LArCalorimeter/LArGeoModel/LArReadoutGeometry/src/LArDetectorManager.cxx b/LArCalorimeter/LArGeoModel/LArReadoutGeometry/src/LArDetectorManager.cxx index 3b95085f5d6a92a15db8f3f0b4d2d681a4ef49b7..25debdc1bdf791c02b7aa3865d44ce6c573101f4 100755 --- a/LArCalorimeter/LArGeoModel/LArReadoutGeometry/src/LArDetectorManager.cxx +++ b/LArCalorimeter/LArGeoModel/LArReadoutGeometry/src/LArDetectorManager.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ #include "LArReadoutGeometry/LArDetectorManager.h" @@ -18,12 +18,6 @@ LArDetectorManager::LArDetectorManager (const EMBDetectorManager* emb setName("LArMgr"); } -LArDetectorManager::~LArDetectorManager() -{ - unsigned int ntree = LArDetectorManager::getNumTreeTops(); - for (unsigned int i=0;i<ntree;i++) LArDetectorManager::getTreeTop(i)->unref(); -} - PVConstLink LArDetectorManager::getTreeTop (unsigned int i) const { return m_treeTop[i]; @@ -34,10 +28,9 @@ unsigned int LArDetectorManager::getNumTreeTops () const return m_treeTop.size(); } -void LArDetectorManager::addTreeTop (PVLink treeTop) +void LArDetectorManager::addTreeTop (PVConstLink treeTop) { if (std::find(m_treeTop.begin(),m_treeTop.end(),treeTop)!=m_treeTop.end()) return; m_treeTop.push_back(treeTop); - treeTop->ref(); } diff --git a/TileCalorimeter/TileDetDescr/TileDetDescr/TileDetDescrManager.h b/TileCalorimeter/TileDetDescr/TileDetDescr/TileDetDescrManager.h index e1eb21bd8becc1a1b4d471bf5599579447ae7f9f..8a7ea27426357ed3fa2349a3455b03007d87ff6d 100755 --- a/TileCalorimeter/TileDetDescr/TileDetDescr/TileDetDescrManager.h +++ b/TileCalorimeter/TileDetDescr/TileDetDescr/TileDetDescrManager.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ #ifndef TILEDETDESCR_TILEDETDESCRMANAGER_H @@ -67,10 +67,10 @@ public: ~TileDetDescrManager(); // Access to raw geometry: - virtual unsigned int getNumTreeTops() const; - virtual PVConstLink getTreeTop(unsigned int i) const; + virtual unsigned int getNumTreeTops() const override; + virtual PVConstLink getTreeTop(unsigned int i) const override; - void addTreeTop(PVLink); // Add a Tree top: + void addTreeTop(PVConstLink); // Add a Tree top: // ---------------- Access to raw geometry: @@ -201,7 +201,7 @@ private: // ----------- Data members ------------- // Tree Tops - std::vector<PVLink> m_treeTops; + std::vector<PVConstLink> m_treeTops; // DB Manager TileDddbManager_ptr m_dbManager; diff --git a/TileCalorimeter/TileDetDescr/src/TileDetDescrManager.cxx b/TileCalorimeter/TileDetDescr/src/TileDetDescrManager.cxx index 6f75e82cc629df908e244382c5be8df6012eb07f..be5c38a60c36cacfaaafff252e3a9ab103b40f73 100755 --- a/TileCalorimeter/TileDetDescr/src/TileDetDescrManager.cxx +++ b/TileCalorimeter/TileDetDescr/src/TileDetDescrManager.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ /* @@ -67,8 +67,6 @@ TileDetDescrManager::TileDetDescrManager(TileDddbManager_ptr dbManager) TileDetDescrManager::~TileDetDescrManager() { - for (unsigned int i=0; i<m_treeTops.size(); i++) - m_treeTops[i]->unref(); clear(); } @@ -87,9 +85,8 @@ PVConstLink TileDetDescrManager::getTreeTop(unsigned int i) const } // -------------- Add a Tree top: ------------ -void TileDetDescrManager::addTreeTop(PVLink link) +void TileDetDescrManager::addTreeTop(PVConstLink link) { - link->ref(); m_treeTops.push_back(link); }