From 105933f670aa673d5035f5b4a40152648bf461a6 Mon Sep 17 00:00:00 2001
From: Susumu Oda <susumu.oda@cern.ch>
Date: Tue, 11 Dec 2018 17:34:55 +0000
Subject: [PATCH] SCT algorithm code cleanups for ATLASRECTS-4575

---
 .../src/SCT_ConditionsParameterTestAlg.cxx    |  2 +-
 .../src/SCT_ConditionsParameterTestAlg.h      |  3 -
 .../src/SCT_ConfigurationCondAlg.cxx          |  2 +-
 .../SCT_ConfigurationConditionsTestAlg.cxx    | 17 ++----
 .../src/SCT_DCSConditionsStatCondAlg.cxx      | 16 +-----
 .../src/SCT_DCSConditionsStatCondAlg.h        | 16 +++---
 .../src/SCT_DCSConditionsTestAlg.cxx          |  6 +-
 .../src/SCT_DetectorElementCondAlg.cxx        | 16 ++----
 .../src/SCT_DetectorElementCondAlg.h          |  6 +-
 .../src/SCT_LinkMaskingCondAlg.cxx            |  6 +-
 .../src/SCT_MajorityCondAlg.h                 |  8 ++-
 .../src/SCT_ModuleVetoCondAlg.cxx             |  4 +-
 .../src/SCT_ModuleVetoTestAlg.cxx             |  1 -
 .../src/SCT_MonitorConditionsTestAlg.cxx      |  7 +--
 .../src/SCT_MonitorConditionsTestAlg.h        |  2 +-
 .../src/SCT_RODVetoCondAlg.cxx                | 11 ++--
 .../src/SCT_RODVetoCondAlg.h                  |  6 +-
 .../src/SCT_RODVetoTestAlg.cxx                | 11 ++--
 .../src/SCT_RODVetoTestAlg.h                  |  9 +--
 .../src/SCT_ReadCalibChipDataTestAlg.cxx      | 36 +++++-------
 .../src/SCT_ReadCalibChipDataTestAlg.h        |  8 +--
 .../src/SCT_ReadCalibChipGainCondAlg.cxx      |  9 ++-
 .../src/SCT_ReadCalibChipNoiseCondAlg.cxx     | 14 ++---
 .../src/SCT_ReadCalibChipNoiseCondAlg.h       | 12 ++--
 .../src/SCT_ReadCalibDataCondAlg.cxx          | 57 +++++++++----------
 .../src/SCT_ReadCalibDataCondAlg.h            |  4 +-
 .../src/SCT_ReadCalibDataTestAlg.cxx          | 18 +-----
 .../src/SCT_ReadCalibDataTestAlg.h            |  9 +--
 .../src/SCT_ReadoutTestAlg.cxx                | 14 +----
 .../src/SCT_ReadoutTestAlg.h                  | 15 +++--
 .../src/SCT_SensorsTestAlg.cxx                |  4 +-
 .../src/SCT_SiliconConditionsTestAlg.cxx      |  7 +--
 .../src/SCT_SiliconHVCondAlg.cxx              |  6 +-
 .../src/SCT_SiliconHVCondAlg.h                |  2 +-
 .../src/SCT_SiliconTempCondAlg.cxx            |  6 +-
 .../src/SCT_SiliconTempCondAlg.h              |  2 +-
 .../src/SCT_StripVetoTestAlg.h                |  2 +-
 .../src/SCT_TdaqEnabledCondAlg.cxx            |  1 -
 .../src/SCT_TdaqEnabledCondAlg.h              | 18 +++---
 .../src/SCT_TdaqEnabledTestAlg.h              | 11 ++--
 .../src/SCT_CablingCondAlgFromText.cxx        | 19 +++----
 .../src/SCT_CablingCondAlgFromText.h          |  2 +-
 .../SCT_Cabling/src/SCT_TestCablingAlg.cxx    |  4 --
 .../SCT_Cabling/src/SCT_TestCablingAlg.h      | 28 ++++-----
 44 files changed, 191 insertions(+), 266 deletions(-)

diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx
index 4d99b74df44..888f02778dc 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx
@@ -52,7 +52,7 @@ StatusCode SCT_ConditionsParameterTestAlg::execute() {
   // so the INFO level messages have no impact on performance of these services when used by clients
   ATH_MSG_DEBUG("in execute()");
   //
-  StatusCode sc{StatusCode::SUCCESS};
+  StatusCode sc{StatusCode::SUCCESS, true};
   
   // Get the current event
   SG::ReadHandle<xAOD::EventInfo> currentEvent{m_currentEventKey};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h
index b4eba81b80d..d2e0d8eaf82 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h
@@ -19,9 +19,6 @@
 // Include Gaudi stuff
 #include "GaudiKernel/ToolHandle.h"
 
-// Include STL stuff
-#include <string>
-
 /** This class acts as a test/sample client the ConditionsParameter class.
  */
 class SCT_ConditionsParameterTestAlg : public AthAlgorithm {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx
index 6ee5d489409..aa37ee1ed81 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx
@@ -271,8 +271,8 @@ StatusCode SCT_ConfigurationCondAlg::fillChannelData(SCT_ConfigurationCondData*
       } else { // Good chip
         if (not isBadModule) nDisabledStripsExclusive += thisChip->numberOfMaskedChannels(); // Bad strips in a good chip of a good module
       }
-
     }
+
     // Store chip status if not all good (==0)
     if (chipStatusWord!=0) {
       writeCdo->setBadChips(moduleId, chipStatusWord);
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx
index cc623aa76fe..e271bfd2b15 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx
@@ -13,9 +13,6 @@
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 
-// C++ includes
-#include <string>
-
 SCT_ConfigurationConditionsTestAlg::SCT_ConfigurationConditionsTestAlg(const std::string& name, ISvcLocator* pSvcLocator) : 
   AthAlgorithm(name, pSvcLocator),
   m_sctId{nullptr}
@@ -36,14 +33,13 @@ StatusCode SCT_ConfigurationConditionsTestAlg::execute() {
   ATH_MSG_INFO("in execute()");
 
   // Bad modules
-  unsigned int nBadMods = m_configConditions->badModules()->size();
+  unsigned int nBadMods{static_cast<unsigned int>(m_configConditions->badModules()->size())};
 
   // Bad links
+  unsigned int nBadLink0{0}, nBadLink1{0}, nBadLinkBoth{0};
   const std::map<IdentifierHash, std::pair<bool, bool>>* badLinks{m_configConditions->badLinks()};
   std::map<IdentifierHash, std::pair<bool, bool>>::const_iterator linkItr{badLinks->begin()};
   std::map<IdentifierHash, std::pair<bool, bool>>::const_iterator linkEnd{badLinks->end()};
-
-  unsigned int nBadLink0{0}, nBadLink1{0}, nBadLinkBoth{0};
   while (linkItr != linkEnd) {
     std::pair<bool, bool> status{(*linkItr).second};
     if (status.first == false and status.second == true ) ++nBadLink0;
@@ -53,11 +49,10 @@ StatusCode SCT_ConfigurationConditionsTestAlg::execute() {
   }
 
   // Bad chips
+  unsigned int nBadChips{0};
   const std::map<Identifier, unsigned int>* badChips{m_configConditions->badChips()};
   std::map<Identifier, unsigned int>::const_iterator chipItr{badChips->begin()};
   std::map<Identifier, unsigned int>::const_iterator chipEnd{badChips->end()};
-
-  unsigned int nBadChips{0};
   while (chipItr != chipEnd) {
     unsigned int status{(*chipItr).second};
     for (unsigned int i{0}; i<12; i++) nBadChips += ((status & (1<<i)) == 0 ? 0 : 1);
@@ -67,13 +62,13 @@ StatusCode SCT_ConfigurationConditionsTestAlg::execute() {
   // Bad strips 
   std::set<Identifier> badStripsAll;
   m_configConditions->badStrips(badStripsAll);
-  unsigned int nBadStrips = badStripsAll.size();
+  unsigned int nBadStrips{static_cast<unsigned int>(badStripsAll.size())};
 
   // Bad strips (w/o bad modules and chips)
   std::set<Identifier> badStripsExclusive;
   m_configConditions->badStrips(badStripsExclusive, true, true);
-  int nBadStripsExclusive = badStripsExclusive.size();
-  int nBadStripsExclusiveBEC[]{0,0,0};
+  unsigned int nBadStripsExclusive{static_cast<unsigned int>(badStripsExclusive.size())};
+  unsigned int nBadStripsExclusiveBEC[]{0,0,0};
 
   std::set<Identifier>::const_iterator stripItr{badStripsExclusive.begin()};
   std::set<Identifier>::const_iterator stripEnd{badStripsExclusive.end()};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx
index 47969e0025b..fd11c3c0288 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx
@@ -14,21 +14,7 @@ SCT_DCSConditionsStatCondAlg::SCT_DCSConditionsStatCondAlg(const std::string& na
   : ::AthAlgorithm(name, pSvcLocator)
   , m_condSvc{"CondSvc", name}
   , m_doState{true}
-  , m_chanstatCut{"NORM"}
-  , m_hvLowLimit{0.0}
-  , m_hvUpLimit{1000000.0}
-  , m_useHV{false}
-  , m_useHVLowLimit{19.}
-  , m_useHVUpLimit{1000000.0}
-  , m_useHVChanCut{"LOOSE"}
 {
-  declareProperty("HVCutLow", m_hvLowLimit);
-  declareProperty("HVCutUp", m_hvUpLimit);
-  declareProperty("StateCut", m_chanstatCut);
-  declareProperty("UseDefaultHV", m_useHV);
-  declareProperty("useHVLow", m_useHVLowLimit);
-  declareProperty("useHVUp", m_useHVUpLimit);
-  declareProperty("useHVChan", m_useHVChanCut);
 }
 
 StatusCode SCT_DCSConditionsStatCondAlg::initialize() {
@@ -55,7 +41,7 @@ StatusCode SCT_DCSConditionsStatCondAlg::initialize() {
     }
   }
 
-  if (m_useHV) {
+  if (m_useHV.value()) {
     m_hvLowLimit = m_useHVLowLimit;
     m_hvUpLimit = m_useHVUpLimit;
     m_chanstatCut = m_useHVChanCut;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h
index 2eda086cc90..d5e76815851 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h
@@ -32,16 +32,16 @@ class SCT_DCSConditionsStatCondAlg : public AthAlgorithm
 
   ServiceHandle<ICondSvc> m_condSvc;
 
+  bool m_doState;
   BooleanProperty m_readAllDBFolders{this, "ReadAllDBFolders", true};
   BooleanProperty m_returnHVTemp{this, "ReturnHVTemp", true};
-  bool m_doState;
-  std::string m_chanstatCut;
-  float m_hvLowLimit;
-  float m_hvUpLimit;
-  bool m_useHV;
-  float m_useHVLowLimit;
-  float m_useHVUpLimit;
-  std::string m_useHVChanCut;
+  StringProperty m_chanstatCut{this, "StateCut", "NORM"};
+  FloatProperty m_hvLowLimit{this, "HVCutLow", 0.0};
+  FloatProperty m_hvUpLimit{this, "HVCutUp", 1000000.0};
+  BooleanProperty m_useHV{this, "UseDefaultHV", false};
+  FloatProperty m_useHVLowLimit{this, "useHVLow", 19.};
+  FloatProperty m_useHVUpLimit{this, "useHVUp", 1000000.0};
+  StringProperty m_useHVChanCut{this, "useHVChan", "LOOSE"};
 };
 
 #endif // SCT_DCSCONDITIONSSTATCONDALG
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx
index 243936a97a2..07f51b9d6e8 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx
@@ -12,10 +12,6 @@
 // Include Athena stuff
 #include "Identifier/Identifier.h"
 
-// Include STL stuff
-#include <string>
-using namespace std;
-
 SCT_DCSConditionsTestAlg::SCT_DCSConditionsTestAlg(const std::string& name, 
                                                    ISvcLocator* pSvcLocator) : 
   AthAlgorithm(name, pSvcLocator)
@@ -82,7 +78,7 @@ StatusCode SCT_DCSConditionsTestAlg::execute() {
 } // SCT_DCSConditionsTestAlg::execute()
 
 //----------------------------------------------------------------------
-StatusCode SCT_DCSConditionsTestAlg::finalize(){
+StatusCode SCT_DCSConditionsTestAlg::finalize() {
   // Get the messaging service, print where you are
   ATH_MSG_INFO("in finalize()");
   return StatusCode::SUCCESS;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx
index 7c70e8a7d4e..cb149b703b0 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx
@@ -4,14 +4,12 @@
 
 #include "SCT_DetectorElementCondAlg.h"
 
-#include <memory>
-#include <map>
-
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
-#include "InDetReadoutGeometry/SiCommonItems.h"
 #include "InDetReadoutGeometry/SiDetectorElement.h"
-#include "TrkSurfaces/Surface.h"
 #include "TrkGeometry/Layer.h"
+#include "TrkSurfaces/Surface.h"
+
+#include <map>
 
 SCT_DetectorElementCondAlg::SCT_DetectorElementCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
@@ -88,16 +86,16 @@ StatusCode SCT_DetectorElementCondAlg::execute()
   InDetDD::SiDetectorElementCollection::iterator newEl{writeCdo->begin()};
   for (const InDetDD::SiDetectorElement* oldEl: *oldColl) {
     // At the first time access, SiCommonItems are prepared using the first old element
-    if (m_commonItems==nullptr) {
+    if (m_commonItems.get()==nullptr) {
       const InDetDD::SiCommonItems* oldCommonItems{oldEl->getCommonItems()};
-      m_commonItems = new InDetDD::SiCommonItems(oldCommonItems->getIdHelper());
+      m_commonItems = std::make_unique<InDetDD::SiCommonItems>(oldCommonItems->getIdHelper());
       m_commonItems->setSolenoidFrame(oldCommonItems->solenoidFrame());
     }
 
     *newEl = new InDetDD::SiDetectorElement(oldEl->identify(),
                                             &(oldEl->design()),
                                             oldEl->GeoVDetectorElement::getMaterialGeom(),
-                                            m_commonItems,
+                                            m_commonItems.get(),
                                             readCdo);
     oldToNewMap[oldEl] = *newEl;
     newEl++;
@@ -145,7 +143,5 @@ StatusCode SCT_DetectorElementCondAlg::finalize()
 {
   ATH_MSG_DEBUG("finalize " << name());
 
-  delete m_commonItems;
-
   return StatusCode::SUCCESS;
 }
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h
index 093f2d16d0d..d2d814a0268 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h
@@ -8,15 +8,17 @@
 #include "AthenaBaseComps/AthAlgorithm.h"
 
 #include "GeoModelUtilities/GeoAlignmentStore.h"
+#include "InDetReadoutGeometry/SiCommonItems.h"
 #include "InDetReadoutGeometry/SiDetectorElementCollection.h"
 #include "StoreGate/ReadCondHandleKey.h"
 #include "StoreGate/WriteCondHandleKey.h"
 
 #include "GaudiKernel/ICondSvc.h"
 
+#include <memory>
+
 namespace InDetDD {
   class SCT_DetectorManager;
-  class SiCommonItems;
 }
 
 class SCT_DetectorElementCondAlg : public AthAlgorithm
@@ -35,7 +37,7 @@ class SCT_DetectorElementCondAlg : public AthAlgorithm
 
   ServiceHandle<ICondSvc> m_condSvc;
   const InDetDD::SCT_DetectorManager* m_detManager;
-  InDetDD::SiCommonItems* m_commonItems;
+  std::unique_ptr<InDetDD::SiCommonItems> m_commonItems;
 };
 
 #endif // SCT_CONDITIONSALGORITHMS_SCT_DETECTORELEMENTCONDALG_H
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx
index 98b48d66905..4994939f0e2 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx
@@ -4,10 +4,10 @@
 
 #include "SCT_LinkMaskingCondAlg.h"
 
-#include <memory>
-
 #include "GaudiKernel/EventIDRange.h"
 
+#include <memory>
+
 SCT_LinkMaskingCondAlg::SCT_LinkMaskingCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
   , m_condSvc{"CondSvc", name}
@@ -75,7 +75,7 @@ StatusCode SCT_LinkMaskingCondAlg::execute() {
     if (not lastProbedState) writeCdo->setBadWaferId(waferId);
     ATH_MSG_INFO("LINK " << waferId << " (" << waferId.get_identifier32().get_compact() << " in 32 bit): " << lastProbedState);
   }
-  if (writeCdo->size()!=0) writeCdo->setFilled();
+  if (writeCdo->size()>0) writeCdo->setFilled();
 
   // Record the output cond object
   if (writeHandle.record(rangeW, std::move(writeCdo)).isFailure()) {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h
index bdaadc0bc58..2732419e5fb 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h
@@ -6,10 +6,12 @@
 #define SCT_MAJORITYCONDALG
 
 #include "AthenaBaseComps/AthAlgorithm.h"
-#include "StoreGate/ReadCondHandleKey.h"
+
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
-#include "StoreGate/WriteCondHandleKey.h"
 #include "SCT_ConditionsData/SCT_MajorityCondData.h"
+#include "StoreGate/ReadCondHandleKey.h"
+#include "StoreGate/WriteCondHandleKey.h"
+
 #include "GaudiKernel/ICondSvc.h"
 
 class SCT_MajorityCondAlg : public AthAlgorithm 
@@ -24,7 +26,7 @@ class SCT_MajorityCondAlg : public AthAlgorithm
  private:
   SG::ReadCondHandleKey<CondAttrListCollection> m_readKey{this, "ReadKey", "/SCT/DCS/MAJ", "Key of input (raw) conditions folder"};
   SG::WriteCondHandleKey<SCT_MajorityCondData> m_writeKey{this, "WriteKey", "SCT_MajorityCondData", "Key of output (derived) conditions data"};
-  ServiceHandle<ICondSvc> m_condSvc; 
+  ServiceHandle<ICondSvc> m_condSvc;
 };
 
 #endif // SCT_MAJORITYCONDALG
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx
index b15810de6b4..cd83ee4dae0 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx
@@ -80,8 +80,8 @@ StatusCode SCT_ModuleVetoCondAlg::execute() {
   std::vector<int> v{string2Vector<int>(badModuleString)};
   int numberInDb{static_cast<int>(v.size())};
   ATH_MSG_INFO(numberInDb << " elements were declared bad in the database.");
-  for (std::vector<int>::const_iterator i{v.begin()}; i!=v.end(); ++i) {
-    writeCdo->setBadWaferId(Identifier{*i});
+  for (const int badWaferId: v) {
+    writeCdo->setBadWaferId(Identifier{badWaferId});
   }
 
   // Record the output cond object
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx
index 2e45e5efa15..c4c9172ec28 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx
@@ -65,7 +65,6 @@ SCT_ModuleVetoTestAlg::execute() {
   return StatusCode::SUCCESS;
 }
 
-
 //Finalize
 StatusCode
 SCT_ModuleVetoTestAlg::finalize() {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx
index 9bb6ec29413..0b6d4f155b1 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx
@@ -18,15 +18,10 @@
 #include "InDetIdentifier/SCT_ID.h"
 #include "StoreGate/ReadHandle.h"
 
-//Gaudi includes
-#include "GaudiKernel/StatusCode.h"
-
 SCT_MonitorConditionsTestAlg::SCT_MonitorConditionsTestAlg(const std::string& name, ISvcLocator* pSvcLocator) : 
   AthAlgorithm(name, pSvcLocator), 
-  m_sctId{nullptr},
-  m_evtKey{std::string{"EventInfo"}}
+  m_sctId{nullptr}
 {
-  declareProperty("EventInfoKey", m_evtKey);
 }
 
 // -------------------------------------------------------------------------
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h
index 749e718dd6b..421e447706e 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h
@@ -45,7 +45,7 @@ class SCT_MonitorConditionsTestAlg : public AthAlgorithm {
   const SCT_ID* m_sctId;
 
   // Parameters to control the db access 
-  SG::ReadHandleKey<xAOD::EventInfo>       m_evtKey;
+  SG::ReadHandleKey<xAOD::EventInfo>       m_evtKey{this, "EventInfoKey", "EventInfo"};
 
 }; // end of class
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx
index 42809ec2b2e..10e244b1bd2 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx
@@ -14,6 +14,7 @@
 #include "SCT_RODVetoCondAlg.h"
 
 #include "InDetIdentifier/SCT_ID.h"
+#include "StoreGate/WriteHandle.h"
 
 #include <algorithm>
 #include <ios>
@@ -21,12 +22,8 @@
 SCT_RODVetoCondAlg::SCT_RODVetoCondAlg(const std::string& name, 
                                        ISvcLocator* pSvcLocator) :
   AthAlgorithm(name, pSvcLocator),
-  m_pHelper{nullptr},
-  m_badIds{"BadSCTModuleIds_RODVeto"},
-  m_badRODElementsInput{}
+  m_pHelper{nullptr}
 {
-  declareProperty("BadModuleIds", m_badIds, "Write key for bad module identifiers");
-  declareProperty("BadRODIds", m_badRODElementsInput, "Input list of RODs to be vetoed");
 }
 
 StatusCode SCT_RODVetoCondAlg::initialize() {
@@ -38,7 +35,7 @@ StatusCode SCT_RODVetoCondAlg::initialize() {
 }
 
 StatusCode SCT_RODVetoCondAlg::execute() {
-  ATH_MSG_INFO(m_badRODElementsInput.size() <<" RODs were declared bad");
+  ATH_MSG_INFO(m_badRODElementsInput.value().size() <<" RODs were declared bad");
 
   std::vector<unsigned int> allRods;
   m_cabling->getAllRods(allRods);
@@ -46,7 +43,7 @@ StatusCode SCT_RODVetoCondAlg::execute() {
   SG::WriteHandle<IdentifierSet> badIds{m_badIds};
   ATH_CHECK(badIds.record(std::make_unique<IdentifierSet>()));
 
-  for (unsigned int thisRod: m_badRODElementsInput) {
+  for (unsigned int thisRod: m_badRODElementsInput.value()) {
     ATH_MSG_DEBUG("This rod is " << std::hex << "0x" << thisRod << std::dec);
 
     //check whether rod exists
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h
index 82f3d8f0663..2b73f1d66ca 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h
@@ -19,7 +19,7 @@
 
 #include "SCT_Cabling/ISCT_CablingTool.h"
 #include "SCT_ConditionsData/IdentifierSet.h"
-#include "StoreGate/WriteHandle.h"
+#include "StoreGate/WriteHandleKey.h"
 
 // STL
 #include <string>
@@ -41,8 +41,8 @@ class SCT_RODVetoCondAlg : public AthAlgorithm {
  private:
   ToolHandle<ISCT_CablingTool> m_cabling{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
   const SCT_ID* m_pHelper;
-  SG::WriteHandle<IdentifierSet> m_badIds;
-  std::vector<unsigned int> m_badRODElementsInput;
+  SG::WriteHandleKey<IdentifierSet> m_badIds{this, "BadModuleIds", "BadSCTModuleIds_RODVeto", "Write key for bad module identifiers"};
+  UnsignedIntegerArrayProperty m_badRODElementsInput{this, "BadRODIds", {}, "Input list of RODs to be vetoed"};
 }; //end of class
 
 #endif // SCT_RODVetoCondAlg_H
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx
index 6ae67bc32b7..1ac2bd8a683 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx
@@ -15,7 +15,6 @@
 
 // Athena include
 #include "Identifier/IdentifierHash.h"
-#include "Identifier/Identifier.h"
 
 SCT_RODVetoTestAlg::SCT_RODVetoTestAlg(const std::string& name, 
                                        ISvcLocator* pSvcLocator) : 
@@ -25,7 +24,7 @@ SCT_RODVetoTestAlg::SCT_RODVetoTestAlg(const std::string& name,
 
 //Initialize
 StatusCode 
-SCT_RODVetoTestAlg::initialize(){
+SCT_RODVetoTestAlg::initialize() {
   ATH_MSG_INFO("Calling initialize");
   ATH_CHECK(m_pRODVetoTool.retrieve());
   return StatusCode::SUCCESS;
@@ -37,18 +36,18 @@ SCT_RODVetoTestAlg::execute() {
   //This method is only used to test the summary service, and only used within this package,
   // so the INFO level messages have no impact on performance of these services when used by clients
   ATH_MSG_INFO("Calling execute");
-  for (unsigned int hash=0; hash<8176; hash+=2) {
-    bool result=m_pRODVetoTool->isGood(IdentifierHash(hash));//invented, no idea what this is
+  for (unsigned int hash{0}; hash<8176; hash+=2) {
+    bool result{m_pRODVetoTool->isGood(IdentifierHash(hash))};//invented, no idea what this is
     ATH_MSG_INFO("Call to module in ROD : Module (hash=" << hash << ") is " << (result?"good":"bad"));
   }
- 
+
   return StatusCode::SUCCESS;
 }
 
 
 //Finalize
 StatusCode
-SCT_RODVetoTestAlg::finalize(){
+SCT_RODVetoTestAlg::finalize() {
   ATH_MSG_INFO("Calling finalize");
   return StatusCode::SUCCESS;
 }
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h
index 2e521cbc28d..3c7e0930c90 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h
@@ -13,15 +13,16 @@
 
 #ifndef SCT_RODVetoTestAlg_H
 #define SCT_RODVetoTestAlg_H 
-//STL
-#include <string>
+
+//Athena
+#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
 
 //Gaudi
 #include "AthenaBaseComps/AthAlgorithm.h"
 #include "GaudiKernel/ToolHandle.h"
 
-//Athena
-#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
+//STL
+#include <string>
 
 ///Example algorithm to show calling the SCT_RODVeto to exclude bad components
 class SCT_RODVetoTestAlg : public AthAlgorithm {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx
index fe580d0ca0c..585fa2af6a2 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx
@@ -23,17 +23,11 @@
 SCT_ReadCalibChipDataTestAlg::SCT_ReadCalibChipDataTestAlg(const std::string& name, ISvcLocator* pSvcLocator) :
   AthAlgorithm(name, pSvcLocator),
   m_id_sct{nullptr},
-  m_currentEventKey{std::string("EventInfo")},
   m_moduleId{0},
   m_waferId{0},
-  m_stripId{0},
-  m_doTestmyConditionsSummary{false},
-  m_doTestmyDataSummary{false},
-  m_moduleOfflinePosition{} {
-    declareProperty("DoTestmyConditionsSummary", m_doTestmyConditionsSummary = false, "Test return bool conditions summary?");
-    declareProperty("DoTestmyDataSummary",       m_doTestmyDataSummary       = false, "Test return data summary?");
-    declareProperty("ModuleOfflinePosition",     m_moduleOfflinePosition            , "Offline pos. as: B-EC,layer-disk,phi,eta");
-  }
+  m_stripId{0}
+{
+}
 
 //----------------------------------------------------------------------
 StatusCode SCT_ReadCalibChipDataTestAlg::initialize() {
@@ -98,10 +92,10 @@ StatusCode SCT_ReadCalibChipDataTestAlg::processProperties()
 StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
   //This method is only used to test the summary service, and only used within this package,
   // so the INFO level messages have no impact on performance of these services when used by clients
-  
+
   // Print where you are
   ATH_MSG_DEBUG("in execute()");
-  
+
   // Get the current event
   SG::ReadHandle<xAOD::EventInfo> currentEvent{m_currentEventKey};
   if (not currentEvent.isValid()) {
@@ -113,22 +107,22 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
                 << "." << currentEvent->eventNumber()
                 << "," << currentEvent->timeStamp()
                 << "]");
-  
+
   //Test Chip Data ConditionsSummary
-  if (m_doTestmyConditionsSummary) {
+  if (m_doTestmyConditionsSummary.value()) {
     // Test summmary, ask status of strip in module
     Identifier IdM{m_moduleId};
     Identifier IdS{m_waferId};
     bool Sok{m_ReadCalibChipDataTool->isGood(IdS, InDetConditions::SCT_SIDE)};
     ATH_MSG_INFO("Side " << IdS << " on module " << IdM << " is " << (Sok ? "good" : "bad"));
   }
-  
+
   //Test data summary
-  if (m_doTestmyDataSummary) {
+  if (m_doTestmyDataSummary.value()) {
     // Test to get some data from the NPtGain or NoiseOccupancy
-    Identifier Id{m_moduleId}; 
-    const int side{1}; 
-    
+    Identifier Id{m_moduleId};
+    const int side{1};
+
     // Try to get some NPtGain data
     // GainByChip, GainRMSByChip, NoiseByChip, NoiseRMSByChip, OffsetByChip, OffsetRMSByChip
     std::string whatNPdata{"GainByChip"};
@@ -136,7 +130,7 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
     for (unsigned int i{0}; i<NPdata.size(); i++) {
       ATH_MSG_INFO("The " << whatNPdata << " for chip number " << i << " on side " << side << " is: " << NPdata[i]);
     }
-    
+
     // Try to get some NO data
     // occupancy, occupancyRMS, noise, offset
     std::string whatNOdata{"OccupancyRMSByChip"};
@@ -145,7 +139,7 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
     for (unsigned int i{0}; i<NOdata.size(); i++) {
       ATH_MSG_INFO("The " << whatNOdata << " for chip number " << i << " on side " << side << " is: " << NOdata[i]);
     }
-      
+
     // Try to get some INVALID NPtGain data
     // GainByChip, GainRMSByChip, NoiseByChip, NoiseRMSByChip, OffsetByChip, OffsetRMSByChip
     Identifier invalidId;//constructor forms invalid Id
@@ -164,7 +158,7 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
 StatusCode SCT_ReadCalibChipDataTestAlg::finalize() {
   // Print where you are
   ATH_MSG_DEBUG("in finalize()");
-  
+
   return StatusCode::SUCCESS;
 } // SCT_ReadCalibChipDataTestAlg::finalize()
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h
index dc52461590a..d6c698d637d 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h
@@ -47,7 +47,7 @@ class SCT_ReadCalibChipDataTestAlg : public AthAlgorithm
   
   //----------Private Attributes----------//
   const SCT_ID*                       m_id_sct;        //!< ID helper for SCT
-  SG::ReadHandleKey<xAOD::EventInfo>  m_currentEventKey;  //!< Current event
+  SG::ReadHandleKey<xAOD::EventInfo>  m_currentEventKey{this, "EventInfoKey", "EventInfo", "EventInfoKey"};
   Identifier                          m_moduleId;      //!< Module identifier
   Identifier                          m_waferId;       //!< Wafer identifier
   Identifier                          m_stripId;       //!< Strip identifier
@@ -55,9 +55,9 @@ class SCT_ReadCalibChipDataTestAlg : public AthAlgorithm
   // Get Tool Handle
   ToolHandle<ISCT_ReadCalibChipDataTool> m_ReadCalibChipDataTool{this, "SCT_ReadCalibChipDataTool", "SCT_ReadCalibChipDataTool", "Tool to retrieve chip calibration information"};
 
-  BooleanProperty                  m_doTestmyConditionsSummary;   //!< Test return bool conditions summary?
-  BooleanProperty                  m_doTestmyDataSummary;         //!< Test return data summary?
-  IntegerArrayProperty             m_moduleOfflinePosition;       //!< Offline pos. as: B-EC,layer-disk,phi,eta
+  BooleanProperty m_doTestmyConditionsSummary{this, "DoTestmyConditionsSummary", false, "Test return bool conditions summary?"};
+  BooleanProperty m_doTestmyDataSummary{this, "DoTestmyDataSummary", false, "Test return data summary?"};
+  IntegerArrayProperty m_moduleOfflinePosition{this, "ModuleOfflinePosition", {}, "Offline pos. as: B-EC,layer-disk,phi,eta"};
 };
 //---------------------------------------------------------------------- 
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx
index fd55655aeb5..a2ff912b699 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx
@@ -4,16 +4,15 @@
 
 #include "SCT_ReadCalibChipGainCondAlg.h"
 
-#include <limits>
-#include <memory>
-
-#include "GaudiKernel/EventIDRange.h"
-
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "SCT_ConditionsData/SCT_ConditionsParameters.h"
 #include "SCT_ConditionsTools/SCT_ReadCalibChipUtilities.h"
 
+#include "GaudiKernel/EventIDRange.h"
+
+#include <memory>
+
 using namespace SCT_ConditionsData;
 using namespace SCT_ReadCalibChipUtilities;
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx
index 0704bab5605..b5bcdaf08f4 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx
@@ -4,16 +4,16 @@
 
 #include "SCT_ReadCalibChipNoiseCondAlg.h"
 
-#include <limits>
-#include <memory>
-
-#include "GaudiKernel/EventIDRange.h"
-
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "SCT_ConditionsData/SCT_ConditionsParameters.h"
 #include "SCT_ConditionsTools/SCT_ReadCalibChipUtilities.h"
 
+#include "GaudiKernel/EventIDRange.h"
+
+#include <limits>
+#include <memory>
+
 using namespace SCT_ConditionsData;
 using namespace SCT_ReadCalibChipUtilities;
 
@@ -55,12 +55,12 @@ StatusCode SCT_ReadCalibChipNoiseCondAlg::execute() {
     ATH_MSG_DEBUG("CondHandle " << writeHandle.fullKey() << " is already valid."
                   << ". In theory this should not be called, but may happen"
                   << " if multiple concurrent events are being processed out of order.");
-    return StatusCode::SUCCESS; 
+    return StatusCode::SUCCESS;
   }
 
   // Read Cond Handle
   SG::ReadCondHandle<CondAttrListCollection> readHandle{m_readKey};
-  const CondAttrListCollection* readCdo{*readHandle}; 
+  const CondAttrListCollection* readCdo{*readHandle};
   if (readCdo==nullptr) {
     ATH_MSG_FATAL("Null pointer to the read conditions object");
     return StatusCode::FAILURE;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h
index 27f6559c826..44ec1e2a468 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h
@@ -8,16 +8,16 @@
 // Include parent class
 #include "AthenaBaseComps/AthAlgorithm.h"
 
-// Include Gaudi classes
-#include "GaudiKernel/ICondSvc.h"
-#include "GaudiKernel/Property.h"
-
 // Include Athena classes
-#include "StoreGate/ReadCondHandleKey.h"
-#include "StoreGate/WriteCondHandleKey.h"
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
 #include "AthenaPoolUtilities/AthenaAttributeList.h"
 #include "SCT_ConditionsData/SCT_NoiseCalibData.h"
+#include "StoreGate/ReadCondHandleKey.h"
+#include "StoreGate/WriteCondHandleKey.h"
+
+// Include Gaudi classes
+#include "GaudiKernel/ICondSvc.h"
+#include "GaudiKernel/Property.h"
 
 // Include boost stuff
 #include "boost/array.hpp"
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx
index 974c4cd9a9e..27e53ee92b0 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx
@@ -4,21 +4,21 @@
 
 #include "SCT_ReadCalibDataCondAlg.h"
 
-// Include STL stuff
-#include <limits>
-#include <memory>
-
-#include "GaudiKernel/EventIDRange.h"
-
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SiDetectorElement.h"
 #include "SCT_ConditionsData/SCT_ConditionsParameters.h"
 
+#include "GaudiKernel/EventIDRange.h"
+
 // Include boost stuff
 #include "boost/lexical_cast.hpp"
 #include "boost/tokenizer.hpp"
 
+// Include STL stuff
+#include <limits>
+#include <memory>
+
 using namespace SCT_ConditionsData;
 
 // Utility functions
@@ -51,22 +51,17 @@ namespace {
 SCT_ReadCalibDataCondAlg::SCT_ReadCalibDataCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
   , m_defectMapIntToString{}
-  , m_ignoreDefects{}
-  , m_ignoreDefectParameters{}
   , m_condSvc{"CondSvc", name}
   , m_id_sct{nullptr}
 {
-  declareProperty("IgnoreDefects", m_ignoreDefects, "Defects to ignore");
-  declareProperty("IgnoreDefectsParameters", m_ignoreDefectParameters, "Limit on defect to ignore parameters");
-
-  m_ignoreDefects.push_back("NOISE_SLOPE");
-  m_ignoreDefects.push_back("OFFSET_SLOPE");
-  m_ignoreDefects.push_back("GAIN_SLOPE");
-  m_ignoreDefects.push_back("BAD_OPE");
-  m_ignoreDefectParameters.push_back(-1000.);
-  m_ignoreDefectParameters.push_back(-1000.);
-  m_ignoreDefectParameters.push_back(-1000.);
-  m_ignoreDefectParameters.push_back(-1000.);
+  m_ignoreDefects.value().push_back("NOISE_SLOPE");
+  m_ignoreDefects.value().push_back("OFFSET_SLOPE");
+  m_ignoreDefects.value().push_back("GAIN_SLOPE");
+  m_ignoreDefects.value().push_back("BAD_OPE");
+  m_ignoreDefectParameters.value().push_back(-1000.);
+  m_ignoreDefectParameters.value().push_back(-1000.);
+  m_ignoreDefectParameters.value().push_back(-1000.);
+  m_ignoreDefectParameters.value().push_back(-1000.);
 }
 
 StatusCode SCT_ReadCalibDataCondAlg::initialize() {
@@ -127,7 +122,7 @@ StatusCode SCT_ReadCalibDataCondAlg::initialize() {
   m_defectMapIntToString[38] = "DOUBTR_HI";     //<! High double trigger noise occupancy, > 5
 
   //Check ignoreDefects vectors are the same size
-  if (m_ignoreDefects.size() != m_ignoreDefectParameters.size()) {
+  if (m_ignoreDefects.value().size() != m_ignoreDefectParameters.value().size()) {
     ATH_MSG_FATAL("IgnoreDefect != IgnoreDefectsParameters, check job options!");
     return StatusCode::FAILURE;
   }
@@ -272,17 +267,17 @@ StatusCode SCT_ReadCalibDataCondAlg::execute() {
           // Check for defects and their limits not to take into account in isGood
           bool ignoreDefect{false};
           unsigned int ig{0};
-          while (ig<m_ignoreDefects.size()) { //loop until found defect or end of ignoredefects
-            if (m_ignoreDefects[ig] == theseDefects.typeOfDefect[i]) {
-              if (                                                   m_ignoreDefectParameters[ig]<-999.                   ) ignoreDefect = true; //no check on parameter value, defect ignored
-              else if (theseDefects.typeOfDefect[i]=="NO_HI"     and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 0.0005 (in DB, so default values printed here)
-              else if (theseDefects.typeOfDefect[i]=="NOISY"     and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.15* av chip average
-              else if (theseDefects.typeOfDefect[i]=="V_NOISY"   and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.25* av chip average
-              else if (theseDefects.typeOfDefect[i]=="VLO_GAIN"  and m_ignoreDefectParameters[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low, < 0.3 * chip average
-              else if (theseDefects.typeOfDefect[i]=="LO_GAIN"   and m_ignoreDefectParameters[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low < 0.75 * chip average
-              else if (theseDefects.typeOfDefect[i]=="HI_GAIN"   and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; // gain to high > 1.25 * chip average
-              else if (theseDefects.typeOfDefect[i]=="LO_OFFSET" and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; // offset to low < -100
-              else if (theseDefects.typeOfDefect[i]=="HI_OFFSET" and m_ignoreDefectParameters[ig]<theseDefects.parValue[i]) ignoreDefect = true; // offset to high > 200
+          while (ig<m_ignoreDefects.value().size()) { //loop until found defect or end of ignoredefects
+            if (m_ignoreDefects.value()[ig] == theseDefects.typeOfDefect[i]) {
+              if (                                                   m_ignoreDefectParameters.value()[ig]<-999.                   ) ignoreDefect = true; //no check on parameter value, defect ignored
+              else if (theseDefects.typeOfDefect[i]=="NO_HI"     and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 0.0005 (in DB, so default values printed here)
+              else if (theseDefects.typeOfDefect[i]=="NOISY"     and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.15* av chip average
+              else if (theseDefects.typeOfDefect[i]=="V_NOISY"   and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.25* av chip average
+              else if (theseDefects.typeOfDefect[i]=="VLO_GAIN"  and m_ignoreDefectParameters.value()[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low, < 0.3 * chip average
+              else if (theseDefects.typeOfDefect[i]=="LO_GAIN"   and m_ignoreDefectParameters.value()[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low < 0.75 * chip average
+              else if (theseDefects.typeOfDefect[i]=="HI_GAIN"   and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; // gain to high > 1.25 * chip average
+              else if (theseDefects.typeOfDefect[i]=="LO_OFFSET" and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; // offset to low < -100
+              else if (theseDefects.typeOfDefect[i]=="HI_OFFSET" and m_ignoreDefectParameters.value()[ig]<theseDefects.parValue[i]) ignoreDefect = true; // offset to high > 200
             }
             ig++;
           }
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h
index ecce601ec01..2961f769459 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h
@@ -46,8 +46,8 @@ class SCT_ReadCalibDataCondAlg : public AthAlgorithm
   // Defect type map, contains Fit, NPtGain and No defects for now
   std::map<int, std::string> m_defectMapIntToString;
   // Arrays to hold defects to ignore/limits
-  std::vector<std::string> m_ignoreDefects;
-  std::vector<float> m_ignoreDefectParameters;
+  StringArrayProperty m_ignoreDefects{this, "IgnoreDefects", {}, "Defects to ignore"};
+  FloatArrayProperty m_ignoreDefectParameters{this, "IgnoreDefectsParameters", {}, "Limit on defect to ignore parameters"};
 
   ServiceHandle<ICondSvc> m_condSvc;
   const SCT_ID* m_id_sct; //!< Handle to SCT ID helper
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx
index 4b1e09327d7..bc7bdbd58df 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx
@@ -26,20 +26,8 @@ SCT_ReadCalibDataTestAlg::SCT_ReadCalibDataTestAlg(const std::string& name, ISvc
   m_id_sct{nullptr},
   m_moduleId{0},
   m_waferId{0},
-  m_stripId{0},
-  m_doTestmyConditionsSummary{false},
-  m_doTestmyDefectIsGood{false},
-  m_doTestmyDefectType{false},
-  m_doTestmyDefectsSummary{false},
-  m_doTestmyDefectList{false},
-  m_moduleOfflinePosition{}
+  m_stripId{0}
 {
-  declareProperty("DoTestmyConditionsSummary",   m_doTestmyConditionsSummary = false, "Test return bool conditions summary?");
-  declareProperty("DoTestmyDefectIsGood",        m_doTestmyDefectIsGood      = false, "Test return defect type summary?");
-  declareProperty("DoTestmyDefectType",          m_doTestmyDefectType        = false, "Test return defect type summary?");
-  declareProperty("DoTestmyDefectsSummary",      m_doTestmyDefectsSummary    = false, "Test return module defects summary?");
-  declareProperty("DoTestmyDefectList",          m_doTestmyDefectList        = false, "Test return defectList?");
-  declareProperty("ModuleOfflinePosition",       m_moduleOfflinePosition            , "Offline pos. as: B-EC,layer-disk,phi,eta");
 }
 
 //----------------------------------------------------------------------
@@ -112,7 +100,7 @@ StatusCode SCT_ReadCalibDataTestAlg::execute()
   ATH_MSG_DEBUG("in execute()");
   
   //Test ConditionsSummary
-  if (m_doTestmyConditionsSummary) {
+  if (m_doTestmyConditionsSummary.value()) {
     // Test summmary, ask status of strip in module
     Identifier IdM{m_moduleId};
     Identifier IdS{m_stripId};
@@ -121,7 +109,7 @@ StatusCode SCT_ReadCalibDataTestAlg::execute()
   }
 
   // Loop over all strips and check if good or not using isGood, and print the bad ones
-  if (m_doTestmyDefectIsGood) {
+  if (m_doTestmyDefectIsGood.value()) {
     int ngood{0};
     int nbad{0};
     //Loop over all wafers using hashIds from the cabling service
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h
index 4349e46144d..87eacd288a2 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h
@@ -57,12 +57,9 @@ class SCT_ReadCalibDataTestAlg:public AthAlgorithm
   ToolHandle<ISCT_ReadCalibDataTool> m_ReadCalibDataTool{this, "SCT_ReadCalibDataTool", "SCT_ReadCalibDataTool", "Tool to retrieve calibration information"};
   ToolHandle<ISCT_CablingTool>       m_cabling{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
 
-  BooleanProperty                  m_doTestmyConditionsSummary;   //!< Test return bool conditions summary?
-  BooleanProperty                  m_doTestmyDefectIsGood;        //!< Test isGood for all strips?
-  BooleanProperty                  m_doTestmyDefectType;          //!< Test return defect type?
-  BooleanProperty                  m_doTestmyDefectsSummary;      //!< Test return module defect summary?
-  BooleanProperty                  m_doTestmyDefectList;          //!< Test return defectList?
-  IntegerArrayProperty             m_moduleOfflinePosition;       //!< Offline pos. as: B-EC,layer-disk,phi,eta
+  BooleanProperty m_doTestmyConditionsSummary{this, "DoTestmyConditionsSummary", false, "Test return bool conditions summary?"};
+  BooleanProperty m_doTestmyDefectIsGood{this, "DoTestmyDefectIsGood", false, "Test return defect type summary?"};
+  IntegerArrayProperty m_moduleOfflinePosition{this, "ModuleOfflinePosition", {}, "Offline pos. as: B-EC,layer-disk,phi,eta"};       //!< Offline pos. as: B-EC,layer-disk,phi,eta
 };
 //---------------------------------------------------------------------- 
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx
index 0cdeaa31f6c..a00cc184695 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx
@@ -20,17 +20,10 @@
 // C++
 #include <vector>
 
+// Constructor
 SCT_ReadoutTestAlg::SCT_ReadoutTestAlg(const std::string& name, ISvcLocator* pSvcLocator) : 
-  AthAlgorithm(name, pSvcLocator),
-  m_moduleId{168497152},
-  m_link0ok{true},
-  m_link1ok{true}
+  AthAlgorithm(name, pSvcLocator)
 {
-  // Constructor
-  declareProperty("ChipConfigurationList", m_chipConfigs);
-  declareProperty("ModuleId",              m_moduleId);
-  declareProperty("Link0Status",           m_link0ok);
-  declareProperty("Link1Status",           m_link1ok);
 }
 
 // Initialize
@@ -66,7 +59,7 @@ StatusCode SCT_ReadoutTestAlg::execute() {
   for (; itr != end; ++itr) ATH_MSG_INFO(*(*itr));
 
   // Determin readout for this module
-  ATH_CHECK(m_readout->determineReadout(Identifier(m_moduleId), m_chips, m_link0ok, m_link1ok));
+  ATH_CHECK(m_readout->determineReadout(Identifier(m_moduleId.value()), m_chips, m_link0ok.value(), m_link1ok.value()));
   
   ATH_MSG_INFO("Chips after readout ...");
   for (itr = m_chips.begin(); itr != end; ++itr) ATH_MSG_INFO(*(*itr));
@@ -82,7 +75,6 @@ StatusCode SCT_ReadoutTestAlg::finalize() {
   // Free up the memory associated to the chips
   std::vector<SCT_Chip*>::const_iterator itr{m_chips.begin()};
   std::vector<SCT_Chip*>::const_iterator end{m_chips.end()};
-
   while (itr != end) {
     delete *itr;
     ++itr;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h
index 4d1bd595b94..8511de5367b 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h
@@ -45,12 +45,15 @@ class SCT_ReadoutTestAlg : public AthAlgorithm {
   StatusCode                          finalize() override;
    
  private:
-  ToolHandle<ISCT_ReadoutTool>        m_readout{this, "SCT_ReadoutTool", "SCT_ReadoutTool", "Handle to the SCT_ReadoutTool"};      //!< Handle to the SCT_ReadoutTool
-  std::vector<SCT_Chip*>              m_chips;        //!< List of chips for that module. *Modified in execute*
-  std::vector<std::string>            m_chipConfigs;  //!< The configuration of the chips in that module (from job options)
-  int                                 m_moduleId;     //!< The Module identifier (from job options)
-  bool                                m_link0ok;      //!< Status of link 0 (from job options)
-  bool                                m_link1ok;      //!< Status of link 1 (from job options)
+  ToolHandle<ISCT_ReadoutTool>        m_readout{this, "SCT_ReadoutTool", "SCT_ReadoutTool", "Handle to the SCT_ReadoutTool"};
+
+  //!< List of chips for that module. *Modified in execute* This should be OK because this is a test alg.
+  std::vector<SCT_Chip*> m_chips;
+
+  StringArrayProperty m_chipConfigs{this, "ChipConfigurationList", {}, "The configuration of the chips in that module (from job options)"};
+  IntegerProperty m_moduleId{this, "ModuleId", 168497152, "The Module identifier (from job options)"};
+  BooleanProperty m_link0ok{this, "Link0Status", true, "Status of link 0 (from job options)"};
+  BooleanProperty m_link1ok{this, "Link1Status", true, "Status of link 1 (from job options)"};
 
   /** Function to convert the configuration string into an int*/
   short                               bin2dec(const char *bin);
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx
index b2c79fd0f32..47b46e58764 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx
@@ -39,8 +39,8 @@ StatusCode SCT_SensorsTestAlg::execute() {
   ATH_MSG_INFO("Calling execute");
   std::vector<std::string> values;
   m_SensorsTool->getSensorsData(values);
-  for (std::vector<std::string>::const_iterator i{values.begin()}; i!=values.end(); ++i) {
-    ATH_MSG_INFO("------------" << *i << "------------");
+  for (const std::string& value: values) {
+    ATH_MSG_INFO("------------" << value << "------------");
   }
   m_SensorsTool->printManufacturers();
   return StatusCode::SUCCESS;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx
index 9d80829c676..5a640cc02b8 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx
@@ -36,13 +36,12 @@ StatusCode SCT_SiliconConditionsTestAlg::execute() {
   // so the INFO level messages have no impact on performance of these services when used by clients
   
   ATH_MSG_INFO("Calling execute");
-  ATH_MSG_INFO("Temperature  = " << m_siliconTool->temperature(IdentifierHash(804)));
-  ATH_MSG_INFO("Depletion V  = " << m_siliconTool->depletionVoltage(IdentifierHash(804)));
-  ATH_MSG_INFO("Bias Voltage = " << m_siliconTool->biasVoltage(IdentifierHash(804)));  // was 216808130
+  ATH_MSG_INFO("Temperature  = " << m_siliconTool->temperature(IdentifierHash{804}));
+  ATH_MSG_INFO("Depletion V  = " << m_siliconTool->depletionVoltage(IdentifierHash{804}));
+  ATH_MSG_INFO("Bias Voltage = " << m_siliconTool->biasVoltage(IdentifierHash{804})); // was 216808130
   return StatusCode::SUCCESS;
 }
 
-
 //Finalize
 StatusCode
 SCT_SiliconConditionsTestAlg::finalize() {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx
index 7af19c305db..ee364b6bedf 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx
@@ -13,11 +13,9 @@
 
 SCT_SiliconHVCondAlg::SCT_SiliconHVCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
-  , m_useState{true}
   , m_condSvc{"CondSvc", name}
   , m_pHelper{nullptr}
 {
-  declareProperty("UseState", m_useState, "Flag to use state conditions folder");
 }
 
 StatusCode SCT_SiliconHVCondAlg::initialize() {
@@ -31,7 +29,7 @@ StatusCode SCT_SiliconHVCondAlg::initialize() {
   // CondSvc
   ATH_CHECK(m_condSvc.retrieve());
   // Read Cond Handles
-  if (m_useState) {
+  if (m_useState.value()) {
     ATH_CHECK(m_readKeyState.initialize());
   }
   ATH_CHECK(m_readKeyHV.initialize());
@@ -74,7 +72,7 @@ StatusCode SCT_SiliconHVCondAlg::execute() {
 
   EventIDRange rangeW{rangeHV};
 
-  if (m_useState) {
+  if (m_useState.value()) {
     // Read Cond Handle (state)
     SG::ReadCondHandle<SCT_DCSStatCondData> readHandleState{m_readKeyState};
     const SCT_DCSStatCondData* readCdoState{*readHandleState};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h
index d8bbfd9c24b..b7849d34378 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h
@@ -27,7 +27,7 @@ class SCT_SiliconHVCondAlg : public AthAlgorithm
   StatusCode finalize() override;
 
  private:
-  bool m_useState;
+  BooleanProperty m_useState{this, "UseState", true, "Flag to use state conditions folder"};
   SG::ReadCondHandleKey<SCT_DCSStatCondData> m_readKeyState{this, "ReadKeyState", "SCT_DCSStatCondData", "Key of input state conditions data"};
   SG::ReadCondHandleKey<SCT_DCSFloatCondData> m_readKeyHV{this, "ReadKeyHV", "SCT_DCSHVCondData", "Key of input HV conditions data"};
   SG::WriteCondHandleKey<SCT_DCSFloatCondData> m_writeKey{this, "WriteKey", "SCT_SiliconBiasVoltCondData", "Key of output bias voltage conditions data"};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx
index f95cb2f308e..ebaa2fbd8e7 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx
@@ -13,11 +13,9 @@
 
 SCT_SiliconTempCondAlg::SCT_SiliconTempCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
-  , m_useState{true}
   , m_condSvc{"CondSvc", name}
   , m_pHelper{nullptr}
 {
-  declareProperty("UseState", m_useState, "Flag to use state conditions folder");
 }
 
 StatusCode SCT_SiliconTempCondAlg::initialize() {
@@ -31,7 +29,7 @@ StatusCode SCT_SiliconTempCondAlg::initialize() {
   // CondSvc
   ATH_CHECK(m_condSvc.retrieve());
   // Read Cond Handle
-  if (m_useState) {
+  if (m_useState.value()) {
     ATH_CHECK(m_readKeyState.initialize());
   }
   ATH_CHECK(m_readKeyTemp0.initialize());
@@ -74,7 +72,7 @@ StatusCode SCT_SiliconTempCondAlg::execute() {
 
   EventIDRange rangeW{rangeTemp0};
 
-  if (m_useState) {
+  if (m_useState.value()) {
     // Read Cond Handle (state)
     SG::ReadCondHandle<SCT_DCSStatCondData> readHandleState{m_readKeyState};
     const SCT_DCSStatCondData* readCdoState{*readHandleState};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h
index bdd9aba2545..82b7e6a3e56 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h
@@ -27,7 +27,7 @@ class SCT_SiliconTempCondAlg : public AthAlgorithm
   StatusCode finalize() override;
 
  private:
-  bool m_useState;
+  BooleanProperty m_useState{this, "UseState", true, "Flag to use state conditions folder"};
   SG::ReadCondHandleKey<SCT_DCSStatCondData> m_readKeyState{this, "ReadKeyState", "SCT_DCSStatCondData", "Key of input state conditions data"};
   SG::ReadCondHandleKey<SCT_DCSFloatCondData> m_readKeyTemp0{this, "ReadKeyTemp", "SCT_DCSTemp0CondData", "Key of input (hybrid) temperature conditions data"};
   SG::WriteCondHandleKey<SCT_DCSFloatCondData> m_writeKey{this, "WriteKey", "SCT_SiliconTempCondData", "Key of output (sensor) temperature conditions data"};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h
index 0863d809dfb..8cd5b69069c 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h
@@ -32,6 +32,6 @@ class SCT_StripVetoTestAlg : public AthAlgorithm {
    
  private:
   ToolHandle<ISCT_ConditionsTool> m_stripVetoTool{this, "StripVetoTool", "SCT_StripVetoTool", "Tool to retrieve vetoed strips"};
-}; 
+};
 
 #endif // SCT_StripVetoTestAlg_H
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx
index 4c77aaff0d0..d715b0e577a 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx
@@ -16,7 +16,6 @@ SCT_TdaqEnabledCondAlg::SCT_TdaqEnabledCondAlg(const std::string& name, ISvcLoca
   : ::AthAlgorithm(name, pSvcLocator)
   , m_condSvc{"CondSvc", name}
 {
-  declareProperty("EventInfoKey", m_eventInfoKey=std::string{"ByteStreamEventInfo"}, "Key of non-xAOD EventInfo");
 }
 
 StatusCode SCT_TdaqEnabledCondAlg::initialize()
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h
index ed38a084766..a867908b25a 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h
@@ -6,14 +6,16 @@
 #define SCT_TDAQENABLEDCONDALG
 
 #include "AthenaBaseComps/AthAlgorithm.h"
-#include "StoreGate/ReadCondHandleKey.h"
+
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
-#include "StoreGate/WriteCondHandleKey.h"
+#include "EventInfo/EventInfo.h"
+#include "SCT_Cabling/ISCT_CablingTool.h"
 #include "SCT_ConditionsData/SCT_TdaqEnabledCondData.h"
+#include "StoreGate/ReadCondHandleKey.h"
 #include "StoreGate/ReadHandleKey.h"
-#include "EventInfo/EventInfo.h"
+#include "StoreGate/WriteCondHandleKey.h"
+
 #include "GaudiKernel/ICondSvc.h"
-#include "SCT_Cabling/ISCT_CablingTool.h"
 
 class SCT_TdaqEnabledCondAlg : public AthAlgorithm 
 {  
@@ -27,15 +29,15 @@ class SCT_TdaqEnabledCondAlg : public AthAlgorithm
  private:
   bool unfilledRun() const;
 
+  unsigned int parseChannelName(const std::string &chanNameString) const;
+  std::string inWords(const unsigned int aNumber) const;
+
   SG::ReadCondHandleKey<CondAttrListCollection> m_readKey{this, "ReadKey", "/TDAQ/Resources/ATLAS/SCT/Robins", "Key of input (raw) conditions folder"};
   SG::WriteCondHandleKey<SCT_TdaqEnabledCondData> m_writeKey{this, "WriteKey", "SCT_TdaqEnabledCondData", "Key of output (derived) conditions data"};
-  SG::ReadHandleKey<EventInfo> m_eventInfoKey;
+  SG::ReadHandleKey<EventInfo> m_eventInfoKey{this, "EventInfoKey", "ByteStreamEventInfo", "Key of non-xAOD EventInfo"};
   ServiceHandle<ICondSvc> m_condSvc; 
   ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
 
-  unsigned int parseChannelName(const std::string &chanNameString) const;
-  std::string inWords(const unsigned int aNumber) const;
-
   static const unsigned int s_NRODS;
   static const unsigned int s_modulesPerRod;
   static const unsigned int s_earliestRunForFolder;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h
index a98f7a8c383..859c32686f9 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h
@@ -12,15 +12,16 @@
 
 #ifndef SCT_TdaqEnabledTestAlg_H
 #define SCT_TdaqEnabledTestAlg_H 
-//STL
-#include <string>
 
-//Gaudi
+//Athena
 #include "AthenaBaseComps/AthAlgorithm.h"
+#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
+
+//Gaudi
 #include "GaudiKernel/ToolHandle.h"
 
-//Athena
-#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
+//STL
+#include <string>
 
 ///Example algorithm to show calling the SCT_ModuleVeto to exclude bad components
 class SCT_TdaqEnabledTestAlg : public AthAlgorithm {
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx
index 7b41c6695c8..1c1948fea00 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx
@@ -61,19 +61,18 @@ SCT_CablingCondAlgFromText::SCT_CablingCondAlgFromText(const std::string& name,
   AthAlgorithm(name, pSvcLocator),
   m_condSvc{"CondSvc", name}
 {
-  declareProperty("DataSource", m_source="SCT_MC_FullCabling_svc.dat", "a plain text file for the SCT Cabing");
 }
 
 //
 StatusCode
 SCT_CablingCondAlgFromText::initialize() {
-  ATH_MSG_INFO("The SCT data file for cabling, " << m_source << ", will be searched.");
-  m_source = PathResolver::find_file(m_source, "DATAPATH");
-  if (m_source.empty()) {
-    ATH_MSG_FATAL("The SCT data file for cabling, " << m_source << ", was not found.");
+  ATH_MSG_INFO("The SCT data file for cabling, " << m_source.value() << ", will be searched.");
+  m_source = PathResolver::find_file(m_source.value(), "DATAPATH");
+  if (m_source.value().empty()) {
+    ATH_MSG_FATAL("The SCT data file for cabling, " << m_source.value() << ", was not found.");
     return StatusCode::FAILURE;
   }
-  ATH_MSG_INFO("Reading cabling from " << m_source);
+  ATH_MSG_INFO("Reading cabling from " << m_source.value());
 
   // CondSvc
   ATH_CHECK(m_condSvc.retrieve());
@@ -117,9 +116,9 @@ SCT_CablingCondAlgFromText::execute() {
   IdentifierHash offlineIdHash;
   unsigned int onlineId;
   int robid{0};
-  std::ifstream fromDataFile{m_source.c_str()};
+  std::ifstream fromDataFile{m_source.value().c_str()};
   if (not fromDataFile) {
-    ATH_MSG_FATAL("The cable mapping file could not be opened: " << m_source);
+    ATH_MSG_FATAL("The cable mapping file could not be opened: " << m_source.value());
     return StatusCode::FAILURE;
   }
   std::string inString;
@@ -148,14 +147,14 @@ SCT_CablingCondAlgFromText::execute() {
         offlineId = idHelper->wafer_id(barrelOrEndcap,layer,phi,eta,side);
         offlineIdHash = idHelper->wafer_hash(offlineId);
       } catch (const std::ios_base::failure&) {
-        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source
+        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source.value()
                       << ", it may be badly formatted in the following line: \n" << inString);
         continue;
       } 
       // Check Link variable looks OK
       // The maximum value of an int is 2147483647 in decimal and 0x7fffffff in hexadecimal.
       if (Link.size()==0 or Link.size()>10) {
-        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source
+        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source.value()
                       << ", Link (" << Link << ") cannot be converted to an integer");
         continue;
       }
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h
index 44655430dc5..a989786b27f 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h
@@ -43,7 +43,7 @@ class SCT_CablingCondAlgFromText: public AthAlgorithm {
 private:
 
   bool insert(const IdentifierHash& hash, const SCT_OnlineId& onlineId, const SCT_SerialNumber& sn, SCT_CablingData* data);
-  std::string m_source;
+  StringProperty m_source{this, "DataSource", "SCT_MC_FullCabling_svc.dat", "a plain text file for the SCT Cabing"};
   SG::WriteCondHandleKey<SCT_CablingData> m_writeKey{this, "WriteKey", "SCT_CablingData", "Key of output (derived) conditions folder"};
   ServiceHandle<ICondSvc> m_condSvc;
 
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx
index 18dd8a0a21d..c5e8dc4f814 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx
@@ -42,10 +42,6 @@ SCT_TestCablingAlg::SCT_TestCablingAlg(const std::string& name, ISvcLocator* pSv
   //nop
 }
 
-SCT_TestCablingAlg::~SCT_TestCablingAlg() {
-  //nop
-}
-
 StatusCode
 SCT_TestCablingAlg::initialize() {
   ATH_CHECK(detStore()->retrieve(m_idHelper, "SCT_ID"));
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h
index e5136cbe484..79347ef144f 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef SCT_TestCablingAlg_h
@@ -30,18 +30,18 @@ class SCT_ID;
  * SCT_TestCablingAlg exercises the routines of the SCT cabling service
  **/
 class SCT_TestCablingAlg:public AthAlgorithm {
-  public:
-    SCT_TestCablingAlg(const std::string& name, ISvcLocator* pSvcLocator);
-    ~SCT_TestCablingAlg();
-    // Standard Gaudi functions
-    StatusCode initialize(); //!< Gaudi initialiser
-    StatusCode execute();    //!< Gaudi executer
-    StatusCode finalize();   //!< Gaudi finaliser
-
-  private:
-    ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
-    const SCT_ID* m_idHelper; //!< helper for offlineId/hash conversions
-    std::string coordString(const Identifier& offlineId);
+ public:
+  SCT_TestCablingAlg(const std::string& name, ISvcLocator* pSvcLocator);
+  ~SCT_TestCablingAlg() = default;
+  // Standard Gaudi functions
+  StatusCode initialize(); //!< Gaudi initialiser
+  StatusCode execute();    //!< Gaudi executer
+  StatusCode finalize();   //!< Gaudi finaliser
+
+ private:
+  ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
+  const SCT_ID* m_idHelper; //!< helper for offlineId/hash conversions
+  std::string coordString(const Identifier& offlineId);
 
 };
-#endif
+#endif // SCT_TestCablingAlg_h
-- 
GitLab