From 2a649558fab6e4b5147a2a124d5538cabbe89158 Mon Sep 17 00:00:00 2001
From: Tim Martin <tim.martin@cern.ch>
Date: Mon, 18 Mar 2019 09:56:01 +0000
Subject: [PATCH 1/2] Revert "Merge branch 'caloIdManager.LArRecUtils-20190311'
 into 'master'"

This reverts merge request !21835
---
 .../share/LArFCalTowerBuilderTool.ref         | 64 +++++++-------
 .../LArRecUtils/src/LArAutoCorrNoiseTool.h    |  1 +
 .../LArRecUtils/src/LArAutoCorrTotalTool.cxx  | 21 +++--
 .../LArRecUtils/src/LArAutoCorrTotalTool.h    |  2 +
 .../src/LArCellFakeProbElectronics.cxx        | 11 ++-
 .../src/LArFCalTowerBuilderTool.cxx           | 19 ++---
 .../LArRecUtils/src/LArFCalTowerBuilderTool.h |  5 +-
 .../LArRecUtils/src/LArFCalTowerStore.cxx     | 25 ++++--
 .../LArRecUtils/src/LArFCalTowerStore.h       |  8 +-
 .../LArRecUtils/src/LArHVCondAlg.cxx          | 14 ++--
 LArCalorimeter/LArRecUtils/src/LArHVCondAlg.h |  6 +-
 .../LArRecUtils/src/LArHVCorrTool.cxx         | 83 ++++++++++++++-----
 .../LArRecUtils/src/LArHVCorrTool.h           |  4 +-
 .../src/LArHVPathologyDbCondAlg.cxx           | 32 +++++--
 .../LArRecUtils/src/LArHVPathologyDbCondAlg.h |  6 +-
 .../LArRecUtils/src/LArHVScaleCorrCondAlg.cxx | 12 +--
 .../LArRecUtils/src/LArHVScaleCorrCondAlg.h   |  6 +-
 LArCalorimeter/LArRecUtils/src/LArOFCTool.cxx | 19 ++---
 LArCalorimeter/LArRecUtils/src/LArOFCTool.h   |  2 +
 .../LArRecUtils/src/MakeLArCellFromRaw.cxx    | 42 +++++-----
 20 files changed, 220 insertions(+), 162 deletions(-)

diff --git a/LArCalorimeter/LArRecUtils/share/LArFCalTowerBuilderTool.ref b/LArCalorimeter/LArRecUtils/share/LArFCalTowerBuilderTool.ref
index 75bbc81bbf53..f34b7e7551f4 100644
--- a/LArCalorimeter/LArRecUtils/share/LArFCalTowerBuilderTool.ref
+++ b/LArCalorimeter/LArRecUtils/share/LArFCalTowerBuilderTool.ref
@@ -1,14 +1,14 @@
-Mon Mar 11 15:46:25 CET 2019
+Thu Dec  6 05:33:31 CET 2018
 Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [WorkDir-22.0.1] [x86_64-centos7-gcc8-opt] [atlas-work3/27168cb1091] -- built on [2019-03-11T1355]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-opt] [atlas-work3/fa0fd6d0989] -- built on [2018-12-06T0504]
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "LArRecUtils/LArFCalTowerBuilderTool_test.py"
 SetGeometryVersion.py obtained major release version 22
 Py:Athena            INFO including file "IdDictDetDescrCnv/IdDictDetDescrCnv_joboptions.py"
-Py:ConfigurableDb    INFO Read module info for 5462 configurables from 44 genConfDb files
+Py:ConfigurableDb    INFO Read module info for 5473 configurables from 53 genConfDb files
 Py:ConfigurableDb    INFO No duplicates have been found: that's good !
 EventInfoMgtInit: Got release version  Athena-22.0.1
 Py:IOVDbSvc.CondDB    INFO Setting up conditions DB access to instance OFLP200
@@ -18,19 +18,20 @@ Py:Athena            INFO including file "CaloConditions/LArTTCellMap_ATLAS_jobO
 Py:Athena            INFO including file "CaloConditions/CaloTTIdMap_ATLAS_jobOptions.py"
 Py:Athena            INFO including file "TileIdCnv/TileIdCnv_jobOptions.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+[?1034hApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v31r0)
-                                          running on lxplus046.cern.ch on Mon Mar 11 15:46:42 2019
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r5)
+                                          running on lxplus077.cern.ch on Thu Dec  6 05:33:48 2018
 ====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 3440 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 3219 CLIDRegistry entries for module ALL
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
@@ -39,8 +40,8 @@ PoolSvc              INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.x
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
 DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128)(proxyurl=http://atlasbpfrontier.cern.ch:3127)(proxyurl=http://atlasbpfrontier.fnal.gov:3127) will be considered for COOL data
-DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2019-03-10T2143/Athena/22.0.1/InstallArea/x86_64-centos7-gcc8-opt/share/dbreplica.config
-DBReplicaSvc         INFO Total of 10 servers found for host lxplus046.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus077.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc           WARNING Unable to locate catalog for prfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables
@@ -49,7 +50,6 @@ PoolSvc              INFO Resolved path (via ATLAS_POOLCOND_PATH) is /cvmfs/atla
 PoolSvc              INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-MetaDataSvc          INFO Found MetaDataTools = PublicToolHandleArray([])
 IOVDbSvc             INFO Opened read transaction for POOL PersistencySvc
 IOVDbSvc             INFO Only 5 POOL conditions files will be open at once
 IOVDbSvc             INFO Cache alignment will be done in 3 slices
@@ -70,7 +70,7 @@ IOVDbSvc             INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTOn
 IOVDbSvc             INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas
 IOVDbSvc             INFO Added taginfo remove for /LAR/LArCellPositionShift
 IOVDbSvc             INFO Added taginfo remove for /LAR/Identifier/LArTTCellMapAtlas
-ClassIDSvc           INFO  getRegistryEntries: read 2094 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 2134 CLIDRegistry entries for module ALL
 ClassIDSvc           INFO  getRegistryEntries: read 17 CLIDRegistry entries for module ALL
 ClassIDSvc           INFO  getRegistryEntries: read 18 CLIDRegistry entries for module ALL
 DetDescrCnvSvc       INFO  initializing 
@@ -125,7 +125,7 @@ BarrelConstruction   INFO   Use sagging in geometry  ? 0
   multi-layered version of absorbers activated, mlabs == 1
 ================================================
 EventPersistenc...   INFO Added successfully Conversion service:DetDescrCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 5624 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 5819 CLIDRegistry entries for module ALL
 CaloIDHelper_ID...   INFO in createObj: creating a TileTBID helper object in the detector store
 IdDictDetDescrCnv    INFO in initialize
 IdDictDetDescrCnv    INFO in createObj: creating a IdDictManager object in the detector store
@@ -164,7 +164,7 @@ TileDddbManager      INFO n_tileSwitches = 1
 ClassIDSvc           INFO  getRegistryEntries: read 213 CLIDRegistry entries for module ALL
 CaloIDHelper_ID...   INFO in createObj: creating a TileID helper object in the detector store
 AtlasDetectorID      INFO initialize_from_dictionary - OK
-TileNeighbour        INFO Reading file  /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/TileNeighbour_reduced.txt
+TileNeighbour        INFO Reading file  /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/TileNeighbour_reduced.txt
 TileHWIDDetDesc...   INFO in createObj: creating a TileHWID helper object in the detector store
 TileHWID             INFO initialize_from_dictionary 
 AtlasDetectorID      INFO initialize_from_dictionary - OK
@@ -176,23 +176,21 @@ CaloIDHelper_ID...   INFO in createObj: creating a LArHEC_ID helper object in th
 AtlasDetectorID      INFO initialize_from_dictionary - OK
 CaloIDHelper_ID...   INFO in createObj: creating a LArFCAL_ID helper object in the detector store
 AtlasDetectorID      INFO initialize_from_dictionary - OK
-LArFCAL_Base_ID      INFO Reading file /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/FCal2DNeighbors-April2011.txt
-LArFCAL_Base_ID      INFO Reading file /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/FCal3DNeighborsNext-April2011.txt
-LArFCAL_Base_ID      INFO Reading file /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/FCal3DNeighborsPrev-April2011.txt
+LArFCAL_Base_ID      INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCal2DNeighbors-April2011.txt
+LArFCAL_Base_ID      INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCal3DNeighborsNext-April2011.txt
+LArFCAL_Base_ID      INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCal3DNeighborsPrev-April2011.txt
 CaloIDHelper_ID...   INFO in createObj: creating a LArMiniFCAL_ID helper object in the detector store
 AtlasDetectorID      INFO initialize_from_dictionary - OK
 LArMiniFCAL_ID       INFO  initialize_from_dict - LArCalorimeter dictionary does NOT contain miniFCAL description. Unable to initialize LArMiniFCAL_ID.
 AtlasDetectorID      INFO initialize_from_dictionary - OK
 TileDetDescrMan...   INFO Entering create_elements()
-ClassIDSvc           INFO  getRegistryEntries: read 66 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 65 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
 CondInputLoader      INFO Initializing CondInputLoader...
 CondInputLoader      INFO Adding base classes:
 CondInputLoader      INFO Will create WriteCondHandle dependencies for the following DataObjects:
-ClassIDSvc           INFO  getRegistryEntries: read 7104 CLIDRegistry entries for module ALL
-CaloMgrDetDescrCnv   INFO in createObj: creating a Calo Detector Manager object in the detector store
+ClassIDSvc           INFO  getRegistryEntries: read 8831 CLIDRegistry entries for module ALL
 CaloIdMgrDetDes...   INFO in createObj: creating a CaloDescrManager object in the detector store
-ClassIDSvc           INFO  getRegistryEntries: read 161 CLIDRegistry entries for module ALL
 CaloIDHelper_ID...   INFO in createObj: creating a CaloDM_ID helper object in the detector store
 CaloDM_ID            INFO initialize_from_dictionary
 AtlasDetectorID      INFO initialize_from_dictionary - OK
@@ -209,12 +207,12 @@ CaloIDHelper_ID...   INFO in createObj: creating a LArHEC_SuperCell_ID helper ob
 AtlasDetectorID      INFO initialize_from_dictionary - OK
 CaloIDHelper_ID...   INFO in createObj: creating a LArFCAL_SuperCell_ID helper object in the detector store
 AtlasDetectorID      INFO initialize_from_dictionary - OK
-LArFCAL_Base_ID      INFO Reading file /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/FCalSuperCells2DNeighborsNew-April2014.txt
-LArFCAL_Base_ID      INFO Reading file /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/FCalSuperCells3DNeighborsNextNew-April2014.txt
-LArFCAL_Base_ID      INFO Reading file /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/FCalSuperCells3DNeighborsPrevNew-April2014.txt
+LArFCAL_Base_ID      INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCalSuperCells2DNeighborsNew-April2014.txt
+LArFCAL_Base_ID      INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCalSuperCells3DNeighborsNextNew-April2014.txt
+LArFCAL_Base_ID      INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCalSuperCells3DNeighborsPrevNew-April2014.txt
 CaloIDHelper_ID...   INFO in createObj: creating a Tile_SuperCell_ID helper object in the detector store
 AtlasDetectorID      INFO initialize_from_dictionary - OK
-TileNeighbour        INFO Reading file  /afs/cern.ch/user/s/ssnyder/atlas-work3/build-x86_64-centos7-gcc8-opt/x86_64-centos7-gcc8-opt/share/TileSuperCellNeighbour.txt
+TileNeighbour        INFO Reading file  /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-12-04T2300/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/TileSuperCellNeighbour.txt
 AtlasDetectorID      INFO initialize_from_dictionary - OK
 CaloIdMgrDetDes...   INFO  Finished 
 CaloIdMgrDetDes...   INFO Initializing CaloIdMgr from values in CaloIdMgrDetDescrCnv 
@@ -234,6 +232,7 @@ IOVDbSvc             INFO Disconnecting from COOLOFL_LAR/OFLP200
 Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 06C9EAE8-6F5B-E011-BAAA-003048F0E7AC
 Domain[ROOT_All]     INFO                           /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000029.gen.COND/cond09_mc.000029.gen.COND._0002.pool.root
 RootDatabase.open    INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000029.gen.COND/cond09_mc.000029.gen.COND._0002.pool.root File version:52200
+CaloMgrDetDescrCnv   INFO in createObj: creating a Calo Detector Manager object in the detector store
 Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A
 Domain[ROOT_All]     INFO                           /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root
 RootDatabase.open    INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root File version:52200
@@ -6641,6 +6640,7 @@ towers
 6398 100 63 0 
 6399 100 64 0 
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #1 1 events processed so far  <<<===
+MetaDataSvc          INFO MetaDataSvc::stop()
 /cvmfs/atlas-co...   INFO Database being retired...
 Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 06C9EAE8-6F5B-E011-BAAA-003048F0E7AC
 /cvmfs/atlas-co...   INFO Database being retired...
@@ -6651,25 +6651,25 @@ IncidentProcAlg1     INFO Finalize
 CondInputLoader      INFO Finalizing CondInputLoader...
 IncidentProcAlg2     INFO Finalize
 IdDictDetDescrCnv    INFO in finalize
-IOVDbFolder          INFO Folder /LAR/Align (PoolRef) db-read 1/1 objs/chan/bytes 1/1/170 ((     1.14 ))s
+IOVDbFolder          INFO Folder /LAR/Align (PoolRef) db-read 1/1 objs/chan/bytes 1/1/170 ((     0.14 ))s
 IOVDbFolder          INFO Folder /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas (PoolRef) db-read 0/0 objs/chan/bytes 0/1/0 ((     0.00 ))s
 IOVDbFolder          INFO Folder /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas (PoolRef) db-read 0/0 objs/chan/bytes 0/1/0 ((     0.00 ))s
 IOVDbFolder          INFO Folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas (PoolRef) db-read 0/0 objs/chan/bytes 0/1/0 ((     0.00 ))s
-IOVDbFolder          INFO Folder /LAR/LArCellPositionShift (PoolRef) db-read 1/1 objs/chan/bytes 1/1/195 ((     0.76 ))s
-IOVDbFolder          INFO Folder /LAR/Identifier/LArTTCellMapAtlas (PoolRef) db-read 1/0 objs/chan/bytes 1/1/173 ((     0.89 ))s
+IOVDbFolder          INFO Folder /LAR/LArCellPositionShift (PoolRef) db-read 1/1 objs/chan/bytes 1/1/195 ((     0.03 ))s
+IOVDbFolder          INFO Folder /LAR/Identifier/LArTTCellMapAtlas (PoolRef) db-read 1/0 objs/chan/bytes 1/1/173 ((     0.02 ))s
 IOVDbFolder       WARNING Folder /LAR/Identifier/LArTTCellMapAtlas is requested but no data retrieved
-IOVDbSvc             INFO  bytes in ((      2.79 ))s
+IOVDbSvc             INFO  bytes in ((      0.19 ))s
 IOVDbSvc             INFO Connection sqlite://;schema=mycool.db;dbname=OFLP200 : nConnect: 0 nFolders: 0 ReadTime: ((     0.00 ))s
-IOVDbSvc             INFO Connection COOLOFL_LAR/OFLP200 : nConnect: 2 nFolders: 3 ReadTime: ((     2.79 ))s
+IOVDbSvc             INFO Connection COOLOFL_LAR/OFLP200 : nConnect: 2 nFolders: 3 ReadTime: ((     0.19 ))s
 IOVDbSvc             INFO Connection COOLOFL_CALO/OFLP200 : nConnect: 1 nFolders: 3 ReadTime: ((     0.00 ))s
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 *****Chrono*****     INFO ****************************************************************************************************
 *****Chrono*****     INFO  The Final CPU consumption ( Chrono ) Table (ordered)
 *****Chrono*****     INFO ****************************************************************************************************
-cObjR_ALL            INFO Time User   : Tot=  450 [ms] Ave/Min/Max=  225(+-  215)/   10/  440 [ms] #=  2
-cObj_ALL             INFO Time User   : Tot= 0.52  [s] Ave/Min/Max= 0.26(+- 0.23)/ 0.03/ 0.49  [s] #=  2
-ChronoStatSvc        INFO Time User   : Tot= 2.71  [s]                                             #=  1
+cObjR_ALL            INFO Time User   : Tot=  480 [ms] Ave/Min/Max=  240(+-  230)/   10/  470 [ms] #=  2
+cObj_ALL             INFO Time User   : Tot= 0.58  [s] Ave/Min/Max= 0.29(+- 0.25)/ 0.04/ 0.54  [s] #=  2
+ChronoStatSvc        INFO Time User   : Tot= 3.84  [s]                                             #=  1
 *****Chrono*****     INFO ****************************************************************************************************
 ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
diff --git a/LArCalorimeter/LArRecUtils/src/LArAutoCorrNoiseTool.h b/LArCalorimeter/LArRecUtils/src/LArAutoCorrNoiseTool.h
index 2b772f17eb6e..479f407611a1 100644
--- a/LArCalorimeter/LArRecUtils/src/LArAutoCorrNoiseTool.h
+++ b/LArCalorimeter/LArRecUtils/src/LArAutoCorrNoiseTool.h
@@ -31,6 +31,7 @@
 #include "LArElecCalib/ILArMCSymTool.h"
 #include "LArIdentifier/LArOnlineID.h"
 #include "LArIdentifier/LArOnline_SuperCellID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArID.h"
 #include "GaudiKernel/IIncidentListener.h"
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
diff --git a/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.cxx b/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.cxx
index 56088671e7f1..2c81adb18e36 100644
--- a/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.cxx
@@ -8,7 +8,6 @@
 #include "LArIdentifier/LArOnlineID.h"
 #include "LArIdentifier/LArOnline_SuperCellID.h"
 #include "LArCabling/LArCablingLegacyService.h"
-#include "CaloIdentifier/CaloCell_ID.h"
 #include <cmath>
 
 /////////////////////////////////////////////////////////////////////////////
@@ -24,6 +23,7 @@ LArAutoCorrTotalTool::LArAutoCorrTotalTool(const std::string& type,
     m_lar_on_id(nullptr),
     m_cablingService(nullptr),
     m_larmcsym("LArMCSymTool"),m_adc2mevTool("LArADC2MeVTool"),
+    m_calo_id_man(nullptr),
     m_lar_em_id(nullptr),
     m_lar_hec_id(nullptr),
     m_lar_fcal_id(nullptr),
@@ -77,17 +77,16 @@ StatusCode LArAutoCorrTotalTool::initialize()
   }
 
   //retrieves helpers for LArCalorimeter
-  const CaloCell_Base_ID* idHelper = nullptr;
+  m_calo_id_man  = CaloIdManager::instance();
   if ( m_isSC ) {
-    ATH_CHECK( detStore()->retrieve (idHelper, "CaloCell_SuperCell_ID") );
-  }
-  else {
-    ATH_CHECK( detStore()->retrieve (idHelper, "CaloCell_ID") );
-  }
-
-  m_lar_em_id   = idHelper->em_idHelper();
-  m_lar_hec_id  = idHelper->hec_idHelper();
-  m_lar_fcal_id = idHelper->fcal_idHelper();
+    m_lar_em_id   = m_calo_id_man->getEM_SuperCell_ID();
+    m_lar_hec_id  = m_calo_id_man->getHEC_SuperCell_ID();
+    m_lar_fcal_id = m_calo_id_man->getFCAL_SuperCell_ID();
+  }  else  {
+    m_lar_em_id   = m_calo_id_man->getEM_ID();
+    m_lar_hec_id  = m_calo_id_man->getHEC_ID();
+    m_lar_fcal_id = m_calo_id_man->getFCAL_ID();
+  }  
   
 
 
diff --git a/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.h b/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.h
index 3c099b7f676b..c633bc200cb7 100644
--- a/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.h
+++ b/LArCalorimeter/LArRecUtils/src/LArAutoCorrTotalTool.h
@@ -36,6 +36,7 @@
 #include "StoreGate/DataHandle.h"
 #include "LArElecCalib/ILArMCSymTool.h"
 #include "LArIdentifier/LArOnlineID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArID.h"
 #include "GaudiKernel/IIncidentListener.h"
 
@@ -103,6 +104,7 @@ class LArAutoCorrTotalTool: public AthAlgTool,
   ToolHandle<ILArMCSymTool>     m_larmcsym;
   ToolHandle<ILArADC2MeVTool>   m_adc2mevTool;
   
+  const CaloIdManager* m_calo_id_man;
   const LArEM_Base_ID*    m_lar_em_id; 
   const LArHEC_Base_ID*   m_lar_hec_id;
   const LArFCAL_Base_ID*  m_lar_fcal_id;
diff --git a/LArCalorimeter/LArRecUtils/src/LArCellFakeProbElectronics.cxx b/LArCalorimeter/LArRecUtils/src/LArCellFakeProbElectronics.cxx
index af68292c7f04..a57a496306f4 100644
--- a/LArCalorimeter/LArRecUtils/src/LArCellFakeProbElectronics.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArCellFakeProbElectronics.cxx
@@ -18,6 +18,7 @@ PURPOSE:  Scales down the energy of cells due to simulated
 #include "LArCellFakeProbElectronics.h"
 
 #include "CaloEvent/CaloCellContainer.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/CaloCell_ID.h"
 #include "CaloDetDescr/CaloDetDescrManager.h"
 #include "LArCabling/LArCablingLegacyService.h"
@@ -76,10 +77,12 @@ double  LArCellFakeProbElectronics::wtCell(const CaloCell * theCell ) const
 
 
   // get calo id helper
-  const CaloCell_ID* idHelper = nullptr;
-  if (detStore()->retrieve (idHelper, "CaloCell_ID").isFailure()) {
-    return 1;
-  }
+  const CaloCell_ID* idHelper = CaloIdManager::instance()->getCaloCell_ID();
+  if ( idHelper == 0 )
+    {
+      ATH_MSG_ERROR( "cannot allocate CaloCell_ID helper!" );
+      return 1;
+    }
   
   HWIdentifier id;
   try{
diff --git a/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.cxx b/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.cxx
index 04e29ec37bcb..cc6edfaa6f19 100644
--- a/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
 */
 
 
@@ -7,8 +7,8 @@
 #include "LArFCalTowerStore.h"
 
 #include "CaloIdentifier/CaloCell_ID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArFCAL_ID.h"
-#include "CaloDetDescr/CaloDetDescrManager.h"
 
 #include "CaloUtils/CaloTowerBuilderToolBase.h"
 
@@ -28,12 +28,11 @@ LArFCalTowerBuilderTool::LArFCalTowerBuilderTool(const std::string& name,
 						 const IInterface* parent)
   : CaloTowerBuilderToolBase(name,type,parent)
     , m_minEt(0.)
-    , m_cellIdHelper(nullptr)
-    , m_larFCalId(nullptr)
-    , m_theManager(nullptr)
 {
   // Et cut for minicells
   declareProperty("MinimumEt",m_minEt);
+  m_larFCalId = (CaloIdManager::instance())->getFCAL_ID();
+  // initialize intermediate store
 }
 
 LArFCalTowerBuilderTool::~LArFCalTowerBuilderTool(){
@@ -44,11 +43,6 @@ LArFCalTowerBuilderTool::~LArFCalTowerBuilderTool(){
 /////////////////////////////
 
 StatusCode LArFCalTowerBuilderTool::initializeTool(){
-  ATH_CHECK( detStore()->retrieve (m_cellIdHelper, "CaloCell_ID") );
-  m_larFCalId = m_cellIdHelper->fcal_idHelper();
-
-  ATH_CHECK( detStore()->retrieve (m_theManager, "CaloMgr") );
-
   // ignore other input!
   ATH_MSG_INFO( "CaloTowerBuilder for the FCal initiated"  );
 
@@ -197,10 +191,7 @@ void  LArFCalTowerBuilderTool::handle(const Incident&)
 StatusCode LArFCalTowerBuilderTool::rebuildLookup()
 {
   CaloTowerContainer theTowers (towerSeg());
-  if ( m_cellStore.buildLookUp(*m_cellIdHelper,
-                               *m_theManager,
-                               &theTowers) )
-  {
+  if ( m_cellStore.buildLookUp(&theTowers) ) {
     return StatusCode::SUCCESS;
   }
   return StatusCode::FAILURE;
diff --git a/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.h b/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.h
index 8702d99873f1..d4a298769516 100644
--- a/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.h
+++ b/LArCalorimeter/LArRecUtils/src/LArFCalTowerBuilderTool.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef LARCLUSTERREC_LARFCALTOWERBUILDERTOOL_H
@@ -28,7 +28,6 @@ class LArFCalTowerStore;
 
 class CaloTowerContainer;
 class CaloTower;
-class CaloDetDescrManager;
 
 class LArFCAL_ID;
 
@@ -97,9 +96,7 @@ private:
   // FCal only
   static CaloCell_ID::SUBCALO m_caloIndex;
 
-  const CaloCell_ID* m_cellIdHelper;
   const LArFCAL_ID* m_larFCalId;
-  const CaloDetDescrManager* m_theManager;
 
   LArFCalTowerStore m_cellStore;
 };
diff --git a/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.cxx b/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.cxx
index 1b8490958189..35cde60f2d59 100644
--- a/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
 */
 
 /********************************************************************
@@ -20,7 +20,8 @@ Updated:
 // include header files
 #include "Identifier/IdentifierHash.h"
 
-#include "CaloIdentifier/CaloCell_ID.h"
+#include "CaloIdentifier/CaloIdManager.h"
+//#include "CaloIdentifier/CaloCell_ID.h"
 #include "CaloIdentifier/LArFCAL_ID.h"
 
 #include "CaloDetDescr/CaloDetDescrManager.h"
@@ -64,9 +65,7 @@ LArFCalTowerStore::~LArFCalTowerStore(){
 // Build LookUp Table //
 ////////////////////////
 
-bool LArFCalTowerStore::buildLookUp(const CaloCell_ID& cellIdHelper,
-                                    const CaloDetDescrManager& theManager,
-                                    CaloTowerContainer* theTowers)
+bool LArFCalTowerStore::buildLookUp(CaloTowerContainer* theTowers)
 {
   ///////////////////////
   // Store Preparation //
@@ -81,11 +80,19 @@ bool LArFCalTowerStore::buildLookUp(const CaloCell_ID& cellIdHelper,
   MsgStream msg(theMsgSvc,"LArFCalTowerStore");
   
   // get cell id helper
-  const LArFCAL_ID& fcalIdHelper = *cellIdHelper.fcal_idHelper();
+  const CaloCell_ID* cellIdHelper = (CaloIdManager::instance())->getCaloCell_ID();
+  const LArFCAL_ID* fcalIdHelper = (CaloIdManager::instance())->getFCAL_ID();
+
+  // get cell description manager
+  const CaloDetDescrManager* theManager = CaloDetDescrManager::instance();
+  if ( ! theManager->isInitialized() ){
+      msg << MSG::ERROR<< "CaloDetDescrManager is not initialized, module unusable!" << endmsg;
+      return false;
+    }
 
   // find numerical ranges
   IdentifierHash firstIndex, lastIndex;
-  cellIdHelper.calo_cell_hash_range((int)CaloCell_ID::LARFCAL, firstIndex, lastIndex);
+  cellIdHelper->calo_cell_hash_range((int)CaloCell_ID::LARFCAL, firstIndex, lastIndex);
   m_indxOffset = (size_t)firstIndex;
   m_indxBound  = (size_t)lastIndex;
 
@@ -131,7 +138,7 @@ bool LArFCalTowerStore::buildLookUp(const CaloCell_ID& cellIdHelper,
 	  //std::cout<<"cell:"<<anIndex<<std::endl;
       
 	  // get cell geometry
-      const CaloDetDescrElement* theElement = theManager.get_element(cellIndex);
+      const CaloDetDescrElement* theElement = theManager->get_element(cellIndex);
       if (!theElement) {
         msg << MSG::ERROR<< "Can't find element for index " << cellIndex
             << endmsg;
@@ -144,7 +151,7 @@ bool LArFCalTowerStore::buildLookUp(const CaloCell_ID& cellIdHelper,
       double dyCell = theElement->dy();
 
       // get cell logical location
-      int thisModule = fcalIdHelper.module(theElement->identify());
+      int thisModule = fcalIdHelper->module(theElement->identify());
       // get cell splitting
       thisModule--;
       double theXBin   = dxCell / (double)m_ndxFCal[thisModule];
diff --git a/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.h b/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.h
index f54ab5ab2902..089b24b54e92 100644
--- a/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.h
+++ b/LArCalorimeter/LArRecUtils/src/LArFCalTowerStore.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef LARRECUTILS_LARFCALTOWERSTORE_H
@@ -32,8 +32,6 @@ PACKAGE:  offline/LArCalorimeter/LArClusterRec
 #include <map>
 #include <vector>
 
-class CaloDetDescrManager;
-
 class LArFCalTowerStore
 {
  public:
@@ -72,9 +70,7 @@ class LArFCalTowerStore
   unsigned int towerSize(tower_iterator t) const  {return t->size();}
   
   /// \brief setup trigger
-  bool buildLookUp(const CaloCell_ID& cellIdHelper,
-                   const CaloDetDescrManager& theManager,
-                   CaloTowerContainer* theTowers);
+  bool buildLookUp(CaloTowerContainer* theTowers);
 
   /// \brief size of internal data store
   size_t size() const { return m_TTCmatrix.size(); }
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.cxx b/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.cxx
index 5c45c9d19543..56284850ad2e 100755
--- a/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "./LArHVCondAlg.h" 
@@ -12,7 +12,7 @@
 #include "CaloIdentifier/LArEM_ID.h"
 #include "CaloIdentifier/LArHEC_ID.h"
 #include "CaloIdentifier/LArFCAL_ID.h"
-#include "CaloIdentifier/CaloCell_ID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloDetDescr/CaloDetDescrManager.h"
 #include "LArReadoutGeometry/EMBCell.h"
 #include "LArHV/LArHVManager.h"
@@ -62,7 +62,6 @@
 // constructor 
 LArHVCondAlg::LArHVCondAlg( const std::string& name, ISvcLocator* pSvcLocator )
   : AthReentrantAlgorithm(name,pSvcLocator),
-    m_calodetdescrmgr(nullptr),
     m_larem_id(nullptr),
     m_larhec_id(nullptr),
     m_larfcal_id(nullptr),
@@ -82,12 +81,11 @@ LArHVCondAlg::~LArHVCondAlg()
 
 //initialize
 StatusCode LArHVCondAlg::initialize(){
-  const CaloCell_ID* idHelper = nullptr;
-  ATH_CHECK( detStore()->retrieve (idHelper, "CaloCell_ID") );
+  ATH_CHECK(detStore()->retrieve(m_caloIdMgr));
 
-  m_larem_id   = idHelper->em_idHelper();
-  m_larhec_id   = idHelper->hec_idHelper();
-  m_larfcal_id   = idHelper->fcal_idHelper();
+  m_larem_id   = m_caloIdMgr->getEM_ID();
+  m_larhec_id   = m_caloIdMgr->getHEC_ID();
+  m_larfcal_id   = m_caloIdMgr->getFCAL_ID();
 
   ATH_CHECK(detStore()->retrieve(m_calodetdescrmgr));
 
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.h b/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.h
index a05c11389962..b69427da2f83 100755
--- a/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.h
+++ b/LArCalorimeter/LArRecUtils/src/LArHVCondAlg.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 /**
@@ -36,6 +36,7 @@ class AthenaAttributeList;
 class LArEM_ID;
 class LArHEC_ID;
 class LArFCAL_ID;
+class CaloIdManager;
 class CaloDetDescrManager;
 class Identifier;
 class LArElectrodeID;
@@ -76,7 +77,8 @@ class LArHVCondAlg: public AthReentrantAlgorithm
 
   // other members:
   
-  const CaloDetDescrManager* m_calodetdescrmgr;
+  const DataHandle<CaloIdManager> m_caloIdMgr;
+  const DataHandle<CaloDetDescrManager> m_calodetdescrmgr;
   const LArEM_ID* m_larem_id;
   const LArHEC_ID* m_larhec_id;
   const LArFCAL_ID* m_larfcal_id;
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx b/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx
index f16d01686a8a..8a43cfa2b23e 100644
--- a/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx
@@ -28,19 +28,18 @@ LArHVCorrTool::LArHVCorrTool(const std::string& type,
 			     const IInterface* parent) 
   : 
     AthAlgTool(type, name, parent),
-    m_lar_on_id(nullptr), 	    
-    m_calocell_id(nullptr),	
-    m_larem_id(nullptr),
-    m_larhec_id(nullptr),
-    m_larfcal_id(nullptr),	
-    m_electrodeID(nullptr),
-    m_calodetdescrmgr(nullptr),
+    m_lar_on_id(NULL), 	    
+    m_calocell_id(NULL),	
+    m_larem_id(NULL),
+    m_larhec_id(NULL),
+    m_larfcal_id(NULL),	
+    m_electrodeID(NULL),
     m_cablingService("LArCablingLegacyService"),
     m_hvtool("LArHVToolMC",this)
 {
   declareInterface<ILArHVCorrTool>(this);
 
-  m_Tdrift = nullptr;
+  m_Tdrift = NULL;
   m_ownScale = true;
   m_keyOutput = "LArHVScaleCorr";
   m_keyOutputTd = "LArTdrift";
@@ -74,22 +73,64 @@ LArHVCorrTool::~LArHVCorrTool() {
 StatusCode LArHVCorrTool::initialize() {
   ATH_MSG_DEBUG("LArHVCorrTool initialize() begin");
   
-  ATH_CHECK( detStore()->retrieve(m_lar_on_id,"LArOnlineID") );
-  ATH_CHECK( detStore()->retrieve(m_calocell_id,"CaloCell_ID") );
+  StatusCode sc = detStore()->retrieve(m_lar_on_id,"LArOnlineID");
+  if (sc.isFailure()) {
+    msg(MSG::ERROR) << "Unable to retrieve  LArOnlineID from DetectorStore" << endmsg;
+    return StatusCode::FAILURE;
+  }
+
+  sc=detStore()->retrieve(m_calocell_id,"CaloCell_ID");
+  if (sc.isFailure()) {
+    msg(MSG::ERROR) << "Unable to retrieve  CaloCellID from DetectorStore" << endmsg;
+    return StatusCode::FAILURE;
+  }
+// retrieve LArEM id helper
+
+  sc = detStore()->retrieve( m_caloIdMgr );
+  if (sc.isFailure()) {
+   msg(MSG::ERROR) << "Unable to retrieve CaloIdMgr " << endmsg;
+   return sc;
+  }
+
+  m_larem_id   = m_caloIdMgr->getEM_ID();
+  m_larhec_id   = m_caloIdMgr->getHEC_ID();
+  m_larfcal_id   = m_caloIdMgr->getFCAL_ID();
 
-  m_larem_id   = m_calocell_id->em_idHelper();
-  m_larhec_id   = m_calocell_id->hec_idHelper();
-  m_larfcal_id   = m_calocell_id->fcal_idHelper();
+  if(m_cablingService.retrieve().isFailure()){
+    msg(MSG::ERROR) << "Unable to get CablingService " << endmsg;
+    return StatusCode::FAILURE;
+  }
 
-  ATH_CHECK( m_cablingService.retrieve() );
-  ATH_CHECK( detStore()->retrieve(m_calodetdescrmgr) );
-  ATH_CHECK( detStore()->retrieve(m_electrodeID) );
-  ATH_CHECK( m_hvtool.retrieve() );
+  sc = detStore()->retrieve(m_calodetdescrmgr);                
+  if (sc.isFailure()) {
+    msg(MSG::ERROR) << "Unable to get CaloDetDescrManager" << endmsg;
+    return StatusCode::FAILURE;                              
+  } 
 
-  ATH_CHECK( detStore()->regFcn(&ILArHVTool::LoadCalibration,dynamic_cast<ILArHVTool*>(&(*m_hvtool)),
-                                &ILArHVCorrTool::LoadCalibration,dynamic_cast<ILArHVCorrTool*>(this)) );
 
-  ATH_CHECK( this->buildFixHVList() );
+  sc=detStore()->retrieve(m_electrodeID);
+  if (sc.isFailure()) {
+    msg(MSG::ERROR) << "Unable to get LArElectrodeID helper" << endmsg;
+    return sc;
+  }
+
+  if (m_hvtool.retrieve().isFailure()) {
+    msg(MSG::ERROR) << "Unable to find tool for LArHVTool" << endmsg; 
+    return StatusCode::FAILURE;
+  }
+
+  sc = detStore()->regFcn(&ILArHVTool::LoadCalibration,dynamic_cast<ILArHVTool*>(&(*m_hvtool)),
+			  &ILArHVCorrTool::LoadCalibration,dynamic_cast<ILArHVCorrTool*>(this));
+  if (sc.isFailure()) {
+    msg(MSG::ERROR) << "canot register callback " << endmsg;
+    return sc;
+  }
+
+  sc = this->buildFixHVList();
+  if (sc.isFailure()) {
+    msg(MSG::ERROR) << " cannot build list to fix HV corrections " << endmsg; 
+    return StatusCode::FAILURE;
+  }
 
   //Initialize hash-ranges
   //FIXME: Hardcoded numbers are not ideal
@@ -213,7 +254,7 @@ StatusCode LArHVCorrTool::finalize()
 // *** compute global ADC2MeV factor from subfactors *** 
 StatusCode LArHVCorrTool::getScale(const HASHRANGEVEC& hashranges) const {
   
-  if (m_doTdrift && m_Tdrift==nullptr) {
+  if (m_doTdrift && m_Tdrift==NULL) {
     m_Tdrift = new LArTdriftComplete();
     if( (m_Tdrift->setGroupingType("ExtendedSubDetector",msg())).isFailure()) {
       msg(MSG::ERROR) << " cannot setGroupingType " << endmsg;
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.h b/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.h
index 608689b6a4ac..bce0b2ae3ca1 100644
--- a/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.h
+++ b/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.h
@@ -17,6 +17,7 @@
 #include "StoreGate/DataHandle.h"
 #include "LArCabling/LArCablingLegacyService.h"
 #include "LArIdentifier/LArOnlineID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArID.h"
 #include "CaloDetDescr/CaloDetDescrManager.h"
 
@@ -69,7 +70,8 @@ class LArHVCorrTool: public AthAlgTool,
   const LArHEC_ID*      m_larhec_id;	
   const LArFCAL_ID*     m_larfcal_id;	
   const LArElectrodeID* m_electrodeID;  
-  const CaloDetDescrManager* m_calodetdescrmgr;
+  const DataHandle<CaloIdManager> m_caloIdMgr;
+  const DataHandle<CaloDetDescrManager> m_calodetdescrmgr;
 
   ToolHandle<LArCablingLegacyService>  m_cablingService;  
   ToolHandle<ILArHVTool> m_hvtool;
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.cxx b/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.cxx
index d3eb7dedd5f0..f04294614960 100755
--- a/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "LArHVPathologyDbCondAlg.h" 
@@ -14,7 +14,7 @@
 #include "CoralBase/Blob.h"
 
 #include "CaloDetDescr/CaloDetDescrManager.h"
-#include "CaloIdentifier/CaloCell_ID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArEM_ID.h"
 #include "CaloIdentifier/LArHEC_ID.h"
 #include "CaloIdentifier/LArFCAL_ID.h"
@@ -41,15 +41,29 @@ StatusCode LArHVPathologyDbCondAlg::initialize()
   ATH_CHECK(m_hvMappingKey.initialize());
   ATH_CHECK(m_hvPAthologyKey.initialize());
   
-  const CaloCell_ID* idHelper = nullptr;
-  ATH_CHECK( detStore()->retrieve (idHelper, "CaloCell_ID") );
+  StatusCode sc = detStore()->retrieve( m_caloIdMgr );
+  if (sc.isFailure()) {
+   ATH_MSG_ERROR( "Unable to retrieve CaloIdMgr ");
+   return sc;
+  }
+
+  m_larem_id   = m_caloIdMgr->getEM_ID();
+  m_larhec_id   = m_caloIdMgr->getHEC_ID();
+  m_larfcal_id   = m_caloIdMgr->getFCAL_ID();
 
-  m_larem_id   = idHelper->em_idHelper();
-  m_larhec_id   = idHelper->hec_idHelper();
-  m_larfcal_id   = idHelper->fcal_idHelper();
+//  retrieve CaloDetDescrMgr 
+  sc = detStore()->retrieve(m_calodetdescrmgr);
+  if (sc.isFailure()) {
+     ATH_MSG_ERROR("Unable to retrieve CaloDetDescrMgr ");
+     return sc;
+  }
+
+  sc = detStore()->retrieve(m_laronline_id,"LArOnlineID");
+  if (sc.isFailure()) {
+     ATH_MSG_ERROR("Unable to retrieve  LArOnlineID from DetectorStore");
+     return sc;
+  }
 
-  ATH_CHECK( detStore()->retrieve (m_calodetdescrmgr, "CaloMgr") );
-  ATH_CHECK( detStore()->retrieve(m_laronline_id,"LArOnlineID") );
   ATH_CHECK(detStore()->retrieve(m_hvlineHelper,"LArHVLineID"));
 
   return StatusCode::SUCCESS;
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.h b/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.h
index c5bce4d3e103..95c034f44fff 100755
--- a/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.h
+++ b/LArCalorimeter/LArRecUtils/src/LArHVPathologyDbCondAlg.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef LARHVPATHOLOGYDBCONDALG
@@ -17,6 +17,7 @@ class LArEM_ID;
 class LArHEC_ID;
 class LArFCAL_ID;
 class LArOnlineID;
+class CaloIdManager;
 class CaloDetDescrManager;
 class LArHVLineID;
 class Identifier;
@@ -40,7 +41,8 @@ class LArHVPathologyDbCondAlg: public AthReentrantAlgorithm
   SG::ReadCondHandleKey<LArHVIdMapping> m_hvMappingKey {this, "HVMappingKey", "LArHVIdMap", "Key for mapping object" };
   SG::WriteCondHandleKey<LArHVPathology> m_hvPAthologyKey {this, "HVPAthologyKey", "LArHVPathology", "Key for HV pathologies in Cond. store"};
 
-  const CaloDetDescrManager* m_calodetdescrmgr;
+  const DataHandle<CaloIdManager> m_caloIdMgr;
+  const DataHandle<CaloDetDescrManager> m_calodetdescrmgr;
   const LArEM_ID*       m_larem_id;
   const LArHEC_ID*       m_larhec_id;
   const LArFCAL_ID*       m_larfcal_id;
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.cxx b/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.cxx
index 825822bd62c8..7c4b510f4224 100644
--- a/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "LArHVScaleCorrCondAlg.h"
@@ -30,8 +30,7 @@ LArHVScaleCorrCondAlg::LArHVScaleCorrCondAlg(const std::string& name, ISvcLocato
     m_larem_id(nullptr),
     m_larhec_id(nullptr),
     m_larfcal_id(nullptr),	
-    m_electrodeID(nullptr),
-    m_calodetdescrmgr(nullptr)
+    m_electrodeID(nullptr)
 {
 
   m_deltatupdate = 0;
@@ -57,10 +56,11 @@ StatusCode LArHVScaleCorrCondAlg::initialize() {
   // retrieve id helpers
   ATH_CHECK(detStore()->retrieve(m_lar_on_id,"LArOnlineID"));
   ATH_CHECK(detStore()->retrieve(m_calocell_id,"CaloCell_ID"));
+  ATH_CHECK(detStore()->retrieve( m_caloIdMgr ));
 
-  m_larem_id   = m_calocell_id->em_idHelper();
-  m_larhec_id   = m_calocell_id->hec_idHelper();
-  m_larfcal_id   = m_calocell_id->fcal_idHelper();
+  m_larem_id   = m_caloIdMgr->getEM_ID();
+  m_larhec_id   = m_caloIdMgr->getHEC_ID();
+  m_larfcal_id   = m_caloIdMgr->getFCAL_ID();
 
   ATH_CHECK(detStore()->retrieve(m_calodetdescrmgr));
 
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.h b/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.h
index da4f21cfba5c..0e31884e9105 100644
--- a/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.h
+++ b/LArCalorimeter/LArRecUtils/src/LArHVScaleCorrCondAlg.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 // Rewritten from LArHVScaleCorrTool
 
@@ -15,6 +15,7 @@
 #include "StoreGate/WriteCondHandleKey.h"
 
 #include "LArIdentifier/LArOnlineID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArID.h"
 #include "CaloDetDescr/CaloDetDescrManager.h"
 #include "LArRecConditions/LArHVData.h"
@@ -52,7 +53,8 @@ class LArHVScaleCorrCondAlg: public AthAlgorithm
   const LArHEC_ID*      m_larhec_id;	
   const LArFCAL_ID*     m_larfcal_id;	
   const LArElectrodeID* m_electrodeID;  
-  const CaloDetDescrManager* m_calodetdescrmgr;
+  const DataHandle<CaloIdManager> m_caloIdMgr;
+  const DataHandle<CaloDetDescrManager> m_calodetdescrmgr;
 
   SG::ReadCondHandleKey<LArOnOffIdMapping>  m_cablingKey {this,"keyCabling", "LArOnOffIdMap", "Input key for Id mapping"} ;  
   SG::ReadCondHandleKey<LArHVData> m_hvKey {this, "keyHVdata", "LArHVData", "Input key for HV data from DCS"};
diff --git a/LArCalorimeter/LArRecUtils/src/LArOFCTool.cxx b/LArCalorimeter/LArRecUtils/src/LArOFCTool.cxx
index f880811e7634..dd212ff648a4 100644
--- a/LArCalorimeter/LArRecUtils/src/LArOFCTool.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArOFCTool.cxx
@@ -31,6 +31,7 @@ LArOFCTool::LArOFCTool(const std::string& type,
     m_lar_on_id(nullptr),
     m_cablingService(nullptr),
     m_larmcsym("LArMCSymTool"),
+    m_calo_id_man(nullptr),
     m_lar_em_id(nullptr),
     m_lar_hec_id(nullptr),
     m_lar_fcal_id(nullptr),
@@ -82,18 +83,16 @@ StatusCode LArOFCTool::initialize()
   }
 
   //retrieves helpers for LArCalorimeter
-  const CaloCell_Base_ID* idHelper = nullptr;
+  m_calo_id_man  = CaloIdManager::instance();
   if ( m_isSC ) {
-    ATH_CHECK( detStore()->retrieve (idHelper, "CaloCell_SuperCell_ID") );
+  m_lar_em_id   = m_calo_id_man->getEM_SuperCell_ID();
+  m_lar_hec_id  = m_calo_id_man->getHEC_SuperCell_ID();
+  m_lar_fcal_id = m_calo_id_man->getFCAL_SuperCell_ID();
+  }  else  {
+  m_lar_em_id   = m_calo_id_man->getEM_ID();
+  m_lar_hec_id  = m_calo_id_man->getHEC_ID();
+  m_lar_fcal_id = m_calo_id_man->getFCAL_ID();
   }
-  else {
-    ATH_CHECK( detStore()->retrieve (idHelper, "CaloCell_ID") );
-  }
-
-  m_lar_em_id   = idHelper->em_idHelper();
-  m_lar_hec_id  = idHelper->hec_idHelper();
-  m_lar_fcal_id = idHelper->fcal_idHelper();
-
   IToolSvc* toolSvc = nullptr;
   ATH_CHECK(  service( "ToolSvc",toolSvc ) );
   if ( m_isSC ) {
diff --git a/LArCalorimeter/LArRecUtils/src/LArOFCTool.h b/LArCalorimeter/LArRecUtils/src/LArOFCTool.h
index 0698de4b3fe6..92f5e8f80733 100644
--- a/LArCalorimeter/LArRecUtils/src/LArOFCTool.h
+++ b/LArCalorimeter/LArRecUtils/src/LArOFCTool.h
@@ -42,6 +42,7 @@
 #include "LArCabling/LArCablingBase.h"
 #include "LArElecCalib/ILArMCSymTool.h"
 #include "LArIdentifier/LArOnlineID_Base.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArID.h"
 
 class StoreGateSvc; 
@@ -100,6 +101,7 @@ class LArOFCTool: public AthAlgTool,
   LArCablingBase* m_cablingService;
   ToolHandle<ILArMCSymTool>    m_larmcsym;
   
+  const CaloIdManager* m_calo_id_man;
   const LArEM_Base_ID*    m_lar_em_id; 
   const LArHEC_Base_ID*   m_lar_hec_id;
   const LArFCAL_Base_ID*  m_lar_fcal_id;
diff --git a/LArCalorimeter/LArRecUtils/src/MakeLArCellFromRaw.cxx b/LArCalorimeter/LArRecUtils/src/MakeLArCellFromRaw.cxx
index c20397cb439e..ee6788a58d11 100644
--- a/LArCalorimeter/LArRecUtils/src/MakeLArCellFromRaw.cxx
+++ b/LArCalorimeter/LArRecUtils/src/MakeLArCellFromRaw.cxx
@@ -11,6 +11,7 @@
 #include "CaloDetDescr/CaloDetDescrManager.h"
 #include "CaloDetDescr/CaloDetDescrElement.h"
 #include "CaloIdentifier/CaloCell_ID.h"
+#include "CaloIdentifier/CaloIdManager.h"
 #include "CaloIdentifier/LArEM_ID.h"
 #include "CaloIdentifier/LArHEC_ID.h"
 #include "CaloIdentifier/LArFCAL_ID.h"
@@ -54,7 +55,7 @@ void MakeLArCellFromRaw::initialize( const LArRoI_Map* roiMap ,
   StatusCode sc = svcLoc->service("MessageSvc", m_msgSvc);
   if (sc.isFailure())
   {
-    std::cout << "MakeLArCellFromRaw ERROR cannot retrieve MessageSvc " << std::endl;
+     std::cout << "MakeLArCellFromRaw ERROR cannot retrieve MessageSvc " << std::endl;
     return;
   }
 
@@ -65,19 +66,7 @@ void MakeLArCellFromRaw::initialize( const LArRoI_Map* roiMap ,
   if(pCorr) log <<MSG::INFO <<" Number of Corrections "<< pCorr->size()<< endmsg ;
   
 
-  StoreGateSvc* detStore = nullptr;
-  sc = svcLoc->service("DetectorStore", detStore);
-  if (sc.isFailure())
-  {
-    log << MSG::ERROR << "MakeLArCellFromRaw ERROR cannot retrieve DetectorStore " << endmsg;
-    return;
-  }
-
-  const CaloDetDescrManager* man = nullptr;
-  if ( detStore->retrieve (man, "CaloMgr").isFailure() ) {
-    log << MSG::ERROR << "MakeLArCellFromRaw ERROR cannot retrieve CaloMgr " << endmsg;
-    return;
-  }
+  const CaloDetDescrManager* man = CaloDetDescrManager::instance();
 
   IToolSvc* p_toolSvc;
   StatusCode status = svcLoc->service( "ToolSvc",p_toolSvc );
@@ -109,14 +98,25 @@ void MakeLArCellFromRaw::initialize( const LArRoI_Map* roiMap ,
   }
 
 
-  const CaloCell_ID* calo_id = man->getCaloCell_ID();
-  const LArEM_ID& em_id = *calo_id->em_idHelper();
-  const LArHEC_ID& hec_id = *calo_id->hec_idHelper();
-  const LArFCAL_ID& fcal_id = *calo_id->fcal_idHelper();
+  const CaloIdManager* caloCIM = man->getCalo_Mgr();
+  const LArEM_ID& em_id = *( caloCIM->getEM_ID() );
+  const LArHEC_ID& hec_id = *( caloCIM->getHEC_ID() );
+  const LArFCAL_ID& fcal_id = *(caloCIM->getFCAL_ID() );
 
-  if (detStore->retrieve(m_onlineID, "LArOnlineID").isFailure()) {
-    log <<MSG::ERROR << "cannot find LArOnlineID in MakeLArCellFromRaw " << endmsg;
-  }
+// retrive onlineID helper from detStore
+
+   StoreGateSvc* detStore;
+   if (svcLoc->service("DetectorStore", detStore).isFailure()) {
+     log << MSG::ERROR   << "Unable to access DetectoreStoren MakeLArCellFromRaw" << endmsg ;
+     return;
+   }
+
+// retrieve OnlineID helper from detStore
+   sc = detStore->retrieve(m_onlineID, "LArOnlineID");
+   if (sc.isFailure()) {
+     log << MSG::ERROR <<  "MakeLArCellFromRaw: Could not get LArOnlineID helper !" << endmsg ;
+      return;
+   }
 
 
   int n_em   = 0 ; 
-- 
GitLab


From c0a4bad8822dd40435ab294cd9cdd71eeec4da92 Mon Sep 17 00:00:00 2001
From: Tim Martin <tim.martin@cern.ch>
Date: Mon, 18 Mar 2019 10:00:40 +0000
Subject: [PATCH 2/2] Touch TUT

---
 Trigger/TrigValidation/TrigUpgradeTest/CMakeLists.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Trigger/TrigValidation/TrigUpgradeTest/CMakeLists.txt b/Trigger/TrigValidation/TrigUpgradeTest/CMakeLists.txt
index 27a0c889194d..2da7698870e5 100644
--- a/Trigger/TrigValidation/TrigUpgradeTest/CMakeLists.txt
+++ b/Trigger/TrigValidation/TrigUpgradeTest/CMakeLists.txt
@@ -248,3 +248,4 @@ atlas_install_joboptions( share/*.py )
 atlas_install_data( share/*.ref share/*.conf )
 atlas_install_python_modules( python/*.py )
 atlas_install_scripts( test/exec*.sh test/test*.sh )
+
-- 
GitLab