diff --git a/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/DummyLumirangeTool.h b/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/DummyLumirangeTool.h index aca6d4c282061c7a85b69f51059ff05aa921c668..23c56db6b82e2d1780fbeb02b495ab8f5632a373 100755 --- a/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/DummyLumirangeTool.h +++ b/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/DummyLumirangeTool.h @@ -19,7 +19,7 @@ //<<<<<< INCLUDES >>>>>> #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "StoreGate/WriteHandleKey.h" #include "DBDataModel/CollectionMetadata.h" diff --git a/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/EventTagReader.cxx b/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/EventTagReader.cxx index 4690e1a347c5f852ef3c774d8dfd6a2d5712c4b9..7a75fac1b1a77dae949a46c06e7082ead23d4c5c 100755 --- a/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/EventTagReader.cxx +++ b/AtlasTest/DatabaseTest/AthenaPoolMultiTest/src/EventTagReader.cxx @@ -12,7 +12,7 @@ #include "EventTagReader.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ISvcLocator.h" #include "CoralBase/AttributeListSpecification.h" diff --git a/AtlasTest/DatabaseTest/AthenaPoolTest/share/AtlfastPoolWriteOptions.ref b/AtlasTest/DatabaseTest/AthenaPoolTest/share/AtlfastPoolWriteOptions.ref index 6e3be6c88bc7c6fdee6a469d7b8dc55ff6cb7b6e..4650da8aeb0c6b347c50621bb88fe2d56509f851 100755 --- a/AtlasTest/DatabaseTest/AthenaPoolTest/share/AtlfastPoolWriteOptions.ref +++ b/AtlasTest/DatabaseTest/AthenaPoolTest/share/AtlfastPoolWriteOptions.ref @@ -545,7 +545,7 @@ AthenaSealSvc.IgnoreNames += [ "IAppMgrUI" ] AthenaSealSvc.IgnoreNames += [ "IProperty" ] AthenaSealSvc.IgnoreNames += [ "Property" ] AthenaSealSvc.IgnoreNames += [ "std::vector<Property*>" ] -AthenaSealSvc.IgnoreNames += [ "std::vector<const Property*>" ] +AthenaSealSvc.IgnoreNames += [ "std::vector<const Gaudi::Details::PropertyBase*>" ] AthenaSealSvc.IgnoreNames += [ "std::list<IAlgorithm*>" ] AthenaSealSvc.IgnoreNames += [ "std::list<IService*>" ] AthenaSealSvc.IgnoreNames += [ "std::list<const IFactory*>" ] @@ -884,7 +884,7 @@ AthenaSealSvc.IgnoreNames += [ "IAppMgrUI" ] AthenaSealSvc.IgnoreNames += [ "IProperty" ] AthenaSealSvc.IgnoreNames += [ "Property" ] AthenaSealSvc.IgnoreNames += [ "std::vector<Property*>" ] -AthenaSealSvc.IgnoreNames += [ "std::vector<const Property*>" ] +AthenaSealSvc.IgnoreNames += [ "std::vector<const Gaudi::Details::PropertyBase*>" ] AthenaSealSvc.IgnoreNames += [ "std::list<IAlgorithm*>" ] AthenaSealSvc.IgnoreNames += [ "std::list<IService*>" ] AthenaSealSvc.IgnoreNames += [ "std::list<const IFactory*>" ] diff --git a/AtlasTest/DatabaseTest/AthenaPoolTestData/AthenaPoolTestData/TestGaudiProperty.h b/AtlasTest/DatabaseTest/AthenaPoolTestData/AthenaPoolTestData/TestGaudiProperty.h index b3d69c66c985a401a8ab7bef2d1f3032a86928c1..2983684df675328be5bb2b4ef0c79deefa29a9a4 100755 --- a/AtlasTest/DatabaseTest/AthenaPoolTestData/AthenaPoolTestData/TestGaudiProperty.h +++ b/AtlasTest/DatabaseTest/AthenaPoolTestData/AthenaPoolTestData/TestGaudiProperty.h @@ -8,7 +8,7 @@ #define ATLASHISTORY_TESTGAUDIPROPERTY_H //#include "GaudiKernel/HistoryObj.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include <vector> @@ -27,17 +27,17 @@ class TestGaudiProperty { public: - //typedef std::vector< std::pair<std::string,const Property*> > PropertyList; - //typedef std::vector< const Property* > PropertyList; - //typedef const Property* PropertyList; + //typedef std::vector< std::pair<std::string,const Gaudi::Details::PropertyBase*> > PropertyList; + //typedef std::vector< const Gaudi::Details::PropertyBase* > PropertyList; + //typedef const Gaudi::Details::PropertyBase* PropertyList; private: // data //PropertyList m_props; //Property m_p1; - Property* m_pptr; - const Property* m_cptr; - std::vector<Property*> m_ncprops; + Gaudi::Details::PropertyBase* m_pptr; + const Gaudi::Details::PropertyBase* m_cptr; + std::vector<Gaudi::Details::PropertyBase*> m_ncprops; public: // functions @@ -47,11 +47,11 @@ public: // functions // Destructor. ~TestGaudiProperty(); - //void addProperty( const std::string&, const Property* ); - //void addProperty( const Property* ); + //void addProperty( const std::string&, const Gaudi::Details::PropertyBase* ); + //void addProperty( const Gaudi::Details::PropertyBase* ); //const PropertyList& properties() const { return m_props; } - const Property* property() const { return m_cptr; } + const Gaudi::Details::PropertyBase* property() const { return m_cptr; } private: diff --git a/AtlasTest/DatabaseTest/AthenaPoolTestData/src/TestGaudiProperty.cxx b/AtlasTest/DatabaseTest/AthenaPoolTestData/src/TestGaudiProperty.cxx index a7e5ccecc031b05c521b910fd10ba1778985d51c..db91e721a1968c67eac5bb254386101a9c3b3a40 100755 --- a/AtlasTest/DatabaseTest/AthenaPoolTestData/src/TestGaudiProperty.cxx +++ b/AtlasTest/DatabaseTest/AthenaPoolTestData/src/TestGaudiProperty.cxx @@ -17,7 +17,7 @@ /////////////////////////////////////////////////////////////////////////// #include "GaudiKernel/System.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaPoolTestData/TestGaudiProperty.h" #include <cstdlib> @@ -47,11 +47,11 @@ TestGaudiProperty::~TestGaudiProperty() { } /* void -//TestGaudiProperty::addProperty(const std::string& client, const Property* prop) { -TestGaudiProperty::addProperty(const Property* prop) { +//TestGaudiProperty::addProperty(const std::string& client, const Gaudi::Details::PropertyBase* prop) { +TestGaudiProperty::addProperty(const Gaudi::Details::PropertyBase* prop) { // if (m_props.find(prop) == m_props.end()) { //m_props.push_back( prop); - //m_ncprops.push_back( const_cast<Property*>(prop)); + //m_ncprops.push_back( const_cast<Gaudi::Details::PropertyBase*>(prop)); //m_p1 = *prop; //m_pptr = m_ncprops[0]; m_cptr = prop; diff --git a/Calorimeter/CaloClusterCorrection/src/CaloRunClusterCorrections.cxx b/Calorimeter/CaloClusterCorrection/src/CaloRunClusterCorrections.cxx index 38505930effead51b1f7bda54ea0f815df3710f7..3a740a80a776745748046f42f4d49bcee86ef888 100644 --- a/Calorimeter/CaloClusterCorrection/src/CaloRunClusterCorrections.cxx +++ b/Calorimeter/CaloClusterCorrection/src/CaloRunClusterCorrections.cxx @@ -22,7 +22,7 @@ #include "AthenaKernel/errorcheck.h" #include "CxxUtils/Array.h" #include "AthenaKernel/getMessageSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "GaudiKernel/IToolSvc.h" @@ -771,10 +771,10 @@ CaloRunClusterCorrections::orderCorrections ATLAS_NOT_THREAD_SAFE (bool allowMis // Tool is being initialized from JO. Find the order property from JOS. tool.order = -1; std::string fullname = this->name() + "." + tool.name; - const std::vector<const Property*>* props = + const std::vector<const Gaudi::Details::PropertyBase*>* props = m_jos->getProperties (fullname); for (size_t iprop = 0; iprop < props->size(); iprop++) { - const Property& prop = *(*props)[iprop]; + const Gaudi::Details::PropertyBase& prop = *(*props)[iprop]; if (prop.name() == "order") { tool.order = std::atoi (prop.toString().c_str()); break; diff --git a/Calorimeter/CaloExample/CaloTests/src/CreateHits.cxx.test b/Calorimeter/CaloExample/CaloTests/src/CreateHits.cxx.test index 09a627154c4eaa402c078b68bcf941b103d31496..ef5d33b8907b0da4e11b25c149bd5774777628e4 100644 --- a/Calorimeter/CaloExample/CaloTests/src/CreateHits.cxx.test +++ b/Calorimeter/CaloExample/CaloTests/src/CreateHits.cxx.test @@ -1,5 +1,5 @@ #include "MyAnalysis/CreateHits.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/NTuple.h" diff --git a/Calorimeter/CaloExample/CaloTests/src/MyAnalysis.cxx b/Calorimeter/CaloExample/CaloTests/src/MyAnalysis.cxx index ed1ed34de97db4048ec31a403a9f5b03145e6761..2756af7f5f52025e156134a99f90d3f063a659e1 100644 --- a/Calorimeter/CaloExample/CaloTests/src/MyAnalysis.cxx +++ b/Calorimeter/CaloExample/CaloTests/src/MyAnalysis.cxx @@ -3,7 +3,7 @@ */ #include "CaloTests/Analysis.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/NTuple.h" diff --git a/Calorimeter/CaloExample/CaloTests/src/MyAnalysisCal.cxx b/Calorimeter/CaloExample/CaloTests/src/MyAnalysisCal.cxx index d295484870feaaf2d1917ddb378763b9621b1c52..378cdcf0a7cf5bf236d10c5765b012cd167f0ddb 100644 --- a/Calorimeter/CaloExample/CaloTests/src/MyAnalysisCal.cxx +++ b/Calorimeter/CaloExample/CaloTests/src/MyAnalysisCal.cxx @@ -3,7 +3,7 @@ */ #include "CaloTests/AnalysisCal.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/NTuple.h" diff --git a/Calorimeter/CaloRec/CaloRec/ToolWithConstantsMixin.h b/Calorimeter/CaloRec/CaloRec/ToolWithConstantsMixin.h index 60c51cb6e6422f8efc180800299c42a01802544f..960a3b9ad98157fcd86ca97700206834c29990e5 100644 --- a/Calorimeter/CaloRec/CaloRec/ToolWithConstantsMixin.h +++ b/Calorimeter/CaloRec/CaloRec/ToolWithConstantsMixin.h @@ -264,7 +264,7 @@ public: * * This version is used by Gaudi as of v19. */ - virtual StatusCode setProperty (const Property& p); + virtual StatusCode setProperty (const Gaudi::Details::PropertyBase& p); private: diff --git a/Calorimeter/CaloRec/share/CaloCellContainerAliasAlg_test.ref b/Calorimeter/CaloRec/share/CaloCellContainerAliasAlg_test.ref index 9129a6d073bcb0736115844e41f47e3e3905f2db..850bef3e9c1a3ec0a94088aa12750ab91f7d1c92 100644 --- a/Calorimeter/CaloRec/share/CaloCellContainerAliasAlg_test.ref +++ b/Calorimeter/CaloRec/share/CaloCellContainerAliasAlg_test.ref @@ -243,7 +243,6 @@ ApplicationMgr SUCCESS AthSequencer/AthEndSeq ApplicationMgr SUCCESS AthIncFirerAlg/EndIncFiringAlg ApplicationMgr SUCCESS IncidentProcAlg/IncidentProcAlg2 ApplicationMgr SUCCESS AthSequencer/AthOutSeq -ApplicationMgr SUCCESS AthSequencer/AthRegSeq ApplicationMgr SUCCESS ****************************************************************************** CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/OnOffIdMap' ApplicationMgr INFO Application Manager Started successfully diff --git a/Calorimeter/CaloRec/share/CaloThinCellsByClusterAlg_test.ref b/Calorimeter/CaloRec/share/CaloThinCellsByClusterAlg_test.ref index 2d5f7c57003d80b0c8444b1ab3904f1b8c5be33c..15cd1168be860a84582dedca1ca610c3d0c0fda1 100644 --- a/Calorimeter/CaloRec/share/CaloThinCellsByClusterAlg_test.ref +++ b/Calorimeter/CaloRec/share/CaloThinCellsByClusterAlg_test.ref @@ -242,7 +242,6 @@ ApplicationMgr SUCCESS AthSequencer/AthEndSeq ApplicationMgr SUCCESS AthIncFirerAlg/EndIncFiringAlg ApplicationMgr SUCCESS IncidentProcAlg/IncidentProcAlg2 ApplicationMgr SUCCESS AthSequencer/AthOutSeq -ApplicationMgr SUCCESS AthSequencer/AthRegSeq ApplicationMgr SUCCESS ****************************************************************************** ClassIDSvc INFO getRegistryEntries: read 104 CLIDRegistry entries for module ALL CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/OnOffIdMap' diff --git a/Calorimeter/CaloRec/share/CaloThinCellsBySamplingAlg_test.ref b/Calorimeter/CaloRec/share/CaloThinCellsBySamplingAlg_test.ref index 1f5c562c172235743913c3c02df41a89f9461792..09dd51f6a0d96dd4a233ecea2dac3a467144c0f8 100644 --- a/Calorimeter/CaloRec/share/CaloThinCellsBySamplingAlg_test.ref +++ b/Calorimeter/CaloRec/share/CaloThinCellsBySamplingAlg_test.ref @@ -242,7 +242,6 @@ ApplicationMgr SUCCESS AthSequencer/AthEndSeq ApplicationMgr SUCCESS AthIncFirerAlg/EndIncFiringAlg ApplicationMgr SUCCESS IncidentProcAlg/IncidentProcAlg2 ApplicationMgr SUCCESS AthSequencer/AthOutSeq -ApplicationMgr SUCCESS AthSequencer/AthRegSeq ApplicationMgr SUCCESS ****************************************************************************** ClassIDSvc INFO getRegistryEntries: read 104 CLIDRegistry entries for module ALL CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/OnOffIdMap' diff --git a/Calorimeter/CaloRec/share/ToolConstantsCondAlg_test.ref b/Calorimeter/CaloRec/share/ToolConstantsCondAlg_test.ref index 2880871f0ece09cab24d86b6865443af704842b7..112dce5bb51bcfb60002c3855c2fba145aef9ca3 100644 --- a/Calorimeter/CaloRec/share/ToolConstantsCondAlg_test.ref +++ b/Calorimeter/CaloRec/share/ToolConstantsCondAlg_test.ref @@ -91,7 +91,6 @@ ApplicationMgr SUCCESS AthSequencer/AthEndSeq ApplicationMgr SUCCESS AthIncFirerAlg/EndIncFiringAlg ApplicationMgr SUCCESS IncidentProcAlg/IncidentProcAlg2 ApplicationMgr SUCCESS AthSequencer/AthOutSeq -ApplicationMgr SUCCESS AthSequencer/AthRegSeq ApplicationMgr SUCCESS ****************************************************************************** CondInputLoader INFO created CondCont<CondAttrListCollection> with key 'ConditionStore+/LAR/CellCorrOfl/deadOTX' ApplicationMgr INFO Application Manager Started successfully diff --git a/Calorimeter/CaloRec/src/CaloCellContainerFinalizerTool.cxx b/Calorimeter/CaloRec/src/CaloCellContainerFinalizerTool.cxx index 076aaeb93cad427180fac2dce26b80352b0f59b8..15d6c679e114d4b8b96e36f57594ec90472d22be 100644 --- a/Calorimeter/CaloRec/src/CaloCellContainerFinalizerTool.cxx +++ b/Calorimeter/CaloRec/src/CaloCellContainerFinalizerTool.cxx @@ -18,7 +18,7 @@ PURPOSE: Apply necessary finalising operation to CaloCellContainer #include "GaudiKernel/Service.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include "StoreGate/StoreGateSvc.h" diff --git a/Calorimeter/CaloRec/src/CaloTopoTowerAlgorithm.cxx b/Calorimeter/CaloRec/src/CaloTopoTowerAlgorithm.cxx index 244221bcc8582963c4c08e8bdd7b988408d61695..ee3957648a4a0508d4eda2f983f0c43c45565131 100644 --- a/Calorimeter/CaloRec/src/CaloTopoTowerAlgorithm.cxx +++ b/Calorimeter/CaloRec/src/CaloTopoTowerAlgorithm.cxx @@ -3,7 +3,7 @@ */ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Algorithm.h" #include "GaudiKernel/ListItem.h" #include "GaudiKernel/IToolSvc.h" diff --git a/Calorimeter/CaloRec/src/CaloTowerAlgorithm.cxx b/Calorimeter/CaloRec/src/CaloTowerAlgorithm.cxx index 0ba432ed5354fe4d4b6425f7e1fd8b6cb070103f..e3b9394e36c1aed844e5efb4a7a1b4c0185ffe3b 100644 --- a/Calorimeter/CaloRec/src/CaloTowerAlgorithm.cxx +++ b/Calorimeter/CaloRec/src/CaloTowerAlgorithm.cxx @@ -3,7 +3,7 @@ */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include "GaudiKernel/IToolSvc.h" diff --git a/Calorimeter/CaloRec/src/ToolWithConstantsMixin.cxx b/Calorimeter/CaloRec/src/ToolWithConstantsMixin.cxx index c51928e24c04f953b90ef4f3f43a63c693c9e4c9..f1417885688cb729544a86b5706f1cd75da49bd7 100755 --- a/Calorimeter/CaloRec/src/ToolWithConstantsMixin.cxx +++ b/Calorimeter/CaloRec/src/ToolWithConstantsMixin.cxx @@ -374,7 +374,7 @@ ToolWithConstantsMixin::setProperty (const std::string& propname, * This version is used by Gaudi as of v19. */ StatusCode -ToolWithConstantsMixin::setProperty (const Property& p) +ToolWithConstantsMixin::setProperty (const Gaudi::Details::PropertyBase& p) { return CaloRec::ToolWithConstantsMixin::setProperty (p.name(), p.toString()); } diff --git a/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceBuilder.cxx b/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceBuilder.cxx index 587a211e719c4fda85951d1f22766d64e80da892..4a995f818392659e1529246b94bcfa8df7e09d7c 100755 --- a/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceBuilder.cxx +++ b/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceBuilder.cxx @@ -10,7 +10,7 @@ #include "GaudiKernel/Bootstrap.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IService.h" #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ISvcLocator.h" diff --git a/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceHelper.cxx b/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceHelper.cxx index fc31c387ea4fd6b4079c2eebab858a26b4424fb4..7d4ae6c7430f2be52c768ad3c0f84d81d916f7f6 100755 --- a/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceHelper.cxx +++ b/Calorimeter/CaloTrackingGeometry/src/CaloSurfaceHelper.cxx @@ -10,7 +10,7 @@ #include "GaudiKernel/Bootstrap.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IService.h" #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ISvcLocator.h" diff --git a/Calorimeter/CaloTriggerTool/src/CaloTriggerTowerService.cxx b/Calorimeter/CaloTriggerTool/src/CaloTriggerTowerService.cxx index 5d5d2ad779051b530d6bc697c91cc1e8429c53a1..2303f481704e4d48067651be1336fdcfc7c43400 100644 --- a/Calorimeter/CaloTriggerTool/src/CaloTriggerTowerService.cxx +++ b/Calorimeter/CaloTriggerTool/src/CaloTriggerTowerService.cxx @@ -8,7 +8,7 @@ #include <fstream> #include <iostream> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "LArIdentifier/LArIdManager.h" #include "LArIdentifier/LArOnlineID.h" #include "LArIdentifier/LArOnlID_Exception.h" diff --git a/Calorimeter/CaloUtils/CaloUtils/ToolWithConstants.h b/Calorimeter/CaloUtils/CaloUtils/ToolWithConstants.h index ab861b18228f18e13baf567f6839a991d4f6fead..5e1fc1f9a48bb5e4f0544ee4a08530604c1403a6 100644 --- a/Calorimeter/CaloUtils/CaloUtils/ToolWithConstants.h +++ b/Calorimeter/CaloUtils/CaloUtils/ToolWithConstants.h @@ -26,7 +26,7 @@ #include "StoreGate/ReadCondHandle.h" #include "AthenaKernel/errorcheck.h" #include "CxxUtils/concepts.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include <sstream> #include <type_traits> diff --git a/Calorimeter/CaloUtils/share/ToolWithConstants_test.ref b/Calorimeter/CaloUtils/share/ToolWithConstants_test.ref index 7e2e703b76ab4bf85884fb9a5da9af9ebba2b0c1..79eed8eb4cc51b59a4bfede411daae9f7dbeff04 100644 --- a/Calorimeter/CaloUtils/share/ToolWithConstants_test.ref +++ b/Calorimeter/CaloUtils/share/ToolWithConstants_test.ref @@ -31,7 +31,6 @@ ApplicationMgr SUCCESS AthSequencer/AthEndSeq ApplicationMgr SUCCESS AthIncFirerAlg/EndIncFiringAlg ApplicationMgr SUCCESS IncidentProcAlg/IncidentProcAlg2 ApplicationMgr SUCCESS AthSequencer/AthOutSeq -ApplicationMgr SUCCESS AthSequencer/AthRegSeq ApplicationMgr SUCCESS ****************************************************************************** ApplicationMgr INFO Application Manager Started successfully EventPersistenc... INFO Added successfully Conversion service:McCnvSvc diff --git a/Calorimeter/CaloUtils/src/CaloTopoTowerBuilderTool.cxx b/Calorimeter/CaloUtils/src/CaloTopoTowerBuilderTool.cxx index 399f602cf0e9f1a0bf78d55518e6ebe5574db0e4..2457a0a5dc91ee5855f65538d1a5d59651127edc 100644 --- a/Calorimeter/CaloUtils/src/CaloTopoTowerBuilderTool.cxx +++ b/Calorimeter/CaloUtils/src/CaloTopoTowerBuilderTool.cxx @@ -7,7 +7,7 @@ #include "GaudiKernel/AlgTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Service.h" #include "GaudiKernel/IToolSvc.h" //#include "GaudiKernel/IChronoStatSvc.h" diff --git a/Calorimeter/CaloUtils/src/CaloTowerBuilderTool.cxx b/Calorimeter/CaloUtils/src/CaloTowerBuilderTool.cxx index 250bcb88c704646ceefccd1eea0c6db4f5483c11..1da262c46bc859d4dacc96a7024ba4e88ca3b6f1 100644 --- a/Calorimeter/CaloUtils/src/CaloTowerBuilderTool.cxx +++ b/Calorimeter/CaloUtils/src/CaloTowerBuilderTool.cxx @@ -6,7 +6,7 @@ #include "CLHEP/Units/SystemOfUnits.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Service.h" #include "GaudiKernel/IToolSvc.h" //#include "GaudiKernel/IChronoStatSvc.h" diff --git a/Commission/CommissionRec/src/ComTimeRec.cxx b/Commission/CommissionRec/src/ComTimeRec.cxx index 0d24ad3a1de03763d8bf02e932d2c4d6c4e32cd1..7d3d63ee31233d69251c61982775b9e214dfce42 100755 --- a/Commission/CommissionRec/src/ComTimeRec.cxx +++ b/Commission/CommissionRec/src/ComTimeRec.cxx @@ -6,7 +6,7 @@ #include "CLHEP/Units/SystemOfUnits.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CommissionEvent/ComTime.h" diff --git a/Control/AthAnalysisBaseComps/AthAnalysisBaseComps/AthAnalysisAlgorithm.h b/Control/AthAnalysisBaseComps/AthAnalysisBaseComps/AthAnalysisAlgorithm.h index a96d7cd6d865d4773cbcd817b373b440c2f7f444..452a448e25c4e715f05625e30dd492431cd9ced9 100644 --- a/Control/AthAnalysisBaseComps/AthAnalysisBaseComps/AthAnalysisAlgorithm.h +++ b/Control/AthAnalysisBaseComps/AthAnalysisBaseComps/AthAnalysisAlgorithm.h @@ -58,7 +58,7 @@ public: virtual StatusCode sysExecute(const EventContext&) override; protected: - void updateEvtStore(Property& prop); + void updateEvtStore(Gaudi::Details::PropertyBase& prop); /// Function called when first execute is encountered /// user can read event information with evtStore() diff --git a/Control/AthAnalysisBaseComps/src/AthAnalysisAlgorithm.cxx b/Control/AthAnalysisBaseComps/src/AthAnalysisAlgorithm.cxx index 5a3a154d2b7fdb034cb0e0758c7b68277d73187f..efa1033ec7bb7a116daf1c49551787edf80cac67 100644 --- a/Control/AthAnalysisBaseComps/src/AthAnalysisAlgorithm.cxx +++ b/Control/AthAnalysisBaseComps/src/AthAnalysisAlgorithm.cxx @@ -42,7 +42,7 @@ AthAnalysisAlgorithm::AthAnalysisAlgorithm( const std::string& name AthAnalysisAlgorithm::~AthAnalysisAlgorithm() { } -void AthAnalysisAlgorithm::updateEvtStore(Property& prop) { +void AthAnalysisAlgorithm::updateEvtStore(Gaudi::Details::PropertyBase& prop) { evtStore().release().ignore(); evtStore().setTypeAndName(prop.toString()); } diff --git a/Control/AthCUDA/AthCUDAServices/src/KernelRunnerSvc.h b/Control/AthCUDA/AthCUDAServices/src/KernelRunnerSvc.h index 77e421fca780249e5ff393c1353ce0acd123e3f2..a08d2d3261f0485f5d7a8ad8d5fdbcddc1c10b39 100644 --- a/Control/AthCUDA/AthCUDAServices/src/KernelRunnerSvc.h +++ b/Control/AthCUDA/AthCUDAServices/src/KernelRunnerSvc.h @@ -14,7 +14,7 @@ // Framework include(s). #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthService.h" // System include(s). diff --git a/Control/AthCUDA/AthCUDAServices/src/StreamPoolSvc.h b/Control/AthCUDA/AthCUDAServices/src/StreamPoolSvc.h index a2cc443540ac259e8b1d82265509b29cc40c9fda..eaf07b97737573ca5ced176a5cfbe742b7bc22d1 100644 --- a/Control/AthCUDA/AthCUDAServices/src/StreamPoolSvc.h +++ b/Control/AthCUDA/AthCUDAServices/src/StreamPoolSvc.h @@ -12,7 +12,7 @@ #include "AthCUDAInterfaces/IStreamPoolSvc.h" // Framework include(s). -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthService.h" // System include(s). diff --git a/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandle.h b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandle.h new file mode 100644 index 0000000000000000000000000000000000000000..c9eca0dcfd6881c73cf1282f28be09290bbf74c8 --- /dev/null +++ b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandle.h @@ -0,0 +1,678 @@ +// This file's extension implies that it's C, but it's really -*- C++ -*-. + +/* + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +*/ + +/** + * @file AsgDataHandles/WriteHandle.h + * @author Nils Krumnack <Nils.Erik.Krumnack@cern.h> + * @author S. Binet, P. Calafiura, scott snyder <snyder@bnl.gov> (for original version) + * @brief Handle class for recording to StoreGate. + */ + + +#ifndef ASG_DATA_HANDLES_WRITE_HANDLE_H +#define ASG_DATA_HANDLES_WRITE_HANDLE_H + +#ifndef XAOD_STANDALONE +#include <StoreGate/WriteHandle.h> +#else + +#include "AsgDataHandles/VarHandleBase.h" +#include "AsgDataHandles/WriteHandleKey.h" +#include <string> +#include <memory> /*unique_ptr*/ + + +namespace SG { + + +/** + * @class SG::WriteHandle<T> + * + * See StoreGate/WriteHandle for details. + * + * This currently (07 Aug 20) contains a number of commented out + * members that were part of the original handle implementation, but + * have not yet been implemented in the standalone version. The plan + * is to either implement or remove them, depending on what is needed + * in AnalysisBase as we add more packages. + * + */ +template <class T> +class WriteHandle + : public SG::VarHandleBase +{ +public: + typedef T* pointer_type; // FIXME: better handling of + typedef const T* const_pointer_type; // qualified T type ? + typedef T& reference_type; + typedef const T& const_reference_type; + + + //************************************************************************ + // Constructors, etc. + // + + + // /** + // * @brief Default constructor. + // * + // * The handle will not be usable until a non-blank key is assigned. + // */ + // WriteHandle(); + + + // /** + // * @brief Constructor with full arguments. + // * @param sgkey StoreGate key of the referenced object. + // * @param storename Name of the referenced event store. + // */ + // explicit WriteHandle(const std::string& sgkey, + // const std::string& storename = StoreID::storeName(StoreID::EVENT_STORE)); + + + /** + * @brief Constructor from a WriteHandleKey. + * @param key The key object holding the clid/key/store. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + */ + explicit WriteHandle (const WriteHandleKey<T>& key); + + + /** + * @brief Constructor from a WriteHandleKey and an explicit event context. + * @param key The key object holding the clid/key. + * @param ctx The event context. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + * + * If the default event store has been requested, then the thread-specific + * store from the event context will be used. + */ + explicit WriteHandle (const WriteHandleKey<T>& key, const EventContext& ctx); + + + /** + * @brief Copy constructor. + */ + WriteHandle( const WriteHandle& rhs ); + + + /** + * @brief Move constructor. + */ + WriteHandle( WriteHandle&& rhs ); + + + /** + * @brief Assignment operator. + */ + WriteHandle& operator=( const WriteHandle& rhs ); + + + /** + * @brief Move operator. + */ + WriteHandle& operator=( WriteHandle&& rhs ); + + + /** + * @brief Destructor. + * + * Lock an aux object if m_lockAuxPending is set. + */ + ~WriteHandle(); + + + //************************************************************************ + // Deference. These all return only the cached pointer. + // + + + // /** + // * @brief Dereference the pointer. + // * Returns the cached pointer. Throws ExcNullWriteHandle if null. + // */ + // pointer_type operator->(); + + + // /** + // * @brief Dereference the pointer. + // * Returns the cached pointer. Throws ExcNullWriteHandle if null. + // */ + // reference_type operator*(); + + + // /** + // * @brief Dereference the pointer. + // * Returns the cached pointer. + // */ + // const_pointer_type cptr() const; + + + // /** + // * @brief Dereference the pointer. + // * Returns the cached pointer. + // */ + // pointer_type ptr(); + + + // /** + // * @brief Return the cached pointer directly; no lookup. + // */ + // pointer_type cachedPtr(); + + + // /** + // * @brief Can the handle be successfully dereferenced? + // */ + // virtual bool isValid() override final; + + + //************************************************************************ + // Record. + // + + + // /** + // * @brief Record a const object to the store. + // * @param data The object to record. + // */ + // StatusCode record (std::unique_ptr<T> data); + + + // /** + // * @brief Record a non-const object to the store. + // * @param data The object to record. + // */ + // StatusCode recordNonConst (std::unique_ptr<T> data); + + + /** + * @brief Record a const object and its auxiliary store to the store. + * @param data The object to record. + * @param auxstore Auxiliary store object. + */ + template <class AUXSTORE> + StatusCode record (std::unique_ptr<T> data, + std::unique_ptr<AUXSTORE> store); + + + // /** + // * @brief Record a non-const object and its auxiliary store to the store. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // */ + // template <class AUXSTORE> + // StatusCode recordNonConst (std::unique_ptr<T> data, + // std::unique_ptr<AUXSTORE> store); + + + // /** + // * @brief Record a const shared DataObject to the store. + // * @param data The object to record. + // * + // * The event store takes shared ownership of the object. + // */ + // StatusCode record (SG::DataObjectSharedPtr<T> data); + + + // /** + // * @brief Record a non-const shared DataObject to the store. + // * @param data The object to record. + // * + // * The event store takes shared ownership of the object. + // */ + // StatusCode recordNonConst (SG::DataObjectSharedPtr<T> data); + + + // /** + // * @brief Record an object to the store. + // * @param data The object to record. + // * @param returnExisting Allow an existing object? + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // const_pointer_type put (std::unique_ptr<T> data, + // bool returnExisting = false) const; + + + // /** + // * @brief Record an object to the store. + // * @param data The object to record. + // * @param returnExisting Allow an existing object? + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // const_pointer_type put (std::unique_ptr<const T> data, + // bool returnExisting = false) const; + + + // /** + // * @brief Record an object to the store. + // * @param data The object to record. + // * @param returnExisting Allow an existing object? + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // const_pointer_type put (std::unique_ptr<const ConstDataVector<T> > data, + // bool returnExisting = false) const; + + + // /** + // * @brief Record an object to the store. + // * @param ctx The event context to use. + // * @param data The object to record. + // * @param returnExisting Allow an existing object? + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // const_pointer_type put (const EventContext& ctx, + // std::unique_ptr<const ConstDataVector<T> > data, + // bool returnExisting = false) const; + + + // /** + // * @brief Record an object to the store. + // * @param ctx The event context to use. + // * @param data The object to record. + // * @param returnExisting Allow an existing object? + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // const_pointer_type put (const EventContext& ctx, + // std::unique_ptr<T> data, + // bool returnExisting = false) const; + + + // /** + // * @brief Record an object to the store. + // * @param ctx The event context to use. + // * @param data The object to record. + // * @param returnExisting Allow an existing object? + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // const_pointer_type put (const EventContext& ctx, + // std::unique_ptr<const T> data, + // bool returnExisting = false) const; + + + // /** + // * @brief Record an object to the store. + // * @param data The object to record. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * + // * The event store takes shared ownership of the object. + // */ + // const_pointer_type put (SG::DataObjectSharedPtr<T> data) const; + + + // /** + // * @brief Record an object to the store. + // * @param ctx The event context to use. + // * @param data The object to record. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * + // * The event store takes shared ownership of the object. + // */ + // const_pointer_type put (const EventContext& ctx, + // SG::DataObjectSharedPtr<T> data) const; + + + // /** + // * @brief Record an object and its auxiliary store to the store. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, and the objects passed in are destroyed. + // */ + // template <class AUXSTORE> + // const_pointer_type + // put (std::unique_ptr<T> data, + // std::unique_ptr<AUXSTORE> auxstore) const; + + + // /** + // * @brief Record an object and its auxiliary store to the store. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, and the objects passed in are destroyed. + // * + // * Unlike the version taking unique_ptr<T>, this does not alter the + // * store pointer of @c data. + // */ + // template <class AUXSTORE> + // const_pointer_type + // put (std::unique_ptr<const T> data, + // std::unique_ptr<const AUXSTORE> auxstore) const; + + + // /** + // * @brief Record an object and its auxiliary store to the store. + // * @param ctx The event context to use. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, and the objects passed in are destroyed. + // */ + // template <class AUXSTORE> + // const_pointer_type + // put (const EventContext& ctx, + // std::unique_ptr<T> data, + // std::unique_ptr<AUXSTORE> auxstore) const; + + + // /** + // * @brief Record an object and its auxiliary store to the store. + // * @param ctx The event context to use. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, and the objects passed in are destroyed. + // * + // * Unlike the version taking unique_ptr<T>, this does not alter the + // * store pointer of @c data. + // */ + // template <class AUXSTORE> + // const_pointer_type + // put (const EventContext& ctx, + // std::unique_ptr<const T> data, + // std::unique_ptr<const AUXSTORE> auxstore) const; + + + /** + * @brief Alternate notation for record. Records a non-const object. + * @param data Object to record. + * + * Throws an exception on failure. + */ + WriteHandle& operator=( std::unique_ptr<T> data ); + + + // /** + // * @brief Make an alias. + // * @param key Alternate key by which the referenced object should be known. + // * + // * The current handle should be valid and referencing an object + // * (i.e., @c record should have been called on it). + // * + // * The object will also be known by the name given in @c key. + // */ + // StatusCode alias (const WriteHandleKey<T>& key); + + + // /** + // * @brief Make an explicit link. + // * @param key Alternate clid by which the referenced object + // * should be known. The SG key must match the key of the + // * current handle. + // * + // * You should generally not be using this! + // * + // * The current handle should be valid and referencing an object + // * (i.e., @c record should have been called on it). + // * + // * This makes a symlink: the object will be retrievable + // * as a different type. + // * + // * Note that if @c T and @c @U are related via @c SG_BASE and/or + // * @c DATAVECTOR_BASE, then you shouldn't need to explicitly make a symlink; + // * that should happen automatically. + // * + // * If a @c U* is not convertable to a @c T* via C++ rules, then you likely + // * will be, at best, relying on undefined behavior. You will probably + // * get warnings from the undefined behavior sanitizer when if you try + // * to dereference the @c U*. + // * + // * This usage is here mainly to assist in migrating some existing + // * patterns to MT. You should think several times before using + // * in new code. + // */ + // template <class U> + // StatusCode symLink (const WriteHandleKey<U>& key); + + +private: + // /** + // * @brief Return the cached pointer directly. + // * + // * If it is null, throw ExcNullWriteHandle. + // */ + // pointer_type checkedCachedPtr(); + + + // /** + // * @brief Helper for record. + // * @param data The object to record. + // * @param isConst If true, record the object as const. + // * @param returnExisting Allow an existing object. + // */ + // template <class U> + // StatusCode doRecord (U data, + // bool isConst, + // bool returnExisting); + + + // /** + // * @brief Helper for put. + // * @param ctx The event context, or nullptr to use the current context. + // * @param data The object to record. + // * @param returnExisting Allow an existing object. + // * @param[out] store The store being used. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, unless @c returnExisting is true, in which case + // * return success. In either case, @c data is destroyed. + // */ + // template <class U> + // const_pointer_type doPut (const EventContext* ctx, + // U data, + // bool returnExisting, + // IProxyDict* & store) const; + + + // /** + // * @brief Helper for recording an object and its auxiliary store to the store. + // * @param ctx The event context, or nullptr to use the current context. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, and the objects passed in are destroyed. + // */ + // template <class AUXSTORE> + // typename WriteHandle<T>::const_pointer_type + // doPut (const EventContext* ctx, + // std::unique_ptr<T> data, + // std::unique_ptr<AUXSTORE> auxstore) const; + + + // /** + // * @brief Helper for recording an object and its auxiliary store to the store. + // * @param ctx The event context, or nullptr to use the current context. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * + // * Unlike record(), this does not change the handle object. + // * That means that one will not be able to get the object back + // * by dereferencing the handle. + // * Returns the object placed in the store, or nullptr if there + // * was an error. + // * If there was already an object in the store with the given key, + // * then return null, and the objects passed in are destroyed. + // */ + // template <class AUXSTORE> + // typename WriteHandle<T>::const_pointer_type + // doPut (const EventContext* ctx, + // std::unique_ptr<const T> data, + // std::unique_ptr<const AUXSTORE> auxstore) const; + + + // /** + // * @brief Record an object and its auxiliary store to the store. + // * @param data The object to record. + // * @param auxstore Auxiliary store object. + // * @param isConst If true, record the objects as const. + // */ + // template <class AUXSTORE> + // StatusCode + // record (std::unique_ptr<T> data, + // std::unique_ptr<AUXSTORE> auxstore, + // bool isConst); + + +private: + // /// If non-null, then we need to lock the associated aux store object + // /// when we're deleted. + // /// + // /// This is set when we record an object along with the associated aux const + // /// with the const flag set (the default). Recall that for a const record, + // /// we want to support the semantics that you can get a non-const pointer + // /// back from the handle as long as it exists, to finish initialization + // /// of the object. For an aux store, though, just getting back a non-const + // /// pointer is not sufficient, since the store will have been locked + // /// at the time of the record, preventing changes to the store. + // /// + // /// So if we're meant to record a const aux store object, we don't actually + // /// set it const on the record, but instead set this and do the + // /// setConst in the destructor. + // SG::DataProxy* m_lockAuxPending = nullptr; +}; + + +/** + * @brief Return a @c WriteHandle referencing @c key. + * @param key The key object holding the clid/key/store. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + */ +template <class T> +WriteHandle<T> makeHandle (const WriteHandleKey<T>& key); + + +/** + * @brief Return a @c WriteHandle referencing @c key for an explicit context. + * @param key The key object holding the clid/key/store. + * @param ctx The event context. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + * + * If the default event store has been requested, then the thread-specific + * store from the event context will be used. + */ +template <class T> +WriteHandle<T> makeHandle (const WriteHandleKey<T>& key, + const EventContext& ctx); + + +} /* namespace SG */ + + +#include "AsgDataHandles/WriteHandle.icc" + + +// #ifndef NO_LEGACY_HANDLES +// namespace SG { +// template <class T> +// using WVar = WriteHandle<T>; +// } +// #endif + +#endif + +#endif diff --git a/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandle.icc b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandle.icc new file mode 100644 index 0000000000000000000000000000000000000000..a4df5df2e34646e81522ffc8d1de6d0d4c139b74 --- /dev/null +++ b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandle.icc @@ -0,0 +1,980 @@ +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +/** + * @file AsgDataHandles/WriteHandle.icc + * @author Nils Krumnack <Nils.Erik.Krumnack@cern.h> + * @author S. Binet, P. Calafiura, scott snyder <snyder@bnl.gov> (for original version) + * @brief Handle class for recording to StoreGate. + */ + +#include "xAODRootAccess/TActiveStore.h" +#include "xAODRootAccess/TStore.h" +#include <stdexcept> + + +namespace SG { + + +//************************************************************************ +// Constructors, etc. +// + + +// /** +// * @brief Default constructor. +// * +// * The handle will not be usable until a non-blank key is assigned. +// */ +// template <class T> +// inline +// WriteHandle<T>::WriteHandle() +// : VarHandleBase(ClassID_traits<T>::ID(), Gaudi::DataHandle::Writer) +// { +// } + + +// /** +// * @brief Constructor with full arguments. +// * @param sgkey StoreGate key of the referenced object. +// * @param storename Name of the referenced event store. +// */ +// template <class T> +// inline +// WriteHandle<T>::WriteHandle (const std::string& sgkey, +// const std::string& storename /* ="StoreGateSvc"*/) +// : VarHandleBase (ClassID_traits<T>::ID(), sgkey, +// Gaudi::DataHandle::Writer, storename) +// { +// } + + +/** + * @brief Constructor from a WriteHandleKey. + * @param key The key object holding the clid/key/store. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + */ +template <class T> +inline +WriteHandle<T>::WriteHandle (const WriteHandleKey<T>& key) + : VarHandleBase (key, nullptr) +{ +} + + +/** + * @brief Constructor from a WriteHandleKey and an explicit event context. + * @param key The key object holding the clid/key. + * @param ctx The event context. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + * + * If the default event store has been requested, then the thread-specific + * store from the event context will be used. + */ +template <class T> +inline +WriteHandle<T>::WriteHandle (const WriteHandleKey<T>& key, + const EventContext& ctx) + : VarHandleBase (key, &ctx) +{ +} + + +/** + * @brief Copy constructor. + */ +template <class T> +inline +WriteHandle<T>::WriteHandle(const WriteHandle& h) + : VarHandleBase(h) +{ +} + + +/** + * @brief Move constructor. + */ +template <class T> +WriteHandle<T>::WriteHandle(WriteHandle&& h) + : VarHandleBase(std::move(h)) +{ + // m_lockAuxPending = h.m_lockAuxPending; + // h.m_lockAuxPending = nullptr; +} + + +/** + * @brief Assignment operator. + */ +template <class T> +inline +WriteHandle<T>& +WriteHandle<T>::operator= (const WriteHandle& h) +{ + if (this != &h) + this->VarHandleBase::operator=(h); + return *this; +} + + +/** + * @brief Move operator. + */ +template <class T> +inline +WriteHandle<T>& +WriteHandle<T>::operator= (WriteHandle&& h) +{ + if (this != &h) { + this->VarHandleBase::operator=(std::move(h)); + // m_lockAuxPending = h.m_lockAuxPending; + // h.m_lockAuxPending = nullptr; + } + return *this; +} + + +/** + * @brief Destructor. + * + * Lock an aux object if m_lockAuxPending is true. + */ +template <class T> +WriteHandle<T>::~WriteHandle() +{ + // if (m_lockAuxPending) { + // m_lockAuxPending->setConst(); + // } +} + + +//************************************************************************ +// Deference. These all return only the cached pointer. +// + + +// /** +// * @brief Dereference the pointer. +// * Returns the cached pointer. Throws ExcNullWriteHandle if null. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::pointer_type +// WriteHandle<T>::operator->() +// { +// return WriteHandle<T>::checkedCachedPtr(); +// } + + +// /** +// * @brief Dereference the pointer. +// * Returns the cached pointer. Throws ExcNullWriteHandle if null. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::reference_type +// WriteHandle<T>::operator*() +// { +// return *WriteHandle<T>::checkedCachedPtr(); +// } + + +// /** +// * @brief Dereference the pointer. +// * Returns the cached pointer. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::cptr() const +// { +// return reinterpret_cast<pointer_type>(this->m_ptr); +// } + + +// /** +// * @brief Dereference the pointer. +// * Returns the cached pointer. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::pointer_type +// WriteHandle<T>::ptr() +// { +// return cachedPtr(); +// } + + +// /** +// * @brief Return the cached pointer directly; no lookup. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::pointer_type +// WriteHandle<T>::cachedPtr() +// { +// return reinterpret_cast<pointer_type>(this->m_ptr); +// } + + +// /** +// * @brief Can the handle be successfully dereferenced? +// */ +// template <class T> +// inline +// bool WriteHandle<T>::isValid() +// { +// return this->m_ptr != nullptr; +// } + + +//************************************************************************ +// Record. + + +// /** +// * @brief Record a const object to the store. +// * @param data The object to record. +// */ +// template <class T> +// inline +// StatusCode +// WriteHandle<T>::WriteHandle::record (std::unique_ptr<T> data) +// { +// return this->doRecord (std::move(data), true, false); +// } + + +// /** +// * @brief Record a non-const object to the store. +// * @param data The object to record. +// * @param isConst If true, record the object as const. +// */ +// template <class T> +// inline +// StatusCode +// WriteHandle<T>::WriteHandle::recordNonConst (std::unique_ptr<T> data) +// { +// return this->doRecord (std::move(data), false, false); +// } + + +/** + * @brief Record a const object and its auxiliary store to the store. + * @param data The object to record. + * @param auxstore Auxiliary store object. + */ +template <class T> +template <class AUXSTORE> +inline +StatusCode +WriteHandle<T>::WriteHandle::record (std::unique_ptr<T> data, + std::unique_ptr<AUXSTORE> auxstore) +{ + if (xAOD::TActiveStore::store()->record (std::move (auxstore), key() + "Aux.").isFailure()) + return StatusCode::FAILURE; + if (xAOD::TActiveStore::store()->record (std::move (data), key()).isFailure()) + return StatusCode::FAILURE; + return StatusCode::SUCCESS; +} + + +// /** +// * @brief Record a non-const object and its auxiliary store to the store. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// */ +// template <class T> +// template <class AUXSTORE> +// inline +// StatusCode +// WriteHandle<T>::WriteHandle::recordNonConst (std::unique_ptr<T> data, +// std::unique_ptr<AUXSTORE> auxstore) +// { +// return record (std::move(data), std::move(auxstore), false); +// } + + +// /** +// * @brief Record a const shared DataObject to the store. +// * @param data The object to record. +// * +// * The event store takes shared ownership of the object. +// */ +// template <class T> +// inline +// StatusCode +// WriteHandle<T>::record (SG::DataObjectSharedPtr<T> data) +// { +// return this->doRecord (std::move(data), true, false); +// } + + +// /** +// * @brief Record a non-const shared DataObject to the store. +// * @param data The object to record. +// * +// * The event store takes shared ownership of the object. +// */ +// template <class T> +// inline +// StatusCode +// WriteHandle<T>::recordNonConst (SG::DataObjectSharedPtr<T> data) +// { +// return this->doRecord (std::move(data), false, false); +// } + + +// /** +// * @brief Record an object to the store. +// * @param data The object to record. +// * @param returnExisting Allow an existing object? +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (std::unique_ptr<T> data, +// bool returnExisting /*= false*/) const +// { +// IProxyDict* store = nullptr; +// return doPut (nullptr, std::move(data), returnExisting, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param data The object to record. +// * @param returnExisting Allow an existing object? +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (std::unique_ptr<const T> data, +// bool returnExisting /*= false*/) const +// { +// IProxyDict* store = nullptr; +// return doPut (nullptr, std::move(data), returnExisting, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param data The object to record. +// * @param returnExisting Allow an existing object? +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (std::unique_ptr<const ConstDataVector<T> > data, +// bool returnExisting /*= false*/) const +// { +// IProxyDict* store = nullptr; +// std::unique_ptr<const T> coll (data.release()->asDataVector()); +// return doPut (nullptr, std::move(coll), returnExisting, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param ctx The event context to use. +// * @param data The object to record. +// * @param returnExisting Allow an existing object? +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (const EventContext& ctx, +// std::unique_ptr<const ConstDataVector<T> > data, +// bool returnExisting /*= false*/) const +// { +// IProxyDict* store = nullptr; +// std::unique_ptr<const T> coll (data.release()->asDataVector()); +// return doPut (&ctx, std::move(coll), returnExisting, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param ctx The event context to use. +// * @param data The object to record. +// * @param returnExisting Allow an existing object? +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (const EventContext& ctx, +// std::unique_ptr<T> data, +// bool returnExisting /*= false*/) const +// { +// IProxyDict* store = nullptr; +// return doPut (&ctx, std::move(data), returnExisting, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param ctx The event context to use. +// * @param data The object to record. +// * @param returnExisting Allow an existing object? +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (const EventContext& ctx, +// std::unique_ptr<const T> data, +// bool returnExisting /*= false*/) const +// { +// IProxyDict* store = nullptr; +// return doPut (&ctx, std::move(data), returnExisting, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param data The object to record. +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * +// * The event store takes shared ownership of the object. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (SG::DataObjectSharedPtr<T> data) const +// { +// IProxyDict* store = nullptr; +// return doPut (nullptr, std::move(data), false, store); +// } + + +// /** +// * @brief Record an object to the store. +// * @param ctx The event context to use. +// * @param data The object to record. +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * +// * The event store takes shared ownership of the object. +// */ +// template <class T> +// inline +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (const EventContext& ctx, +// SG::DataObjectSharedPtr<T> data) const +// { +// IProxyDict* store = nullptr; +// return doPut (&ctx, std::move(data), false, store); +// } + + +// /** +// * @brief Record an object and its auxiliary store to the store. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, and the objects passed in are destroyed. +// */ +// template <class T> +// template <class AUXSTORE> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (std::unique_ptr<T> data, +// std::unique_ptr<AUXSTORE> auxstore) const +// { +// return doPut (nullptr, std::move(data), std::move(auxstore)); +// } + + + +// /** +// * @brief Record an object and its auxiliary store to the store. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, and the objects passed in are destroyed. +// * +// * Unlike the version taking unique_ptr<T>, this does not alter the +// * store pointer of @c data. +// */ +// template <class T> +// template <class AUXSTORE> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (std::unique_ptr<const T> data, +// std::unique_ptr<const AUXSTORE> auxstore) const +// { +// return doPut (nullptr, std::move(data), std::move(auxstore)); +// } + + +// /** +// * @brief Record an object and its auxiliary store to the store. +// * @param ctx The event context to use. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, and the objects passed in are destroyed. +// */ +// template <class T> +// template <class AUXSTORE> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (const EventContext& ctx, +// std::unique_ptr<T> data, +// std::unique_ptr<AUXSTORE> auxstore) const +// { +// return doPut (&ctx, std::move(data), std::move(auxstore)); +// } + + +// /** +// * @brief Record an object and its auxiliary store to the store. +// * @param ctx The event context to use. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * +// * Unlike record(), this does not change the handle object. +// * That means that one will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, and the objects passed in are destroyed. +// * +// * Unlike the version taking unique_ptr<T>, this does not alter the +// * store pointer of @c data. +// */ +// template <class T> +// template <class AUXSTORE> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::put (const EventContext& ctx, +// std::unique_ptr<const T> data, +// std::unique_ptr<const AUXSTORE> auxstore) const +// { +// return doPut (&ctx, std::move(data), std::move(auxstore)); +// } + + +/** + * @brief Alternate notation for record. Records a non-const object. + * @param data Object to record. + * + * Throws an exception on failure. + */ +template <class T> +WriteHandle<T>& +WriteHandle<T>::operator= (std::unique_ptr<T> data) +{ + if (recordNonConst (std::move(data)).isFailure()) { + throw std::runtime_error ("WriteHandle<T>::operator=(unique_ptr) Record failed."); + } + return *this; +} + + +// /** +// * @brief Make an alias. +// * @param key Alternate key by which the referenced object should be known. +// * +// * The current handle should be valid and referencing an object +// * (i.e., @c record should have been called on it). +// * +// * The object will also be known by the name given in @c key. +// */ +// template <class T> +// StatusCode WriteHandle<T>::alias (const WriteHandleKey<T>& key) +// { +// return symLink_impl (this->clid(), key.key()); +// } + + +// /** +// * @brief Make an explicit link. +// * @param key Alternate clid by which the referenced object +// * should be known. The SG key must match the key of the +// * current handle. +// * +// * You should generally not be using this! +// * +// * The current handle should be valid and referencing an object +// * (i.e., @c record should have been called on it). +// * +// * This makes a symlink: the object will be retrievable +// * as a different type. +// * +// * Note that if @c T and @c @U are related via @c SG_BASE and/or +// * @c DATAVECTOR_BASE, then you shouldn't need to explicitly make a symlink; +// * that should happen automatically. +// * +// * If a @c U* is not convertable to a @c T* via C++ rules, then you likely +// * will be, at best, relying on undefined behavior. You will probably +// * get warnings from the undefined behavior sanitizer when if you try +// * to dereference the @c U*. +// * +// * This usage is here mainly to assist in migrating some existing +// * patterns to MT. You should think several times before using +// * in new code. +// */ +// template <class T> +// template <class U> +// StatusCode WriteHandle<T>::symLink (const WriteHandleKey<U>& other) +// { +// if (this->key() != other.key()) { +// REPORT_ERROR (StatusCode::FAILURE) +// << "symLink: SG keys do not match: " << other.key() << " vs " +// << this->key(); +// return StatusCode::FAILURE; +// } +// return symLink_impl (other.clid(), other.key()); +// } + + +// /** +// * @brief Return the cached pointer directly. +// * +// * If it is null, throw ExcNullWriteHandle. +// */ +// template <class T> +// typename WriteHandle<T>::pointer_type +// WriteHandle<T>::checkedCachedPtr() +// { +// if (!m_ptr) +// throwExcNullWriteHandle (clid(), key(), store()); +// return cachedPtr(); +// } + + +// /** +// * @brief Helper for record. +// * @param data The object to record. +// * @param isConst If true, record the object as const. +// * @param returnExisting Allow an existing object. +// */ +// template <class T> +// template <class U> +// StatusCode WriteHandle<T>::doRecord (U data, +// bool isConst, +// bool returnExisting) +// { +// typedef typename U::element_type elt_t; + +// // make sure the BaseInfo(Base) structure is initialized +// SG::BaseInfo<elt_t>::baseinfo(); + +// // If s_isConst is set for this type, then we want to automatically +// // make it const when recorded. +// bool allowMods = !isConst; +// if (ClassID_traits<elt_t>::s_isConst) +// allowMods = false; + +// void* dataPtr(data.get()); +// std::unique_ptr<DataObject> dobj (SG::asStorable (std::move (data))); +// return this->record_impl (std::move(dobj), dataPtr, allowMods, returnExisting); +// } + + +// /** +// * @brief Helper for put. +// * @param ctx The event context, or nullptr to use the current context. +// * @param data The object to record. +// * @param returnExisting Allow an existing object. +// * @param[out] store The store being used. +// * +// * Unlike record(), this does not change the handle object. +// * That means that will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, unless @c returnExisting is true, in which case +// * return success. In either case, @c data is destroyed. +// */ +// template <class T> +// template <class U> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::doPut (const EventContext* ctx, +// U data, +// bool returnExisting, +// IProxyDict* & store) const +// { +// //typedef typename U::element_type elt_t; +// typedef T elt_t; + +// // make sure the BaseInfo(Base) structure is initialized +// SG::BaseInfo<elt_t>::baseinfo(); + +// const void* dataPtr = data.get(); +// std::unique_ptr<DataObject> dobj (SG::asStorable (std::move (data))); +// return reinterpret_cast<const T*> +// (this->put_impl (ctx, std::move(dobj), dataPtr, false, returnExisting, store)); +// } + + +// /** +// * @brief Helper for recording an object and its auxiliary store to the store. +// * @param ctx The event context, or nullptr to use the current context. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * +// * Unlike record(), this does not change the handle object. +// * That means that will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, and the objects passed in are destroyed. +// */ +// template <class T> +// template <class AUXSTORE> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::doPut (const EventContext* ctx, +// std::unique_ptr<T> data, +// std::unique_ptr<AUXSTORE> auxstore) const +// { +// T& dref = *data; + +// // If there's no store association, do it now. +// if (data->getStore() == nullptr) +// data->setStore (auxstore.get()); + +// IProxyDict* store = nullptr; +// const T* ptr = this->doPut (ctx, std::move(data), false, store); +// if (!ptr) return nullptr; + +// SG::DataObjectSharedPtr<DataObject> dobj +// (SG::asStorable (std::move (auxstore))); +// SG::DataProxy* proxy = store->recordObject (std::move(dobj), +// this->name() + "Aux.", +// false, +// false); +// if (!proxy) { +// REPORT_ERROR (StatusCode::FAILURE) +// << "recordObject of aux store failed"; + +// // If we've failed here, then the aux store object has been deleted, +// // but not the primary object. Null out the store pointer to prevent +// // having a dangling pointer to a deleted object. +// dref.setStore (static_cast<SG::IConstAuxStore*>(nullptr)); +// return nullptr; +// } + +// return ptr; +// } + + +// /** +// * @brief Helper for recording an object and its auxiliary store to the store. +// * @param ctx The event context, or nullptr to use the current context. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * +// * Unlike record(), this does not change the handle object. +// * That means that will not be able to get the object back +// * by dereferencing the handle. +// * Returns the object placed in the store, or nullptr if there +// * was an error. +// * If there was already an object in the store with the given key, +// * then return null, and the objects passed in are destroyed. +// */ +// template <class T> +// template <class AUXSTORE> +// typename WriteHandle<T>::const_pointer_type +// WriteHandle<T>::doPut (const EventContext* ctx, +// std::unique_ptr<const T> data, +// std::unique_ptr<const AUXSTORE> auxstore) const +// { +// IProxyDict* store = nullptr; +// const T* ptr = this->doPut (ctx, std::move(data), false, store); +// if (!ptr) return nullptr; + +// SG::DataObjectSharedPtr<DataObject> dobj +// (SG::asStorable (std::move (auxstore))); +// SG::DataProxy* proxy = store->recordObject (std::move(dobj), +// this->name() + "Aux.", +// false, +// false); +// if (!proxy) { +// REPORT_ERROR (StatusCode::FAILURE) +// << "recordObject of aux store failed"; +// return nullptr; +// } + +// return ptr; +// } + + +// /** +// * @brief Record an object and its auxiliary store to the store. +// * @param data The object to record. +// * @param auxstore Auxiliary store object. +// * @param isConst If true, record the objects as const. +// */ +// template <class T> +// template <class AUXSTORE> +// StatusCode +// WriteHandle<T>::record (std::unique_ptr<T> data, +// std::unique_ptr<AUXSTORE> auxstore, +// bool isConst) +// { +// T& dref = *data; + +// // If there's no store association, do it now. +// if (data->getStore() == nullptr) +// data->setStore (auxstore.get()); + +// if (isConst) { +// // Temporarily clear the store association, in order to prevent +// // the aux store from being locked at this point. +// IAuxStore* store = dref.getStore(); +// if (store) +// dref.setStore (static_cast<SG::IAuxStore*>(nullptr)); +// CHECK (this->record(std::move(data))); +// // Deliberately not using RAII here. If there is an error, +// // then the object referenced by data will be deleted. +// dref.setStore (store); +// } +// else +// CHECK (this->recordNonConst(std::move(data))); + +// // Store and proxy must be valid if we get to this point. + +// SG::DataObjectSharedPtr<DataObject> dobj +// (SG::asStorable (std::move (auxstore))); +// SG::DataProxy* proxy = m_store->recordObject (std::move(dobj), +// this->name() + "Aux.", +// true, +// false); +// if (!proxy) { +// REPORT_ERROR (StatusCode::FAILURE) +// << "recordObject of aux store failed"; + +// // If we've failed here, then the aux store object has been deleted, +// // but not the primary object. Null out the store pointer to prevent +// // having a dangling pointer to a deleted object. +// dref.setStore (static_cast<SG::IConstAuxStore*>(nullptr)); +// return StatusCode::FAILURE; +// } + +// if (m_proxy->isConst()) +// m_lockAuxPending = proxy; + +// return StatusCode::SUCCESS; +// } + + +/** + * @brief Return a @c WriteHandle referencing @c key. + * @param key The key object holding the clid/key/store. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + */ +template <class T> +WriteHandle<T> makeHandle (const WriteHandleKey<T>& key) +{ + return WriteHandle<T> (key); +} + + +/** + * @brief Return a @c WriteHandle referencing @c key for an explicit context. + * @param key The key object holding the clid/key/store. + * @param ctx The event context. + * + * This will raise an exception if the StoreGate key is blank, + * or if the event store cannot be found. + * + * If the default event store has been requested, then the thread-specific + * store from the event context will be used. + */ +template <class T> +WriteHandle<T> makeHandle (const WriteHandleKey<T>& key, + const EventContext& ctx) +{ + return WriteHandle<T> (key, ctx); +} + + +} /* namespace SG */ diff --git a/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandleKey.h b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandleKey.h new file mode 100644 index 0000000000000000000000000000000000000000..a6326b09cae00e77f03521bb819e41c358f0e17d --- /dev/null +++ b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandleKey.h @@ -0,0 +1,98 @@ +// This file's extension implies that it's C, but it's really -*- C++ -*-. + +/* + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +*/ + +/** + * @file AsgDataHandles/WriteHandleKey.h + * @author Nils Krumnack <Nils.Erik.Krumnack@cern.h> + * @author scott snyder <snyder@bnl.gov> (for original version) + * @brief Property holding a SG store/key/clid from which a WriteHandle is made. + */ + + +#ifndef ASG_DATA_HANDLES_WRITE_HANDLE_KEY_H +#define ASG_DATA_HANDLES_WRITE_HANDLE_KEY_H + +#ifndef XAOD_STANDALONE +#include <StoreGate/WriteHandleKey.h> +#else + +#include "AsgDataHandles/VarHandleKey.h" + + +namespace SG { + + +/** + * @brief Property holding a SG store/key/clid from which a WriteHandle is made. + * + * See StoreGate/WriteHandleKey for details. + * + * This currently (07 Aug 20) contains a number of commented out + * members that were part of the original handle implementation, but + * have not yet been implemented in the standalone version. The plan + * is to either implement or remove them, depending on what is needed + * in AnalysisBase as we add more packages. + * + */ +template <class T> +class WriteHandleKey + : public VarHandleKey +{ +public: + /** + * @brief Constructor. + * @param key The StoreGate key for the object. + * @param storeName Name to use for the store, if it's not encoded in sgkey. + * + * The provided key may actually start with the name of the store, + * separated by a "+": "MyStore+Obj". If no "+" is present + * the store named by @c storeName is used. + */ + WriteHandleKey (const std::string& key = ""); + // const std::string& storeName = StoreID::storeName(StoreID::EVENT_STORE)); + + + /** + * @brief auto-declaring Property Constructor. + * @param owner Owning component. + * @param name name of the Property + * @param key default StoreGate key for the object. + * @param doc Documentation string. + * + * will associate the named Property with this WHK via declareProperty + * + * The provided key may actually start with the name of the store, + * separated by a "+": "MyStore+Obj". If no "+" is present + * the store named by @c storeName is used. + */ + template <class OWNER, class K> + inline WriteHandleKey (OWNER* owner, + std::string name, + const K& key={}, + std::string doc=""); + + + /** + * @brief Change the key of the object to which we're referring. + * @param sgkey The StoreGate key for the object. + * + * The provided key may actually start with the name of the store, + * separated by a "+": "MyStore+Obj". If no "+" is present, + * the store is not changed. + */ + WriteHandleKey& operator= (const std::string& sgkey); +}; + + +} // namespace SG + + +#include "AsgDataHandles/WriteHandleKey.icc" + + +#endif + +#endif diff --git a/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandleKey.icc b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandleKey.icc new file mode 100644 index 0000000000000000000000000000000000000000..a4d41988cc2125feb16fc42e94924b9dcc8bdf1d --- /dev/null +++ b/Control/AthToolSupport/AsgDataHandles/AsgDataHandles/WriteHandleKey.icc @@ -0,0 +1,78 @@ +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +/** + * @file AsgDataHandles/WriteHandleKey.icc + * @author Nils Krumnack <Nils.Erik.Krumnack@cern.h> + * @author scott snyder <snyder@bnl.gov> (for original version) + * @brief Property holding a SG store/key/clid from which a WriteHandle is made. + */ + + +namespace SG { + + +/** + * @brief Constructor. + * @param key The StoreGate key for the object. + * @param storeName Name to use for the store, if it's not encoded in sgkey. + * + * The provided key may actually start with the name of the store, + * separated by a "+": "MyStore+Obj". If no "+" is present + * the store named by @c storeName is used. + */ +template <class T> +WriteHandleKey<T>::WriteHandleKey (const std::string& key /*= ""*/) + // const std::string& storeName /*= "StoreGateSvc"*/) + : VarHandleKey (key) + // : VarHandleKey (ClassID_traits<T>::ID(), key, + // Gaudi::DataHandle::Writer, + // storeName) +{ +} + + +/** + * @brief auto-declaring Property Constructor. + * @param owner Owning component. + * @param name name of the Property + * @param key default StoreGate key for the object. + * @param doc Documentation string. + * + * will associate the named Property with this WHK via declareProperty + * + * The provided key may actually start with the name of the store, + * separated by a "+": "MyStore+Obj". If no "+" is present + * the store named by @c storeName is used. + */ +template <class T> +template <class OWNER, class K> +inline +WriteHandleKey<T>::WriteHandleKey( OWNER* owner, + std::string name, + const K& key /*= {}*/, + std::string doc /*= ""*/) + : WriteHandleKey<T> (key) +{ + owner->declareProperty(std::move(name), *this, std::move(doc)); +} + + +/** + * @brief Change the key of the object to which we're referring. + * @param sgkey The StoreGate key for the object. + * + * The provided key may actually start with the name of the store, + * separated by a "+": "MyStore+Obj". If no "+" is present, + * the store is not changed. + */ +template <class T> +WriteHandleKey<T>& WriteHandleKey<T>::operator= (const std::string& sgkey) +{ + VarHandleKey::operator= (sgkey); + return *this; +} + + +} // namespace SG diff --git a/Control/AthToolSupport/AsgExampleTools/AsgExampleTools/DataHandleTestTool.h b/Control/AthToolSupport/AsgExampleTools/AsgExampleTools/DataHandleTestTool.h index a10f05a70c138edbdeaf1212848d503efd951731..50ebcd680701cdac544cccac3a5c479b6e147e2d 100644 --- a/Control/AthToolSupport/AsgExampleTools/AsgExampleTools/DataHandleTestTool.h +++ b/Control/AthToolSupport/AsgExampleTools/AsgExampleTools/DataHandleTestTool.h @@ -13,6 +13,7 @@ #include <AsgExampleTools/IDataHandleTestTool.h> #include <AsgDataHandles/ReadHandleKey.h> #include <AsgDataHandles/ReadDecorHandleKey.h> +#include <AsgDataHandles/WriteHandleKey.h> // AthSimulation doesn't contain the muon-container, so we can't // really build the tool, but it is simpler to build an empty tool @@ -51,9 +52,11 @@ namespace asg #ifndef SIMULATIONBASE SG::ReadHandleKey<xAOD::MuonContainer> m_readKey {this, "readKey", "Muons", "regular read key"}; SG::ReadDecorHandleKey<xAOD::MuonContainer> m_readDecorKey {this, "readDecorKey", "Muons.pt", "read decor key"}; + SG::WriteHandleKey<xAOD::MuonContainer> m_writeKey {this, "writeKey", "", "regular write key"}; #endif bool m_readFailure {false}; bool m_readDecorFailure {false}; + std::string m_doWriteName; }; } diff --git a/Control/AthToolSupport/AsgExampleTools/Root/DataHandleTestTool.cxx b/Control/AthToolSupport/AsgExampleTools/Root/DataHandleTestTool.cxx index 19aeb4ef3a6457546e07d44915fa40291a0efe2c..8193fd471e4d5dd844297b0619c4f394585b6579 100644 --- a/Control/AthToolSupport/AsgExampleTools/Root/DataHandleTestTool.cxx +++ b/Control/AthToolSupport/AsgExampleTools/Root/DataHandleTestTool.cxx @@ -14,10 +14,15 @@ #include <AsgDataHandles/ReadHandle.h> #include <AsgDataHandles/ReadDecorHandle.h> +#include <AsgDataHandles/WriteHandle.h> #include <AsgTesting/UnitTest.h> #include <gtest/gtest.h> #include <map> +#ifndef SIMULATIONBASE +#include <xAODMuon/MuonAuxContainer.h> +#endif + // // method implementations // @@ -30,6 +35,7 @@ namespace asg { declareProperty ("readFailure", m_readFailure, "whether to expect a read failure"); declareProperty ("readDecorFailure", m_readDecorFailure, "whether to expect a read decoration failure"); + declareProperty ("doWriteName", m_doWriteName, "if we should write, the name we expect to write to"); } @@ -47,6 +53,8 @@ namespace asg #ifndef SIMULATIONBASE ANA_CHECK (m_readKey.initialize ()); ANA_CHECK (m_readDecorKey.initialize ()); + if (!m_writeKey.empty()) + ANA_CHECK (m_writeKey.initialize ()); #endif return StatusCode::SUCCESS; } @@ -82,6 +90,22 @@ namespace asg SG::AuxElement::ConstAccessor<float> acc ("pt"); EXPECT_EQ (acc (*testMuon), readDecorHandle (*testMuon)); } + + if (!m_doWriteName.empty()) + { + auto writeHandle = makeHandle (m_writeKey); + auto newMuons = std::make_unique<xAOD::MuonContainer>(); + auto newAux = std::make_unique<xAOD::MuonAuxContainer>(); + xAOD::MuonContainer *recordMuons {newMuons.get()}; + xAOD::MuonAuxContainer *recordAux {newAux.get()}; + EXPECT_SUCCESS (writeHandle.record (std::move (newMuons), std::move (newAux))); + const xAOD::MuonContainer *retrieveMuons {nullptr}; + EXPECT_SUCCESS (evtStore()->retrieve (retrieveMuons, m_doWriteName)); + EXPECT_EQ (recordMuons, retrieveMuons); + xAOD::MuonAuxContainer *retrieveAux {nullptr}; + EXPECT_SUCCESS (evtStore()->retrieve (retrieveAux, m_doWriteName + "Aux.")); + EXPECT_EQ (recordAux, retrieveAux); + } #endif } } diff --git a/Control/AthToolSupport/AsgExampleTools/src/AsgExampleAlgorithm.cxx b/Control/AthToolSupport/AsgExampleTools/src/AsgExampleAlgorithm.cxx index 915d0e9c3e1187d61b8172bb315b8392bb887cc0..50d2f9fe3ef5db28f9c2b323a799783b757615af 100644 --- a/Control/AthToolSupport/AsgExampleTools/src/AsgExampleAlgorithm.cxx +++ b/Control/AthToolSupport/AsgExampleTools/src/AsgExampleAlgorithm.cxx @@ -1,7 +1,7 @@ // AsgExampleAlgorithm.cxx #include "AsgExampleAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AsgExampleTools/IAsgHelloTool.h" #include "AsgTools/AsgTool.h" diff --git a/Control/AthToolSupport/AsgExampleTools/test/gt_DataHandlesTest.cxx b/Control/AthToolSupport/AsgExampleTools/test/gt_DataHandlesTest.cxx index f8b86c3c2d87617e2ec8f9d61dcec88b79c17e03..74f2a8e1db31b4d8b5f4415dea2659f795745c11 100644 --- a/Control/AthToolSupport/AsgExampleTools/test/gt_DataHandlesTest.cxx +++ b/Control/AthToolSupport/AsgExampleTools/test/gt_DataHandlesTest.cxx @@ -114,6 +114,18 @@ namespace asg ASSERT_SUCCESS (config.makeTool (tool, cleanup)); tool->runTest (); } + + + + // do a write handle test + TEST_F (DataHandlesTest, write_handle) + { + std::string writeKey = "Muons" + makeUniqueName(); + config.setPropertyFromString ("writeKey", writeKey); + config.setPropertyFromString ("doWriteName", writeKey); + ASSERT_SUCCESS (config.makeTool (tool, cleanup)); + tool->runTest (); + } } ATLAS_GOOGLE_TEST_MAIN diff --git a/Control/AthToolSupport/AsgTools/AsgTools/AsgTool.icc b/Control/AthToolSupport/AsgTools/AsgTools/AsgTool.icc index 095fa4162ca7a511746562f0ad69e89d2c20aee0..6a8a5a8c7c057015024cb1fcc8fbbf3d95ee7ed7 100644 --- a/Control/AthToolSupport/AsgTools/AsgTools/AsgTool.icc +++ b/Control/AthToolSupport/AsgTools/AsgTools/AsgTool.icc @@ -17,7 +17,7 @@ namespace asg { const T* AsgTool::getProperty( const std::string& name ) const { // Get the property object (if it exists): - const Property* prop = m_properties->getProperty( name ); + const Property* prop = m_properties->getProperty( name ); if( ! prop ) { ATH_MSG_WARNING( "Property with name \"" << name << "\" not found" ); return 0; @@ -43,16 +43,23 @@ namespace asg { #ifndef XAOD_STANDALONE // Gaudi/Athena include(s): -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/System.h" +using Property = Gaudi::Details::PropertyBase; + +template <class TYPE, class VERIFIER = Gaudi::Details::Property::NullVerifier, + class HANDLERS = Gaudi::Details::Property::UpdateHandler> +using PropertyWithValue = Gaudi::Property<TYPE, VERIFIER, HANDLERS>; + + namespace asg { template< class T > const T* AsgTool::getProperty( const std::string& name ) const { // Get the property object (if it exists): - const Property* prop = Gaudi::Utils::getProperty( this, name ); + const Gaudi::Details::PropertyBase* prop = Gaudi::Utils::getProperty( this, name ); if( ! prop ) { ATH_MSG_WARNING( "Property with name \"" << name << "\" not found" ); return 0; @@ -60,7 +67,7 @@ namespace asg { // Try to cast it to the required type: const PropertyWithValue< T >* tprop = - dynamic_cast< const PropertyWithValue< T >* >( prop ); + dynamic_cast< const PropertyWithValue< T >* >( prop ); if( ! tprop ) { ATH_MSG_WARNING( "Property \"" << name << "\" is of type: " << System::typeinfoName( *( prop->type_info() ) ) ); diff --git a/Control/AthViews/src_dflow/DFlowAlg1.cxx b/Control/AthViews/src_dflow/DFlowAlg1.cxx index 0dc04c3a799b099059f04bdb2e830ec8c8f0d28a..a53e052cf73b96354101c39f6835024f351814ac 100644 --- a/Control/AthViews/src_dflow/DFlowAlg1.cxx +++ b/Control/AthViews/src_dflow/DFlowAlg1.cxx @@ -16,7 +16,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandle.h" #include "StoreGate/WriteHandle.h" diff --git a/Control/AthViews/src_dflow/DFlowAlg2.cxx b/Control/AthViews/src_dflow/DFlowAlg2.cxx index ea4e53ba146d383bf9a241f6d72ed669c190f7d6..a5abe581ee480087bc8d7a5297b88a2126a73181 100644 --- a/Control/AthViews/src_dflow/DFlowAlg2.cxx +++ b/Control/AthViews/src_dflow/DFlowAlg2.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandle.h" #include "StoreGate/WriteHandle.h" #include "StoreGate/UpdateHandle.h" diff --git a/Control/AthViews/src_dflow/DFlowAlg3.cxx b/Control/AthViews/src_dflow/DFlowAlg3.cxx index 87c2d846043a87d129b185b93787c2013b1cea94..cb4516bf87f6fa0d4bc2c2b5349ab021581e2e96 100644 --- a/Control/AthViews/src_dflow/DFlowAlg3.cxx +++ b/Control/AthViews/src_dflow/DFlowAlg3.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandleKey.h" #include "StoreGate/WriteHandleKey.h" #include "AthenaKernel/ExtendedEventContext.h" diff --git a/Control/AthViews/src_dflow/ViewMergeAlg.cxx b/Control/AthViews/src_dflow/ViewMergeAlg.cxx index 85917cd530fb0901f542fa0122fd109f81f56ba1..bbb334ae75c6bb320df8b2b5812be700620e4662 100644 --- a/Control/AthViews/src_dflow/ViewMergeAlg.cxx +++ b/Control/AthViews/src_dflow/ViewMergeAlg.cxx @@ -9,7 +9,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandle.h" #include "StoreGate/WriteHandle.h" diff --git a/Control/AthViews/src_dflow/ViewSubgraphAlg.cxx b/Control/AthViews/src_dflow/ViewSubgraphAlg.cxx index e77052339ecd879f6e43f954f3fb96219605cb00..1c2537c4f912e12a3f88cb7314d19baf868e9ddc 100644 --- a/Control/AthViews/src_dflow/ViewSubgraphAlg.cxx +++ b/Control/AthViews/src_dflow/ViewSubgraphAlg.cxx @@ -4,7 +4,7 @@ #include "ViewSubgraphAlg.h" #include "AthViews/ViewHelper.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/WriteHandle.h" namespace AthViews { @@ -43,6 +43,16 @@ StatusCode ViewSubgraphAlg::execute() ATH_MSG_DEBUG ("Executing " << name() << "..."); const EventContext& ctx = getContext(); + + //Start scheduler profiling + auto profileCallback = [this, slot=ctx.slot()]( IScheduler::OccupancySnapshot snap ) -> void { + std::string states = ""; + for ( int const stateTotal : snap.states[slot] ) { + states += std::to_string( stateTotal ) + " "; + } + ATH_MSG_INFO( "Slot " << slot << " snapshot time " << snap.time.time_since_epoch().count() << " states: " << states ); + }; + m_scheduler->recordOccupancy( 0, std::move( profileCallback ) ); //Make a vector of dummy data to initialise the views std::vector<int> viewData; diff --git a/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.h b/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.h index cdd63e5d8992b8a82567a24cb087d716073e94ef..73d1a3010cba095a21c6a970faec2529788f9871 100644 --- a/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.h +++ b/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.h @@ -71,7 +71,7 @@ public: "retrieve data during the course of the job" ); auto props = this->getProperties(); - for( Property* prop : props ) { + for( Gaudi::Details::PropertyBase* prop : props ) { if (prop->name() == "ExtraOutputs" || prop->name() == "ExtraInputs") { prop->declareUpdateHandler (&AthCommonDataStore<PBASE>::extraDeps_update_handler, this); @@ -150,7 +150,7 @@ public: // template <class T> - Property& declareProperty(Gaudi::Property<T> &t) { + Gaudi::Details::PropertyBase& declareProperty(Gaudi::Property<T> &t) { typedef typename SG::HandleClassifier<T>::type htype; return AthCommonDataStore<PBASE>::declareGaudiProperty(t, htype()); } @@ -161,7 +161,7 @@ public: * */ template <class T> - Property& declareGaudiProperty(Gaudi::Property<T> &hndl, + Gaudi::Details::PropertyBase& declareGaudiProperty(Gaudi::Property<T> &hndl, const SG::VarHandleKeyType&) { return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(), @@ -175,7 +175,7 @@ public: * */ template <class T> - Property& declareGaudiProperty(Gaudi::Property<T> &hndl, + Gaudi::Details::PropertyBase& declareGaudiProperty(Gaudi::Property<T> &hndl, const SG::VarHandleKeyArrayType&) { return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(), @@ -189,7 +189,7 @@ public: * */ template <class T> - Property& declareGaudiProperty(Gaudi::Property<T> &hndl, + Gaudi::Details::PropertyBase& declareGaudiProperty(Gaudi::Property<T> &hndl, const SG::VarHandleType&) { return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(), @@ -204,7 +204,7 @@ public: * */ template <class T> - Property& declareGaudiProperty(Gaudi::Property<T> &t, const SG::NotHandleType&) + Gaudi::Details::PropertyBase& declareGaudiProperty(Gaudi::Property<T> &t, const SG::NotHandleType&) { return PBASE::declareProperty(t); } @@ -226,7 +226,7 @@ public: * The property value object is put on the input and output lists as * appropriate; then we forward to the base class. */ - Property* declareProperty(const std::string& name, + Gaudi::Details::PropertyBase* declareProperty(const std::string& name, SG::VarHandleKey& hndl, const std::string& doc, const SG::VarHandleKeyType&) @@ -250,7 +250,7 @@ public: * The property value object is put on the input and output lists as * appropriate; then we forward to the base class. */ - Property* declareProperty(const std::string& name, + Gaudi::Details::PropertyBase* declareProperty(const std::string& name, SG::VarHandleBase& hndl, const std::string& doc, const SG::VarHandleType&) @@ -264,7 +264,7 @@ public: /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - Property* declareProperty(const std::string& name, + Gaudi::Details::PropertyBase* declareProperty(const std::string& name, SG::VarHandleKeyArray& hndArr, const std::string& doc, const SG::VarHandleKeyArrayType&) @@ -281,7 +281,7 @@ public: hndArr.setOwner(this); m_vhka.push_back(&hndArr); - Property* p = PBASE::declareProperty(name, hndArr, doc); + Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc); if (p != 0) { p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this); } else { @@ -313,7 +313,7 @@ public: // to work by overriding those methods and adding in the current contents // of the arrays. - void updateVHKA(Property& /*p*/) { + void updateVHKA(Gaudi::Details::PropertyBase& /*p*/) { // debug() << "updateVHKA for property " << p.name() << " " << p.toString() // << " size: " << m_vhka.size() << endmsg; for (auto &a : m_vhka) { @@ -338,7 +338,7 @@ public: * of @c declareProperty. */ template <class T> - Property* declareProperty(const std::string& name, + Gaudi::Details::PropertyBase* declareProperty(const std::string& name, T& property, const std::string& doc, const SG::NotHandleType&) @@ -357,7 +357,7 @@ public: * for VarHandle/Key/KeyArray. */ template <class T> - Property* declareProperty(const std::string& name, + Gaudi::Details::PropertyBase* declareProperty(const std::string& name, T& property, const std::string& doc="none") { @@ -396,7 +396,7 @@ protected: * supplied via the ExtraInputs and ExtraOuputs Properties to add * the StoreName if it's not explicitly given */ - void extraDeps_update_handler( Property& ExtraDeps ); + void extraDeps_update_handler( Gaudi::Details::PropertyBase& ExtraDeps ); }; diff --git a/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.icc b/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.icc index 450b269cc2fef8ebca0d8a0e3ddacb3bf7d3dae0..db28551c2c57cfd45e53a284de21c483ed8d11ca 100644 --- a/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.icc +++ b/Control/AthenaBaseComps/AthenaBaseComps/AthCommonDataStore.icc @@ -19,7 +19,7 @@ #include "AthenaBaseComps/AthAlgStartVisitor.h" template <class PBASE> -void AthCommonDataStore<PBASE>::extraDeps_update_handler( Property& ExtraDeps ) +void AthCommonDataStore<PBASE>::extraDeps_update_handler( Gaudi::Details::PropertyBase& ExtraDeps ) { DataObjIDColl newColl; Gaudi::Property<DataObjIDColl> *prop = dynamic_cast<Gaudi::Property<DataObjIDColl>*> (&ExtraDeps); diff --git a/Control/AthenaBaseComps/AthenaBaseComps/AthFilterAlgorithm.h b/Control/AthenaBaseComps/AthenaBaseComps/AthFilterAlgorithm.h index f36a3a2964b067719cc8f98baacc0ab7863688e0..7b42e7cb6ad1178ea0e6eef39cdf08e0cb1f0550 100644 --- a/Control/AthenaBaseComps/AthenaBaseComps/AthFilterAlgorithm.h +++ b/Control/AthenaBaseComps/AthenaBaseComps/AthFilterAlgorithm.h @@ -91,7 +91,7 @@ class AthFilterAlgorithm //special case: post-python default value of property FilterDescription sent to ICutFlowSvc only if not explicitly specified before bool m_resetSelfDescription; - void doNotResetSelfDescription( Property& ); + void doNotResetSelfDescription( Gaudi::Details::PropertyBase& ); SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey { this, "EventInfoKey", "EventInfo", "" }; @@ -134,7 +134,7 @@ CutIdentifier AthFilterAlgorithm::cutID() inline void -AthFilterAlgorithm::doNotResetSelfDescription( Property& ) +AthFilterAlgorithm::doNotResetSelfDescription( Gaudi::Details::PropertyBase& ) { m_resetSelfDescription=false; } diff --git a/Control/AthenaBaseComps/AthenaBaseComps/AthMessaging.h b/Control/AthenaBaseComps/AthenaBaseComps/AthMessaging.h index f7afeada679d36293148117b91156b02654c4499..1982e96201edb96baff6de3ded1c43a649905758 100644 --- a/Control/AthenaBaseComps/AthenaBaseComps/AthMessaging.h +++ b/Control/AthenaBaseComps/AthenaBaseComps/AthMessaging.h @@ -19,7 +19,7 @@ // framework includes #include "GaudiKernel/IMessageSvc.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthMsgStreamMacros.h" #include <boost/thread/tss.hpp> diff --git a/Control/AthenaBaseComps/AthenaBaseComps/FilteredAlgorithm.h b/Control/AthenaBaseComps/AthenaBaseComps/FilteredAlgorithm.h index 2c8e5a00e0efd0b553ceedf9f76246ee2f207425..771586e07a2edbdb24c6e3b937012b2f6c0b5b5e 100644 --- a/Control/AthenaBaseComps/AthenaBaseComps/FilteredAlgorithm.h +++ b/Control/AthenaBaseComps/AthenaBaseComps/FilteredAlgorithm.h @@ -18,7 +18,7 @@ #include "GaudiKernel/IDataSelector.h" #include "AthenaBaseComps/AthAlgorithm.h" #include "GaudiKernel/ClassID.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaKernel/IDecisionSvc.h" diff --git a/Control/AthenaBaseComps/src/AthCnvSvc.cxx b/Control/AthenaBaseComps/src/AthCnvSvc.cxx index 180c50d10bd67aac374e0bfed721ac6cd756edd5..bb3d9a5a96959f6f86cf655eb20a93af1630522d 100644 --- a/Control/AthenaBaseComps/src/AthCnvSvc.cxx +++ b/Control/AthenaBaseComps/src/AthCnvSvc.cxx @@ -12,7 +12,7 @@ // STL includes // Framework includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/DataObject.h" #include "GaudiKernel/System.h" #include "GaudiKernel/IConverter.h" diff --git a/Control/AthenaBaseComps/src/AthFilterAlgorithm.cxx b/Control/AthenaBaseComps/src/AthFilterAlgorithm.cxx index 78746db210c617e5652671bdffd4ef1b51881c53..55868f9d79c3c171d3293411f757c449840ba14e 100644 --- a/Control/AthenaBaseComps/src/AthFilterAlgorithm.cxx +++ b/Control/AthenaBaseComps/src/AthFilterAlgorithm.cxx @@ -17,7 +17,7 @@ // STL includes // Framework includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" /////////////////////////////////////////////////////////////////// diff --git a/Control/AthenaBaseComps/src/AthHistogramAlgorithm.cxx b/Control/AthenaBaseComps/src/AthHistogramAlgorithm.cxx index b590e1b21ba8e7cf8eb995f18f0597ad953f78c1..2e9fd336431465edebda3e624b1eb1dac2face52 100644 --- a/Control/AthenaBaseComps/src/AthHistogramAlgorithm.cxx +++ b/Control/AthenaBaseComps/src/AthHistogramAlgorithm.cxx @@ -17,7 +17,7 @@ #include <map> // Framework includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ITHistSvc.h" diff --git a/Control/AthenaBaseComps/src/AthHistogramFilterAlgorithm.cxx b/Control/AthenaBaseComps/src/AthHistogramFilterAlgorithm.cxx index 56471016bba342997a21d90dc60a65984750c2d5..dc49753b528d7d1429f53b5576f52f172f2cf960 100644 --- a/Control/AthenaBaseComps/src/AthHistogramFilterAlgorithm.cxx +++ b/Control/AthenaBaseComps/src/AthHistogramFilterAlgorithm.cxx @@ -16,7 +16,7 @@ #include <string> // Framework includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ITHistSvc.h" diff --git a/Control/AthenaCommon/python/AppMgr.py b/Control/AthenaCommon/python/AppMgr.py index da5b9ac56618e92582a45619114f15062553e9ba..d660fa209a560c251772c83dd6237d0d21428106 100755 --- a/Control/AthenaCommon/python/AppMgr.py +++ b/Control/AthenaCommon/python/AppMgr.py @@ -24,7 +24,6 @@ __all__ = [ 'theApp', 'ServiceMgr', 'ToolSvc', 'AuditorSvc', 'theAuditorSvc', 'athCondSeq', 'athAlgSeq', 'topSequence', 'athOutSeq', - 'athRegSeq', ] ### helpers ------------------------------------------------------------------ @@ -263,7 +262,7 @@ class AthAppMgr( AppMgr ): def __build_master_sequence (self): """helper method to build the top-level AthSequencer from all bits and - pieces : AthMasterSeq, AthAlgSeq, AthOutSeq, AthRegSeq + pieces : AthMasterSeq, AthAlgSeq, AthOutSeq """ from . import AlgSequence as _as from AthenaServices.AthenaServicesConf import AthIncFirerAlg as IFA @@ -277,7 +276,6 @@ class AthAppMgr( AppMgr ): athAlgSeq = _as.AthSequencer ("AthAlgSeq",IgnoreFilterPassed=True, StopOverride=True) athEndSeq = _as.AthSequencer ("AthEndSeq",Sequential=True) athOutSeq = _as.AthSequencer ("AthOutSeq", StopOverride=True) - athRegSeq = _as.AthSequencer ("AthRegSeq", StopOverride=True) athAllAlgSeq = _as.AthSequencer ("AthAllAlgSeq", StopOverride=True) athAlgEvtSeq = _as.AthSequencer ("AthAlgEvtSeq",Sequential = True, StopOverride=True) # transfer old TopAlg to new AthAlgSeq @@ -337,7 +335,6 @@ class AthAppMgr( AppMgr ): athMasterSeq += athAlgEvtSeq athMasterSeq += athOutSeq - athMasterSeq += athRegSeq Logging.log.debug ("building master sequence... [done]") return athMasterSeq @@ -998,12 +995,9 @@ def AuditorSvc(): # backwards compatibility # +--- athEndSeq # | # +--- athOutSeq -# | -# +--- athRegSeq athMasterSeq = AlgSequence.AthSequencer( "AthMasterSeq" ) athCondSeq = AlgSequence.AthSequencer( "AthCondSeq" ) athAlgSeq = AlgSequence.AthSequencer( "AthAlgSeq" ) athOutSeq = AlgSequence.AthSequencer( "AthOutSeq" ) -athRegSeq = AlgSequence.AthSequencer( "AthRegSeq" ) topSequence = AlgSequence.AlgSequence( "TopAlg" ) # for backward compatibility diff --git a/Control/AthenaCommon/python/ConfigurationShelve.py b/Control/AthenaCommon/python/ConfigurationShelve.py index ffbb125095d7a62c28804c4a36a46971443e27ea..9163a2572a8fe2ef6cfd92d64e384545e079a597 100644 --- a/Control/AthenaCommon/python/ConfigurationShelve.py +++ b/Control/AthenaCommon/python/ConfigurationShelve.py @@ -110,7 +110,6 @@ class ConfigurationJar( object ): self.TopSequence = _as.AlgSequence ("TopAlg") self.athAlgSeq = _as.AthSequencer ("AthAlgSeq") self.athOutSeq = _as.AthSequencer ("AthOutSeq") - self.athRegSeq = _as.AthSequencer ("AthRegSeq") self.AppMgr = theApp self.ServiceMgr = ServiceMgr # takes care of AuditorSvc & ToolSvc @@ -131,7 +130,6 @@ class ConfigurationJar( object ): d[ 'AthAlgSeq' ] = self.athAlgSeq d[ 'TopSequence' ] = self.TopSequence d[ 'AthOutSeq' ] = self.athOutSeq - d[ 'AthRegSeq' ] = self.athRegSeq d[ 'AppMgr' ] = self.AppMgr d[ 'Streams' ] = self.AppMgr._streams d[ 'ServiceMgr' ] = self.ServiceMgr #takes care of {Auditor,Tool}Svc diff --git a/Control/AthenaCommon/share/GenerateBootstrapTest.ref b/Control/AthenaCommon/share/GenerateBootstrapTest.ref index 1458f3c147c2978aad06b1d7c4fcc7aaa2e5a99d..5b5ae6824a7ce8f8a9390da74e5a31d04d96fe84 100644 --- a/Control/AthenaCommon/share/GenerateBootstrapTest.ref +++ b/Control/AthenaCommon/share/GenerateBootstrapTest.ref @@ -1,16 +1,16 @@ Willing to acquire file bootstrap.pkl from -/build/mnowak/work/sealsvc/build/x86_64-centos7-gcc8-opt/share/bootstrap.pkl +/afs/cern.ch/work/s/smh/ol_reggie/bld/x86_64-centos7-gcc8-opt/share/bootstrap.pkl copy bootstrap.pkl ... Read 2 items from python pickle file: bootstrap.pkl ... Read 2 items from python pickle file: bootstrap_test.pkl Given list of size 0. Not looking for differences. -Step 1: reference file #components: 28 -Step 2: file to check #components: 28 +Step 1: reference file #components: 27 +Step 2: file to check #components: 27 Willing to acquire file bootstrap_threaded.pkl from -/build/mnowak/work/sealsvc/build/x86_64-centos7-gcc8-opt/share/bootstrap_threaded.pkl +/afs/cern.ch/work/s/smh/ol_reggie/bld/x86_64-centos7-gcc8-opt/share/bootstrap_threaded.pkl copy bootstrap_threaded.pkl ... Read 2 items from python pickle file: bootstrap_threaded.pkl ... Read 2 items from python pickle file: bootstrap_threaded_test.pkl Given list of size 0. Not looking for differences. -Step 1: reference file #components: 34 -Step 2: file to check #components: 34 +Step 1: reference file #components: 33 +Step 2: file to check #components: 33 diff --git a/Control/AthenaCommon/share/bootstrap.pkl b/Control/AthenaCommon/share/bootstrap.pkl index 25d8b3ba8a5a5e4d4a28e7fb90e7afe6533dead1..f47ca3833841c2222ba5eff3774e56b02fa40232 100644 Binary files a/Control/AthenaCommon/share/bootstrap.pkl and b/Control/AthenaCommon/share/bootstrap.pkl differ diff --git a/Control/AthenaCommon/share/bootstrap_threaded.pkl b/Control/AthenaCommon/share/bootstrap_threaded.pkl index fc26464bcc670dfeab542f9d8b4676411288304a..d5cf4a78df80454ca1d06794a68f2994c2bcc026 100644 Binary files a/Control/AthenaCommon/share/bootstrap_threaded.pkl and b/Control/AthenaCommon/share/bootstrap_threaded.pkl differ diff --git a/Control/AthenaConfiguration/python/ComponentAccumulator.py b/Control/AthenaConfiguration/python/ComponentAccumulator.py index a6cff972939920241b535b2bd4f4be43ee07f71d..a3ffde4ec5fc150a47c96df5bf3e154ee7e46e59 100644 --- a/Control/AthenaConfiguration/python/ComponentAccumulator.py +++ b/Control/AthenaConfiguration/python/ComponentAccumulator.py @@ -1066,7 +1066,6 @@ def appendCAtoAthena(ca): preconfigured = [athCondSeq,athOutSeq,athAlgSeq,topSequence] - #preconfigured = ["AthMasterSeq", "AthCondSeq", "AthAlgSeq", "AthOutSeq", "AthRegSeq"] for seq in ca._allSequences: merged = False diff --git a/Control/AthenaConfiguration/python/MainServicesConfig.py b/Control/AthenaConfiguration/python/MainServicesConfig.py index 9a9d69b62a55c9f4962ba4218e7b19cbdbc5d6e8..83dacda189f67aef1707a73d0d4c495089d34ae9 100644 --- a/Control/AthenaConfiguration/python/MainServicesConfig.py +++ b/Control/AthenaConfiguration/python/MainServicesConfig.py @@ -39,7 +39,6 @@ def MainServicesCfg(cfgFlags): #Build standard sequences: cfg.addSequence(AthSequencer('AthAlgEvtSeq',Sequential=True, StopOverride=True),parentName="AthMasterSeq") cfg.addSequence(AthSequencer('AthOutSeq',StopOverride=True),parentName="AthMasterSeq") - cfg.addSequence(AthSequencer('AthRegSeq',StopOverride=True),parentName="AthMasterSeq") cfg.addSequence(AthSequencer('AthBeginSeq',Sequential=True),parentName='AthAlgEvtSeq') cfg.addSequence(AthSequencer('AthAllAlgSeq',StopOverride=True),parentName='AthAlgEvtSeq') diff --git a/Control/AthenaExamples/AthExHelloWorld/src/HelloAlg.h b/Control/AthenaExamples/AthExHelloWorld/src/HelloAlg.h index f059acf68e8e8c330fe7323293f078f505e3bc38..e5beb63b7851879472af7314fa9d2db9c2528b20 100755 --- a/Control/AthenaExamples/AthExHelloWorld/src/HelloAlg.h +++ b/Control/AthenaExamples/AthExHelloWorld/src/HelloAlg.h @@ -9,7 +9,7 @@ #include "GaudiKernel/ToolHandle.h" #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include <vector> diff --git a/Control/AthenaExamples/AthExHistNtup/src/Hist.cxx b/Control/AthenaExamples/AthExHistNtup/src/Hist.cxx index 1adbd7e4c8afa81d048c8305121f220210e99af2..94a423fad74bd9a366b57e266d8468b0baebc0eb 100755 --- a/Control/AthenaExamples/AthExHistNtup/src/Hist.cxx +++ b/Control/AthenaExamples/AthExHistNtup/src/Hist.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // ROOT includes #include "TH1F.h" diff --git a/Control/AthenaExamples/AthExHistNtup/src/Ntup.cxx b/Control/AthenaExamples/AthExHistNtup/src/Ntup.cxx index 190a3bd89d700b172c4b88d654b79fe2c14c83fa..3856936b58f72c5525ed77901cc1c32031735b1e 100755 --- a/Control/AthenaExamples/AthExHistNtup/src/Ntup.cxx +++ b/Control/AthenaExamples/AthExHistNtup/src/Ntup.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // ROOT includes #include "TTree.h" diff --git a/Control/AthenaExamples/AthExJobOptions/src/AnotherConcreteSvc.cxx b/Control/AthenaExamples/AthExJobOptions/src/AnotherConcreteSvc.cxx index 21a81fbf117f4e7b1ba3e8c3868df1170e09eed2..c7f7cb2b421f303a99d4dbe0c417e5fbb3302eaa 100644 --- a/Control/AthenaExamples/AthExJobOptions/src/AnotherConcreteSvc.cxx +++ b/Control/AthenaExamples/AthExJobOptions/src/AnotherConcreteSvc.cxx @@ -12,7 +12,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // AthExJobOptions includes #include "AnotherConcreteSvc.h" diff --git a/Control/AthenaExamples/AthExJobOptions/src/ConcreteSvc.cxx b/Control/AthenaExamples/AthExJobOptions/src/ConcreteSvc.cxx index 3555f2d01538993e6804c43164f2812ac5881266..bcf16e08e206453285b0284bcf17131369d927cb 100644 --- a/Control/AthenaExamples/AthExJobOptions/src/ConcreteSvc.cxx +++ b/Control/AthenaExamples/AthExJobOptions/src/ConcreteSvc.cxx @@ -12,7 +12,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // AthExJobOptions includes #include "ConcreteSvc.h" diff --git a/Control/AthenaExamples/AthExMonitored/src/MonitoredAlg.h b/Control/AthenaExamples/AthExMonitored/src/MonitoredAlg.h index c84ce038cf9e4dfc9c5ffe6a83a0309f6a5ed0cf..d0303a5f0fe34604244ff173c893730273ec22bf 100644 --- a/Control/AthenaExamples/AthExMonitored/src/MonitoredAlg.h +++ b/Control/AthenaExamples/AthExMonitored/src/MonitoredAlg.h @@ -6,7 +6,7 @@ #define ATHEXMONITORED_MONITOREDALG_H 1 #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgorithm.h" #include "AthenaMonitoringKernel/GenericMonitoringTool.h" diff --git a/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg1.cxx b/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg1.cxx index 0a148ca555ca4c42da85d6738928d259d78c355b..3a7cf42e0102ef3332901f5d7fe6d4278fb8efd2 100644 --- a/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg1.cxx +++ b/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg1.cxx @@ -16,7 +16,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandleKey.h" #include "StoreGate/WriteHandleKey.h" diff --git a/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg2.cxx b/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg2.cxx index 07843671a64e667071f1959045b2db2be5628672..84f9f1a6b2d4dca81e72847aa1ef6b31d7868dfe 100644 --- a/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg2.cxx +++ b/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg2.cxx @@ -16,7 +16,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandle.h" #include "StoreGate/WriteHandle.h" diff --git a/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg3.cxx b/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg3.cxx index 3c25ef9ea6531802c057db2b5b4903d2ef8bdde8..09b8d58b5f308a2e0a68bfc36e78878e8ac3b977 100644 --- a/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg3.cxx +++ b/Control/AthenaExamples/AthExStoreGateExample/src_dflow/DFlowAlg3.cxx @@ -18,7 +18,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" namespace SG { template<> diff --git a/Control/AthenaExamples/AthExThinning/src_lib/CreateData.cxx b/Control/AthenaExamples/AthExThinning/src_lib/CreateData.cxx index dc888c9f957b9b7ff92ad561959ac7b3be36048a..9d59e4d9a5f6de266966115b6d5a9cb86da9d24a 100644 --- a/Control/AthenaExamples/AthExThinning/src_lib/CreateData.cxx +++ b/Control/AthenaExamples/AthExThinning/src_lib/CreateData.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/SystemOfUnits.h" // StoreGate diff --git a/Control/AthenaExamples/AthExThinning/src_lib/ReadThinnedData.cxx b/Control/AthenaExamples/AthExThinning/src_lib/ReadThinnedData.cxx index 041cd35a1593b3ae4177cc37d3df23cbcc711736..3f12abfedb1203db8d532e95d55d0dad2f042714 100644 --- a/Control/AthenaExamples/AthExThinning/src_lib/ReadThinnedData.cxx +++ b/Control/AthenaExamples/AthExThinning/src_lib/ReadThinnedData.cxx @@ -14,7 +14,7 @@ // FrameWork includes #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/SystemOfUnits.h" // StoreGate diff --git a/Control/AthenaExamples/AthExThinning/src_lib/WriteThinnedData.cxx b/Control/AthenaExamples/AthExThinning/src_lib/WriteThinnedData.cxx index fd310189da9dd485893c179befbbeb500eeced74..4fee9df108f94e57ce5b3a27871d70bc1b4a33af 100644 --- a/Control/AthenaExamples/AthExThinning/src_lib/WriteThinnedData.cxx +++ b/Control/AthenaExamples/AthExThinning/src_lib/WriteThinnedData.cxx @@ -15,7 +15,7 @@ #include <sstream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/SystemOfUnits.h" // StoreGate diff --git a/Control/AthenaKernel/src/CloneService.cxx b/Control/AthenaKernel/src/CloneService.cxx index c104c61139309dba1407467e396c9dce0aa8eb78..f5e720ef20967226b52f2f26f779cfac6779b4d5 100644 --- a/Control/AthenaKernel/src/CloneService.cxx +++ b/Control/AthenaKernel/src/CloneService.cxx @@ -73,8 +73,8 @@ namespace CloneService { } //now copy parent's properties into child - std::vector<Property*>::const_iterator iProp(parent->getProperties().begin()); - std::vector<Property*>::const_iterator eProp(parent->getProperties().end()); + std::vector<Gaudi::Details::PropertyBase*>::const_iterator iProp(parent->getProperties().begin()); + std::vector<Gaudi::Details::PropertyBase*>::const_iterator eProp(parent->getProperties().end()); while (iProp != eProp && (child->setProperty(**iProp)).isSuccess()) ++iProp; if (iProp != eProp) { diff --git a/Control/AthenaKernel/src/CloneTool.cxx b/Control/AthenaKernel/src/CloneTool.cxx index bfbbd0c690999f70b24a3e125aff8e76df0e77b9..b118346cb6333c82cf48c751d24fb86e4904e5ae 100644 --- a/Control/AthenaKernel/src/CloneTool.cxx +++ b/Control/AthenaKernel/src/CloneTool.cxx @@ -46,8 +46,8 @@ namespace CloneTool { } //now copy cloned's properties into result - std::vector<Property*>::const_iterator iProp(pCloned->getProperties().begin()); - std::vector<Property*>::const_iterator eProp(pCloned->getProperties().end()); + std::vector<Gaudi::Details::PropertyBase*>::const_iterator iProp(pCloned->getProperties().begin()); + std::vector<Gaudi::Details::PropertyBase*>::const_iterator eProp(pCloned->getProperties().end()); AlgTool* aResult=dynamic_cast<AlgTool*>(result); if (0 == aResult) { diff --git a/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py b/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py index abccd5fa518486da89e558b26d1878cc84872a5b..38ef6113f109a5f4602102b778d412fbb1d9c58f 100644 --- a/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py +++ b/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py @@ -117,8 +117,8 @@ else: DQMonFlags.doSCTMon=False DQMonFlags.doTRTMon=False DQMonFlags.doTRTElectronMon=False -# DQMonFlags.doInDetGlobalMon=False -# DQMonFlags.doInDetAlignMon=False + DQMonFlags.doInDetGlobalMon=False + DQMonFlags.doInDetAlignMon=False DQMonFlags.doGlobalMon=False DQMonFlags.doLVL1CaloMon=False diff --git a/Control/AthenaMonitoring/src/AthenaMonManager.cxx b/Control/AthenaMonitoring/src/AthenaMonManager.cxx index 3c2bae6dd60246b55dd85d598220c9bdf8d8564a..9e50504f57eef454d38e6ef6c5803f2289162423 100644 --- a/Control/AthenaMonitoring/src/AthenaMonManager.cxx +++ b/Control/AthenaMonitoring/src/AthenaMonManager.cxx @@ -21,7 +21,7 @@ #include "GaudiKernel/ISvcLocator.h" #include "GaudiKernel/ITHistSvc.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaMonitoring/IMonitorToolBase.h" diff --git a/Control/AthenaPython/AthenaPython/PyProperty.h b/Control/AthenaPython/AthenaPython/PyProperty.h index 9f917c488b673b32cec1daa32dfe5d94173e49c4..94aeff7cb6c4745272b6fca6f45f158582849ea1 100644 --- a/Control/AthenaPython/AthenaPython/PyProperty.h +++ b/Control/AthenaPython/AthenaPython/PyProperty.h @@ -18,7 +18,7 @@ #include <typeinfo> // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CxxUtils/checker_macros.h" // Forward declaration @@ -50,10 +50,10 @@ class ATLAS_NOT_THREAD_SAFE PyProperty /// @c Property implementation ///@{ /// export the property value to the destination - virtual bool load (Property& dest) const override; + virtual bool load (Gaudi::Details::PropertyBase& dest) const override; /// import the property value from source - virtual bool assign (const Property& src) override; + virtual bool assign (const Gaudi::Details::PropertyBase& src) override; /// export the property value as a @c std::string virtual std::string toString() const override; diff --git a/Control/AthenaPython/src/PyComponentMgr.cxx b/Control/AthenaPython/src/PyComponentMgr.cxx index f7ca99964d74990464ff6e66a7a99f28ae64aec7..893e93d2c9b5b2dceb0f9f16c011d5f387e1a22f 100755 --- a/Control/AthenaPython/src/PyComponentMgr.cxx +++ b/Control/AthenaPython/src/PyComponentMgr.cxx @@ -25,7 +25,7 @@ SG_BASES1(PyObject, SG::NoBase); // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaPython/IPyComponent.h" // PyROOT includes diff --git a/Control/AthenaPython/src/PyJobOptionsCatalogue.cxx b/Control/AthenaPython/src/PyJobOptionsCatalogue.cxx index 6967e5cfa9199b68059d68c47ed0c603c6a8c954..1db168f58afab5df39d1cf697ba9315f802d49d2 100644 --- a/Control/AthenaPython/src/PyJobOptionsCatalogue.cxx +++ b/Control/AthenaPython/src/PyJobOptionsCatalogue.cxx @@ -80,7 +80,7 @@ PyJobOptionsCatalogue::clients() const /// add a property to the catalogue StatusCode PyJobOptionsCatalogue::add_property (const std::string& client, - const Property* prop) + const Gaudi::Details::PropertyBase* prop) { if (!prop) { return StatusCode::FAILURE; diff --git a/Control/AthenaPython/src/PyJobOptionsCatalogue.h b/Control/AthenaPython/src/PyJobOptionsCatalogue.h index ec45f4b917d3f33d6db6993034967860621b7954..af56d70936071ad2bd7d7e241d71abf503f227e1 100644 --- a/Control/AthenaPython/src/PyJobOptionsCatalogue.h +++ b/Control/AthenaPython/src/PyJobOptionsCatalogue.h @@ -18,7 +18,7 @@ // Gaudi includes #include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CxxUtils/checker_macros.h" // Forward declaration @@ -68,7 +68,7 @@ public: /// add a property to the catalogue StatusCode - add_property (const std::string& client, const Property* prop); + add_property (const std::string& client, const Gaudi::Details::PropertyBase* prop); /// remove a property from the catalogue StatusCode diff --git a/Control/AthenaPython/src/PyJobOptionsSvc.cxx b/Control/AthenaPython/src/PyJobOptionsSvc.cxx index 04daac3feaf68817814df76f9e60ae7ce0809b04..cb30ddd2027043b2b61aeade4ac76b27b5e3f86f 100644 --- a/Control/AthenaPython/src/PyJobOptionsSvc.cxx +++ b/Control/AthenaPython/src/PyJobOptionsSvc.cxx @@ -19,7 +19,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/System.h" // PyRoot @@ -140,7 +140,7 @@ PyJobOptionsSvc::setMyProperties (const std::string& client, /// Add a property into the JobOptions catalog StatusCode PyJobOptionsSvc::addPropertyToCatalogue (const std::string& client, - const Property& property) + const Gaudi::Details::PropertyBase& property) { ATH_MSG_VERBOSE ("::addPropToCat (client=[" << client << "], prop=[" << property.name() << ", " @@ -153,7 +153,7 @@ PyJobOptionsSvc::addPropertyToCatalogue (const std::string& client, return m_catalogue.add_property (client, pyprop->clone()); } - Property *p = new StringProperty (property.name(), ""); + Gaudi::Details::PropertyBase *p = new StringProperty (property.name(), ""); if (!property.load (*p)) { delete p; p = 0; return StatusCode::FAILURE; @@ -221,7 +221,7 @@ PyJobOptionsSvc::readOptions (const std::string& file, // /// IProperty implementation (needed for initialisation) // StatusCode -// PyJobOptionsSvc::setProperty(const Property& p) +// PyJobOptionsSvc::setProperty(const Gaudi::Details::PropertyBase& p) // { // return m_pmgr.setProperty (p); // } diff --git a/Control/AthenaPython/src/PyJobOptionsSvc.h b/Control/AthenaPython/src/PyJobOptionsSvc.h index 35ea7306da2f5e8c41a3c121364dbe59a0681e90..83ddc9ae2fb07301dbee12ac01b8df60582149c8 100644 --- a/Control/AthenaPython/src/PyJobOptionsSvc.h +++ b/Control/AthenaPython/src/PyJobOptionsSvc.h @@ -22,7 +22,7 @@ // GaudiKernel #include "GaudiKernel/IJobOptionsSvc.h" #include "GaudiKernel/IProperty.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/PropertyHolder.h" //#include "GaudiKernel/PropertyMgr.h" @@ -83,7 +83,7 @@ class ATLAS_NOT_THREAD_SAFE PyJobOptionsSvc /// Add a property into the JobOptions catalog virtual StatusCode addPropertyToCatalogue (const std::string& client, - const Property& property ) override; + const Gaudi::Details::PropertyBase& property ) override; /// Remove a property from the JobOptions catalog virtual StatusCode removePropertyFromCatalogue (const std::string& client, @@ -91,7 +91,7 @@ class ATLAS_NOT_THREAD_SAFE PyJobOptionsSvc /// Get the properties associated to a given client virtual - // const std::vector<const Property*>* + // const std::vector<const Gaudi::Details::PropertyBase*>* const std::vector<const Gaudi::Details::PropertyBase*>* getProperties (const std::string& client) const override; @@ -117,7 +117,7 @@ class ATLAS_NOT_THREAD_SAFE PyJobOptionsSvc ///@} /// IProperty implementation (needed for initialisation) - // StatusCode setProperty(const Property& p); + // StatusCode setProperty(const Gaudi::Details::PropertyBase& p); // StatusCode getProperty(Property *p) const; private: diff --git a/Control/AthenaPython/src/PyProperty.cxx b/Control/AthenaPython/src/PyProperty.cxx index edcac28adb3b68eb265cf0b605159bee6ac72df3..21c9f33bc720be78f7f3a67fb20f9d5edcf3438f 100644 --- a/Control/AthenaPython/src/PyProperty.cxx +++ b/Control/AthenaPython/src/PyProperty.cxx @@ -158,14 +158,14 @@ PyProperty::~PyProperty() /// export the property value to the destination bool -PyProperty::load (Property& dest) const +PyProperty::load (Gaudi::Details::PropertyBase& dest) const { return dest.assign (*this); } /// import the property value from source bool -PyProperty::assign (const Property& src) +PyProperty::assign (const Gaudi::Details::PropertyBase& src) { const PyProperty *p = dynamic_cast<const PyProperty*> (&src); if (p) { diff --git a/Control/AthenaServices/share/AthTPCnvSvc.ref b/Control/AthenaServices/share/AthTPCnvSvc.ref index 2d8416a38361f7b64e6f89a12dce62a6198587ac..d858d9810301ff63bb06f5c2b1b651fda637d22c 100644 --- a/Control/AthenaServices/share/AthTPCnvSvc.ref +++ b/Control/AthenaServices/share/AthTPCnvSvc.ref @@ -42,7 +42,6 @@ Py:Configurable ERROR attempt to add a duplicate (AthAlgEvtSeq.AthAllAlgSeq) Py:Configurable ERROR attempt to add a duplicate (AthAlgEvtSeq.AthEndSeq) ... dupe ignored Py:Configurable ERROR attempt to add a duplicate (AthMasterSeq.AthAlgEvtSeq) ... dupe ignored Py:Configurable ERROR attempt to add a duplicate (AthMasterSeq.AthOutSeq) ... dupe ignored -Py:Configurable ERROR attempt to add a duplicate (AthMasterSeq.AthRegSeq) ... dupe ignored ClassIDSvc INFO RE-initializing ClassIDSvc ApplicationMgr INFO Application Manager Reinitialized successfully ApplicationMgr INFO Application Manager Started successfully diff --git a/Control/AthenaServices/share/FPEControlSvc_test.ref b/Control/AthenaServices/share/FPEControlSvc_test.ref index f7b1bcefc261dd8e900c6c9a4067676ae11d7ef1..be20ec0c2d0b0ebe1f31d9dafdac4b7a54997007 100644 --- a/Control/AthenaServices/share/FPEControlSvc_test.ref +++ b/Control/AthenaServices/share/FPEControlSvc_test.ref @@ -13,15 +13,15 @@ ApplicationMgr SUCCESS ==================================================================================================================================== /cvmfs/sft.cern.ch/lcg/contrib/gcc/4.9.3/x86_64-slc6/include/c++/4.9.3/bits/regex.h:1545:11: runtime error: load of value 176, which is not a valid value for type 'bool' ApplicationMgr INFO Successfully loaded modules : AthenaServices -FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Property&)): Enable: divbyzero overflow invalid Disable: (none) +FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Gaudi::Details::PropertyBase&)): Enable: divbyzero overflow invalid Disable: (none) ApplicationMgr INFO Application Manager Configured successfully -FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Property&)): Enable: divbyzero overflow invalid Disable: (none) +FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Gaudi::Details::PropertyBase&)): Enable: divbyzero overflow invalid Disable: (none) EventLoopMgr WARNING Unable to locate service "EventSelector" EventLoopMgr WARNING No events will be processed from external input. HistogramPersis...WARNING Histograms saving not required. ApplicationMgr INFO Application Manager Initialized successfully ApplicationMgr Ready -FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Property&)): Enable: (none) Disable: divbyzero -FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Property&)): Enable: divbyzero Disable: (none) -FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Property&)): Unknown exception name: fooo -FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Property&)): Enable: divbyzero Disable: (none) +FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Gaudi::Details::PropertyBase&)): Enable: (none) Disable: divbyzero +FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Gaudi::Details::PropertyBase&)): Enable: divbyzero Disable: (none) +FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Gaudi::Details::PropertyBase&)): Unknown exception name: fooo +FPEControlSvc INFO FILE:LINE (void FPEControlSvc::prophand(Gaudi::Details::PropertyBase&)): Enable: divbyzero Disable: (none) diff --git a/Control/AthenaServices/src/AthDictLoaderSvc.cxx b/Control/AthenaServices/src/AthDictLoaderSvc.cxx index 9d16659fc4e4b8f1f9ae056f87026791f88cd4bd..65dcba79599390dc21c328bd63dc23da185e4301 100644 --- a/Control/AthenaServices/src/AthDictLoaderSvc.cxx +++ b/Control/AthenaServices/src/AthDictLoaderSvc.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/System.h" #include "AthenaKernel/BaseInfo.h" diff --git a/Control/AthenaServices/src/AthIncFirerAlg.h b/Control/AthenaServices/src/AthIncFirerAlg.h index e705254e4075e8d33033871dd4fe9f7e4db7afd3..6170c424c2f66528a3f95008f1a144ddfead363f 100644 --- a/Control/AthenaServices/src/AthIncFirerAlg.h +++ b/Control/AthenaServices/src/AthIncFirerAlg.h @@ -8,7 +8,7 @@ #include <vector> #include <string> #include "AthenaBaseComps/AthReentrantAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" class IIncidentSvc; diff --git a/Control/AthenaServices/src/AthenaEventLoopMgr.cxx b/Control/AthenaServices/src/AthenaEventLoopMgr.cxx index b43bd47b2991cac8325fdd256d4a62bfa712be9a..f6059f351d5602b581ebf6febdefd60ab99da315 100644 --- a/Control/AthenaServices/src/AthenaEventLoopMgr.cxx +++ b/Control/AthenaServices/src/AthenaEventLoopMgr.cxx @@ -210,7 +210,7 @@ StatusCode AthenaEventLoopMgr::initialize() error() << "Could not dcast HistPersSvc to a Service" << endmsg; } else { - const Property &prop = s->getProperty("OutputFile"); + const Gaudi::Details::PropertyBase &prop = s->getProperty("OutputFile"); std::string val; try { const StringProperty &sprop = dynamic_cast<const StringProperty&>( prop ); @@ -329,7 +329,7 @@ StatusCode AthenaEventLoopMgr::initialize() // property handlers //========================================================================= void -AthenaEventLoopMgr::setupTimeKeeper(Property&) { +AthenaEventLoopMgr::setupTimeKeeper(Gaudi::Details::PropertyBase&) { const std::string& tkName(m_timeKeeperName.value()); // We do not expect a TimeKeeper necessarily being declared if( tkName != "NONE" && tkName.length() != 0) { @@ -342,7 +342,7 @@ AthenaEventLoopMgr::setupTimeKeeper(Property&) { } void -AthenaEventLoopMgr::setClearStorePolicy(Property&) { +AthenaEventLoopMgr::setClearStorePolicy(Gaudi::Details::PropertyBase&) { const std::string& policyName = m_clearStorePolicy.value(); if ( policyName != "BeginEvent" && @@ -362,7 +362,7 @@ AthenaEventLoopMgr::setClearStorePolicy(Property&) { } void -AthenaEventLoopMgr::setupPreSelectTools(Property&) { +AthenaEventLoopMgr::setupPreSelectTools(Gaudi::Details::PropertyBase&) { m_toolInvoke.clear(); m_toolReject.clear(); diff --git a/Control/AthenaServices/src/AthenaEventLoopMgr.h b/Control/AthenaServices/src/AthenaEventLoopMgr.h index 9301cf1171e8026c4f84989d61496bc79d886544..d1c0b436c1428c163a93830e6cef0fa52e38e6d2 100644 --- a/Control/AthenaServices/src/AthenaEventLoopMgr.h +++ b/Control/AthenaServices/src/AthenaEventLoopMgr.h @@ -14,7 +14,7 @@ #include <string> #include <vector> #include "GaudiKernel/IEvtSelector.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/IChronoStatSvc.h" @@ -109,7 +109,7 @@ protected: /// @property Name of TimeKeeper to use. NONE or empty string (default) means no time limit control on event loop StringProperty m_timeKeeperName; /// @property update handler:sets up the time keeper - void setupTimeKeeper(Property&); + void setupTimeKeeper(Gaudi::Details::PropertyBase&); /// @property Failure mode IntegerProperty m_failureMode; @@ -133,7 +133,7 @@ protected: bool m_useSecondaryEventNumber; /// property update handler:sets up the Pre-selection tools - void setupPreSelectTools(Property&); + void setupPreSelectTools(Gaudi::Details::PropertyBase&); /// @property configure the policy wrt handling of when 'clear-event-store' /// has to happen: BeginEvent xor EndEvent. @@ -142,7 +142,7 @@ protected: /// property update handler:set the clear-store policy value and check its /// value. - void setClearStorePolicy(Property& clearStorePolicy); + void setClearStorePolicy(Gaudi::Details::PropertyBase& clearStorePolicy); /// Dump out histograms as needed virtual StatusCode writeHistograms(bool force=false); diff --git a/Control/AthenaServices/src/AthenaHiveEventLoopMgr.cxx b/Control/AthenaServices/src/AthenaHiveEventLoopMgr.cxx index bb123abf9ed76776b0a3871b084aa6d761352b34..523cb8395831b695ca080e2b26bd72340c41d3b8 100644 --- a/Control/AthenaServices/src/AthenaHiveEventLoopMgr.cxx +++ b/Control/AthenaServices/src/AthenaHiveEventLoopMgr.cxx @@ -32,7 +32,7 @@ #include "GaudiKernel/GaudiException.h" #include "GaudiKernel/AppReturnCode.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/EventIDBase.h" #include "GaudiKernel/ThreadLocalContext.h" @@ -249,7 +249,7 @@ StatusCode AthenaHiveEventLoopMgr::initialize() error() << "Could not dcast HistPersSvc to a Service" << endmsg; } else { - const Property &prop = s->getProperty("OutputFile"); + const Gaudi::Details::PropertyBase &prop = s->getProperty("OutputFile"); std::string val; try { const StringProperty &sprop = dynamic_cast<const StringProperty&>( prop ); @@ -358,7 +358,7 @@ AthenaHiveEventLoopMgr::eventStore() const { // property handlers //========================================================================= void -AthenaHiveEventLoopMgr::setupTimeKeeper(Property&) { +AthenaHiveEventLoopMgr::setupTimeKeeper(Gaudi::Details::PropertyBase&) { const std::string& tkName(m_timeKeeperName.value()); // We do not expect a TimeKeeper necessarily being declared if( tkName != "NONE" && tkName.length() != 0) { @@ -371,7 +371,7 @@ AthenaHiveEventLoopMgr::setupTimeKeeper(Property&) { } void -AthenaHiveEventLoopMgr::setClearStorePolicy(Property&) { +AthenaHiveEventLoopMgr::setClearStorePolicy(Gaudi::Details::PropertyBase&) { const std::string& policyName = m_clearStorePolicy.value(); if ( policyName != "BeginEvent" && @@ -390,7 +390,7 @@ AthenaHiveEventLoopMgr::setClearStorePolicy(Property&) { } void -AthenaHiveEventLoopMgr::setupPreSelectTools(Property&) { +AthenaHiveEventLoopMgr::setupPreSelectTools(Gaudi::Details::PropertyBase&) { m_toolInvoke.clear(); m_toolReject.clear(); diff --git a/Control/AthenaServices/src/AthenaHiveEventLoopMgr.h b/Control/AthenaServices/src/AthenaHiveEventLoopMgr.h index bcf09819ce8213b0a60eef8c445478d8e6d9a035..c9109cf6bc3230a7721672de996ae9860f54861d 100644 --- a/Control/AthenaServices/src/AthenaHiveEventLoopMgr.h +++ b/Control/AthenaServices/src/AthenaHiveEventLoopMgr.h @@ -15,7 +15,7 @@ #include <vector> #include "GaudiKernel/IEvtSelector.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/MsgStream.h" @@ -118,7 +118,7 @@ protected: /// @property Name of TimeKeeper to use. NONE or empty string (default) means no time limit control on event loop StringProperty m_timeKeeperName; /// @property update handler:sets up the time keeper - void setupTimeKeeper(Property&); + void setupTimeKeeper(Gaudi::Details::PropertyBase&); /// @property Failure mode IntegerProperty m_failureMode; @@ -139,7 +139,7 @@ protected: tool_store m_tools; ///< internal tool store /// property update handler:sets up the Pre-selection tools - void setupPreSelectTools(Property&); + void setupPreSelectTools(Gaudi::Details::PropertyBase&); /// @property configure the policy wrt handling of when 'clear-event-store' /// has to happen: BeginEvent xor EndEvent. @@ -151,7 +151,7 @@ protected: /// property update handler:set the clear-store policy value and check its /// value. - void setClearStorePolicy(Property& clearStorePolicy); + void setClearStorePolicy(Gaudi::Details::PropertyBase& clearStorePolicy); /// Dump out histograms as needed virtual StatusCode writeHistograms(bool force=false); diff --git a/Control/AthenaServices/src/AthenaJobOptionsSvc.cxx b/Control/AthenaServices/src/AthenaJobOptionsSvc.cxx index 4ae151e7decf462cb58118ff0ce7b2f22f44b052..d240557213aab45edab3d236f53976ba179cc1a6 100644 --- a/Control/AthenaServices/src/AthenaJobOptionsSvc.cxx +++ b/Control/AthenaServices/src/AthenaJobOptionsSvc.cxx @@ -18,7 +18,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/SmartIF.h" #include "GaudiKernel/System.h" #include "GaudiKernel/IAlgTool.h" @@ -28,7 +28,7 @@ namespace Athena { - std::string pythonize_value(const Property* prop); + std::string pythonize_value(const Gaudi::Details::PropertyBase* prop); /////////////////////////////////////////////////////////////////// // Public methods: @@ -173,7 +173,7 @@ JobOptionsSvc::queryInterface(const InterfaceID& riid, void** ppvInterface) /////////////////////////////////////////////////////////////////// void -JobOptionsSvc::propertyHandler(Property& p) +JobOptionsSvc::propertyHandler(Gaudi::Details::PropertyBase& p) { if (!m_jobosvc.retrieve().isSuccess()) { ATH_MSG_ERROR("could not retrieve service [" @@ -216,8 +216,8 @@ JobOptionsSvc::setMyProperties( const std::string& client, IProperty* me ) fprintf(m_cat_fd, "\n%s'%s' : {\n", _INDENT, client.c_str()); fprintf(m_cat_fd, "%s'props': {\n", _INDENT _INDENT); - const std::vector<Property*>& props = me->getProperties(); - for ( std::vector<Property*>::const_iterator + const std::vector<Gaudi::Details::PropertyBase*>& props = me->getProperties(); + for ( std::vector<Gaudi::Details::PropertyBase*>::const_iterator iprop = props.begin(), iend = props.end(); iprop != iend; @@ -302,7 +302,7 @@ JobOptionsSvc::setMyProperties( const std::string& client, IProperty* me ) /// Add a property into the JobOptions catalog StatusCode JobOptionsSvc::addPropertyToCatalogue( const std::string& client, - const Property& property ) + const Gaudi::Details::PropertyBase& property ) { return m_jobosvc->addPropertyToCatalogue(client, property); } @@ -351,7 +351,7 @@ JobOptionsSvc::readOptions( const std::string& file , std::string -pythonize_value(const Property* p) +pythonize_value(const Gaudi::Details::PropertyBase* p) { std::string pvalue = p->toString(); const std::type_info& ti = *p->type_info(); diff --git a/Control/AthenaServices/src/AthenaJobOptionsSvc.h b/Control/AthenaServices/src/AthenaJobOptionsSvc.h index cb37443d7e48133845112fad4cc529c553f2a51f..8a75ea2d077e87d97889bdd488769fdc351456e9 100644 --- a/Control/AthenaServices/src/AthenaJobOptionsSvc.h +++ b/Control/AthenaServices/src/AthenaJobOptionsSvc.h @@ -72,7 +72,7 @@ class JobOptionsSvc /// Add a property into the JobOptions catalog virtual StatusCode addPropertyToCatalogue( const std::string& client, - const Property& property ); + const Gaudi::Details::PropertyBase& property ); /// Remove a property from the JobOptions catalog virtual StatusCode removePropertyFromCatalogue( const std::string& client, const std::string& name ); @@ -118,7 +118,7 @@ class JobOptionsSvc JobOptionsSvc(); /// Property handler - void propertyHandler(Property& p); + void propertyHandler(Gaudi::Details::PropertyBase& p); /// handle to the "real" @c IJobOptionsSvc we are proxying ServiceHandle<IJobOptionsSvc> m_jobosvc; diff --git a/Control/AthenaServices/src/AthenaMtesEventLoopMgr.cxx b/Control/AthenaServices/src/AthenaMtesEventLoopMgr.cxx index dd0c0420b738cf26063522592afa0a33f865f1f1..fa97ddab83badd89cfbb1b6e17480b489c01c11d 100644 --- a/Control/AthenaServices/src/AthenaMtesEventLoopMgr.cxx +++ b/Control/AthenaServices/src/AthenaMtesEventLoopMgr.cxx @@ -201,7 +201,7 @@ StatusCode AthenaMtesEventLoopMgr::initialize() error() << "Could not dcast HistPersSvc to a Service" << endmsg; } else { - const Property &prop = s->getProperty("OutputFile"); + const Gaudi::Details::PropertyBase &prop = s->getProperty("OutputFile"); std::string val; try { const StringProperty &sprop = dynamic_cast<const StringProperty&>(prop); @@ -309,7 +309,7 @@ AthenaMtesEventLoopMgr::eventStore() const { // property handlers //========================================================================= void -AthenaMtesEventLoopMgr::setupTimeKeeper(Property&) { +AthenaMtesEventLoopMgr::setupTimeKeeper(Gaudi::Details::PropertyBase&) { const std::string& tkName(m_timeKeeperName.value()); // We do not expect a TimeKeeper necessarily being declared if( tkName != "NONE" && tkName.length() != 0) { @@ -322,7 +322,7 @@ AthenaMtesEventLoopMgr::setupTimeKeeper(Property&) { } void -AthenaMtesEventLoopMgr::setClearStorePolicy(Property&) { +AthenaMtesEventLoopMgr::setClearStorePolicy(Gaudi::Details::PropertyBase&) { const std::string& policyName = m_clearStorePolicy.value(); if ( policyName != "BeginEvent" && @@ -341,7 +341,7 @@ AthenaMtesEventLoopMgr::setClearStorePolicy(Property&) { } void -AthenaMtesEventLoopMgr::setupPreSelectTools(Property&) { +AthenaMtesEventLoopMgr::setupPreSelectTools(Gaudi::Details::PropertyBase&) { m_toolInvoke.clear(); m_toolReject.clear(); diff --git a/Control/AthenaServices/src/AthenaMtesEventLoopMgr.h b/Control/AthenaServices/src/AthenaMtesEventLoopMgr.h index 12e7fbaed03b8e3b47fd07015ae45c2acf644bb0..8b6e787d5441a31b5f68199c9be6569cbcbca7e2 100644 --- a/Control/AthenaServices/src/AthenaMtesEventLoopMgr.h +++ b/Control/AthenaServices/src/AthenaMtesEventLoopMgr.h @@ -8,7 +8,7 @@ #define ATHENASERVICES_ATHENAMTESEVENTLOOPMGR_H #include "GaudiKernel/IEvtSelector.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/MinimalEventLoopMgr.h" @@ -100,7 +100,7 @@ protected: /// @property Name of TimeKeeper to use. NONE or empty string (default) means no time limit control on event loop StringProperty m_timeKeeperName; /// @property update handler:sets up the time keeper - void setupTimeKeeper(Property&); + void setupTimeKeeper(Gaudi::Details::PropertyBase&); /// @property Failure mode IntegerProperty m_failureMode; @@ -121,7 +121,7 @@ protected: tool_store m_tools; ///< internal tool store /// property update handler:sets up the Pre-selection tools - void setupPreSelectTools(Property&); + void setupPreSelectTools(Gaudi::Details::PropertyBase&); /// @property configure the policy wrt handling of when 'clear-event-store' /// has to happen: BeginEvent xor EndEvent. @@ -133,7 +133,7 @@ protected: /// property update handler:set the clear-store policy value and check its /// value. - void setClearStorePolicy(Property& clearStorePolicy); + void setClearStorePolicy(Gaudi::Details::PropertyBase& clearStorePolicy); /// Dump out histograms as needed virtual StatusCode writeHistograms(bool force=false); diff --git a/Control/AthenaServices/src/AthenaOutputStream.cxx b/Control/AthenaServices/src/AthenaOutputStream.cxx index 973d575a279e6ff3d6ad4e8a09417c430943c9c7..8771351fa2f623c110efe3fe02510968d013255e 100644 --- a/Control/AthenaServices/src/AthenaOutputStream.cxx +++ b/Control/AthenaServices/src/AthenaOutputStream.cxx @@ -291,10 +291,18 @@ StatusCode AthenaOutputStream::initialize() { } // Check compression settings and print some information about the configuration - if(m_compressionBitsHigh < 5) { + // Both should be between [5, 23] and high compression should be <= low compression + if(m_compressionBitsHigh < 5 || m_compressionBitsHigh > 23) { ATH_MSG_INFO("Float compression mantissa bits for high compression " << - "(" << m_compressionBitsHigh << ") is too low, setting it to 5."); - m_compressionBitsHigh = 5; + "(" << m_compressionBitsHigh << ") is outside the allowed range of [5, 23]."); + ATH_MSG_INFO("Setting it to the appropriate limit."); + m_compressionBitsHigh = m_compressionBitsHigh < 5 ? 5 : 23; + } + if(m_compressionBitsLow < 5 || m_compressionBitsLow > 23) { + ATH_MSG_INFO("Float compression mantissa bits for low compression " << + "(" << m_compressionBitsLow << ") is outside the allowed range of [5, 23]."); + ATH_MSG_INFO("Setting it to the appropriate limit."); + m_compressionBitsLow = m_compressionBitsLow < 5 ? 5 : 23; } if(m_compressionBitsLow < m_compressionBitsHigh) { ATH_MSG_INFO("Float compression mantissa bits for low compression " << @@ -1039,7 +1047,7 @@ void AthenaOutputStream::handleVariableSelection (SG::IAuxStoreIO& auxio, } -void AthenaOutputStream::itemListHandler(Property& /* theProp */) { +void AthenaOutputStream::itemListHandler(Gaudi::Details::PropertyBase& /* theProp */) { // Assuming concrete SG::Folder also has an itemList property IProperty *pAsIProp(nullptr); if ((m_p2BWritten.retrieve()).isFailure() || @@ -1049,7 +1057,7 @@ void AthenaOutputStream::itemListHandler(Property& /* theProp */) { } } -void AthenaOutputStream::excludeListHandler(Property& /* theProp */) { +void AthenaOutputStream::excludeListHandler(Gaudi::Details::PropertyBase& /* theProp */) { IProperty *pAsIProp(nullptr); if ((m_decoder.retrieve()).isFailure() || nullptr == (pAsIProp = dynamic_cast<IProperty*>(&*m_decoder)) || @@ -1058,7 +1066,7 @@ void AthenaOutputStream::excludeListHandler(Property& /* theProp */) { } } -void AthenaOutputStream::compressionListHandlerHigh(Property& /* theProp */) { +void AthenaOutputStream::compressionListHandlerHigh(Gaudi::Details::PropertyBase& /* theProp */) { IProperty *pAsIProp(nullptr); if ((m_compressionDecoderHigh.retrieve()).isFailure() || nullptr == (pAsIProp = dynamic_cast<IProperty*>(&*m_compressionDecoderHigh)) || @@ -1067,7 +1075,7 @@ void AthenaOutputStream::compressionListHandlerHigh(Property& /* theProp */) { } } -void AthenaOutputStream::compressionListHandlerLow(Property& /* theProp */) { +void AthenaOutputStream::compressionListHandlerLow(Gaudi::Details::PropertyBase& /* theProp */) { IProperty *pAsIProp(nullptr); if ((m_compressionDecoderLow.retrieve()).isFailure() || nullptr == (pAsIProp = dynamic_cast<IProperty*>(&*m_compressionDecoderLow)) || diff --git a/Control/AthenaServices/src/AthenaOutputStream.h b/Control/AthenaServices/src/AthenaOutputStream.h index dee78c511c8aa76e023425e3f3bf4da83a8c9aca..ae7ad6ae5d8bb5096c6e76c63b2b2e96c6094665 100644 --- a/Control/AthenaServices/src/AthenaOutputStream.h +++ b/Control/AthenaServices/src/AthenaOutputStream.h @@ -17,7 +17,7 @@ // Required for inheritance #include "GaudiKernel/IDataSelector.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" @@ -166,13 +166,13 @@ private: protected: /// Handler for ItemNames Property - void itemListHandler(Property& /* theProp */); + void itemListHandler(Gaudi::Details::PropertyBase& /* theProp */); /// Handler for ItemNames Property - void excludeListHandler(Property& /* theProp */); + void excludeListHandler(Gaudi::Details::PropertyBase& /* theProp */); /// Handler for ItemNames Property - void compressionListHandlerHigh(Property& /* theProp */); + void compressionListHandlerHigh(Gaudi::Details::PropertyBase& /* theProp */); /// Handler for ItemNames Property - void compressionListHandlerLow(Property& /* theProp */); + void compressionListHandlerLow(Gaudi::Details::PropertyBase& /* theProp */); public: typedef std::vector<std::pair<std::string, std::string> > TypeKeyPairs; diff --git a/Control/AthenaServices/src/CoreDumpSvc.cxx b/Control/AthenaServices/src/CoreDumpSvc.cxx index a82b0bd65c577e291d8ca237f8a2bd771d085637..e210dd6813128233a24bfb2594ca787fa8aa6294 100644 --- a/Control/AthenaServices/src/CoreDumpSvc.cxx +++ b/Control/AthenaServices/src/CoreDumpSvc.cxx @@ -33,7 +33,7 @@ #include "TSystem.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IAlgorithm.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/IAlgContextSvc.h" @@ -186,7 +186,7 @@ CoreDumpSvc::~CoreDumpSvc() CoreDumpSvcHandler::coreDumpSvc = nullptr; } -void CoreDumpSvc::propertyHandler(Property& p) +void CoreDumpSvc::propertyHandler(Gaudi::Details::PropertyBase& p) { CoreDumpSvcHandler::callOldHandler = m_callOldHandler; CoreDumpSvcHandler::stackTrace = m_stackTrace; diff --git a/Control/AthenaServices/src/CoreDumpSvc.h b/Control/AthenaServices/src/CoreDumpSvc.h index d57e1030466350498a6f1f11cfb1b9284da85554..56dd1ee3d21afbd0e97bf74c2ffd0ec6eb5a0038 100644 --- a/Control/AthenaServices/src/CoreDumpSvc.h +++ b/Control/AthenaServices/src/CoreDumpSvc.h @@ -122,7 +122,7 @@ private: ///@} /// Property handler - void propertyHandler(Property& p); + void propertyHandler(Gaudi::Details::PropertyBase& p); /// Print core dump records to configured stream void print(); diff --git a/Control/AthenaServices/src/EvtIdModifierSvc.cxx b/Control/AthenaServices/src/EvtIdModifierSvc.cxx index c87c7d397f81a9ee751eb86c4a6551984beb7762..699b0481f1cbd9335d1fd5b3a463a5eaaa379afe 100644 --- a/Control/AthenaServices/src/EvtIdModifierSvc.cxx +++ b/Control/AthenaServices/src/EvtIdModifierSvc.cxx @@ -16,7 +16,7 @@ #include <set> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "StoreGate/StoreGateSvc.h" diff --git a/Control/AthenaServices/src/FPEControlSvc.cxx b/Control/AthenaServices/src/FPEControlSvc.cxx index 18918a7b3de673a8d9870cdcf1b21665e0f4155b..1b6c7e370be0b887e80b609905e4990cfb5aedf6 100644 --- a/Control/AthenaServices/src/FPEControlSvc.cxx +++ b/Control/AthenaServices/src/FPEControlSvc.cxx @@ -152,7 +152,7 @@ std::string mask_to_string (int mask) /** * @brief Property change handler. */ -void FPEControlSvc::prophand (Property& /*prop*/) +void FPEControlSvc::prophand (Gaudi::Details::PropertyBase& /*prop*/) { if (!m_haveEnv) { // Save the current FP environment. diff --git a/Control/AthenaServices/src/FPEControlSvc.h b/Control/AthenaServices/src/FPEControlSvc.h index bc5d7a1e35067b4678d8acabc289c90c84aefdc5..96d42d34abda928ade6e5009ce730d9c75be006d 100644 --- a/Control/AthenaServices/src/FPEControlSvc.h +++ b/Control/AthenaServices/src/FPEControlSvc.h @@ -19,7 +19,7 @@ #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ServiceHandle.h" #include <fenv.h> @@ -98,7 +98,7 @@ private: std::string m_feSetRounding; /// Property change handler. - void prophand (Property& prop); + void prophand (Gaudi::Details::PropertyBase& prop); }; #endif // not ATHENASERVICES_FPECONTROLSVC_H diff --git a/Control/AthenaServices/src/LoggedMessageSvc.cxx b/Control/AthenaServices/src/LoggedMessageSvc.cxx index 28447720999f9f0aade68c4b9e4dc9c1e45060e8..3e2c884f502628548f9585f6c5f17756dffc7a0d 100644 --- a/Control/AthenaServices/src/LoggedMessageSvc.cxx +++ b/Control/AthenaServices/src/LoggedMessageSvc.cxx @@ -161,7 +161,7 @@ StatusCode LoggedMessageSvc::reinitialize() { //############################################################################# -void LoggedMessageSvc::initColors(Property& /*prop*/) { +void LoggedMessageSvc::initColors(Gaudi::Details::PropertyBase& /*prop*/) { if (m_color == true) { @@ -203,7 +203,7 @@ void LoggedMessageSvc::initColors(Property& /*prop*/) { //############################################################################# -void LoggedMessageSvc::setupColors(Property& prop) { +void LoggedMessageSvc::setupColors(Gaudi::Details::PropertyBase& prop) { if (! m_color) return; @@ -255,7 +255,7 @@ void LoggedMessageSvc::setupColors(Property& prop) { } //############################################################################# -void LoggedMessageSvc::setupLimits(Property& prop) { +void LoggedMessageSvc::setupLimits(Gaudi::Details::PropertyBase& prop) { //int ic = 0; if (prop.name() == "fatalLimit") { @@ -292,7 +292,7 @@ void LoggedMessageSvc::setupLimits(Property& prop) { } //############################################################################# -void LoggedMessageSvc::setupThreshold(Property& prop) { +void LoggedMessageSvc::setupThreshold(Gaudi::Details::PropertyBase& prop) { int ic = 0; if (prop.name() == "setFatal") { @@ -346,7 +346,7 @@ void LoggedMessageSvc::setupThreshold(Property& prop) { //############################################################################# -void LoggedMessageSvc::setupInactCount(Property& prop) { +void LoggedMessageSvc::setupInactCount(Gaudi::Details::PropertyBase& prop) { if (prop.name() == "countInactive") { #ifndef NDEBUG BooleanProperty *p = dynamic_cast<BooleanProperty*>(&prop); diff --git a/Control/AthenaServices/src/LoggedMessageSvc.h b/Control/AthenaServices/src/LoggedMessageSvc.h index 6711834a170687748bdedb2559b0080d5a2ca274..9899f6df5935045f1ed233396a3375639074dfb3 100644 --- a/Control/AthenaServices/src/LoggedMessageSvc.h +++ b/Control/AthenaServices/src/LoggedMessageSvc.h @@ -18,7 +18,7 @@ #include "GaudiKernel/Service.h" #include "GaudiKernel/IMessageSvc.h" #include "GaudiKernel/Message.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthService.h" #include "AthenaKernel/ILoggedMessageSvc.h" @@ -188,11 +188,11 @@ private: typedef std::map<std::string, std::ostream*> LoggedStreamsMap_t; LoggedStreamsMap_t m_loggedStreams; - void initColors(Property& prop); - void setupColors(Property& prop); - void setupLimits(Property& prop); - void setupThreshold(Property& prop); - void setupInactCount(Property& prop); + void initColors(Gaudi::Details::PropertyBase& prop); + void setupColors(Gaudi::Details::PropertyBase& prop); + void setupLimits(Gaudi::Details::PropertyBase& prop); + void setupThreshold(Gaudi::Details::PropertyBase& prop); + void setupInactCount(Gaudi::Details::PropertyBase& prop); void setupLogStreams(); diff --git a/Control/AthenaServices/src/MemoryRescueSvc.h b/Control/AthenaServices/src/MemoryRescueSvc.h index 70cc901f61b0dc6df712d4d1ce14dfea7f80cfc2..85d14207694a9da1b35a0a0c706bff2e2b079987 100644 --- a/Control/AthenaServices/src/MemoryRescueSvc.h +++ b/Control/AthenaServices/src/MemoryRescueSvc.h @@ -20,7 +20,7 @@ #endif #ifndef GAUDIKERNEL_PROPERTY_H -# include "GaudiKernel/Property.h" +# include "Gaudi/Property.h" #endif diff --git a/Control/AthenaServices/src/MetaDataSvc.cxx b/Control/AthenaServices/src/MetaDataSvc.cxx index 3a96556106056cd046bfec0976e37bf611a0d3ec..b7a084be19577e80a0c410bd3a1ede02123a8167 100644 --- a/Control/AthenaServices/src/MetaDataSvc.cxx +++ b/Control/AthenaServices/src/MetaDataSvc.cxx @@ -146,9 +146,9 @@ StatusCode MetaDataSvc::initialize() { if (!joSvc.retrieve().isSuccess()) { ATH_MSG_WARNING("Cannot get JobOptionsSvc."); } else { - const std::vector<const Property*>* evtselProps = joSvc->getProperties("EventSelector"); + const std::vector<const Gaudi::Details::PropertyBase*>* evtselProps = joSvc->getProperties("EventSelector"); if (evtselProps != nullptr) { - for (std::vector<const Property*>::const_iterator iter = evtselProps->begin(), + for (std::vector<const Gaudi::Details::PropertyBase*>::const_iterator iter = evtselProps->begin(), last = evtselProps->end(); iter != last; iter++) { if ((*iter)->name() == "InputCollections") { // Get EventSelector to force in-time initialization and FirstInputFile incident diff --git a/Control/AthenaServices/src/MetaDataSvc.h b/Control/AthenaServices/src/MetaDataSvc.h index 2809547d1192ed85117e16e9b3693acf95d4d0c7..5ee9cf87d65d9e0c84b2c8173d62832f3d07066f 100644 --- a/Control/AthenaServices/src/MetaDataSvc.h +++ b/Control/AthenaServices/src/MetaDataSvc.h @@ -12,7 +12,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" // no forward decl: typedef +#include "Gaudi/Property.h" // no forward decl: typedef #include "GaudiKernel/IIncidentListener.h" #include "GaudiKernel/IIoComponent.h" #include "GaudiKernel/IFileMgr.h" // for FILEMGR_CALLBACK_ARGS diff --git a/Control/AthenaServices/src/MixingEventSelector.cxx b/Control/AthenaServices/src/MixingEventSelector.cxx index e009192398c2b9b0ac49865332899014fd1004ef..219ec8739eac601a71e7346bda37ad38b33ad516 100644 --- a/Control/AthenaServices/src/MixingEventSelector.cxx +++ b/Control/AthenaServices/src/MixingEventSelector.cxx @@ -124,7 +124,7 @@ MixingEventSelector::finalize() { void -MixingEventSelector::setUpTriggerList(Property&) { +MixingEventSelector::setUpTriggerList(Gaudi::Details::PropertyBase&) { m_trigList = TriggerList(); for_each(m_triggerListProp.value().begin(), m_triggerListProp.value().end(), bind1st(mem_fun(&MixingEventSelector::decodeTrigger), this)); diff --git a/Control/AthenaServices/src/MixingEventSelector.h b/Control/AthenaServices/src/MixingEventSelector.h index bf486ec6717ac55225566917c893a84f1e056833..1bbbe3ca5e90a6a6c686ce8d657d2391fde059d3 100644 --- a/Control/AthenaServices/src/MixingEventSelector.h +++ b/Control/AthenaServices/src/MixingEventSelector.h @@ -27,7 +27,7 @@ #include "GaudiKernel/IConverter.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/Property.h" /*StringArrayProperty*/ +#include "Gaudi/Property.h" /*StringArrayProperty*/ class ISvcLocator; @@ -136,7 +136,7 @@ public: /// TriggerList property call-back. Decode TriggerList, obtain selector ptrs /// and store them alongside fractions in m_trigList - void setUpTriggerList(Property& trigList); + void setUpTriggerList(Gaudi::Details::PropertyBase& trigList); /// functor that creates a Trigger object and adds it to m_trigList void decodeTrigger(std::string triggDescr); diff --git a/Control/AthenaServices/src/MultipleEventLoopMgr.h b/Control/AthenaServices/src/MultipleEventLoopMgr.h index 3f07c7b2ed8aa6d36a98075797d5860f275c2542..a1d1374d2fed42570b35baab2b0e89d3f61c58fe 100644 --- a/Control/AthenaServices/src/MultipleEventLoopMgr.h +++ b/Control/AthenaServices/src/MultipleEventLoopMgr.h @@ -14,7 +14,7 @@ #include <string> #ifndef GAUDIKERNEL_PROPERTY_H -# include "GaudiKernel/Property.h" +# include "Gaudi/Property.h" #endif #ifndef GAUDIKERNEL_SERVICEHANDLE_H # include "GaudiKernel/ServiceHandle.h" diff --git a/Control/AthenaServices/src/OutputStreamSequencerSvc.h b/Control/AthenaServices/src/OutputStreamSequencerSvc.h index 893bd27b04cf2a830c723103f0dae000a23fb526..f1e74b1a5c4a837e7fee0d264815c7e29cc0c635 100644 --- a/Control/AthenaServices/src/OutputStreamSequencerSvc.h +++ b/Control/AthenaServices/src/OutputStreamSequencerSvc.h @@ -11,7 +11,7 @@ **/ #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" // no forward decl: typedef +#include "Gaudi/Property.h" // no forward decl: typedef #include "GaudiKernel/IIncidentListener.h" #include "AthenaBaseComps/AthService.h" diff --git a/Control/AthenaServices/src/PageAccessControlSvc.h b/Control/AthenaServices/src/PageAccessControlSvc.h index 5469bffc30da622ef981f4140fc953e2488f2087..1cd8ab6d2035908806a416aca517fdcac248b0f5 100644 --- a/Control/AthenaServices/src/PageAccessControlSvc.h +++ b/Control/AthenaServices/src/PageAccessControlSvc.h @@ -23,7 +23,7 @@ #include "AthenaBaseComps/AthService.h" #include "CxxUtils/PageAccessControl.h" #include "CxxUtils/PtrAccessSEGVHandler.h" -#include "GaudiKernel/Property.h" /*BooleanProperty*/ +#include "Gaudi/Property.h" /*BooleanProperty*/ // Forward declarations template <class TYPE> class SvcFactory; diff --git a/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.cxx b/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.cxx index 2d4326defe214adf8ae58c023f6b986f0499c614..cc78f1de1a1c7b9475709de6e4c880014cfa5e23 100644 --- a/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.cxx +++ b/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.cxx @@ -31,7 +31,7 @@ SimplePOSIXTimeKeeperSvc::queryInterface(const InterfaceID& riid, } void -SimplePOSIXTimeKeeperSvc::decodeAllocTime(Property&) { +SimplePOSIXTimeKeeperSvc::decodeAllocTime(Gaudi::Details::PropertyBase&) { m_allocTime = 100 * m_allocTimeProp; } diff --git a/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.h b/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.h index 4d8a52527f5b6b10ceefc218fe7b8fad65e0f2f8..f84bbfb6260cfcbd96d66a76c5eadbcb7f22b560 100644 --- a/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.h +++ b/Control/AthenaServices/src/SimplePOSIXTimeKeeperSvc.h @@ -10,7 +10,7 @@ #include "AthenaKernel/POSIXTimeKeeper.h" #endif #ifndef GAUDIKERNEL_PROPERTY_H - #include "GaudiKernel/Property.h" + #include "Gaudi/Property.h" #endif #ifndef ATHENABASECOMPS_ATHSERVICE_H #include "AthenaBaseComps/AthService.h" @@ -59,7 +59,7 @@ public: // Standard Destructor virtual ~SimplePOSIXTimeKeeperSvc(); private: - void decodeAllocTime(Property&); + void decodeAllocTime(Gaudi::Details::PropertyBase&); time_t m_allocTime; ///< allocated job cpu time (in 1/100 sec) IntegerProperty m_allocTimeProp;///< property: alloc job cpu time (in sec) }; diff --git a/Control/AthenaServices/src/TestRandomSeqAlg.h b/Control/AthenaServices/src/TestRandomSeqAlg.h index 75f3d23bd24029652967cf0ad8b9e8d32c1e7ab1..83a1eff1a0627d328a3c59bbd5d23aa0552201d2 100644 --- a/Control/AthenaServices/src/TestRandomSeqAlg.h +++ b/Control/AthenaServices/src/TestRandomSeqAlg.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgorithm.h" #include "AthenaKernel/IAtRndmGenSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" namespace CLHEP { class HepRandomEngine; } /** @class TestRandomSegAlg diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3MT.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3MT.ref index 64298519096b798deefc81dff68586cef7633adf..83c89e8eb99b2f50402d1b8c1dca35b5a619a9e2 100644 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3MT.ref +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3MT.ref @@ -195,7 +195,6 @@ PrecedenceSvc 0 INFO EndIncFiringAlg [Alg] [n= 0] IncidentProcAlg2 [Alg] [n= 1] [unclonable] AthOutSeq [Seq] [Concurrent] - AthRegSeq [Seq] [Concurrent] AthenaHiveEventLoopMgr 0 INFO Setup EventSelector service EventSelector ApplicationMgr 0 INFO Application Manager Initialized successfully diff --git a/Control/GaudiSequencer/src/AthEventCounter.h b/Control/GaudiSequencer/src/AthEventCounter.h index 053c86294ae5be701a4233e58891b4bb808030c4..eda3a324da6f4f035e03fb5639dd90bb6ead931e 100644 --- a/Control/GaudiSequencer/src/AthEventCounter.h +++ b/Control/GaudiSequencer/src/AthEventCounter.h @@ -12,7 +12,7 @@ #define GAUDISEQUENCER_ATHEVENTCOUNTER_H #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class AthEventCounter : public AthAlgorithm { diff --git a/Control/GaudiSequencer/src/AthPrescaler.h b/Control/GaudiSequencer/src/AthPrescaler.h index d7ac062ef876d1764700b10611d839927cf98cf2..e22d3d270458adeb64c6b2362cc92914de30931f 100644 --- a/Control/GaudiSequencer/src/AthPrescaler.h +++ b/Control/GaudiSequencer/src/AthPrescaler.h @@ -13,7 +13,7 @@ #define GAUDISEQUENCER_ATHPRESCALER_H #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class AthPrescaler:public AthAlgorithm { diff --git a/Control/GaudiSequencer/src/AthRetrySequencer.cxx b/Control/GaudiSequencer/src/AthRetrySequencer.cxx index c7a9b0f6d4c353288c75e177171bc33e4a583224..71fe5118daede3a9aca4c7220e394df8ed32e885 100644 --- a/Control/GaudiSequencer/src/AthRetrySequencer.cxx +++ b/Control/GaudiSequencer/src/AthRetrySequencer.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" diff --git a/Control/GaudiSequencer/src/AthSequencer.cxx b/Control/GaudiSequencer/src/AthSequencer.cxx index 555f25d1159169b50918575aa015056fe478490d..ae51a3cba431623f452c202d5fda1e8a7b958474 100644 --- a/Control/GaudiSequencer/src/AthSequencer.cxx +++ b/Control/GaudiSequencer/src/AthSequencer.cxx @@ -364,7 +364,7 @@ AthSequencer::decodeMemberNames( ) } void -AthSequencer::membershipHandler( Property& /* theProp */ ) +AthSequencer::membershipHandler( Gaudi::Details::PropertyBase& /* theProp */ ) { if ( isInitialized() ) decodeMemberNames().ignore(); } diff --git a/Control/GaudiSequencer/src/AthSequencer.h b/Control/GaudiSequencer/src/AthSequencer.h index a78b225c548e78bc218bfe96d6a0a88ef193e521..393633a5331dd417e152094e96c40598ab731940 100644 --- a/Control/GaudiSequencer/src/AthSequencer.h +++ b/Control/GaudiSequencer/src/AthSequencer.h @@ -16,7 +16,7 @@ #include "AthenaBaseComps/AthCommonDataStore.h" #include "AthenaBaseComps/AthCommonMsg.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Gaudi/Sequence.h" #include <setjmp.h> @@ -124,13 +124,13 @@ public: StatusCode decodeMemberNames( ); /// "Members" property handler - void membershipHandler( Property& theProp ); + void membershipHandler( Gaudi::Details::PropertyBase& theProp ); /// Decode branch member naem list StatusCode decodeBranchMemberNames( ); /// "BranchMembers" propertry handler - void branchMembershipHandler( Property& theProp ); + void branchMembershipHandler( Gaudi::Details::PropertyBase& theProp ); protected: diff --git a/Control/IOVSvc/src/CondInputLoader.cxx b/Control/IOVSvc/src/CondInputLoader.cxx index fceda41da3e96f29da576605a974bd401e0cf2c8..ff3f6acc4d2151a355657bb6ab02bb09284ee72b 100644 --- a/Control/IOVSvc/src/CondInputLoader.cxx +++ b/Control/IOVSvc/src/CondInputLoader.cxx @@ -11,7 +11,7 @@ #include "CondInputLoader.h" // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IClassIDSvc.h" #include "StoreGate/ReadHandle.h" #include "AthenaKernel/errorcheck.h" @@ -66,7 +66,7 @@ CondInputLoader::CondInputLoader( const std::string& name, // Property declaration // auto props = getProperties(); - for( Property* prop : props ) { + for( Gaudi::Details::PropertyBase* prop : props ) { if (prop->name() == "ExtraOutputs" || prop->name() == "ExtraInputs") { prop->declareUpdateHandler (&CondInputLoader::extraDeps_update_handler, this); @@ -165,7 +165,7 @@ CondInputLoader::initialize() // Update the properties, set the ExtraOutputs for Alg deps - const Property &p = getProperty("Load"); + const Gaudi::Details::PropertyBase &p = getProperty("Load"); ATH_MSG_DEBUG("setting prop ExtraOutputs to " << p.toString()); if (!setProperty("ExtraOutputs", p).isSuccess()) { @@ -357,7 +357,7 @@ CondInputLoader::execute() // need to override the handling of the DataObjIDs that's done by // AthAlgorithm, so we don't inject the name of the Default Store void -CondInputLoader::extraDeps_update_handler( Property& /*ExtraDeps*/ ) +CondInputLoader::extraDeps_update_handler( Gaudi::Details::PropertyBase& /*ExtraDeps*/ ) { // do nothing } diff --git a/Control/IOVSvc/src/CondInputLoader.h b/Control/IOVSvc/src/CondInputLoader.h index aec51a8ff34c90008863f1caee6dbe396831a144..a02804346a30e7f89a1aa5cfcbdc93bece694dbd 100644 --- a/Control/IOVSvc/src/CondInputLoader.h +++ b/Control/IOVSvc/src/CondInputLoader.h @@ -43,7 +43,7 @@ class CondInputLoader // need to override the ExtraInputs/Outputs property handler // from AthAlgorithm - void extraDeps_update_handler(Property&); + void extraDeps_update_handler(Gaudi::Details::PropertyBase&); /// Containers Gaudi::Property<DataObjIDColl> m_load{this,"Load",{}, diff --git a/Control/PerformanceMonitoring/PerfMonComps/src/CallGraphBuilderSvc.cxx b/Control/PerformanceMonitoring/PerfMonComps/src/CallGraphBuilderSvc.cxx index 067e3a34a801953f4a30a043d13210d19ce357d9..bcaf76a03d53227c61dec54ff4441c7e048c9728 100644 --- a/Control/PerformanceMonitoring/PerfMonComps/src/CallGraphBuilderSvc.cxx +++ b/Control/PerformanceMonitoring/PerfMonComps/src/CallGraphBuilderSvc.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // PerfMonComps includes #include "CallGraphBuilderSvc.h" diff --git a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonStorePayloadMon.cxx b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonStorePayloadMon.cxx index e26148cfe15e0a78c9884f9f24423d3ecd7c54c1..53160ac8bb5722224f600b77f7f4f9f1096fe66c 100644 --- a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonStorePayloadMon.cxx +++ b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonStorePayloadMon.cxx @@ -22,7 +22,7 @@ #include <sstream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "SGTools/DataProxy.h" // pmon edm diff --git a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.cxx b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.cxx index 1935602067249404a386ea2f573785dc4d94d24f..045b3030ff2634d39d0b5b1ff74da44a100bc1cb 100644 --- a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.cxx +++ b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.cxx @@ -35,7 +35,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/Incident.h" #include "GaudiKernel/IChronoStatSvc.h" @@ -1095,12 +1095,12 @@ void PerfMonSvc::undeclareAll( const IInterface* iowner ) /////////////////////////////////////////////////////////////////// // Non-const methods: /////////////////////////////////////////////////////////////////// -void PerfMonSvc::setupProfiledAlgList( Property& /*profiledAlgNames*/ ) +void PerfMonSvc::setupProfiledAlgList( Gaudi::Details::PropertyBase& /*profiledAlgNames*/ ) { return; } -void PerfMonSvc::setupIoContainerList( Property& /*ioContainerNames*/ ) +void PerfMonSvc::setupIoContainerList( Gaudi::Details::PropertyBase& /*ioContainerNames*/ ) { } diff --git a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.h b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.h index 1540aa3a340cf0a05ef1beb058ae50ce76c44832..976f515e8bf61fb3c866b513b8864fddb62b35b9 100644 --- a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.h +++ b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonSvc.h @@ -221,10 +221,10 @@ private: PerfMonSvc(); /// callback to synchronize the list of algorithms to be profiled - void setupProfiledAlgList( Property& profiledAlgNames ); + void setupProfiledAlgList( Gaudi::Details::PropertyBase& profiledAlgNames ); /// callback to synchronize the list of I/O containers to be monitored - void setupIoContainerList( Property& ioContainerNames ); + void setupIoContainerList( Gaudi::Details::PropertyBase& ioContainerNames ); /// loop over user-declared variables (via the @c IMonitorSvc interface) /// and poll the data diff --git a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonUtils.cxx b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonUtils.cxx index b90359deb794e2fbc8ef3aff04d36183d23c472b..abff933e1d3c4a8f031941263d0c3973582ab419 100644 --- a/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonUtils.cxx +++ b/Control/PerformanceMonitoring/PerfMonComps/src/PerfMonUtils.cxx @@ -15,7 +15,7 @@ // Framework includes #include "GaudiKernel/IProperty.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/SmartIF.h" #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/IAuditorSvc.h" diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestBasicAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestBasicAlg.cxx index 2fecb7dba4bbd95db98d723b72a8895cda3cc60b..7b7dd67f4042d82cb361c3d98e3e1473b7060add 100755 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestBasicAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestBasicAlg.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "PerfMonKernel/IPerfMonSvc.h" #include "AthenaKernel/CLASS_DEF.h" diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestCpuCruncherAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestCpuCruncherAlg.cxx index b55394d82222dc6e7c2668d2af1c10119e891421..0af3fbe1080026db655fd1a596dbef46f774e74c 100644 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestCpuCruncherAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestCpuCruncherAlg.cxx @@ -15,7 +15,7 @@ #include <cmath> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/IAtRndmGenSvc.h" // PerfMonTests includes diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestErroneousAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestErroneousAlg.cxx index e14ce41e9fecf94950e9ca31b718c95b532eeda5..ae18a8beeebe42b5608d04e902d8ee8645427149 100644 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestErroneousAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestErroneousAlg.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // PerfMonTests includes #include "PerfMonTestErroneousAlg.h" diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestLeakyAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestLeakyAlg.cxx index 5c33146b40740daea11804a4f15eeb30e2cb6140..71898701b60039ba0472c73d1f8c4d10446e87ab 100755 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestLeakyAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestLeakyAlg.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // PerfMonTests includes #include "PerfMonTestLeakyAlg.h" diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestMallocAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestMallocAlg.cxx index 355a8ec75f1f6ed5ab0d9fc8bd021dc74296fbce..e6be77aa4479d29989a83b5d889e30fee590f655 100644 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestMallocAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestMallocAlg.cxx @@ -14,7 +14,7 @@ #include <vector> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/IAtRndmGenSvc.h" // CLHEP includes diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestManyLeaksAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestManyLeaksAlg.cxx index c85af253a76f5571ab1e0e01a3d7a25e759460a3..223c1e657ec5f13d043ace891faa3ba3e7a8bcff 100755 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestManyLeaksAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestManyLeaksAlg.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // PerfMonTests includes #include "PerfMonTestManyLeaksAlg.h" diff --git a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestNoopAlg.cxx b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestNoopAlg.cxx index bf53de8b2c228fedbb0cd2560be89c0086607450..1db0085ed69e5358f40b39424d75e5ac438400f8 100755 --- a/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestNoopAlg.cxx +++ b/Control/PerformanceMonitoring/PerfMonTests/src/PerfMonTestNoopAlg.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // PerfMonTests includes #include "PerfMonTestNoopAlg.h" diff --git a/Control/PileUpComps/src/ArrayBM.h b/Control/PileUpComps/src/ArrayBM.h index 3ad51af3f3ab31080b00e350d1849d343e1f0577..5ba940eabe3a3788d4a470364ef747733ad03caf 100644 --- a/Control/PileUpComps/src/ArrayBM.h +++ b/Control/PileUpComps/src/ArrayBM.h @@ -15,7 +15,7 @@ * @author Paolo Calafiura - ATLAS Collaboration */ #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "PileUpTools/IBeamIntensity.h" #include "AthenaBaseComps/AthService.h" diff --git a/Control/PileUpComps/src/BkgStreamsCache.cxx b/Control/PileUpComps/src/BkgStreamsCache.cxx index 19c12ac71e410c5bd42229c6af6f0bedcc8f7776..5544502f045bbeacb7d48dc4f6f52a9db1f05731 100644 --- a/Control/PileUpComps/src/BkgStreamsCache.cxx +++ b/Control/PileUpComps/src/BkgStreamsCache.cxx @@ -80,7 +80,7 @@ BkgStreamsCache::~BkgStreamsCache() } void -BkgStreamsCache::PileUpEventTypeHandler(Property&) +BkgStreamsCache::PileUpEventTypeHandler(Gaudi::Details::PropertyBase&) { m_pileUpEventType = xAOD::EventInfo::PileUpInt2Type( m_pileUpEventTypeProp.value() ); } diff --git a/Control/PileUpComps/src/BkgStreamsCache.h b/Control/PileUpComps/src/BkgStreamsCache.h index da3ba4cd572d7d59b82fc7ffe953d3239f45d585..847f710618e71e31b0944fc9853ba642bf5163ec 100644 --- a/Control/PileUpComps/src/BkgStreamsCache.h +++ b/Control/PileUpComps/src/BkgStreamsCache.h @@ -17,7 +17,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "PileUpTools/PileUpStream.h" #include "PileUpTools/IBkgStreamsCache.h" @@ -123,7 +123,7 @@ private: Gaudi::Property<std::string> m_randomStreamName; /// the type of events in this cache Gaudi::CheckedProperty<unsigned short> m_pileUpEventTypeProp; - void PileUpEventTypeHandler(Property&); + void PileUpEventTypeHandler(Gaudi::Details::PropertyBase&); /// the type of events in this cache xAOD::EventInfo::PileUpType m_pileUpEventType; /// subtract from number of events at bunch xing = 0 diff --git a/Control/PileUpComps/src/FixedArrayBM.h b/Control/PileUpComps/src/FixedArrayBM.h index cd038f68d06330882ab1baefae60d3fc29123ec0..f2e9976cb9e76b8066fee786696d4d9360fa92a5 100644 --- a/Control/PileUpComps/src/FixedArrayBM.h +++ b/Control/PileUpComps/src/FixedArrayBM.h @@ -15,7 +15,7 @@ * * @author John Chapman - ATLAS Collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "PileUpTools/IBeamIntensity.h" #include "AthenaBaseComps/AthService.h" diff --git a/Control/PileUpComps/src/LumiProfileSvc.h b/Control/PileUpComps/src/LumiProfileSvc.h index 4596fc73eba488ea6c94bc2d37f753d7d6d0a574..f060ce1423ab8fe5b77bfa0b36de0221c295c90b 100644 --- a/Control/PileUpComps/src/LumiProfileSvc.h +++ b/Control/PileUpComps/src/LumiProfileSvc.h @@ -13,7 +13,7 @@ */ #include "PileUpTools/IBeamLuminosity.h" #include "AthenaBaseComps/AthService.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class LumiProfileSvc : public extends<AthService, IBeamLuminosity> { diff --git a/Control/PileUpComps/src/NoProfileSvc.h b/Control/PileUpComps/src/NoProfileSvc.h index 8194fe2541079df40868638a0881dc86f8e347f6..5aef57ec40bd6847be93f8b77b8a49788f6af9fb 100644 --- a/Control/PileUpComps/src/NoProfileSvc.h +++ b/Control/PileUpComps/src/NoProfileSvc.h @@ -13,7 +13,7 @@ */ #include "PileUpTools/IBeamLuminosity.h" #include "AthenaBaseComps/AthService.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class NoProfileSvc : public extends<AthService, IBeamLuminosity> { diff --git a/Control/PileUpComps/src/PileUpEventLoopMgr.h b/Control/PileUpComps/src/PileUpEventLoopMgr.h index 0dd7117de5d02df9d2669e9755e233778147e60b..22bceb611061dcd02cdb0551ef46df6171351312 100644 --- a/Control/PileUpComps/src/PileUpEventLoopMgr.h +++ b/Control/PileUpComps/src/PileUpEventLoopMgr.h @@ -18,7 +18,7 @@ #include "PileUpTools/PileUpStream.h" // Gaudi headers -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/IAlgExecStateSvc.h" diff --git a/Control/PileUpComps/src/StepArrayBM.h b/Control/PileUpComps/src/StepArrayBM.h index 7ade012693b3873a48b0d0df732ff9b5a66a36d8..858e5a33b808c81e1b19eae70fb3ebd112225c9a 100644 --- a/Control/PileUpComps/src/StepArrayBM.h +++ b/Control/PileUpComps/src/StepArrayBM.h @@ -15,7 +15,7 @@ * $Id: BkgStreamsStepCache.h,v 1.10 2008-08-28 01:11:06 calaf Exp $ * @author Will Buttinger - ATLAS Collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "PileUpTools/IBeamIntensity.h" #include "AthenaBaseComps/AthService.h" diff --git a/Control/PileUpTools/PileUpTools/PileUpMergeSvc.h b/Control/PileUpTools/PileUpTools/PileUpMergeSvc.h index 501b633c81605ffecfca9596c911238b138a9969..9561b3cdd582ba0187c7da2320f92fa564620c26 100755 --- a/Control/PileUpTools/PileUpTools/PileUpMergeSvc.h +++ b/Control/PileUpTools/PileUpTools/PileUpMergeSvc.h @@ -20,7 +20,7 @@ #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/ClassID.h" -#include "GaudiKernel/Property.h" /*StringArrayProperty*/ +#include "Gaudi/Property.h" /*StringArrayProperty*/ #include "GaudiKernel/StatusCode.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" diff --git a/Control/RngComps/src/AtDSFMTGenSvc.h b/Control/RngComps/src/AtDSFMTGenSvc.h index 525a574a795138da357e32bbad1c19d31821b238..5161bb17ced627abc8abaf3ae75e800a8901a1d3 100644 --- a/Control/RngComps/src/AtDSFMTGenSvc.h +++ b/Control/RngComps/src/AtDSFMTGenSvc.h @@ -21,7 +21,7 @@ #include "AthenaBaseComps/AthService.h" #include "CLHEP/Random/RandomEngine.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class IAlgorithm; class ISvcLocator; diff --git a/Control/RngComps/src/AtRanluxGenSvc.h b/Control/RngComps/src/AtRanluxGenSvc.h index 4f05712f3c96c9352f97ab16888e4f59bef275bb..0b247522f6a07c5ebb97a4b74866340c37e79013 100644 --- a/Control/RngComps/src/AtRanluxGenSvc.h +++ b/Control/RngComps/src/AtRanluxGenSvc.h @@ -18,7 +18,7 @@ #include "AthenaKernel/IAtRndmGenSvc.h" #include "GaudiKernel/IIncidentListener.h" #include "AthenaBaseComps/AthService.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Random/Ranlux64Engine.h" diff --git a/Control/SGComps/src/AddressRemappingSvc.h b/Control/SGComps/src/AddressRemappingSvc.h index 51212b90dce24afff118adf1cf3d693851335039..078fe72b1bd9046193c6ff5146cf937278a873a1 100644 --- a/Control/SGComps/src/AddressRemappingSvc.h +++ b/Control/SGComps/src/AddressRemappingSvc.h @@ -15,7 +15,7 @@ #include "GaudiKernel/ClassID.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" // no forward decl: typedef +#include "Gaudi/Property.h" // no forward decl: typedef #include "AthenaKernel/IAddressProvider.h" #include "AthenaKernel/IInputRename.h" #include "AthenaKernel/RCUObject.h" diff --git a/Control/SGComps/src/ProxyProviderSvc.cxx b/Control/SGComps/src/ProxyProviderSvc.cxx index 06a4b847fab8b0d08f892b5b054bc99d37d4be2c..7a433abf7d84f09eb3ee9d1b84a94edc2a6fb70c 100644 --- a/Control/SGComps/src/ProxyProviderSvc.cxx +++ b/Control/SGComps/src/ProxyProviderSvc.cxx @@ -294,7 +294,7 @@ const EventContext& ProxyProviderSvc::contextFromStore (IProxyRegistry& ds) cons void -ProxyProviderSvc::providerNamesPropertyHandler( Property& /*theProp*/ ) { +ProxyProviderSvc::providerNamesPropertyHandler( Gaudi::Details::PropertyBase& /*theProp*/ ) { //add declared providers to the list; std::vector<std::string>::const_iterator iN(m_providerNames.value().begin()); std::vector<std::string>::const_iterator iEnd(m_providerNames.value().end()); diff --git a/Control/SGComps/src/ProxyProviderSvc.h b/Control/SGComps/src/ProxyProviderSvc.h index cedefd94c7e050aa043dbacd76cf8657f57c000e..9b5e876f4558f08a6d66ec0b92c54ce730bba438 100644 --- a/Control/SGComps/src/ProxyProviderSvc.h +++ b/Control/SGComps/src/ProxyProviderSvc.h @@ -16,7 +16,7 @@ #include "AthenaKernel/IProxyProviderSvc.h" #include "AthenaKernel/StoreID.h" -#include "GaudiKernel/Property.h" /*StringArrayProperty*/ +#include "Gaudi/Property.h" /*StringArrayProperty*/ #include "GaudiKernel/StatusCode.h" #include <cassert> #include <list> @@ -103,7 +103,7 @@ private: StringArrayProperty m_providerNames{this,"ProviderNames",{}, "names of the services to be use as address providers","OrderedSet<std::string>"}; /// the handler for m_providerNames - void providerNamesPropertyHandler( Property& theProp ); + void providerNamesPropertyHandler( Gaudi::Details::PropertyBase& theProp ); StatusCode doPreLoadProxies(IProxyRegistry& storeToModify); diff --git a/Control/SGComps/src/SGFolder.h b/Control/SGComps/src/SGFolder.h index 011fdc7a76a9db2bca4c760ea43b9bcba285e84b..ab48af801b58908d79bcd83355d4a6409bb45845 100644 --- a/Control/SGComps/src/SGFolder.h +++ b/Control/SGComps/src/SGFolder.h @@ -92,7 +92,7 @@ namespace SG { ServiceHandle<IClassIDSvc> m_pCLIDSvc; /// property: the list of items (data objects identified by a class name/key pair) StringArrayProperty m_itemList; - void decodeItemList(Property&) { + void decodeItemList(Gaudi::Details::PropertyBase&) { const bool DONTCHECKVALIDCLID(false); updateItemList(DONTCHECKVALIDCLID); } diff --git a/Control/SGComps/src/SGInputLoader.cxx b/Control/SGComps/src/SGInputLoader.cxx index 8e277cc5df3d69c59d62065c11821cf16a516e89..6bc175d0ef462f7fadf8de830c9824c7a9057b98 100644 --- a/Control/SGComps/src/SGInputLoader.cxx +++ b/Control/SGComps/src/SGInputLoader.cxx @@ -11,7 +11,7 @@ #include "SGInputLoader.h" // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/errorcheck.h" #include "StoreGate/VarHandleKey.h" #include "AthenaKernel/StoreID.h" @@ -141,7 +141,7 @@ SGInputLoader::execute() //--------------------------------------------------------------------------------- void -SGInputLoader::loader(Property& p ) { +SGInputLoader::loader(Gaudi::Details::PropertyBase& p ) { ATH_MSG_DEBUG("setting prop ExtraOutputs to " << p.toString()); diff --git a/Control/SGComps/src/SGInputLoader.h b/Control/SGComps/src/SGInputLoader.h index 7380b6993c858295fe8448a128581c6ef2dcde23..a8a5e043566a3b77d45eca45b541112b3be07de4 100644 --- a/Control/SGComps/src/SGInputLoader.h +++ b/Control/SGComps/src/SGInputLoader.h @@ -39,7 +39,7 @@ class SGInputLoader /// Default constructor: SGInputLoader(); - void loader(Property&); + void loader(Gaudi::Details::PropertyBase&); bool loadObjs(const DataObjIDColl& objs) const; /// Properties diff --git a/Control/SGMon/SGAudSvc/src/SGAudSvc.cxx b/Control/SGMon/SGAudSvc/src/SGAudSvc.cxx index 54c1da1051f8ac2bb951dca6e48a98176e529340..a4bb5a99387753c55547a91d404d6ab828edfe30 100644 --- a/Control/SGMon/SGAudSvc/src/SGAudSvc.cxx +++ b/Control/SGMon/SGAudSvc/src/SGAudSvc.cxx @@ -18,7 +18,7 @@ #include <utility> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/Incident.h" #include "GaudiKernel/IAlgContextSvc.h" diff --git a/Control/StoreGate/StoreGate/StoreGateSvc.h b/Control/StoreGate/StoreGate/StoreGateSvc.h index 8b120b425cc546cbb941cc3f6ec8cbf15a5763a4..f45e3392be30d296cbe4eb7abe2ffe1b57494eef 100644 --- a/Control/StoreGate/StoreGate/StoreGateSvc.h +++ b/Control/StoreGate/StoreGate/StoreGateSvc.h @@ -25,7 +25,7 @@ #include <GaudiKernel/ClassID.h> // for CLID #include <GaudiKernel/IInterface.h> // for InterfaceID #include <GaudiKernel/IMessageSvc.h> // for Level -#include "GaudiKernel/Property.h" /*StringArrayProperty*/ +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/StatusCode.h" #include "GaudiKernel/DataObjID.h" @@ -921,7 +921,7 @@ private: void t2pRemove(const void* const pTrans); /// callback for output level property - void msg_update_handler(Property& outputLevel); + void msg_update_handler(Gaudi::Details::PropertyBase& outputLevel); /// Add automatically-made symlinks for DP. void addAutoSymLinks (const std::string& key, CLID clid, SG::DataProxy* dp, diff --git a/Control/StoreGate/StoreGate/VarHandleKeyArrayProperty.h b/Control/StoreGate/StoreGate/VarHandleKeyArrayProperty.h index cd26c7e1b450d373f2f5b64283ee8a5551270558..ddf7b6093a31ddf55a13fffb8c41a594936f00d4 100644 --- a/Control/StoreGate/StoreGate/VarHandleKeyArrayProperty.h +++ b/Control/StoreGate/StoreGate/VarHandleKeyArrayProperty.h @@ -15,7 +15,7 @@ #include "StoreGate/VarHandleKeyArray.h" #include "StoreGate/ReadHandleKeyArray.h" #include "StoreGate/WriteHandleKeyArray.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <iostream> namespace Gaudi { @@ -44,9 +44,9 @@ namespace SG { VarHandleKeyArrayProperty* clone() const override; - bool load( Property& destination ) const override; + bool load( Gaudi::Details::PropertyBase& destination ) const override; - bool assign( const Property& source ) override; + bool assign( const Gaudi::Details::PropertyBase& source ) override; std::string toString() const override; diff --git a/Control/StoreGate/StoreGate/VarHandleKeyProperty.h b/Control/StoreGate/StoreGate/VarHandleKeyProperty.h index e513c0d32e3b3024bb2c2e9a66a5247bbee99eb9..1f2cd81d32c33f128802672b77067adc2af6ec56 100644 --- a/Control/StoreGate/StoreGate/VarHandleKeyProperty.h +++ b/Control/StoreGate/StoreGate/VarHandleKeyProperty.h @@ -29,7 +29,7 @@ #include "StoreGate/UpdateHandleKey.h" #include "StoreGate/ReadDecorHandleKey.h" #include "StoreGate/WriteDecorHandleKey.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <iostream> namespace Gaudi { @@ -116,7 +116,7 @@ public: * by converting to a string and back again. Returns true on success, * false on failure. */ - virtual bool load( Property& destination ) const override; + virtual bool load( Gaudi::Details::PropertyBase& destination ) const override; /** @@ -127,7 +127,7 @@ public: * by converting to a string and back again. Returns true on success, * false on failure. */ - virtual bool assign( const Property& source ) override; + virtual bool assign( const Gaudi::Details::PropertyBase& source ) override; /** diff --git a/Control/StoreGate/StoreGate/tools/SGImplSvc.h b/Control/StoreGate/StoreGate/tools/SGImplSvc.h index 1e144ed229b0076d641aa2ad7082a17d33a9babd..0e6cb93210b6839ce7686c8fe49b6527692484a5 100644 --- a/Control/StoreGate/StoreGate/tools/SGImplSvc.h +++ b/Control/StoreGate/StoreGate/tools/SGImplSvc.h @@ -23,7 +23,7 @@ #include <GaudiKernel/IInterface.h> // for InterfaceID #include <GaudiKernel/IMessageSvc.h> // for Level #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" /*StringArrayProperty*/ +#include "Gaudi/Property.h" #include "GaudiKernel/StatusCode.h" #include "GaudiKernel/DataObjID.h" @@ -665,7 +665,7 @@ private: void t2pRemove(const void* const pTrans); /// callback for output level property - void msg_update_handler(Property& outputLevel); + void msg_update_handler(Gaudi::Details::PropertyBase& outputLevel); bool associateAux_impl (SG::AuxVectorBase* ptr, const std::string& key, diff --git a/Control/StoreGate/src/SGImplSvc.cxx b/Control/StoreGate/src/SGImplSvc.cxx index d950f8257e0f4151b0b5add0b603cdf86569ee2b..ed2141f4c4c10925873a29dffb4c7f8d2accac76 100644 --- a/Control/StoreGate/src/SGImplSvc.cxx +++ b/Control/StoreGate/src/SGImplSvc.cxx @@ -1341,7 +1341,7 @@ SGImplSvc::t2pRemove(const void* const pTrans) } void -SGImplSvc::msg_update_handler(Property& /*outputLevel*/) +SGImplSvc::msg_update_handler(Gaudi::Details::PropertyBase& /*outputLevel*/) { setUpMessaging(); updateMsgStreamOutputLevel( outputLevel() ); diff --git a/Control/StoreGate/src/StoreGateSvc.cxx b/Control/StoreGate/src/StoreGateSvc.cxx index 2ad8e4181e8a72be2423d8cfbec564bfd72cb721..91507770becab79731c512d00a7f63ebfa989bea 100644 --- a/Control/StoreGate/src/StoreGateSvc.cxx +++ b/Control/StoreGate/src/StoreGateSvc.cxx @@ -123,17 +123,17 @@ StatusCode StoreGateSvc::initialize() { IProperty* appmgrprop = 0; appmgr->queryInterface( IProperty::interfaceID(), (void**)&appmgrprop ).ignore(); //all of the above to get the jo svc type - const Property& prop = appmgrprop->getProperty( "JobOptionsSvcType" ); + const Gaudi::Details::PropertyBase& prop = appmgrprop->getProperty( "JobOptionsSvcType" ); IJobOptionsSvc* pJOSvc(0); if ( serviceLocator()->service( prop.toString(), "JobOptionsSvc", pJOSvc ).isFailure() ) { error() << "Failed to retrieve JobOptionsSvc" << endmsg; } //copy our properties to the prototype (default) SGImplSvc std::string implStoreName = name() + "_Impl"; - const std::vector<const Property*>* props = pJOSvc->getProperties( name() ); + const std::vector<const Gaudi::Details::PropertyBase*>* props = pJOSvc->getProperties( name() ); if ( props ) { - std::vector<const Property*>::const_iterator prop(props->begin()); - std::vector<const Property*>::const_iterator pEnd(props->end()); + std::vector<const Gaudi::Details::PropertyBase*>::const_iterator prop(props->begin()); + std::vector<const Gaudi::Details::PropertyBase*>::const_iterator pEnd(props->end()); while (prop != pEnd) { pJOSvc->addPropertyToCatalogue( implStoreName, **prop ).ignore(); ++prop; diff --git a/Control/StoreGate/src/VarHandleKeyArrayProperty.cxx b/Control/StoreGate/src/VarHandleKeyArrayProperty.cxx index 8dd7cf32383ddba130eaa06be71721d6df4c2d64..d116a9d6c0c1e8012a8baea7f906fa82cf67f13a 100644 --- a/Control/StoreGate/src/VarHandleKeyArrayProperty.cxx +++ b/Control/StoreGate/src/VarHandleKeyArrayProperty.cxx @@ -62,7 +62,7 @@ VarHandleKeyArrayProperty::clone() const * false on failure. */ bool -VarHandleKeyArrayProperty::load( Property& destination ) const +VarHandleKeyArrayProperty::load( Gaudi::Details::PropertyBase& destination ) const { return destination.assign( *this ); } @@ -77,7 +77,7 @@ VarHandleKeyArrayProperty::load( Property& destination ) const * false on failure. */ bool -VarHandleKeyArrayProperty::assign( const Property& source ) +VarHandleKeyArrayProperty::assign( const Gaudi::Details::PropertyBase& source ) { return fromString( source.toString() ).isSuccess(); } diff --git a/Control/StoreGate/src/VarHandleKeyProperty.cxx b/Control/StoreGate/src/VarHandleKeyProperty.cxx index caaace59a506b5187c2d7687ad61cfd0da97cc5f..97f29db2aa857e84b5e680d6e247707438500e53 100644 --- a/Control/StoreGate/src/VarHandleKeyProperty.cxx +++ b/Control/StoreGate/src/VarHandleKeyProperty.cxx @@ -121,7 +121,7 @@ VarHandleKeyProperty::clone() const * false on failure. */ bool -VarHandleKeyProperty::load( Property& destination ) const +VarHandleKeyProperty::load( Gaudi::Details::PropertyBase& destination ) const { return destination.assign( *this ); } @@ -136,7 +136,7 @@ VarHandleKeyProperty::load( Property& destination ) const * false on failure. */ bool -VarHandleKeyProperty::assign( const Property& source ) +VarHandleKeyProperty::assign( const Gaudi::Details::PropertyBase& source ) { return fromString( source.toString() ).isSuccess(); } diff --git a/Control/StoreGate/test/VarHandleKeyProperty_test.cxx b/Control/StoreGate/test/VarHandleKeyProperty_test.cxx index dd41003f2fae52167f596fa3a2eb1a937df2dcf0..b00304549bba12948bd21ab6ffa706a1d97fb064 100644 --- a/Control/StoreGate/test/VarHandleKeyProperty_test.cxx +++ b/Control/StoreGate/test/VarHandleKeyProperty_test.cxx @@ -193,13 +193,13 @@ public: { return mgr.setProperty(n, p); } virtual StatusCode setPropertyRepr( const std::string& n, const std::string& r ) override { return mgr.setPropertyRepr(n,r); } - virtual StatusCode getProperty( Property* p ) const override + virtual StatusCode getProperty( Gaudi::Details::PropertyBase* p ) const override { return mgr.getProperty (p); } - virtual const Property& getProperty( const std::string& name) const override + virtual const Gaudi::Details::PropertyBase& getProperty( const std::string& name) const override { return mgr.getProperty (name); } virtual StatusCode getProperty( const std::string& n, std::string& v ) const override { return mgr.getProperty (n, v); } - virtual const std::vector<Property*>& getProperties( ) const override + virtual const std::vector<Gaudi::Details::PropertyBase*>& getProperties( ) const override { return mgr.getProperties(); } virtual bool hasProperty(const std::string& name) const override { return mgr.hasProperty(name); } diff --git a/Control/StoreGate/test/VarHandleProperty_test.cxx b/Control/StoreGate/test/VarHandleProperty_test.cxx index 9736dda12934f07ab2d665ff58496f0ae01caf2d..a170450a6520dae837bd564775f6363e30034215 100644 --- a/Control/StoreGate/test/VarHandleProperty_test.cxx +++ b/Control/StoreGate/test/VarHandleProperty_test.cxx @@ -56,13 +56,13 @@ public: { return mgr.setProperty(n, p); } virtual StatusCode setPropertyRepr( const std::string& n, const std::string& r ) override { return mgr.setPropertyRepr(n,r); } - virtual StatusCode getProperty( Property* p ) const override + virtual StatusCode getProperty( Gaudi::Details::PropertyBase* p ) const override { return mgr.getProperty (p); } - virtual const Property& getProperty( const std::string& name) const override + virtual const Gaudi::Details::PropertyBase& getProperty( const std::string& name) const override { return mgr.getProperty (name); } virtual StatusCode getProperty( const std::string& n, std::string& v ) const override { return mgr.getProperty (n, v); } - virtual const std::vector<Property*>& getProperties( ) const override + virtual const std::vector<Gaudi::Details::PropertyBase*>& getProperties( ) const override { return mgr.getProperties(); } virtual bool hasProperty(const std::string& name) const override { return mgr.hasProperty(name); } diff --git a/Control/StoreGateTests/src/SgStressConsumer.cxx b/Control/StoreGateTests/src/SgStressConsumer.cxx index 71d28426e52fc5e059c59b5d9d4585653074f6cc..ab58d5216b4f5663f09a31f9a3d78ff3613f9601 100755 --- a/Control/StoreGateTests/src/SgStressConsumer.cxx +++ b/Control/StoreGateTests/src/SgStressConsumer.cxx @@ -14,7 +14,7 @@ #include <sstream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // StoreGate #include "StoreGate/StoreGateSvc.h" diff --git a/Control/StoreGateTests/src/SgStressProducer.cxx b/Control/StoreGateTests/src/SgStressProducer.cxx index 110b019fd2951aa2dbee81712ffef9fe8613d96c..d08eae45f07183fae7beefe7fc41f2266772f1b8 100755 --- a/Control/StoreGateTests/src/SgStressProducer.cxx +++ b/Control/StoreGateTests/src/SgStressProducer.cxx @@ -14,7 +14,7 @@ #include <sstream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // StoreGate #include "StoreGate/StoreGateSvc.h" diff --git a/Control/Valkyrie/src/ValgrindSvc.cxx b/Control/Valkyrie/src/ValgrindSvc.cxx index 43381e0606fa7b80e2eda85404877e369e01a254..fc514c28548163b418be76833f9fe9f6b2b74b4b 100755 --- a/Control/Valkyrie/src/ValgrindSvc.cxx +++ b/Control/Valkyrie/src/ValgrindSvc.cxx @@ -16,7 +16,7 @@ #include "valgrind/callgrind.h" // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/Incident.h" #include "GaudiKernel/ServiceHandle.h" diff --git a/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx b/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx index e12e8bdc0510352fbac99513e0904738c828c8b1..bc0811d5a877641dc4a99ee495e0e785454aceeb 100755 --- a/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx +++ b/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx @@ -11,7 +11,7 @@ // the user data-class defintions #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include "EventInfo/EventInfo.h" diff --git a/Database/AthenaPOOL/EventSelectorAthenaPool/src/AthenaPoolAddressProviderSvc.h b/Database/AthenaPOOL/EventSelectorAthenaPool/src/AthenaPoolAddressProviderSvc.h index 2ff110ef64d4e44968dac3827fc3397f82c26a4f..23be195fdf746742ccc8cc929f3545898820f912 100755 --- a/Database/AthenaPOOL/EventSelectorAthenaPool/src/AthenaPoolAddressProviderSvc.h +++ b/Database/AthenaPOOL/EventSelectorAthenaPool/src/AthenaPoolAddressProviderSvc.h @@ -11,7 +11,7 @@ **/ #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" // no forward decl: typedef +#include "Gaudi/Property.h" // no forward decl: typedef #include "AthenaKernel/IAddressProvider.h" #include "AthenaBaseComps/AthService.h" diff --git a/Database/AthenaPOOL/EventSelectorAthenaPool/src/CondProxyProvider.h b/Database/AthenaPOOL/EventSelectorAthenaPool/src/CondProxyProvider.h index cc18e4e985ac191ba1387c9e99eda0095599aeef..0f39299504fcb58f037c0d58ff683ed98c221608 100755 --- a/Database/AthenaPOOL/EventSelectorAthenaPool/src/CondProxyProvider.h +++ b/Database/AthenaPOOL/EventSelectorAthenaPool/src/CondProxyProvider.h @@ -11,7 +11,7 @@ **/ #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "AthenaKernel/IAddressProvider.h" #include "AthenaBaseComps/AthService.h" diff --git a/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.cxx b/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.cxx index dc60636905353c304fc7fdf4e0ae3673b5ac84be..40b72b28ef6b200ac57c0238f67baab5a128f2fc 100644 --- a/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.cxx +++ b/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.cxx @@ -61,7 +61,7 @@ EventSelectorAthenaPool::EventSelectorAthenaPool(const std::string& name, ISvcLo m_inputCollectionsProp.declareUpdateHandler(&EventSelectorAthenaPool::inputCollectionsHandler, this); } //________________________________________________________________________________ -void EventSelectorAthenaPool::inputCollectionsHandler(Property&) { +void EventSelectorAthenaPool::inputCollectionsHandler(Gaudi::Details::PropertyBase&) { if (this->FSMState() != Gaudi::StateMachine::OFFLINE) { this->reinit().ignore(); } diff --git a/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.h b/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.h index df76dd5920e1f38960f0ade1c0c7ce5652f7a597..2cfa32f009ea774107de35b1ccdb2ff356fb5737 100644 --- a/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.h +++ b/Database/AthenaPOOL/EventSelectorAthenaPool/src/EventSelectorAthenaPool.h @@ -197,7 +197,7 @@ private: // properties /// InputCollections, vector with names of the input collections. Gaudi::Property<std::vector<std::string>> m_inputCollectionsProp{this, "InputCollections", {}, ""}; mutable std::vector<std::string>::const_iterator m_inputCollectionsIterator ATLAS_THREAD_SAFE; - void inputCollectionsHandler(Property&); + void inputCollectionsHandler(Gaudi::Details::PropertyBase&); /// Query, query string. Gaudi::Property<std::string> m_query{this, "Query", "", ""}; diff --git a/Database/AthenaPOOL/OutputStreamAthenaPool/src/EventInfoAttListTool.cxx b/Database/AthenaPOOL/OutputStreamAthenaPool/src/EventInfoAttListTool.cxx index 0dac118fc55d5130d62a69cbd637df21d39d63c9..072b70256d2e8badf73d7ef6a442923b42372773 100755 --- a/Database/AthenaPOOL/OutputStreamAthenaPool/src/EventInfoAttListTool.cxx +++ b/Database/AthenaPOOL/OutputStreamAthenaPool/src/EventInfoAttListTool.cxx @@ -14,7 +14,7 @@ Purpose : create a EventInfoAttList - The Tag information associated to the even #include "EventInfoAttListTool.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODEventInfo/EventInfo.h" #include "EventInfo/EventInfo.h" diff --git a/Database/AthenaRoot/AthenaRootComps/src/IoSvc.cxx b/Database/AthenaRoot/AthenaRootComps/src/IoSvc.cxx index a37815afeaeb34969681d6963ac92f03584985af..8a6c01645395ec50b1c288167874637d00241131 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/IoSvc.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/IoSvc.cxx @@ -16,7 +16,7 @@ #include <limits> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" typedef IIoSvc::Fd Fd; diff --git a/Database/AthenaRoot/AthenaRootComps/src/NtupleCnvSvc.cxx b/Database/AthenaRoot/AthenaRootComps/src/NtupleCnvSvc.cxx index 34fb9a46607ad13920a103ad72699b020385fcbc..65eee94823409028aae3f021b38916239ba9771b 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/NtupleCnvSvc.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/NtupleCnvSvc.cxx @@ -19,7 +19,7 @@ // FrameWork includes #include "GaudiKernel/GenericAddress.h" #include "GaudiKernel/IRegistry.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // ROOT includes #include "TFile.h" diff --git a/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlg.cxx b/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlg.cxx index a9670604dfb512878382e471fad94c51eb609710..cc75dc3533080a35980d45ac67f289837dbeb0a4 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlg.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlg.cxx @@ -25,7 +25,7 @@ #include <fcntl.h> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // SGTools #include "SGTools/BuiltinsClids.h" // to put ints,... in evtstore diff --git a/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlgHandle.cxx b/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlgHandle.cxx index 4da79cd79f185d361b4df89b14918efe8155ee31..c507e5c84ee67b0d2d6e8bad77d48c8fabdbeb03 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlgHandle.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/RootAsciiDumperAlgHandle.cxx @@ -25,7 +25,7 @@ #include <fcntl.h> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // SGTools #include "SGTools/BuiltinsClids.h" // to put ints,... in evtstore diff --git a/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.cxx b/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.cxx index 2800ba8b68b7b0225eac4683c19f61e89c274311..7d2a6a64e8c521f1937fac608626220bcb91144e 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.cxx @@ -856,7 +856,7 @@ RootNtupleEventSelector::updateAddress(StoreID::type /*storeID*/, SG::TransientA /// callback to synchronize the list of input files void -RootNtupleEventSelector::setupInputCollection( Property& /*inputCollectionsName*/ ) +RootNtupleEventSelector::setupInputCollection( Gaudi::Details::PropertyBase& /*inputCollectionsName*/ ) { // nothing ? return; diff --git a/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.h b/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.h index 3b6e10db0ddc0bbd12f6bde227c0fd8c9847c9d0..bd523aab90683d258936a0e480dfda72b25b577a 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.h +++ b/Database/AthenaRoot/AthenaRootComps/src/RootNtupleEventSelector.h @@ -20,7 +20,7 @@ #include "GaudiKernel/IIoComponent.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaKernel/IEvtSelectorSeek.h" #include "AthenaKernel/IAddressProvider.h" @@ -139,7 +139,7 @@ class RootNtupleEventSelector : StatusCode endInputFile (RootNtupleEventContext* rctx) const; /// callback to synchronize the list of input files - void setupInputCollection( Property& inputCollectionsName ); + void setupInputCollection( Gaudi::Details::PropertyBase& inputCollectionsName ); /// helper method to create proxies StatusCode createRootBranchAddresses(StoreID::type storeID, diff --git a/Database/AthenaRoot/AthenaRootComps/src/xAODCnvSvc.cxx b/Database/AthenaRoot/AthenaRootComps/src/xAODCnvSvc.cxx index 86ad292d8f9b4ba3d07aabf4b7c3a1ccc3e2c0a4..a08cefd347a70ef1c6a5b34f0a4d4285f84c791e 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/xAODCnvSvc.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/xAODCnvSvc.cxx @@ -19,7 +19,7 @@ // FrameWork includes #include "GaudiKernel/GenericAddress.h" #include "GaudiKernel/IRegistry.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // ROOT includes #include "TFile.h" diff --git a/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.cxx b/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.cxx index 1171e013c478c80b58054bb133b9e85074194d39..9785f6408b8c79471b23ebb216b47d1eeabf2002 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.cxx @@ -24,7 +24,7 @@ #include "TKey.h" #include "TLeaf.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Framework includes //#include "GaudiKernel/GenericAddress.h" diff --git a/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.h b/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.h index 32682624250a096b4450a59f3189b87e7169af59..3b8ebe62926e0d11e89cedb1e441646503b3f3d9 100644 --- a/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.h +++ b/Database/AthenaRoot/AthenaRootComps/src/xAODEventSelector.h @@ -17,7 +17,7 @@ #include "GaudiKernel/IIoComponent.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaKernel/IEvtSelectorSeek.h" #include "AthenaKernel/IAddressProvider.h" diff --git a/Database/IOVDbSvc/src/IOVDbSvc.cxx b/Database/IOVDbSvc/src/IOVDbSvc.cxx index b52a16a49ed428e3f4ec34e3af04102adc566e0a..859b92cf94cce3b6fd5ea7a970d546d2847041a4 100644 --- a/Database/IOVDbSvc/src/IOVDbSvc.cxx +++ b/Database/IOVDbSvc/src/IOVDbSvc.cxx @@ -35,7 +35,7 @@ namespace { template<typename Prop_t> bool - fetchProp( const std::vector<const Property*>* properties, Prop_t& p ){ + fetchProp( const std::vector<const Gaudi::Details::PropertyBase*>* properties, Prop_t& p ){ if (properties) { for ( const auto & pThisProperty: *properties ) { if ( pThisProperty->name()==p.name() ) { @@ -776,7 +776,7 @@ StatusCode IOVDbSvc::checkEventSel() { ATH_MSG_FATAL( "Could not retrieve [" << joSvc.typeAndName() << "]" ); return StatusCode::FAILURE; } - typedef std::vector<const Property*> Properties_t; + typedef std::vector<const Gaudi::Details::PropertyBase*> Properties_t; const Properties_t* evtSelProps=joSvc->getProperties("EventSelector"); // do not return FAILURE if the EventSelector cannot be found, as this // happens online when we have no EventSelector diff --git a/Database/RDBAccessSvc/src/RDBAccessSvc.h b/Database/RDBAccessSvc/src/RDBAccessSvc.h index 85103fa8fa7d0aa9a221883a6d955a16b073f82a..1c326c0beef3e8716b48f4e86171767364d83164 100755 --- a/Database/RDBAccessSvc/src/RDBAccessSvc.h +++ b/Database/RDBAccessSvc/src/RDBAccessSvc.h @@ -18,7 +18,7 @@ #include "RDBAccessSvc/IRDBAccessSvc.h" #include "RDBRecordset.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthService.h" #include <string> diff --git a/Database/RegistrationServices/src/RegistrationStream.cxx b/Database/RegistrationServices/src/RegistrationStream.cxx index 827c43679aebcdfbaa73c0108412f649f95f8f66..375e7b7a478b8fa28a1398d987a3d852cb5ee19c 100755 --- a/Database/RegistrationServices/src/RegistrationStream.cxx +++ b/Database/RegistrationServices/src/RegistrationStream.cxx @@ -163,7 +163,7 @@ RegistrationStream::execute() } void -RegistrationStream::itemListHandler( Property& /* theProp */ ) +RegistrationStream::itemListHandler( Gaudi::Details::PropertyBase& /* theProp */ ) { //assuming concrete SG::Folder also has an itemList property IProperty *pAsIProp(nullptr); @@ -175,7 +175,7 @@ RegistrationStream::itemListHandler( Property& /* theProp */ ) } void -RegistrationStream::ProvIncludeHandler( Property& ) +RegistrationStream::ProvIncludeHandler( Gaudi::Details::PropertyBase& ) { std::vector<std::string> list = m_provIncludeList.value(); std::vector<std::string>::const_iterator it = list.begin(); @@ -187,7 +187,7 @@ RegistrationStream::ProvIncludeHandler( Property& ) } void -RegistrationStream::ProvExcludeHandler( Property& ) +RegistrationStream::ProvExcludeHandler( Gaudi::Details::PropertyBase& ) { std::vector<std::string> list = m_provExcludeList.value(); std::vector<std::string>::const_iterator it = list.begin(); diff --git a/Database/RegistrationServices/src/RegistrationStream.h b/Database/RegistrationServices/src/RegistrationStream.h index 2dc3f23712f379d47298d28d2e56ed4ddd144a77..d1ba005d42366b96571fcba245e8f508bd192f9c 100755 --- a/Database/RegistrationServices/src/RegistrationStream.h +++ b/Database/RegistrationServices/src/RegistrationStream.h @@ -19,7 +19,7 @@ #ifndef ATHENAPOOLTEST_REGISTRATIONSVC_H #define ATHENAPOOLTEST_REGISTRATIONSVC_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/IIoComponent.h" @@ -69,13 +69,13 @@ private: /// PRIVATE METHODS /// Handler for ItemNames Property - void itemListHandler( Property& ); + void itemListHandler( Gaudi::Details::PropertyBase& ); /// Handler for ProvNames Property - void ProvIncludeHandler( Property& ); + void ProvIncludeHandler( Gaudi::Details::PropertyBase& ); /// Handler for ItemNames Property - void ProvExcludeHandler( Property& ); + void ProvExcludeHandler( Gaudi::Details::PropertyBase& ); /// NOTE that the Tools assume this list will be ordered. /// begin = newest; end = oldest diff --git a/Database/RegistrationServices/src/RegistrationStreamLCGTool.h b/Database/RegistrationServices/src/RegistrationStreamLCGTool.h index 644d26909bf6e74a77484fb4bb0419701e62e3d4..d042713195abbef00888216d5d8b5b247496db40 100755 --- a/Database/RegistrationServices/src/RegistrationStreamLCGTool.h +++ b/Database/RegistrationServices/src/RegistrationStreamLCGTool.h @@ -22,7 +22,7 @@ //<<<<<< INCLUDES >>>>>> #include "AthenaBaseComps/AthAlgTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaKernel/IRegistrationStreamTool.h" diff --git a/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.h b/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.h index 027f82af668a3f0df861e7aa8f3d2314c0b43250..d4cf73251cd1eafd71911f8d48879561ce73dca6 100755 --- a/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.h +++ b/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.h @@ -12,7 +12,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthService.h" #include "StoreGate/StoreGateSvc.h" #include "EventInfoMgt/ITagInfoMgr.h" diff --git a/DetectorDescription/IdDictDetDescrCnv/src/IdDictCnvTest.cxx b/DetectorDescription/IdDictDetDescrCnv/src/IdDictCnvTest.cxx index 9a0ccd62123107bc77a3135b44b5623b7c8fe579..00d98c0ac6a1e7e3ab104b2259bb5882ced43c3e 100755 --- a/DetectorDescription/IdDictDetDescrCnv/src/IdDictCnvTest.cxx +++ b/DetectorDescription/IdDictDetDescrCnv/src/IdDictCnvTest.cxx @@ -21,7 +21,7 @@ // Athena-related includes #include "StoreGate/DataHandle.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IChronoStatSvc.h" diff --git a/DetectorDescription/RegSelSvcTest/src/RegSelTestAlg.cxx b/DetectorDescription/RegSelSvcTest/src/RegSelTestAlg.cxx index 402982fc97cbef33edc84cb69fb0b0fad9672b17..0e29bb5d56017f2fbcf44db87509127a37ca7b63 100644 --- a/DetectorDescription/RegSelSvcTest/src/RegSelTestAlg.cxx +++ b/DetectorDescription/RegSelSvcTest/src/RegSelTestAlg.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigSteeringEvent/TrigRoiDescriptor.h" #include "TestTools/ParallelCallTest.h" #include "RegSelTestAlg.h" diff --git a/DetectorDescription/RegionSelector/src/RegSelSvc.cxx b/DetectorDescription/RegionSelector/src/RegSelSvc.cxx index 42a4efa18f7d414dac2fdde78bc0410ebdea9096..0ad022d9fb1836a7593ee998191f94f70e2eb21a 100755 --- a/DetectorDescription/RegionSelector/src/RegSelSvc.cxx +++ b/DetectorDescription/RegionSelector/src/RegSelSvc.cxx @@ -2354,10 +2354,10 @@ bool RegSelSvc::GetEnabledROBsFromOKS() } // get the data flow config property - const std::vector<const Property*>* dataFlowProps = p_jobOptionSvc->getProperties("DataFlowConfig"); + const std::vector<const Gaudi::Details::PropertyBase*>* dataFlowProps = p_jobOptionSvc->getProperties("DataFlowConfig"); // go through looking for the enabled robs - std::vector<const Property*>::const_iterator propp(dataFlowProps->begin()); + std::vector<const Gaudi::Details::PropertyBase*>::const_iterator propp(dataFlowProps->begin()); for ( ; propp!=dataFlowProps->end() ; propp++) { // the enabled ROB list is found if ( (*propp)->name() == "DF_Enabled_ROB_IDs" ) { diff --git a/Event/ByteStreamCnvSvc/src/ByteStreamEventStorageInputSvc.cxx b/Event/ByteStreamCnvSvc/src/ByteStreamEventStorageInputSvc.cxx index b3ac139d2874d0695feabc32a74c54ff13d6dba0..28deebbc9aa6fcfae4348524efc34afe305524f8 100644 --- a/Event/ByteStreamCnvSvc/src/ByteStreamEventStorageInputSvc.cxx +++ b/Event/ByteStreamCnvSvc/src/ByteStreamEventStorageInputSvc.cxx @@ -11,7 +11,7 @@ #include "EventStorage/DataReader.h" #include "GaudiKernel/IJobOptionsSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "PersistentDataModel/DataHeader.h" #include "PersistentDataModel/Token.h" diff --git a/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.cxx b/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.cxx index 0d7be0857d5f8c333c8c4ccc96ce18f8a9cff89e..413376e18750ecd976ea1f266709ee57a3047a43 100644 --- a/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.cxx +++ b/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.cxx @@ -52,7 +52,7 @@ EventSelectorByteStream::EventSelectorByteStream( /******************************************************************************/ -void EventSelectorByteStream::inputCollectionsHandler(Property&) { +void EventSelectorByteStream::inputCollectionsHandler(Gaudi::Details::PropertyBase&) { if (this->FSMState() != Gaudi::StateMachine::OFFLINE) { this->reinit().ignore(); } diff --git a/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.h b/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.h index 53c8158a59646c7579f85847dfa2a9af33785a2c..c8e583015f15dc81b76d6148838dc2c192ebcfcb 100644 --- a/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.h +++ b/Event/ByteStreamCnvSvc/src/EventSelectorByteStream.h @@ -163,7 +163,7 @@ private: // properties ByteStreamInputSvc* m_eventSource{}; Gaudi::Property<std::vector<std::string>> m_inputCollectionsProp{this, "Input", {}, ""}; mutable std::vector<std::string>::const_iterator m_inputCollectionsIterator; - void inputCollectionsHandler(Property&); + void inputCollectionsHandler(Gaudi::Details::PropertyBase&); ServiceHandle<IIncidentSvc> m_incidentSvc{this, "IncidentSvc", "IncidentSvc", ""}; ServiceHandle<ActiveStoreSvc> m_activeStoreSvc; diff --git a/Event/ByteStreamCnvSvcBase/src/ROBDataProviderMTTest.cxx b/Event/ByteStreamCnvSvcBase/src/ROBDataProviderMTTest.cxx index 778b4ca4a85ff699d5a5ad864567d3279d126201..941fc0a8aeb6da0abe5e5693733aef66a2598a44 100644 --- a/Event/ByteStreamCnvSvcBase/src/ROBDataProviderMTTest.cxx +++ b/Event/ByteStreamCnvSvcBase/src/ROBDataProviderMTTest.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ #include <algorithm> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TestTools/ParallelCallTest.h" #include "TestTools/random.h" #include "ROBDataProviderMTTest.h" diff --git a/Event/DumpEventDataToJSON/src/DumpEventDataToJsonAlg.cxx b/Event/DumpEventDataToJSON/src/DumpEventDataToJsonAlg.cxx index 457b20d8dbfe8938174d206a2db978a3eb92d8bf..7fcc956e0f6d9c90503b8446bc4f79f731058025 100644 --- a/Event/DumpEventDataToJSON/src/DumpEventDataToJsonAlg.cxx +++ b/Event/DumpEventDataToJSON/src/DumpEventDataToJsonAlg.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Algorithm.h" #include "DumpEventDataToJsonAlg.h" diff --git a/Event/EventBookkeeperTools/src/SkimDecisionMultiFilter.cxx b/Event/EventBookkeeperTools/src/SkimDecisionMultiFilter.cxx index eeccddad454525590012a765ebc6bca93e93df77..f5a9fe805ea47f17ec96bdaa8374295d0b60db84 100644 --- a/Event/EventBookkeeperTools/src/SkimDecisionMultiFilter.cxx +++ b/Event/EventBookkeeperTools/src/SkimDecisionMultiFilter.cxx @@ -17,7 +17,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Handy definitions for error checking #include "AthenaKernel/errorcheck.h" diff --git a/Event/EventCommonAlgs/EventCommonAlgs/INav4MomDumper.h b/Event/EventCommonAlgs/EventCommonAlgs/INav4MomDumper.h index e19986c430e8810ce03fc1c8649e1243ba72ec75..284e2798a90cf940cd341af704bf5d26bd964ed0 100755 --- a/Event/EventCommonAlgs/EventCommonAlgs/INav4MomDumper.h +++ b/Event/EventCommonAlgs/EventCommonAlgs/INav4MomDumper.h @@ -68,7 +68,7 @@ class INav4MomDumper : public AthAlgorithm /// Callback method to configure the output stream into which we'll /// dump the informations from @c INavigable4MomentumCollection - void setupOutputStream( Property& outputStreamName ); + void setupOutputStream( Gaudi::Details::PropertyBase& outputStreamName ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/Event/EventCommonAlgs/src/I4MomDumper.cxx b/Event/EventCommonAlgs/src/I4MomDumper.cxx index 9cff05b2071aa9516c4432bc4bf36c2a60609209..0a27efd9c5f2a2f37a681f2455bdb89d015a701d 100644 --- a/Event/EventCommonAlgs/src/I4MomDumper.cxx +++ b/Event/EventCommonAlgs/src/I4MomDumper.cxx @@ -21,7 +21,7 @@ #include <boost/array.hpp> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // NavFourMom includes #include "NavFourMom/INavigable4MomentumCollection.h" @@ -273,7 +273,7 @@ I4MomDumper::dump( const std::string& collName ) // Non-const methods: /////////////////////////////////////////////////////////////////// -void I4MomDumper::setupDisplay( Property& /*displayName*/ ) +void I4MomDumper::setupDisplay( Gaudi::Details::PropertyBase& /*displayName*/ ) { std::string& display = const_cast<std::string&>(m_displayName.value()); @@ -296,7 +296,7 @@ void I4MomDumper::setupDisplay( Property& /*displayName*/ ) return; } -void I4MomDumper::setupOutputStream( Property& /*outputStreamName*/ ) +void I4MomDumper::setupOutputStream( Gaudi::Details::PropertyBase& /*outputStreamName*/ ) { // reset internal state if ( m_outputStream && diff --git a/Event/EventCommonAlgs/src/I4MomDumper.h b/Event/EventCommonAlgs/src/I4MomDumper.h index 8043507d0f40ef08e65f968f783b77c272b78ef9..72bb3d6df484c0a9dfcb6c7dea1c7798ed62b0eb 100644 --- a/Event/EventCommonAlgs/src/I4MomDumper.h +++ b/Event/EventCommonAlgs/src/I4MomDumper.h @@ -81,11 +81,11 @@ class I4MomDumper : public AthAlgorithm /// Callback method to configure the display property which will tell how to /// dump the informations from @c I4MomentumCollection - void setupDisplay( Property& display ); + void setupDisplay( Gaudi::Details::PropertyBase& display ); /// Callback method to configure the output stream into which we'll /// dump the informations from @c I4MomentumCollection - void setupOutputStream( Property& outputStreamName ); + void setupOutputStream( Gaudi::Details::PropertyBase& outputStreamName ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/Event/EventCommonAlgs/src/INav4MomDumper.cxx b/Event/EventCommonAlgs/src/INav4MomDumper.cxx index 32e38d823231a7e0f88972173eab86bd8fb303d0..c849efaf83ab04cc761553987267ee11a7762615 100755 --- a/Event/EventCommonAlgs/src/INav4MomDumper.cxx +++ b/Event/EventCommonAlgs/src/INav4MomDumper.cxx @@ -18,7 +18,7 @@ #include <set> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // NavFourMom includes #include "NavFourMom/INavigable4MomentumCollection.h" @@ -201,7 +201,7 @@ INav4MomDumper::dump( const std::string& collName ) // Non-const methods: /////////////////////////////////////////////////////////////////// -void INav4MomDumper::setupOutputStream( Property& /*outputStreamName*/ ) +void INav4MomDumper::setupOutputStream( Gaudi::Details::PropertyBase& /*outputStreamName*/ ) { // reset internal state if ( m_outputStream && diff --git a/Event/xAOD/xAODCoreCnv/src/ROOTHeaderLoaderSvc.h b/Event/xAOD/xAODCoreCnv/src/ROOTHeaderLoaderSvc.h index b1ef589977622ada4593a2390a4c010038876b94..d613e7cbe154beed5c28036c59ea8a3d8ca951c0 100644 --- a/Event/xAOD/xAODCoreCnv/src/ROOTHeaderLoaderSvc.h +++ b/Event/xAOD/xAODCoreCnv/src/ROOTHeaderLoaderSvc.h @@ -10,7 +10,7 @@ // Framework include(s). #include "AthenaBaseComps/AthService.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // System include(s). #include <string> diff --git a/Event/xAOD/xAODJetCnv/src/JetCnvAlg.cxx b/Event/xAOD/xAODJetCnv/src/JetCnvAlg.cxx index a551aca8817b0e7c3d51173137992156a2c046c2..7996dc153c7dff78dcfa258bc4acf07cbed47fa7 100644 --- a/Event/xAOD/xAODJetCnv/src/JetCnvAlg.cxx +++ b/Event/xAOD/xAODJetCnv/src/JetCnvAlg.cxx @@ -23,7 +23,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/errorcheck.h" diff --git a/Event/xAOD/xAODTauCnv/src/TauJetCnvAlg.cxx b/Event/xAOD/xAODTauCnv/src/TauJetCnvAlg.cxx index 39a21de377be44db30c7ed72f0a8a98f4112d48e..82804676bd21095f18883383f294eb7d9c8d4190 100644 --- a/Event/xAOD/xAODTauCnv/src/TauJetCnvAlg.cxx +++ b/Event/xAOD/xAODTauCnv/src/TauJetCnvAlg.cxx @@ -23,7 +23,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/errorcheck.h" diff --git a/Event/xAOD/xAODTauCnv/src/TauJetCnvTool.cxx b/Event/xAOD/xAODTauCnv/src/TauJetCnvTool.cxx index 8d992554722fdb6c08cb304ef3bec6f74613553b..e5ce18c418e642fa9f6956bc1864172a327f93b0 100644 --- a/Event/xAOD/xAODTauCnv/src/TauJetCnvTool.cxx +++ b/Event/xAOD/xAODTauCnv/src/TauJetCnvTool.cxx @@ -16,7 +16,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/errorcheck.h" diff --git a/ForwardDetectors/AFP/AFP_Digitization/AFP_Digitization/AFP_PileUpTool.h b/ForwardDetectors/AFP/AFP_Digitization/AFP_Digitization/AFP_PileUpTool.h index 766d84bf2696b3f350313321947032366a4a4ef0..f4e3584436b103af5a6b1ddbd871816b574f481f 100644 --- a/ForwardDetectors/AFP/AFP_Digitization/AFP_Digitization/AFP_PileUpTool.h +++ b/ForwardDetectors/AFP/AFP_Digitization/AFP_Digitization/AFP_PileUpTool.h @@ -10,7 +10,7 @@ #include "xAODEventInfo/EventAuxInfo.h" // NEW EDM -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" #include "AthenaKernel/IAtRndmGenSvc.h" diff --git a/ForwardDetectors/ALFA/ALFA_BeamTransport/src/ALFA_BeamTransport.cxx b/ForwardDetectors/ALFA/ALFA_BeamTransport/src/ALFA_BeamTransport.cxx index 299c8768d1677dc215b4ac898e8c317ea265cd6b..4782ef71ade22bac03de99d8591a96e23b2d0a08 100644 --- a/ForwardDetectors/ALFA/ALFA_BeamTransport/src/ALFA_BeamTransport.cxx +++ b/ForwardDetectors/ALFA/ALFA_BeamTransport/src/ALFA_BeamTransport.cxx @@ -23,7 +23,7 @@ // FrameWork includes #include "GaudiKernel/ITHistSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "EventInfo/EventInfo.h" #include "EventInfo/EventID.h" diff --git a/ForwardDetectors/ALFA/ALFA_Digitization/ALFA_Digitization/ALFA_PileUpTool.h b/ForwardDetectors/ALFA/ALFA_Digitization/ALFA_Digitization/ALFA_PileUpTool.h index 197b3f6f513ff7826eb63ff823d3a3297e51fbe6..4e39ff15e863e60509c049c35b215036c94a67a4 100644 --- a/ForwardDetectors/ALFA/ALFA_Digitization/ALFA_Digitization/ALFA_PileUpTool.h +++ b/ForwardDetectors/ALFA/ALFA_Digitization/ALFA_Digitization/ALFA_PileUpTool.h @@ -7,7 +7,7 @@ #include "PileUpTools/PileUpToolBase.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" #include "AthenaKernel/IAtRndmGenSvc.h" diff --git a/ForwardDetectors/LUCID/LUCID_Digitization/src/LUCID_PileUpTool.h b/ForwardDetectors/LUCID/LUCID_Digitization/src/LUCID_PileUpTool.h index 57696b81e7e6f810836e30473f7b275d2c063ad7..ea82d17884ec1ac82e66cd9db8ccd6add7913a9e 100644 --- a/ForwardDetectors/LUCID/LUCID_Digitization/src/LUCID_PileUpTool.h +++ b/ForwardDetectors/LUCID/LUCID_Digitization/src/LUCID_PileUpTool.h @@ -17,7 +17,7 @@ #include "PileUpTools/PileUpMergeSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include <vector> diff --git a/ForwardDetectors/ZDC/ZDC_SimuDigitization/ZDC_SimuDigitization/ZDC_PileUpTool.h b/ForwardDetectors/ZDC/ZDC_SimuDigitization/ZDC_SimuDigitization/ZDC_PileUpTool.h index c36fc37aa67e1ffef4dac2c55f00911c557d78b8..4fd5d394caa08173856957902b6a19bbb7bfda0c 100644 --- a/ForwardDetectors/ZDC/ZDC_SimuDigitization/ZDC_SimuDigitization/ZDC_PileUpTool.h +++ b/ForwardDetectors/ZDC/ZDC_SimuDigitization/ZDC_SimuDigitization/ZDC_PileUpTool.h @@ -6,7 +6,7 @@ #define ZDC_DIGITIZATION_TOOL_H #include "PileUpTools/PileUpToolBase.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" #include "AthenaKernel/IAtRndmGenSvc.h" diff --git a/ForwardDetectors/ZDC/ZdcAnalysis/CMakeLists.txt b/ForwardDetectors/ZDC/ZdcAnalysis/CMakeLists.txt index d1a0e7097e4cb0578f47e2557469ca43093f30f7..055ba7d022e2b3d800c81e12fd87ff8ad591ab19 100644 --- a/ForwardDetectors/ZDC/ZdcAnalysis/CMakeLists.txt +++ b/ForwardDetectors/ZDC/ZdcAnalysis/CMakeLists.txt @@ -22,5 +22,6 @@ atlas_add_library (ZdcAnalysisLib Root/*.cxx PUBLIC_HEADERS ZdcAnalysis PRIVATE_INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} + LINK_LIBRARIES AsgDataHandlesLib PRIVATE_LINK_LIBRARIES ${ROOT_LIBRARIES} AsgTools xAODForward xAODTrigL1Calo xAODEventInfo PathResolver ) diff --git a/ForwardDetectors/ZDC/ZdcAnalysis/Root/ZdcAnalysisTool.cxx b/ForwardDetectors/ZDC/ZdcAnalysis/Root/ZdcAnalysisTool.cxx index 52ab89e72fef4e277670ba862a81fa5e42c71aa3..716bd5839c8a09b2f212df13ef4dfcb4a5352abb 100644 --- a/ForwardDetectors/ZDC/ZdcAnalysis/Root/ZdcAnalysisTool.cxx +++ b/ForwardDetectors/ZDC/ZdcAnalysis/Root/ZdcAnalysisTool.cxx @@ -11,6 +11,8 @@ #include <sstream> #include <memory> #include <xAODForward/ZdcModuleAuxContainer.h> +#include <AsgDataHandles/ReadHandle.h> +#include <AsgDataHandles/WriteHandle.h> #include "PathResolver/PathResolver.h" namespace ZDC @@ -19,8 +21,6 @@ namespace ZDC ZdcAnalysisTool::ZdcAnalysisTool(const std::string& name) : asg::AsgTool(name), m_name(name), m_writeAux(false), m_runNumber(0), m_lumiBlock(0), - m_eventInfoKey("EventInfo"), - m_ZdcModuleWriteKey("ZdcSums"), m_splines{{{{0,0,0,0}},{{0,0,0,0}}}}, m_zdcTriggerEfficiency(0) { @@ -28,8 +28,6 @@ namespace ZDC declareInterface<IZdcAnalysisTool>(this); #endif - declareProperty("EventInfoKey", m_eventInfoKey, "Location of the event info."); - declareProperty("ZdcModuleWriteKey", m_ZdcModuleWriteKey, "Output location of ZDC reprocessed data"); declareProperty("Configuration", m_configuration = "PbPb2015"); declareProperty("FlipEMDelay",m_flipEMDelay=false); declareProperty("LowGainOnly",m_lowGainOnly=false); diff --git a/ForwardDetectors/ZDC/ZdcAnalysis/ZdcAnalysis/ZdcAnalysisTool.h b/ForwardDetectors/ZDC/ZdcAnalysis/ZdcAnalysis/ZdcAnalysisTool.h index 8d944608d957e26b6610344dd86b447c87f78132..cfe43316e5cda21c67d8a58b89846ebf0117fe24 100644 --- a/ForwardDetectors/ZDC/ZdcAnalysis/ZdcAnalysis/ZdcAnalysisTool.h +++ b/ForwardDetectors/ZDC/ZdcAnalysis/ZdcAnalysis/ZdcAnalysisTool.h @@ -5,6 +5,8 @@ #ifndef ZDCANALYSIS_ZDCANALYSISTOOL_H #define ZDCANALYSIS_ZDCANALYSISTOOL_H +#include "AsgDataHandles/ReadHandleKey.h" +#include "AsgDataHandles/WriteHandleKey.h" #include "AsgTools/AsgTool.h" #include "xAODEventInfo/EventInfo.h" #include "xAODForward/ZdcModuleContainer.h" @@ -93,8 +95,13 @@ class ZdcAnalysisTool : public virtual IZdcAnalysisTool, public asg::AsgTool // internal functions TF1* m_tf1SincInterp; - SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey; - SG::WriteHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleWriteKey; + SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey { + this, "EventInfoKey", "EventInfo", + "Location of the event info."}; + SG::WriteHandleKey<xAOD::ZdcModuleContainer> m_ZdcModuleWriteKey { + this, "ZdcModuleWriteKey", "ZdcSums", + "Output location of ZDC reprocessed data"}; + bool m_flipEMDelay; bool m_lowGainOnly; bool m_combineDelay; diff --git a/Generators/GenAnalysisTools/ReweightTools/src/PDFReweightTool.cxx b/Generators/GenAnalysisTools/ReweightTools/src/PDFReweightTool.cxx index 58a6b8b7bb6330faefeb8165d29282fbfbf24bb2..dd16e15f27b472f536cedb884076351726557fd8 100644 --- a/Generators/GenAnalysisTools/ReweightTools/src/PDFReweightTool.cxx +++ b/Generators/GenAnalysisTools/ReweightTools/src/PDFReweightTool.cxx @@ -14,7 +14,7 @@ // ///////////////////////////////////////////////////////////// -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" #include "AthContainers/DataVector.h" diff --git a/Generators/HepMCAnalysis_i/src/GetEvents.cxx b/Generators/HepMCAnalysis_i/src/GetEvents.cxx index 693bc84995c1ea53b51b49f48b88a6580fbffd03..47c56f63169a6ce056f5a63c4ec0a518b3be7eeb 100644 --- a/Generators/HepMCAnalysis_i/src/GetEvents.cxx +++ b/Generators/HepMCAnalysis_i/src/GetEvents.cxx @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgorithm.h" #include "StoreGate/StoreGateSvc.h" #include "GaudiKernel/ITHistSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "EventInfo/EventInfo.h" #include "EventInfo/EventID.h" diff --git a/Generators/HepMCAnalysis_i/src/HepMCAnalysis.cxx b/Generators/HepMCAnalysis_i/src/HepMCAnalysis.cxx index 1b4b25141e91424ae390b05d021f69b53a0184b1..d954a4898b2b584b167493e5406a17aa1d515a9a 100644 --- a/Generators/HepMCAnalysis_i/src/HepMCAnalysis.cxx +++ b/Generators/HepMCAnalysis_i/src/HepMCAnalysis.cxx @@ -11,7 +11,7 @@ #include "StoreGate/StoreGateSvc.h" #include "GaudiKernel/ITHistSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // ROOT #include "TFile.h" diff --git a/Generators/HforTool/src/HforTool.cxx b/Generators/HforTool/src/HforTool.cxx index edf429a9a14cd38dd4b82e39996c39cd47ed59df..22e8bdb2330c70086fd0598fd8083fcc664902d2 100644 --- a/Generators/HforTool/src/HforTool.cxx +++ b/Generators/HforTool/src/HforTool.cxx @@ -13,7 +13,7 @@ #include <cmath> #include <set> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GeneratorObjects/McEventCollection.h" #include "TruthUtils/GeneratorName.h" diff --git a/Generators/McAsciiEventSelector/src/McAsciiEventSelector.h b/Generators/McAsciiEventSelector/src/McAsciiEventSelector.h index 897ed1464dd83dd5b7aed5440b9695933199f534..23faf44f309f80fce638f0cff856d081e2be9c71 100644 --- a/Generators/McAsciiEventSelector/src/McAsciiEventSelector.h +++ b/Generators/McAsciiEventSelector/src/McAsciiEventSelector.h @@ -19,7 +19,7 @@ // Gaudi includes #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/IEvtSelector.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" // Forward declaration diff --git a/Generators/McEventSelector/McEventSelector/McEventSelector.h b/Generators/McEventSelector/McEventSelector/McEventSelector.h index 5609eeda5bcfc967bf0022a3dd3561f4ef661776..3bd969807e33b874e32a7ed94eea7e6f3670a473 100644 --- a/Generators/McEventSelector/McEventSelector/McEventSelector.h +++ b/Generators/McEventSelector/McEventSelector/McEventSelector.h @@ -25,7 +25,7 @@ // Include files #include "GaudiKernel/IEvtSelector.h" #include "AthenaBaseComps/AthService.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/MsgStream.h" #include "AthenaKernel/IEvtSelectorSeek.h" diff --git a/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.cxx b/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.cxx index 554278d47283b9f543ca7db3781c6d9a954dc2e5..b689a76c1156b536f24a720098277750dabddcff 100644 --- a/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.cxx +++ b/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.cxx @@ -523,7 +523,7 @@ StatusCode ByteStreamEmonInputSvc::start() return StatusCode::SUCCESS; } -void ByteStreamEmonInputSvc::updateHandler(Property& /* p */) +void ByteStreamEmonInputSvc::updateHandler(Gaudi::Details::PropertyBase& /* p */) { if(! m_connect) { m_connect = true; diff --git a/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.h b/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.h index 4fb124f5a162c31285e841c288dd53ca101d8706..b093dc084ede20c75b35ab2c1debd1c04a67acbd 100644 --- a/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.h +++ b/HLT/Event/ByteStreamEmonSvc/src/ByteStreamEmonInputSvc.h @@ -54,7 +54,7 @@ private: void check_publish(); void get_runparams(); - void updateHandler(Property& p); + void updateHandler(Gaudi::Details::PropertyBase& p); int m_totalEventCounter{0}; //!< event Counter diff --git a/HLT/Trigger/TrigControl/TrigExamples/TrigExL2muCalibTest/src/L2muCalibTest.cxx b/HLT/Trigger/TrigControl/TrigExamples/TrigExL2muCalibTest/src/L2muCalibTest.cxx index 1742ca3f8fbf75e489f6d92b3777f259888169f6..2a724a9fcc2a611bd9c91b5f410bf1928c943bcf 100755 --- a/HLT/Trigger/TrigControl/TrigExamples/TrigExL2muCalibTest/src/L2muCalibTest.cxx +++ b/HLT/Trigger/TrigControl/TrigExamples/TrigExL2muCalibTest/src/L2muCalibTest.cxx @@ -88,11 +88,11 @@ StatusCode L2muCalibTest::initialize(){ ATH_MSG_INFO("Dump of the property catalogue.... "); std::vector<std::string> clients = m_jobOptionsSvc->getClients(); std::vector<std::string>::iterator cit; - std::vector<const Property*>::const_iterator pit; + std::vector<const Gaudi::Details::PropertyBase*>::const_iterator pit; for( cit = clients.begin(); cit != clients.end(); cit++ ) { ATH_MSG_INFO(" Properties of " << *cit << ": "; - const std::vector<const Property*>* properties = m_jobOptionsSvc->getProperties(*cit); + const std::vector<const Gaudi::Details::PropertyBase*>* properties = m_jobOptionsSvc->getProperties(*cit); for( pit = properties->begin(); pit != properties->end(); pit++ ) { log << (*pit)->name(); if( (pit+1) != properties->end()) log << ", "; @@ -112,11 +112,11 @@ StatusCode L2muCalibTest::initialize(){ // Find the Data Flow application name bool df_found = false; - const std::vector<const Property*>* dataFlowProps = m_jobOptionsSvc->getProperties("DataFlowConfig"); + const std::vector<const Gaudi::Details::PropertyBase*>* dataFlowProps = m_jobOptionsSvc->getProperties("DataFlowConfig"); if ( dataFlowProps ) { ATH_MSG_INFO(" Properties available for 'DataFlowConfig': number = " << dataFlowProps->size()); ATH_MSG_INFO(" --------------------------------------------------- "); - for ( std::vector<const Property*>::const_iterator cur = dataFlowProps->begin(); + for ( std::vector<const Gaudi::Details::PropertyBase*>::const_iterator cur = dataFlowProps->begin(); cur != dataFlowProps->end(); cur++) { ATH_MSG_INFO((*cur)->name() << " = " << (*cur)->toString()); // the application name is found diff --git a/HLT/Trigger/TrigControl/TrigPSC/src/Psc.cxx b/HLT/Trigger/TrigControl/TrigPSC/src/Psc.cxx index a72394136831af9ab62dd751ba70617fa9a34204..d54b3ec225b09b6b7607be8bd23c30ca70be2e2c 100644 --- a/HLT/Trigger/TrigControl/TrigPSC/src/Psc.cxx +++ b/HLT/Trigger/TrigControl/TrigPSC/src/Psc.cxx @@ -33,7 +33,7 @@ #include "GaudiKernel/IAlgManager.h" #include "GaudiKernel/IAlgorithm.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/System.h" #include <sstream> diff --git a/HLT/Trigger/TrigControl/TrigServices/src/HltROBDataProviderSvc.cxx b/HLT/Trigger/TrigControl/TrigServices/src/HltROBDataProviderSvc.cxx index 86286ece89803281541b1110befe5ca3134a2676..6f75db450c8ccf8a1f304f8fe70c13d8129a709a 100644 --- a/HLT/Trigger/TrigControl/TrigServices/src/HltROBDataProviderSvc.cxx +++ b/HLT/Trigger/TrigControl/TrigServices/src/HltROBDataProviderSvc.cxx @@ -109,12 +109,12 @@ StatusCode HltROBDataProviderSvc::initialize() if ((p_jobOptionsSvc.retrieve()).isFailure()) { ATH_MSG_ERROR("Could not find JobOptionsSvc"); } else { - const std::vector<const Property*>* dataFlowProps = p_jobOptionsSvc->getProperties("DataFlowConfig"); + const std::vector<const Gaudi::Details::PropertyBase*>* dataFlowProps = p_jobOptionsSvc->getProperties("DataFlowConfig"); if(!dataFlowProps) ATH_MSG_ERROR("Could not find DataFlowConfig properties"); else { - for ( const Property* cur : *dataFlowProps ) { + for ( const Gaudi::Details::PropertyBase* cur : *dataFlowProps ) { // the enabled ROB list is found if ( cur->name() == "DF_Enabled_ROB_IDs" ) { if (m_enabledROBs.assign(*cur)) { diff --git a/HLT/Trigger/TrigControl/TrigServices/src/TrigMessageSvc.h b/HLT/Trigger/TrigControl/TrigServices/src/TrigMessageSvc.h index 7024f8995696e70262afdd5e7028eed6ea48911a..eea8a1f06a7a4b5c9ade510457872d0a30a024ee 100644 --- a/HLT/Trigger/TrigControl/TrigServices/src/TrigMessageSvc.h +++ b/HLT/Trigger/TrigControl/TrigServices/src/TrigMessageSvc.h @@ -23,7 +23,7 @@ #include "GaudiKernel/IIncidentListener.h" #include "GaudiKernel/IMessageSvc.h" #include "GaudiKernel/Message.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Service.h" #include "GaudiKernel/StatusCode.h" diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx index 7212c3805b53502dc88555855c1ba0e5472c918f..ef10e7d4be3456bd407c18458bac32cf8fd38b76 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx @@ -4,6 +4,7 @@ #include "PixelCablingCondAlg.h" #include "GaudiKernel/EventIDRange.h" +#include "AthenaKernel/IOVInfiniteRange.h" #include <iostream> #include <fstream> @@ -14,6 +15,7 @@ #include "Identifier/IdContext.h" #include "CoralBase/Blob.h" + PixelCablingCondAlg::PixelCablingCondAlg(const std::string& name, ISvcLocator* pSvcLocator): ::AthReentrantAlgorithm(name, pSvcLocator) { @@ -134,11 +136,6 @@ StatusCode PixelCablingCondAlg::execute(const EventContext& ctx) const { // Construct the output Cond Object and fill it in std::unique_ptr<PixelCablingCondData> writeCdo(std::make_unique<PixelCablingCondData>()); - const EventIDBase::number_type UNDEFNUM = EventIDBase::UNDEFNUM; - const EventIDBase::event_number_t UNDEFEVT = EventIDBase::UNDEFEVT; - EventIDRange rangeW (EventIDBase (0, UNDEFEVT, UNDEFNUM, 0, 0), - EventIDBase (UNDEFNUM-1, UNDEFEVT, UNDEFNUM, 0, 0)); - // Signed values int barrel_ec, eta_module; @@ -171,13 +168,10 @@ StatusCode PixelCablingCondAlg::execute(const EventContext& ctx) const { ATH_MSG_FATAL("Null pointer to the read conditions object"); return StatusCode::FAILURE; } - // Get the validitiy range - if (not readHandle.range(rangeW)) { - ATH_MSG_FATAL("Failed to retrieve validity range for " << readHandle.key()); - return StatusCode::FAILURE; - } - ATH_MSG_INFO("Size of AthenaAttributeList " << readHandle.fullKey() << " readCdo->size()= " << readCdo->size()); - ATH_MSG_INFO("Range of input is " << rangeW); + writeHandle.addDependency(readHandle); + + ATH_MSG_DEBUG("Size of AthenaAttributeList " << readHandle.fullKey() << " readCdo->size()= " << readCdo->size()); + ATH_MSG_DEBUG("Range of input is " << readHandle.getRange()); const coral::Blob& blob_cabling=(*readCdo)["CablingMapData"].data<coral::Blob>(); const char* p_cabling = static_cast<const char*>(blob_cabling.startingAddress()); @@ -188,7 +182,7 @@ StatusCode PixelCablingCondAlg::execute(const EventContext& ctx) const { instr.str(std::string(p_cabling,blob_cabling.size())); } else { - std::string filename = PathResolverFindCalibFile(moduleData->getCablingMapFileName()); + const std::string filename = PathResolverFindCalibFile(moduleData->getCablingMapFileName()); if (filename.size()==0) { ATH_MSG_FATAL("Mapping File: " << moduleData->getCablingMapFileName() << " not found!"); return StatusCode::FAILURE; @@ -196,6 +190,8 @@ StatusCode PixelCablingCondAlg::execute(const EventContext& ctx) const { std::ifstream fin(filename.c_str()); if (!fin) { return StatusCode::FAILURE; } instr << fin.rdbuf(); + + writeHandle.addDependency(IOVInfiniteRange::infiniteRunLB()); //When reading from file, use infinite IOV ATH_MSG_DEBUG("Refilled pixel cabling from file \"" << moduleData->getCablingMapFileName() << "\""); } @@ -300,11 +296,11 @@ StatusCode PixelCablingCondAlg::execute(const EventContext& ctx) const { ATH_MSG_DEBUG("Size of ROD readoutspeed map: " << rodReadoutMap.size()); writeCdo->set_readout_map(rodReadoutMap); - if (writeHandle.record(rangeW, std::move(writeCdo)).isFailure()) { - ATH_MSG_FATAL("Could not record PixelCablingCondData " << writeHandle.key() << " with EventRange " << rangeW << " into Conditions Store"); + if (writeHandle.record(std::move(writeCdo)).isFailure()) { + ATH_MSG_FATAL("Could not record PixelCablingCondData " << writeHandle.key() << " with EventRange " << writeHandle.getRange() << " into Conditions Store"); return StatusCode::FAILURE; } - ATH_MSG_DEBUG("recorded new CDO " << writeHandle.key() << " with range " << rangeW << " into Conditions Store"); + ATH_MSG_DEBUG("recorded new CDO " << writeHandle.key() << " with range " << writeHandle.getRange() << " into Conditions Store"); return StatusCode::SUCCESS; } diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.h index 31a63fcae8c0b197201c11abdf6b730b517fd62f..577137b2e779ec98cf24ac6f4bc4d7e2559464ae 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.h @@ -24,7 +24,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <map> #include <stdint.h> diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeCalibCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeCalibCondAlg.h index baa8ae82c44b100936c4900bfee5a41d4781db26..72d5cf388535116fe676c0315932937d2434ca11 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeCalibCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeCalibCondAlg.h @@ -24,7 +24,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelChargeCalibCondAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeLUTCalibCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeLUTCalibCondAlg.h index 4d762b8985f4f8952e17629e44cbc5cce2751ce3..fd251509c4b5929106ce916b0521f016bdd49fcf 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeLUTCalibCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelChargeLUTCalibCondAlg.h @@ -24,7 +24,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelChargeLUTCalibCondAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelConfigCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelConfigCondAlg.h index ebb5a04ad2771622fa90fd8b46ab5ba840cb9657..507ddcd915a949fa683b1b1060b2fd9a071e7564 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelConfigCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelConfigCondAlg.h @@ -21,7 +21,7 @@ #include "PixelConditionsData/PixelModuleData.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" class PixelConfigCondAlg : public AthReentrantAlgorithm { diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondHVAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondHVAlg.h index b53d9c22bb090bdeed7fa94afaf03c332c999a09..46a0518006f2a1b931d04639cd559a7ca6a2e878 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondHVAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondHVAlg.h @@ -23,7 +23,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelDCSCondHVAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStateAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStateAlg.h index 9299af3290093ed3bf9a41c8211d4e29a692a846..6555a6287cab7385a6ef9ff49273eca41e5bc8fd 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStateAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStateAlg.h @@ -23,7 +23,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelDCSCondStateAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStatusAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStatusAlg.h index fe94f516b9c0efafee2c7e2dd6a63aac49bb45c9..c50e26c24fc62292e613856621f833ff297eaf21 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStatusAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondStatusAlg.h @@ -23,7 +23,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelDCSCondStatusAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondTempAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondTempAlg.h index 6f392dc81c1a4cdd2e464f0ef3b4604bf414e040..4b1d35a66ebe286b24b0b4c0c1a3251b44d4caf6 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondTempAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDCSCondTempAlg.h @@ -23,7 +23,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelDCSCondTempAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDeadMapCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDeadMapCondAlg.h index cd76863789ce164e50de63c5ba3ac4798f5c4bc1..c4e2ff1b5a6c864542ef4a816d1db59a2d5f7a81 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDeadMapCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDeadMapCondAlg.h @@ -21,7 +21,7 @@ #include "PixelConditionsData/PixelDeadMapCondData.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelDeadMapCondAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDistortionAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDistortionAlg.h index 17fa99956bda996e213cacb609bdf69cfb05be9e..3ed58ff2ecf4820dbebfe1893753b466e4f4254c 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDistortionAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelDistortionAlg.h @@ -24,7 +24,7 @@ #include "AthenaKernel/IAthRNGSvc.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelDistortionAlg : public AthAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelHitDiscCnfgAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelHitDiscCnfgAlg.h index cdb463b0d8f4ec139f304d5af94c2f0ebda5da48..fa87f022cfeabc7a1d63c91151cf941ac9391a64 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelHitDiscCnfgAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelHitDiscCnfgAlg.h @@ -21,7 +21,7 @@ #include "PixelConditionsData/PixelHitDiscCnfgData.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelHitDiscCnfgAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelOfflineCalibCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelOfflineCalibCondAlg.h index c2a600172eea7e04076b80ed177291b397b8cb18..0f4fd31ce3a489b5f1a118682be433c210fc5b0c 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelOfflineCalibCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelOfflineCalibCondAlg.h @@ -20,7 +20,7 @@ #include "PixelConditionsData/PixelOfflineCalibData.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelOfflineCalibCondAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelReadoutSpeedAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelReadoutSpeedAlg.h index afc8034ec6fb65ce216a27e3539ca68c2782f8b5..8021f2d950da4ae5036b6f47cce65c2e361cba3c 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelReadoutSpeedAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelReadoutSpeedAlg.h @@ -20,7 +20,7 @@ #include "PixelConditionsData/PixelReadoutSpeedData.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelReadoutSpeedAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelTDAQCondAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelTDAQCondAlg.h index 1285b56fae4c37812f5be971f8ab6db95eecfb24..77e01c616b872f20302efc3acc74ea3ce38da126 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelTDAQCondAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelTDAQCondAlg.h @@ -23,7 +23,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixelTDAQCondAlg : public AthReentrantAlgorithm { public: diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixeldEdxAlg.h b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixeldEdxAlg.h index 8d3f29a6b61aa1664ff67d272b8e1d66efbf4d8d..2a1943c9e4c01c44f511bc80628e661171dfdb02 100644 --- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixeldEdxAlg.h +++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixeldEdxAlg.h @@ -23,7 +23,7 @@ #include "InDetIdentifier/PixelID.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class PixeldEdxAlg : public AthAlgorithm { public: diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterCondAlg.h index 5c64fe2f621606d50c5963b4504c5efbbc2d43fd..5d806321532b06bb2556387ad7f4205205640966 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterCondAlg.h @@ -16,7 +16,7 @@ #include "SCT_Cabling/ISCT_CablingTool.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class SCT_ConditionsParameterCondAlg : public AthReentrantAlgorithm { diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsHVCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsHVCondAlg.h index fc6d40baafd689c52c2f03d30e24634b4e5fcaf7..3c28e48000d229199aab217a723d485030f66a40 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsHVCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsHVCondAlg.h @@ -15,7 +15,7 @@ #include "StoreGate/WriteCondHandleKey.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class SCT_DCSConditionsHVCondAlg : public AthReentrantAlgorithm { diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h index 7afb429279f543f0d61144351330b11c093d118e..68f5459642fbefc3fe2551d3a3d58ff895bc48f1 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h @@ -16,7 +16,7 @@ #include "SCT_ConditionsData/SCT_DCSStatCondData.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class SCT_DCSConditionsStatCondAlg : public AthReentrantAlgorithm { diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTempCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTempCondAlg.h index 31e9762ed7e2ccfeb5c41232506b72ea6fe737b6..60344684e1e834539dc7d20c19f941cdead94eb3 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTempCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTempCondAlg.h @@ -15,7 +15,7 @@ #include "StoreGate/WriteCondHandleKey.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class SCT_DCSConditionsTempCondAlg : public AthReentrantAlgorithm { diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.h index a4485d7c95d4f49377ee60df1e8e8c93db63a0f9..5bceda668f4d46cd6b330fd0a566fca95772307e 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.h @@ -15,7 +15,7 @@ #include "StoreGate/WriteCondHandleKey.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class SCT_ModuleVetoCondAlg : public AthReentrantAlgorithm { diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.h index ba692aa027f104c0cc1e1684cfab37f9bd3ebdd1..c074d512ece885885564920b2f0b295c784cd221 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.h @@ -12,7 +12,7 @@ // Include Gaudi classes #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Include Athena classes #include "StoreGate/ReadCondHandleKey.h" diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h index f6415cc34da3a41e99273674d9a3206f0615f63b..559def8a43e08981cb0fb252b6cb39511be9c612 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h @@ -18,7 +18,7 @@ // Include Gaudi classes #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Forward declarations class SCT_ID; diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h index 9aa5451676836a793c48a2983fb2645a1b748e88..c3af5b1b5308b4372be90c020067536f7df059ed 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h @@ -18,7 +18,7 @@ #include "SCT_ConditionsData/SCT_AllGoodStripInfo.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <map> #include <vector> diff --git a/InnerDetector/InDetConditions/SCT_ConditionsTools/src/SCT_DCSConditionsTool.h b/InnerDetector/InDetConditions/SCT_ConditionsTools/src/SCT_DCSConditionsTool.h index 2cc101be4686b183173a2a01df0f3f9af3b4f25e..1fb88df93949fd2def4be1a88364a163a38e6e1b 100644 --- a/InnerDetector/InDetConditions/SCT_ConditionsTools/src/SCT_DCSConditionsTool.h +++ b/InnerDetector/InDetConditions/SCT_ConditionsTools/src/SCT_DCSConditionsTool.h @@ -26,7 +26,7 @@ #include "SCT_ConditionsData/SCT_DCSStatCondData.h" // Gaudi -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/EventContext.h" // STL diff --git a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTActiveCondAlg.h b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTActiveCondAlg.h index c00834999bc1ad8f553704d151ea6015bd286e79..114f0d7c83b773ae83171899a73c24094a612032 100644 --- a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTActiveCondAlg.h +++ b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTActiveCondAlg.h @@ -12,7 +12,7 @@ #include "TRT_ConditionsData/ActiveFraction.h" #include "TRT_ConditionsServices/ITRT_StrawStatusSummaryTool.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TRT_ReadoutGeometry/TRT_DetElementContainer.h" class TRT_ID; diff --git a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHTCondAlg.h b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHTCondAlg.h index da9e82d9cd94dbd8863a01e584b277b3c852313a..a1953cdd1ead3bf82d5372274a2228c8b4d6456d 100644 --- a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHTCondAlg.h +++ b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHTCondAlg.h @@ -10,7 +10,7 @@ #include "TRT_ConditionsData/HTcalculator.h" #include "AthenaPoolUtilities/CondAttrListVec.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class TRTHTCondAlg : public AthAlgorithm diff --git a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHWMapCondAlg.h b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHWMapCondAlg.h index 137af71810fda7eef48b50e87436f96f6b95d290..fa3b37a347b2b9911f4e434665da6266c6a7cbe6 100644 --- a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHWMapCondAlg.h +++ b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTHWMapCondAlg.h @@ -12,7 +12,7 @@ #include "StoreGate/WriteCondHandleKey.h" #include "AthenaPoolUtilities/CondAttrListCollection.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TRT_ConditionsData/HWMap.h" class TRTHWMapCondAlg : public AthAlgorithm diff --git a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTPhaseCondAlg.h b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTPhaseCondAlg.h index afec6df0873ae2dc6b0d3b94f8bf078a12ccf777..47616fdf2c46d3faca16730246c0cfbdb4085839 100644 --- a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTPhaseCondAlg.h +++ b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTPhaseCondAlg.h @@ -11,7 +11,7 @@ #include "TRT_ConditionsData/AverageT0.h" #include "TRT_ConditionsServices/ITRT_CalDbTool.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class TRT_ID; diff --git a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTStrawCondAlg.h b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTStrawCondAlg.h index 82de377a6f3bc15e5397cac248c58af489823360..caeb927bbed5a1272f1240c6ebbbd4add50b7160 100644 --- a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTStrawCondAlg.h +++ b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTStrawCondAlg.h @@ -12,7 +12,7 @@ #include "TRT_ConditionsData/AliveStraws.h" #include "TRT_ConditionsServices/ITRT_StrawStatusSummaryTool.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TRT_ReadoutGeometry/TRT_DetElementContainer.h" class TRT_ID; diff --git a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTToTCondAlg.h b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTToTCondAlg.h index 0d5bee1aa26d6ad512d30e3a11295b0b41d54706..2ab12c34285072d8891489a5fed2e6f23f186e52 100644 --- a/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTToTCondAlg.h +++ b/InnerDetector/InDetConditions/TRT_ConditionsAlgs/src/TRTToTCondAlg.h @@ -14,7 +14,7 @@ #include "AthenaPoolUtilities/CondAttrListVec.h" #include "AthenaPoolUtilities/CondAttrListCollection.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TRT_ConditionsData/TRTDedxcorrection.h" class TRTToTCondAlg : public AthAlgorithm diff --git a/InnerDetector/InDetConfig/python/InDetRecToolConfig.py b/InnerDetector/InDetConfig/python/InDetRecToolConfig.py index 45b097ae3a97b4cdab545a7d25b9e030a3a8f086..d14bcad6591e00433935ae495335dd24516ab261 100644 --- a/InnerDetector/InDetConfig/python/InDetRecToolConfig.py +++ b/InnerDetector/InDetConfig/python/InDetRecToolConfig.py @@ -23,14 +23,10 @@ def InDetTrackSummaryHelperToolCfg(flags, name='InDetTrackSummaryHelperTool', ** result.addPublicTool(CompFactory.InDet.InDetTrackSummaryHelperTool(name, **kwargs), primary=True) return result -def InDetTrackHoleSearchToolCfg(flags, name = 'InDetHoleSearchTool', **kwargs): +def InDetBoundaryCheckToolCfg(flags, name='InDetBoundaryCheckTool', **kwargs): result = ComponentAccumulator() - if 'Extrapolator' not in kwargs: - tmpAcc = InDetExtrapolatorCfg(flags) - kwargs.setdefault("Extrapolator", tmpAcc.getPrimary()) - result.merge(tmpAcc) - if ('SctSummaryTool' not in kwargs): + if 'SctSummaryTool' not in kwargs: if flags.Detector.SCTOn: tmpAcc = InDetSCT_ConditionsSummaryToolCfg(flags) kwargs.setdefault("SctSummaryTool", tmpAcc.popPrivateTools()) @@ -43,11 +39,29 @@ def InDetTrackHoleSearchToolCfg(flags, name = 'InDetHoleSearchTool', **kwargs): kwargs.setdefault("PixelLayerTool", tmpAcc.getPrimary()) result.merge(tmpAcc) + kwargs.setdefault("UsePixel", flags.Detector.PixelOn) + kwargs.setdefault("UseSCT", flags.Detector.SCTOn) + + indet_boundary_check_tool = CompFactory.InDet.InDetBoundaryCheckTool(name, **kwargs) + result.setPrivateTools(indet_boundary_check_tool) + return result + + +def InDetTrackHoleSearchToolCfg(flags, name = 'InDetHoleSearchTool', **kwargs): + result = ComponentAccumulator() + if 'Extrapolator' not in kwargs: + tmpAcc = InDetExtrapolatorCfg(flags) + kwargs.setdefault("Extrapolator", tmpAcc.getPrimary()) + result.merge(tmpAcc) + + if 'BoundaryCheckTool' not in kwargs: + tmpAcc = InDetBoundaryCheckToolCfg(flags) + kwargs.setdefault('BoundaryCheckTool', tmpAcc.popPrivateTools()) + result.merge(tmpAcc) + if flags.Beam.Type == "cosmics" : kwargs.setdefault("Cosmics", True) - kwargs.setdefault( "usePixel" , flags.Detector.PixelOn) - kwargs.setdefault( "useSCT" , flags.Detector.SCTOn) kwargs.setdefault( "CountDeadModulesAfterLastHit" , True) indet_hole_search_tool = CompFactory.InDet.InDetTrackHoleSearchTool(name, **kwargs) diff --git a/InnerDetector/InDetDetDescr/PixelGeoModel/PixelGeoModel/IBLParameterSvc.h b/InnerDetector/InDetDetDescr/PixelGeoModel/PixelGeoModel/IBLParameterSvc.h index c9fe48584d07e290fef08fc5271fd36b4061143a..2903a58153b32e37bc699b52b3e16b08cdee4450 100644 --- a/InnerDetector/InDetDetDescr/PixelGeoModel/PixelGeoModel/IBLParameterSvc.h +++ b/InnerDetector/InDetDetDescr/PixelGeoModel/PixelGeoModel/IBLParameterSvc.h @@ -15,7 +15,7 @@ #include "PixelGeoModel/IIBLParameterSvc.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Service.h" #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/IInterface.h" diff --git a/InnerDetector/InDetDigitization/PixelDigitization/src/EnergyDepositionTool.h b/InnerDetector/InDetDigitization/PixelDigitization/src/EnergyDepositionTool.h index c8c85adba0c97dc4561fefec764cc92b2058291f..05c5f05704c42703a9e237470557df7332fb57e6 100644 --- a/InnerDetector/InDetDigitization/PixelDigitization/src/EnergyDepositionTool.h +++ b/InnerDetector/InDetDigitization/PixelDigitization/src/EnergyDepositionTool.h @@ -15,7 +15,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "CLHEP/Random/RandomEngine.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Service.h" #include "HitManagement/TimedHitPtr.h" #include "InDetReadoutGeometry/SiDetectorElement.h" diff --git a/InnerDetector/InDetDigitization/PixelDigitization/src/FrontEndSimTool.h b/InnerDetector/InDetDigitization/PixelDigitization/src/FrontEndSimTool.h index e588da71f560cd702dbb9b6830d7c0fa375a87af..66dadbf42c96c030ab07a0cb5ca786a547de54ac 100644 --- a/InnerDetector/InDetDigitization/PixelDigitization/src/FrontEndSimTool.h +++ b/InnerDetector/InDetDigitization/PixelDigitization/src/FrontEndSimTool.h @@ -6,7 +6,7 @@ #define PIXELDIGITIZATION_FrontEndSimTool_H #include "AthenaBaseComps/AthAlgTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "CLHEP/Random/RandomEngine.h" diff --git a/InnerDetector/InDetDigitization/PixelDigitization/src/RadDamageUtil.h b/InnerDetector/InDetDigitization/PixelDigitization/src/RadDamageUtil.h index cf9729d43f3f01009c95cafa06c36f9c2119fecd..fba016124e83d3b62b65eb88bd10a2e378c726d7 100644 --- a/InnerDetector/InDetDigitization/PixelDigitization/src/RadDamageUtil.h +++ b/InnerDetector/InDetDigitization/PixelDigitization/src/RadDamageUtil.h @@ -14,7 +14,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Service.h" #include "InDetReadoutGeometry/SiDetectorElement.h" #include "SiDigitization/SiChargedDiodeCollection.h" diff --git a/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.cxx b/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.cxx index 9291b8009296bfe51e697cd68226084704aa1f58..ea71b48bc6fbd8dfc87d95d69297e548b62427c8 100644 --- a/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.cxx +++ b/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.cxx @@ -490,7 +490,7 @@ StatusCode SCT_DigitizationTool::processBunchXing(int bunchXing, // ========================================================================= // property handlers // ========================================================================= -void SCT_DigitizationTool::SetupRdoOutputType(Property &) { +void SCT_DigitizationTool::SetupRdoOutputType(Gaudi::Details::PropertyBase &) { } // Does nothing, but required by Gaudi diff --git a/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.h b/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.h index 8cbb364564d84d70a05b9a235fa90f8de25129bd..2f49b7bfc93808ece0d2a5f53590460b5f26e361 100644 --- a/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.h +++ b/InnerDetector/InDetDigitization/SCT_Digitization/src/SCT_DigitizationTool.h @@ -116,7 +116,7 @@ private: /** @brief Called when m_WriteSCT1_RawData is altered. Does nothing, but required by Gaudi. */ - void SetupRdoOutputType(Property&); + void SetupRdoOutputType(Gaudi::Details::PropertyBase&); FloatProperty m_tfix{this, "FixedTime", -999., "Fixed time for Cosmics run selection"}; BooleanProperty m_enableHits{this, "EnableHits", true, "Enable hits"}; diff --git a/InnerDetector/InDetExample/InDetRecExample/python/InDetJobProperties.py b/InnerDetector/InDetExample/InDetRecExample/python/InDetJobProperties.py index 82b4e5f71c3e038f84dbf93998002a6e3cc5b541..ecd768873b242efdf91c18a9f87ebaa878f77f26 100644 --- a/InnerDetector/InDetExample/InDetRecExample/python/InDetJobProperties.py +++ b/InnerDetector/InDetExample/InDetRecExample/python/InDetJobProperties.py @@ -512,6 +512,12 @@ class useZvertexTool(InDetFlagsJobProperty): allowedTypes = ['bool'] StoredValue = False +class useActsPriVertexing(InDetFlagsJobProperty): + """ use ACTS primary vertexing """ + statusOn = True + allowedTypes = ['bool'] + StoredValue = False + class doSiSPSeededTrackFinder(InDetFlagsJobProperty): """ use track finding in silicon """ statusOn = True @@ -2378,6 +2384,8 @@ class InDetJobProperties(JobPropertyContainer): print('* - primary vertexing cut setup : ',self.primaryVertexCutSetup()) if self.doPrimaryVertex3DFinding() : print('* - use 3D seed finding') + if self.useActsPriVertexing(): + print('* - use Acts primary vertex finding') print('* - privtx cut level : ', self.priVtxCutLevel()) if self.doParticleCreation() : print('* create TrackParticles') @@ -2663,6 +2671,7 @@ _list_InDetJobProperties = [Enabled, trackFitterType, doHolesOnTrack, useZvertexTool, + useActsPriVertexing, doSiSPSeededTrackFinder, # doTRTExtension, doTRTExtensionNew, diff --git a/InnerDetector/InDetExample/InDetRecExample/share/InDetMonitoringGlobal.py b/InnerDetector/InDetExample/InDetRecExample/share/InDetMonitoringGlobal.py index 619dd1fbbcf78679ebc82d5eeb96abd92c544db9..2c45cf527b4253241031e26ddeb8dfdce8a5ce12 100644 --- a/InnerDetector/InDetExample/InDetRecExample/share/InDetMonitoringGlobal.py +++ b/InnerDetector/InDetExample/InDetRecExample/share/InDetMonitoringGlobal.py @@ -72,6 +72,7 @@ if InDetFlags.doMonitoringGlobal(): TrackCollection = InDetKeys.UnslimmedTracks() + from InDetTrackSelectionTool.InDetTrackSelectionToolConf import InDet__InDetTrackSelectionTool InDetTrackSelectionToolGlobalMon_Baseline = InDet__InDetTrackSelectionTool(name = "InDetTrackSelectionToolGlobalMon_Baseline", UseTrkTrackTools = True, CutLevel = "TightPrimary", diff --git a/InnerDetector/InDetExample/InDetRecExample/share/InDetRecLoadTools.py b/InnerDetector/InDetExample/InDetRecExample/share/InDetRecLoadTools.py index 16c6014dc09b44f3e71a7f34c4478804fcc72085..5b6012e177ae740bcf0402bf37ffc9bcc93e8cf6 100755 --- a/InnerDetector/InDetExample/InDetRecExample/share/InDetRecLoadTools.py +++ b/InnerDetector/InDetExample/InDetRecExample/share/InDetRecLoadTools.py @@ -896,16 +896,29 @@ if (InDetFlags.doVertexFinding() or InDetFlags.doVertexFindingForMonitoring()) o # # --- load adaptive multi primary vertex finder # - from InDetPriVxFinderTool.InDetPriVxFinderToolConf import InDet__InDetAdaptiveMultiPriVxFinderTool - InDetPriVxFinderTool = InDet__InDetAdaptiveMultiPriVxFinderTool( - name="InDetAdaptiveMultiPriVxFinderTool", - SeedFinder=InDetVtxSeedFinder, - VertexFitterTool=InDetVxFitterTool, - TrackSelector=InDetTrackSelectorTool, - useBeamConstraint=InDetFlags.useBeamConstraint(), - selectiontype=0, - TracksMaxZinterval=3, # mm - do3dSplitting=InDetFlags.doPrimaryVertex3DFinding()) + if not InDetFlags.useActsPriVertexing(): + from InDetPriVxFinderTool.InDetPriVxFinderToolConf import InDet__InDetAdaptiveMultiPriVxFinderTool + InDetPriVxFinderTool = InDet__InDetAdaptiveMultiPriVxFinderTool(name = "InDetAdaptiveMultiPriVxFinderTool", + SeedFinder = InDetVtxSeedFinder, + VertexFitterTool = InDetVxFitterTool, + TrackSelector = InDetTrackSelectorTool, + useBeamConstraint = InDetFlags.useBeamConstraint(), + selectiontype = 0, + TracksMaxZinterval = 3,#mm + do3dSplitting = InDetFlags.doPrimaryVertex3DFinding()) + else: + from ActsGeometry.ActsTrackingGeometryTool import ActsTrackingGeometryTool + from ActsPriVtxFinder.ActsPriVtxFinderConf import ActsAdaptiveMultiPriVtxFinderTool + actsTrackingGeometryTool = getattr(ToolSvc,"ActsTrackingGeometryTool") + actsExtrapolationTool = CfgMgr.ActsExtrapolationTool("ActsExtrapolationTool") + actsExtrapolationTool.TrackingGeometryTool = actsTrackingGeometryTool + InDetPriVxFinderTool = ActsAdaptiveMultiPriVtxFinderTool(name = "ActsAdaptiveMultiPriVtxFinderTool", + TrackSelector = InDetTrackSelectorTool, + useBeamConstraint = InDetFlags.useBeamConstraint(), + tracksMaxZinterval = 3,#mm + do3dSplitting = InDetFlags.doPrimaryVertex3DFinding(), + TrackingGeometryTool = actsTrackingGeometryTool, + ExtrapolationTool = actsExtrapolationTool) else: # diff --git a/InnerDetector/InDetExample/InDetRecExample/share/InDetRec_jobOptions.py b/InnerDetector/InDetExample/InDetRecExample/share/InDetRec_jobOptions.py index 063e5650ea5adaccb397a72726e178d24ecbf7db..dbf37cc41ece47577e64b6245274aee2b177afe8 100755 --- a/InnerDetector/InDetExample/InDetRecExample/share/InDetRec_jobOptions.py +++ b/InnerDetector/InDetExample/InDetRecExample/share/InDetRec_jobOptions.py @@ -941,7 +941,7 @@ else: # InDetTruthTrackCreation.OutputLevel = VERBOSE topSequence += InDetTruthTrackCreation - if InDetFlags.doSplitReco() : + if InDetFlags.doSplitReco() or InDetFlags.doIdealPseudoTracking() : # --- add the truth to the truth tracks ;-) include ("InDetRecExample/ConfiguredInDetTrackTruth.py") InDetTracksTruth = ConfiguredInDetTrackTruth(InDetKeys.PseudoTracks(), diff --git a/InnerDetector/InDetMonitoring/InDetPerformanceMonitoring/src/IDPerfMonEoverP.cxx b/InnerDetector/InDetMonitoring/InDetPerformanceMonitoring/src/IDPerfMonEoverP.cxx index c7b75cbfd7e9be2bb9e7cd218f102fa8b9fae948..6b600dd99928479f854cb3ed3bb461bc616ccc69 100755 --- a/InnerDetector/InDetMonitoring/InDetPerformanceMonitoring/src/IDPerfMonEoverP.cxx +++ b/InnerDetector/InDetMonitoring/InDetPerformanceMonitoring/src/IDPerfMonEoverP.cxx @@ -18,7 +18,7 @@ PURPOSE: Create a simple ntuple to perform EoverP studies with // INCLUDE GAUDI HEADER FILES: #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include <algorithm> diff --git a/InnerDetector/InDetRecAlgs/InDetPriVxFinder/InDetPriVxFinder/InDetPriVxFinder.h b/InnerDetector/InDetRecAlgs/InDetPriVxFinder/InDetPriVxFinder/InDetPriVxFinder.h index 905114c8fd399c0c080157ad6885ffcdbaa89a5f..e22abc87746931e68e7a91696c5909308b3c0bd0 100755 --- a/InnerDetector/InDetRecAlgs/InDetPriVxFinder/InDetPriVxFinder/InDetPriVxFinder.h +++ b/InnerDetector/InDetRecAlgs/InDetPriVxFinder/InDetPriVxFinder/InDetPriVxFinder.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ /*************************************************************************** @@ -20,15 +20,17 @@ #ifndef INDETPRIVXFINDER_INDETPRIVXFINDER_H #define INDETPRIVXFINDER_INDETPRIVXFINDER_H -#include "AthenaBaseComps/AthAlgorithm.h" +#include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "GaudiKernel/ToolHandle.h" #include "TrkTrack/TrackCollection.h" #include "xAODTracking/TrackParticleContainer.h" #include "xAODTracking/VertexContainer.h" #include "xAODTracking/VertexAuxContainer.h" - #include "AthenaMonitoringKernel/GenericMonitoringTool.h" +#include "InDetRecToolInterfaces/IVertexFinder.h" +#include "TrkVertexFitterInterfaces/IVertexMergingTool.h" +#include "TrkVertexFitterInterfaces/IVertexCollectionSortingTool.h" /** Primary Vertex Finder. InDetPriVxFinder uses the InDetPrimaryVertexFinderTool in the package @@ -36,49 +38,37 @@ and records the returned VxContainer. */ -/* Forward declarations */ - -namespace Trk -{ - class IVertexMergingTool; - class IVertexCollectionSortingTool; -} - namespace InDet -{ - class IVertexFinder; - - class InDetPriVxFinder : public AthAlgorithm +{ + class InDetPriVxFinder : public AthReentrantAlgorithm { public: InDetPriVxFinder(const std::string &name, ISvcLocator *pSvcLocator); - virtual ~InDetPriVxFinder(); - StatusCode initialize(); - StatusCode execute(); - StatusCode finalize(); + + virtual ~InDetPriVxFinder() = default; - //Monitoring of the vertex variables - void monitor_vertex( const std::string &prefix, xAOD::Vertex vertex ); - + // Gaudi algorithm hooks + virtual StatusCode initialize() override; + virtual StatusCode execute(const EventContext& ctx) const override; + virtual StatusCode finalize() override; private: + + //Monitoring of the vertex variables + void monitor_vertex( const std::string &prefix, xAOD::Vertex vertex ) const; + SG::ReadHandleKey<TrackCollection> m_trkTracksName{this,"TrkTracksName","Tracks","Trk::Track Collection used in Vertexing"}; SG::ReadHandleKey<xAOD::TrackParticleContainer> m_tracksName{this,"TracksName","InDetTrackParticles","xAOD::TrackParticle Collection used in Vertexing"}; SG::WriteHandleKey<xAOD::VertexContainer> m_vxCandidatesOutputName{this,"VxCandidatesOutputName","PrimaryVertices","Output Vertex Collection"}; - ToolHandle< IVertexFinder > m_VertexFinderTool; - ToolHandle<Trk::IVertexMergingTool > m_VertexMergingTool; - ToolHandle<Trk::IVertexCollectionSortingTool > m_VertexCollectionSortingTool; - - bool m_doVertexMerging; - bool m_doVertexSorting; - bool m_useTrackParticles;//use TrackParticles or Trk::Tracks as input - - // for summary output at the end - unsigned int m_numEventsProcessed; - unsigned int m_totalNumVerticesWithoutDummy; - + ToolHandle< IVertexFinder > m_VertexFinderTool{this, "VertexFinderTool", "", "Primary vertex finder tool"}; + ToolHandle<Trk::IVertexMergingTool > m_VertexMergingTool{this, "VertexMergingTool", "", "Vertex merging tool"}; + ToolHandle<Trk::IVertexCollectionSortingTool > m_VertexCollectionSortingTool{this, "VertexCollectionSortingTool", "", "Vertex collection sorting tool"}; ToolHandle<GenericMonitoringTool> m_monTool{this, "PriVxMonTool", "", "Monitoring tool"}; + + BooleanProperty m_doVertexMerging{this, "doVertexMerging", false, "Do vertex merging"}; + BooleanProperty m_doVertexSorting{this, "doVertexSorting", false, "Do vertex sorting"}; + BooleanProperty m_useTrackParticles{this, "useTrackParticles", true, "Use track particles as input"}; }; } #endif diff --git a/InnerDetector/InDetRecAlgs/InDetPriVxFinder/src/InDetPriVxFinder.cxx b/InnerDetector/InDetRecAlgs/InDetPriVxFinder/src/InDetPriVxFinder.cxx index d508a6f4099afdb025b674bafbd1dedfa94ec4cf..a69afcffd895d0e3e7772d523bf94d248aaa9e8d 100755 --- a/InnerDetector/InDetRecAlgs/InDetPriVxFinder/src/InDetPriVxFinder.cxx +++ b/InnerDetector/InDetRecAlgs/InDetPriVxFinder/src/InDetPriVxFinder.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ /*************************************************************************** @@ -11,45 +11,21 @@ changes : ***************************************************************************/ #include "InDetPriVxFinder/InDetPriVxFinder.h" -// forward declares -#include "InDetRecToolInterfaces/IVertexFinder.h" -#include "TrkVertexFitterInterfaces/IVertexMergingTool.h" -#include "TrkVertexFitterInterfaces/IVertexCollectionSortingTool.h" #include "xAODTracking/Vertex.h" #include "xAODTracking/TrackParticle.h" #include "xAODTracking/TrackParticleAuxContainer.h" +#include "AthenaMonitoringKernel/Monitored.h" // normal includes #include "TrkParticleBase/TrackParticleBaseCollection.h" -#include "AthenaMonitoringKernel/Monitored.h" - namespace InDet { - InDetPriVxFinder::InDetPriVxFinder ( const std::string &n, ISvcLocator *pSvcLoc ) - : AthAlgorithm ( n, pSvcLoc ), - m_VertexFinderTool ( "InDet::InDetPriVxFinderTool" ), - m_VertexMergingTool( "Trk::VertexMergingTool" ), - m_VertexCollectionSortingTool ("Trk::VertexCollectionSortingTool"), - m_doVertexMerging(false), - m_doVertexSorting(false), - m_useTrackParticles(true), - // for summary output at the end - m_numEventsProcessed(0), - m_totalNumVerticesWithoutDummy(0) +InDetPriVxFinder::InDetPriVxFinder + (const std::string& name,ISvcLocator* pSvcLocator) : AthReentrantAlgorithm(name, pSvcLocator) + { } - { - declareProperty ( "VertexFinderTool",m_VertexFinderTool ); - declareProperty ( "VertexMergingTool",m_VertexMergingTool ); - declareProperty ( "VertexCollectionSortingTool",m_VertexCollectionSortingTool ); - declareProperty ( "doVertexMerging",m_doVertexMerging ); - declareProperty ( "doVertexSorting",m_doVertexSorting ); - declareProperty ( "useTrackParticles", m_useTrackParticles); - } - - InDetPriVxFinder::~InDetPriVxFinder() - {} StatusCode InDetPriVxFinder::initialize() { @@ -64,7 +40,7 @@ namespace InDet msg(MSG::INFO) << "Retrieved tool " << m_VertexFinderTool << endmsg; } - /*Get the Vertex Mergin Tool*/ + /*Get the Vertex Merging Tool*/ if (m_doVertexMerging) { if ( m_VertexMergingTool.retrieve().isFailure() ) { @@ -93,23 +69,21 @@ namespace InDet } else { m_VertexCollectionSortingTool.disable(); } + if (!m_monTool.empty()) CHECK(m_monTool.retrieve()); ATH_CHECK(m_trkTracksName.initialize(!m_useTrackParticles)); ATH_CHECK(m_tracksName.initialize(m_useTrackParticles)); ATH_CHECK(m_vxCandidatesOutputName.initialize()); - - if (!m_monTool.empty()) CHECK(m_monTool.retrieve()); msg(MSG::INFO) << "Initialization successful" << endmsg; return StatusCode::SUCCESS; } - StatusCode InDetPriVxFinder::execute() + StatusCode InDetPriVxFinder::execute(const EventContext& ctx) const { - m_numEventsProcessed++; - SG::WriteHandle<xAOD::VertexContainer> outputVertices (m_vxCandidatesOutputName); + SG::WriteHandle<xAOD::VertexContainer> outputVertices (m_vxCandidatesOutputName, ctx); xAOD::VertexContainer* vertexContainer = 0; xAOD::VertexAuxContainer* vertexAuxContainer = 0; @@ -117,9 +91,10 @@ namespace InDet = std::make_pair( vertexContainer, vertexAuxContainer ); if(m_useTrackParticles){ - SG::ReadHandle<xAOD::TrackParticleContainer> trackParticleCollection(m_tracksName); + SG::ReadHandle<xAOD::TrackParticleContainer> trackParticleCollection(m_tracksName, ctx); if(trackParticleCollection.isValid()){ - vertexContainerPair = m_VertexFinderTool->findVertex ( trackParticleCollection.cptr() ); + + vertexContainerPair = m_VertexFinderTool->findVertex ( trackParticleCollection.cptr() ); } else{ ATH_MSG_ERROR("No TrackParticle Collection with key "<<m_tracksName.key()<<" exists in StoreGate. No Vertexing Possible"); @@ -127,7 +102,7 @@ namespace InDet } } else{ - SG::ReadHandle<TrackCollection> trackCollection(m_trkTracksName); + SG::ReadHandle<TrackCollection> trackCollection(m_trkTracksName, ctx); if(trackCollection.isValid()){ vertexContainerPair = m_VertexFinderTool->findVertex ( trackCollection.cptr() ); } @@ -174,7 +149,6 @@ namespace InDet } ATH_MSG_DEBUG("Successfully reconstructed " << myVertexContainerPair.first->size()-1 << " vertices (excluding dummy)"); - m_totalNumVerticesWithoutDummy += (myVertexContainerPair.first->size()-1); } ATH_CHECK(outputVertices.record(std::unique_ptr<xAOD::VertexContainer>(myVertexContainerPair.first),std::unique_ptr<xAOD::VertexAuxContainer>(myVertexContainerPair.second))); @@ -196,16 +170,10 @@ namespace InDet StatusCode InDetPriVxFinder::finalize() { - if (msgLvl(MSG::INFO)) - { - msg() << "Summary from Primary Vertex Finder (InnerDetector/InDetRecAlgs/InDetPriVxFinder)" << endmsg; - msg() << "=== " << m_totalNumVerticesWithoutDummy << " vertices recoed in " << m_numEventsProcessed << " events (excluding dummy)." << endmsg; - if (m_numEventsProcessed!=0) msg() << "=== " << double(m_totalNumVerticesWithoutDummy)/double(m_numEventsProcessed) << " vertices per event (excluding dummy)." << endmsg; - } return StatusCode::SUCCESS; } - void InDetPriVxFinder::monitor_vertex( const std::string &prefix, xAOD::Vertex vertex ){ + void InDetPriVxFinder::monitor_vertex( const std::string &prefix, xAOD::Vertex vertex ) const { if (prefix == "allVertex"){ auto x = Monitored::Scalar<double>( "allVertexX", vertex.x() ); auto y = Monitored::Scalar<double>( "allVertexY", vertex.y() ); @@ -225,7 +193,5 @@ namespace InDet auto mon = Monitored::Group(m_monTool, x, y, z, chi2, nDoF, NTracks ); } } - - } // end namespace InDet diff --git a/InnerDetector/InDetRecTools/InDetConversionFinderTools/CMakeLists.txt b/InnerDetector/InDetRecTools/InDetConversionFinderTools/CMakeLists.txt index 23bf33cd1185ec8f11a69d3c0acd4258fb6a18cd..fc81066bb48265e88540844a8ddaad8e6c692a31 100644 --- a/InnerDetector/InDetRecTools/InDetConversionFinderTools/CMakeLists.txt +++ b/InnerDetector/InDetRecTools/InDetConversionFinderTools/CMakeLists.txt @@ -5,29 +5,6 @@ # Declare the package name: atlas_subdir( InDetConversionFinderTools ) -# Declare the package's dependencies: -atlas_depends_on_subdirs( PUBLIC - Control/AthenaBaseComps - Event/xAOD/xAODTracking - GaudiKernel - InnerDetector/InDetRecTools/InDetRecToolInterfaces - Reconstruction/Particle - Tracking/TrkEvent/TrkEventPrimitives - Tracking/TrkEvent/TrkParameters - Tracking/TrkEvent/TrkParticleBase - Tracking/TrkEvent/TrkTrack - PRIVATE - Control/AthLinks - InnerDetector/InDetRecEvent/InDetPrepRawData - Tracking/TrkDetDescr/TrkSurfaces - Tracking/TrkEvent/TrkMeasurementBase - Tracking/TrkEvent/TrkRIO_OnTrack - Tracking/TrkEvent/VxVertex - Tracking/TrkExtrapolation/TrkExInterfaces - Tracking/TrkTools/TrkToolInterfaces - Tracking/TrkVertexFitter/TrkVertexFitterInterfaces - Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils ) - # External dependencies: find_package( CLHEP ) find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread ) @@ -38,9 +15,9 @@ atlas_add_library( InDetConversionFinderToolsLib PUBLIC_HEADERS InDetConversionFinderTools PRIVATE_INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} PRIVATE_DEFINITIONS ${CLHEP_DEFINITIONS} - LINK_LIBRARIES AthenaBaseComps xAODTracking GaudiKernel InDetRecToolInterfaces Particle TrkEventPrimitives TrkParameters TrkParticleBase TrkTrack + LINK_LIBRARIES AthenaBaseComps xAODTracking GaudiKernel InDetRecToolInterfaces Particle TrkEventPrimitives TrkParameters TrkParticleBase TrkTrack TrkVertexSeedFinderUtilsLib PRIVATE_LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} AthLinks InDetPrepRawData TrkSurfaces TrkMeasurementBase TrkRIO_OnTrack VxVertex - TrkExInterfaces TrkToolInterfaces TrkVertexFitterInterfaces TrkVertexSeedFinderUtilsLib ) + TrkExInterfaces TrkToolInterfaces TrkVertexFitterInterfaces ) atlas_add_component( InDetConversionFinderTools src/components/*.cxx diff --git a/InnerDetector/InDetRecTools/TrackVertexAssociationTool/src/TrackVertexAssoTestAlg.cxx b/InnerDetector/InDetRecTools/TrackVertexAssociationTool/src/TrackVertexAssoTestAlg.cxx index 9387be90b3f4f0ffea258aa387181311b3b8748a..e19c0bcc4c73afa2b377f76ad8278982601711eb 100644 --- a/InnerDetector/InDetRecTools/TrackVertexAssociationTool/src/TrackVertexAssoTestAlg.cxx +++ b/InnerDetector/InDetRecTools/TrackVertexAssociationTool/src/TrackVertexAssoTestAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTracking/TrackParticle.h" #include "xAODTracking/Vertex.h" diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py index 2dc4fc298f19c42e1a0ef6aa45cd8994d76cde6e..1d2e09aba1d661fec2468e0ea1b4f740735d0855 100644 --- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py @@ -183,8 +183,12 @@ def getTrackDecorators(**kwargs) : of the algorithms will be extended by the collection name. ''' # only valid kwarg : TrackParticleContainerName - return [ getInDetPhysHitDecoratorAlg(**kwargs), - getParameterErrDecoratorAlg(**kwargs) ] + from RecExConfig.AutoConfiguration import IsInInputFile + if not IsInInputFile('Trk::TrackCollection','CombinedInDetTracks') : + return [ getParameterErrDecoratorAlg(**kwargs) ] + else : + return [ getInDetPhysHitDecoratorAlg(**kwargs), + getParameterErrDecoratorAlg(**kwargs) ] def getDBMTrackDecorators(**kwargs) : from InDetRecExample.InDetKeys import InDetKeys diff --git a/LArCalorimeter/LArCalibUtils/src/LArPedestalInPhysicsMaker.cxx b/LArCalorimeter/LArCalibUtils/src/LArPedestalInPhysicsMaker.cxx index 4a492c9aefcca905c90071d514260bff6a95d909..bee6e56b742b5581b4848ee31da57b6cb7eb922b 100755 --- a/LArCalorimeter/LArCalibUtils/src/LArPedestalInPhysicsMaker.cxx +++ b/LArCalorimeter/LArCalibUtils/src/LArPedestalInPhysicsMaker.cxx @@ -21,7 +21,7 @@ // Include files #include "LArCalibUtils/LArPedestalInPhysicsMaker.h" -//#include "GaudiKernel/Property.h" +//#include "Gaudi/Property.h" //#include "GaudiKernel/ListItem.h" #include "GaudiKernel/IIncidentSvc.h" diff --git a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py b/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py index 1757811060b91a804cc8d6ee11cb3c5093107356..7a25092f93b26d161e43ecad1cf630669e4ea85f 100644 --- a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py +++ b/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py @@ -268,7 +268,7 @@ class TestAlg (Alg): self.idmgr = self.detStore['CaloIdManager'] self.onlineID = self.detStore['LArOnlineID'] self.offlineID = self.detStore['CaloCell_ID'] - self.ccc = make_calo_cells (self.detStore) + self.ccc = None if not self.tool1.retrieve(): return StatusCode.Failure if not self.tool2.retrieve(): @@ -281,6 +281,9 @@ class TestAlg (Alg): return StatusCode.Success def execute (self): + if not self.ccc: + self.ccc = make_calo_cells (self.detStore) + ctx = self.getContext() iev = ctx.evt() diff --git a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref b/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref index 689ae26514e0a6926cc42dddce99c5230ee11d2a..528b6b3e0f9b96276f8fb70771b9ff1469920c33 100644 --- a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref +++ b/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref @@ -1,15 +1,16 @@ -Tue Jun 16 23:39:12 EDT 2020 +Wed Aug 12 22:07:02 CEST 2020 +Preloading tcmalloc_minimal.so Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [?-22.0.0] [?] [?/?] -- built on [?] +Py:Athena INFO using release [WorkDir-22.0.17] [x86_64-centos7-gcc8-opt] [atlas-work3/ed2484eb9f5] -- built on [2020-08-12T1632] 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 "LArCellRec/LArCellDeadOTXCorr_test.py" Py:Athena INFO SetGeometryVersion.py obtained major release version 22 Py:Athena INFO including file "IdDictDetDescrCnv/IdDictDetDescrCnv_joboptions.py" -Py:ConfigurableDb INFO Read module info for 5202 configurables from 2 genConfDb files +Py:ConfigurableDb INFO Read module info for 5547 configurables from 32 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! -EventInfoMgtInit: Got release version sss-22.0.0 +EventInfoMgtInit: Got release version Athena-22.0.17 Py:IOVDbSvc.CondDB INFO Setting up conditions DB access to instance OFLP200 Py:Athena INFO including file "CaloIdCnv/CaloIdCnv_joboptions.py" Py:Athena INFO including file "CaloConditions/CaloConditions_jobOptions.py" @@ -23,39 +24,37 @@ Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/OnOffIdMap wit Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/CalibIdMap with tag LARIdentifierCalibIdMap-012 Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/FebRodMap with tag LARIdentifierFebRodMap-005 Py:Athena INFO including file "AthenaCommon/runbatch.py" -# setting LC_ALL to "C" -ApplicationMgr 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 v27r1p99) - running on karma on Tue Jun 16 23:39:43 2020 + Welcome to ApplicationMgr (GaudiCoreSvc v33r2) + running on lxplus770.cern.ch on Wed Aug 12 22:07:13 2020 ==================================================================================================================================== ApplicationMgr INFO Application Manager Configured successfully -ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 4026 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 3589 CLIDRegistry entries for module ALL 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 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok] 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 Read replica configuration from /home/sss/atlas/rootaccess/build/share/dbreplica.config -DBReplicaSvc INFO No specific match for domain found - use default fallback -DBReplicaSvc INFO Total of 1 servers found for host karma [atlas_dd ] +DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy-atlas.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy.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_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus770.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 INFO Resolved path (via DATAPATH) is /home/sss/atlas/DBRelease/current/poolcond/PoolCat_oflcond.xml -PoolSvc INFO Resolved path (via DATAPATH) is /home/sss/atlas/DBRelease/current/poolcond/PoolCat_oflcond.xml -PoolSvc INFO Resolved path (via ATLAS_POOLCOND_PATH) is /home/sss/atlas/DBRelease/poolcond/PoolFileCatalog.xml +PoolSvc WARNING Unable to locate catalog for prfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables +PoolSvc WARNING Unable to locate catalog for apcfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables +PoolSvc INFO Resolved path (via ATLAS_POOLCOND_PATH) is /cvmfs/atlas-condb.cern.ch/repo/conditions/poolcond/PoolFileCatalog.xml 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([]) +OutputStreamSeq... INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00 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 IOVDbSvc INFO Global tag: OFLCOND-RUN12-SDR-35 set from joboptions IOVDbSvc INFO Folder /LAR/Identifier/OnOffIdMap, adding new key tag with value LARIdentifierOnOffIdMap-012 IOVDbSvc INFO Folder /LAR/Identifier/CalibIdMap, adding new key tag with value LARIdentifierCalibIdMap-012 @@ -63,7 +62,7 @@ IOVDbSvc INFO Folder /LAR/Identifier/FebRodMap, adding new key tag w IOVDbFolder INFO Read from meta data only for folder /TagInfo IOVDbSvc INFO Initialised with 3 connections and 25 folders IOVDbSvc INFO Service IOVDbSvc initialised successfully -ClassIDSvc INFO getRegistryEntries: read 1441 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 1488 CLIDRegistry entries for module ALL IOVDbSvc INFO preLoadAddresses: Removing folder /TagInfo. It should only be in the file meta data and was not found. IOVDbSvc INFO Opening COOL connection for COOLOFL_LAR/OFLP200 IOVSvc INFO No IOVSvcTool associated with store "StoreGateSvc" @@ -96,8 +95,8 @@ IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Shape IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/LArTTCellMapAtlas IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/fSampl IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/uA2MeV -ClassIDSvc INFO getRegistryEntries: read 18 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 2373 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 24 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 2436 CLIDRegistry entries for module ALL ClassIDSvc INFO getRegistryEntries: read 35 CLIDRegistry entries for module ALL DetDescrCnvSvc INFO initializing DetDescrCnvSvc INFO Found DetectorStore service @@ -198,12 +197,12 @@ EMECConstruction INFO multi-layered version of absorbers activated, paramete EMECConstruction INFO activating LAr::EMEC::Neg::InnerWheel EMECConstruction INFO activating LAr::EMEC::Neg::OuterWheel EndcapDMConstru... INFO Start building EC electronics geometry -GeoModelSvc INFO GeoModelSvc.LArDetectorToolNV SZ= 17776Kb Time = 0.8S +GeoModelSvc INFO GeoModelSvc.LArDetectorToolNV SZ= 24348Kb Time = 0.58S ClassIDSvc INFO getRegistryEntries: read 66 CLIDRegistry entries for module ALL AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 -ClassIDSvc INFO getRegistryEntries: read 6729 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 5546 CLIDRegistry entries for module ALL ClassIDSvc INFO getRegistryEntries: read 608 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 3943 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 2989 CLIDRegistry entries for module ALL CondInputLoader INFO Initializing CondInputLoader... CondInputLoader INFO Adding base classes: + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/BadChannels/MissingFEBs' ) -> @@ -257,7 +256,7 @@ CondInputLoader INFO Will create WriteCondHandle dependencies for the follo + ( 'LAruA2MeVMC' , 'ConditionStore+LAruA2MeV' ) PyComponentMgr INFO Initializing PyComponentMgr... testalg1 INFO Initializing testalg1... -ClassIDSvc INFO getRegistryEntries: read 582 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 1123 CLIDRegistry entries for module ALL CaloIdMgrDetDes... INFO in createObj: creating a CaloDescrManager object in the detector store CaloIDHelper_ID... INFO in createObj: creating a CaloCell_ID helper object in the detector store CaloIDHelper_ID... INFO in createObj: creating a LArEM_ID helper object in the detector store @@ -266,15 +265,15 @@ 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 /home/sss/atlas/rootaccess/build/share/FCal2DNeighbors-April2011.txt -LArFCAL_Base_ID INFO Reading file /home/sss/atlas/rootaccess/build/share/FCal3DNeighborsNext-April2011.txt -LArFCAL_Base_ID INFO Reading file /home/sss/atlas/rootaccess/build/share/FCal3DNeighborsPrev-April2011.txt +LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/FCal2DNeighbors-April2011.txt +LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/FCal3DNeighborsNext-April2011.txt +LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-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. CaloIDHelper_ID... INFO in createObj: creating a TileID helper object in the detector store AtlasDetectorID INFO initialize_from_dictionary - OK -TileNeighbour INFO Reading file /home/sss/atlas/rootaccess/build/share/TileNeighbour_reduced.txt +TileNeighbour INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/TileNeighbour_reduced.txt AtlasDetectorID INFO initialize_from_dictionary - OK CaloIDHelper_ID... INFO in createObj: creating a CaloDM_ID helper object in the detector store CaloDM_ID INFO initialize_from_dictionary @@ -292,27 +291,21 @@ 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 /home/sss/atlas/rootaccess/build/share/FCalSuperCells2DNeighborsNew-April2014.txt -LArFCAL_Base_ID INFO Reading file /home/sss/atlas/rootaccess/build/share/FCalSuperCells3DNeighborsNextNew-April2014.txt -LArFCAL_Base_ID INFO Reading file /home/sss/atlas/rootaccess/build/share/FCalSuperCells3DNeighborsPrevNew-April2014.txt +LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/FCalSuperCells2DNeighborsNew-April2014.txt +LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/FCalSuperCells3DNeighborsNextNew-April2014.txt +LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-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 /home/sss/atlas/rootaccess/build/share/TileSuperCellNeighbour.txt +TileNeighbour INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-08-11T2101/Athena/22.0.17/InstallArea/x86_64-centos7-gcc8-opt/share/TileSuperCellNeighbour.txt AtlasDetectorID INFO initialize_from_dictionary - OK CaloIdMgrDetDes... INFO Finished CaloIdMgrDetDes... INFO Initializing CaloIdMgr from values in CaloIdMgrDetDescrCnv -ClassIDSvc INFO getRegistryEntries: read 36 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 301 CLIDRegistry entries for module ALL LArOnlineIDDetD... INFO in createObj: creating a LArOnlineID helper object in the detector store LArOnlineID INFO initialize_from_dictionary AtlasDetectorID INFO initialize_from_dictionary - OK -ClassIDSvc INFO getRegistryEntries: read 68 CLIDRegistry entries for module ALL -CaloMgrDetDescrCnvWARNING Attempting to create a Calo Detector Manager object outside of the event loop. Geometry may not be aligned. -CaloMgrDetDescrCnv INFO in createObj: creating a Calo Detector Manager object in the detector store -DetectorStore WARNING retrieve(default): No valid proxy for default object - of type TileDetDescrManager(CLID 2941) -CaloMgrDetDescrCnvWARNING Could not get the TileDetectorManager. No Calo Elements will be built for Tile -ClassIDSvc INFO getRegistryEntries: read 190 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 1963 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 66 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 1454 CLIDRegistry entries for module ALL ToolSvc.tool1 INFO Initializing LArCellDeadOTXCorr ToolSvc.tool1 INFO L1Calo database won't be used. Pedestal values will be constant and equal to 32. ToolSvc.CaloTri... INFO => CaloTriggerTowerService::initialize() @@ -324,7 +317,7 @@ LArIdMgrDetDesc... INFO Set CaloCell_ID helper in LArIdMgr LArIdMgrDetDesc... INFO Initializing LArIdMgr from values in LArIdMgrDetDescrCnv ClassIDSvc INFO getRegistryEntries: read 59 CLIDRegistry entries for module ALL ClassIDSvc INFO getRegistryEntries: read 66 CLIDRegistry entries for module ALL -IOVSvc.IOVSvcTool INFO Still in initialize phase, not tiggering callback for LArCablingLegacyService[0x5634b6009340]+7f3ae55f2620 bound to AthenaAttributeList[/LAR/Identifier/OnOffIdMap] +IOVSvc.IOVSvcTool INFO Still in initialize phase, not tiggering callback for LArCablingLegacyService[0x3230e000]+7f214a4ac2b0 bound to AthenaAttributeList[/LAR/Identifier/OnOffIdMap] ToolSvc.LArCabl... INFO Successfully installed callback on folder/LAR/Identifier/OnOffIdMap ToolSvc.LArCabl... INFO Successfully installed callback on folder/LAR/Identifier/CalibIdMap ToolSvc.LArCabl... INFO Successfully installed callback on folder/LAR/Identifier/FebRodMap @@ -333,7 +326,7 @@ ToolSvc.CaloTri... INFO ====> ...CaloTriggerTowerService::init() OK ToolSvc.tool2 INFO Initializing LArCellDeadOTXCorr ToolSvc.tool2 INFO L1Calo database won't be used. Pedestal values will be constant and equal to 32. ApplicationMgr INFO Application Manager Initialized successfully -ClassIDSvc INFO getRegistryEntries: read 63 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 131 CLIDRegistry entries for module ALL CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/BadChannels/MissingFEBs' CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/CalibIdMap' CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/FebRodMap' @@ -356,7 +349,7 @@ ApplicationMgr INFO Application Manager Started successfully AthenaEventLoopMgr INFO ===>>> start of run 1 <<<=== EventPersistenc... INFO Added successfully Conversion service:AthenaPoolCnvSvc EventPersistenc... INFO Added successfully Conversion service:TagInfoMgr -ClassIDSvc INFO getRegistryEntries: read 111 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 118 CLIDRegistry entries for module ALL IOVDbSvc INFO Opening COOL connection for COOLOFL_LAR/OFLP200 IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARAlign-IOVDEP-00 for folder /LAR/Align IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArBadChannelsBadChannels-IOVDEP-06 for folder /LAR/BadChannels/BadChannels @@ -383,77 +376,81 @@ IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to CALOOflIdenti IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to CALOOflIdentifierCaloTTPpmRxIdMapAtlas-0000 for folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas IOVDbSvc INFO Disconnecting from COOLOFL_CALO/OFLP200 Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] EACFEBD4-9BD2-E211-848A-02163E006B20 -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root File version:52200 +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root File version:52200 ToolSvc.CaloTri... INFO ====> iovCallBack ToolSvc.LArCabl... INFO ====> iovCallBack ToolSvc.LArCabl... INFO Done reading online/offline identifier mapping ToolSvc.LArCabl... INFO Found 195072 online identifier and 182468 offline identifier. 12604 disconnected channels. +CaloMgrDetDescrCnv INFO in createObj: creating a Calo Detector Manager object in the detector store +DetectorStore WARNING retrieve(default): No valid proxy for default object + of type TileDetDescrManager(CLID 2941) +CaloMgrDetDescrCnvWARNING Could not get the TileDetectorManager. No Calo Elements will be built for Tile Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root File version:52200 +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 AthenaEventLoopMgr INFO ===>>> start processing event #1, run #1 0 events processed so far <<<=== Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 64ADE389-CABD-DD11-8D4C-000423D950B0 -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root Warning in <TClass::Init>: no dictionary for class DataHeader_p2 is available Warning in <TClass::Init>: no dictionary for class DataHeaderElement_p2 is available Warning in <TClass::Init>: no dictionary for class PoolToken_p1 is available -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root File version:51800 -/home/sss/atlas... INFO Database being retired... +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root File version:51800 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] EACFEBD4-9BD2-E211-848A-02163E006B20 Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 7C42BC12-BD96-E011-B8EC-003048F0E01C -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root File version:52600 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root File version:52600 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 687EA080-E4B6-DD11-A149-000423D9907C -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root File version:51800 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root File version:51800 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] FE8535CE-AD50-DC11-952F-000423D67862 -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root File version:51400 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root File version:51400 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 64ADE389-CABD-DD11-8D4C-000423D950B0 Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 3CE29BA7-A6DC-DC11-BF61-000423D65662 -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root File version:51400 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/comcond/comcond.000004.lar_conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/comcond/comcond.000004.lar_conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root File version:51400 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 7C42BC12-BD96-E011-B8EC-003048F0E01C -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 -/home/sss/atlas... INFO Database being retired... +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 687EA080-E4B6-DD11-A149-000423D9907C LArPedestalMCCnv INFO Reading LArPedestalMC (original) Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 180A4AF2-F47E-DB11-9E8F-000E0C4DEA2D -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000002.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/cmccond.000001.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root__DQ2-1250193473 Warning in <TClass::Init>: no dictionary for class DataHeader_p1 is available Warning in <TClass::Init>: no dictionary for class DataHeaderElement_p1 is available -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000002.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root File version:51000 -/home/sss/atlas... INFO Database being retired... +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/cmccond.000001.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root__DQ2-1250193473 File version:51000 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] FE8535CE-AD50-DC11-952F-000423D67862 Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 303FCBD8-653E-DD11-ABBD-000423D99862 -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root File version:51800 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root File version:51800 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 3CE29BA7-A6DC-DC11-BF61-000423D65662 Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] F4885664-6C4D-DF11-A94A-00304867340C -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root File version:52200 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root File version:52200 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 445FAD9A-5DB3-E14A-81DB-BA6244602734 -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root File version:53413 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root File version:53413 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 180A4AF2-F47E-DB11-9E8F-000E0C4DEA2D Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] D27D07D4-C135-E011-84A9-003048F0E01E -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root File version:52600 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root File version:52600 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 303FCBD8-653E-DD11-ABBD-000423D99862 LArOnOffMappingAlg INFO Done reading online/offline identifier mapping LArOnOffMappingAlg INFO Found 195072 online identifier and 182468 offline identifier. 12604 disconnected channels. @@ -463,63 +460,70 @@ LArCalibLineMap... INFO recorded new LArCalibLineMap with range {[0,l:0] - [IN LArFebRodMappin... INFO Done reading Feb/Rod mapping. Found 1524 Febs and 762 Rods LArFebRodMappin... INFO recorded new LArFebRodMap with range {[0,l:0] - [INVALID]} into Conditions Store LArBadChannelCo... INFO Read a total of 0 problematic channels from database +LArBadChannelCo... INFO Recorded LArRawChannelCont object with key LArBadChannel with EventRange {[0,t:0,l:0] - [1,l:4294967294]} into Conditions Store LArBadFebCondAlg INFO Read a total of 0 problematic febs from database +LArBadFebCondAlg INFO Recorded LArBadFebCont object with LArBadFeb with EventRange {[0,l:0] - [115301,l:0]} into Conditions Store LArKnownBadFebAlg INFO Read a total of 0 problematic febs from database +LArKnownBadFebAlg INFO Recorded LArBadFebCont object with LArKnownBadFEBs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store LArKnownMNBFebAlg INFO Read a total of 0 problematic febs from database +LArKnownMNBFebAlg INFO Recorded LArBadFebCont object with LArKnownMNBFEBs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store LArMCSymCondAlg INFO recorded new LArMCSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArRampSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArAutoCorrSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArDAC2uASym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArNoiseSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArfSamplSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LAruA2MeVSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArMinBiasSym with range {[0,l:0] - [222222,l:0]} into Conditions Store -LArSymCondition... INFO recorded new LArMinBiasAverageSym with range {[0,l:0] - [222222,l:0]} into Conditions Store -LArSymCondition... INFO recorded new LArShapeSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArMphysOverMcalSym with range {[0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArRampSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArAutoCorrSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArDAC2uASym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArNoiseSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArfSamplSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LAruA2MeVSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArMinBiasSym with range {[0,t:0,l:0] - [222222,l:0]} into Conditions Store +LArSymCondition... INFO recorded new LArMinBiasAverageSym with range {[0,t:0,l:0] - [222222,l:0]} into Conditions Store +LArSymCondition... INFO recorded new LArShapeSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store +LArSymCondition... INFO recorded new LArMphysOverMcalSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store LArBadFebCondAl... INFO Read a total of 0 problematic febs from database +LArBadFebCondAl... INFO Recorded LArBadFebCont object with GoodFebs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store LArBadFebCondAl... INFO Read a total of 3 problematic febs from database -ClassIDSvc INFO getRegistryEntries: read 1213 CLIDRegistry entries for module ALL +LArBadFebCondAl... INFO Recorded LArBadFebCont object with BadFebs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store +ClassIDSvc INFO getRegistryEntries: read 1123 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 130 CLIDRegistry entries for module ALL AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 1 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #2, run #1 1 events processed so far <<<=== LArTTCellMapCnv INFO initialize() Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] B2E3B2B6-B76C-DF11-A505-000423D5ADDA -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000013.gen.COND/cond09_mc.000013.gen.COND._0001.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond09_mc.000013.gen.COND/cond09_mc.000013.gen.COND._0001.pool.root File version:52200 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000013.gen.COND/cond09_mc.000013.gen.COND._0001.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000013.gen.COND/cond09_mc.000013.gen.COND._0001.pool.root File version:52200 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] F4885664-6C4D-DF11-A94A-00304867340C CaloTTOnOffIdMa... INFO initialize() Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] EC2448FE-EFE2-DD11-80D3-000423D98B8C -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0004.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0004.pool.root File version:51800 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0004.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0004.pool.root File version:51800 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 445FAD9A-5DB3-E14A-81DB-BA6244602734 CaloTTOnAttrIdM... INFO initialize() Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] CE5211E9-F51F-DC11-87A7-000423D6460E -Domain[ROOT_All] INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0026.pool.root -RootDatabase.open INFO /home/sss/atlas/DBRelease/current/poolcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0026.pool.root File version:51400 -/home/sss/atlas... INFO Database being retired... +Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/comcond.000001.conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0026.pool.root +RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/comcond.000001.conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0026.pool.root File version:51400 +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] D27D07D4-C135-E011-84A9-003048F0E01E AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 2 events processed so far <<<=== -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -/home/sss/atlas... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] B2E3B2B6-B76C-DF11-A505-000423D5ADDA -/home/sss/atlas... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] EC2448FE-EFE2-DD11-80D3-000423D98B8C -/home/sss/atlas... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... +/cvmfs/atlas-co... INFO Database being retired... Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] CE5211E9-F51F-DC11-87A7-000423D6460E +/cvmfs/atlas-co... INFO Database being retired... +Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] B2E3B2B6-B76C-DF11-A505-000423D5ADDA Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize @@ -528,33 +532,33 @@ testalg1 INFO Finalizing testalg1... IncidentProcAlg2 INFO Finalize PyComponentMgr INFO Finalizing PyComponentMgr... IdDictDetDescrCnv INFO in finalize -IOVDbFolder INFO Folder /LAR/Align (PoolRef) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.10 ))s -IOVDbFolder INFO Folder /LAR/BadChannels/BadChannels (AttrListColl) db-read 1/1 objs/chan/bytes 0/8/0 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/BadChannels/MissingFEBs (AttrList) db-read 1/1 objs/chan/bytes 1/1/16 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/CellCorrOfl/deadOTX (AttrListColl) db-read 1/1 objs/chan/bytes 1/1/705 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/Identifier/CalibIdMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/1520148 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/Identifier/FebRodMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/6100 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/Identifier/OnOffIdMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/780292 (( 0.00 ))s -IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/183 (( 0.07 ))s -IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.00 ))s -IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/AutoCorr (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/486 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/LArCellPositionShift (PoolRef) db-read 1/1 objs/chan/bytes 1/1/195 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/DAC2uA (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/HVScaleCorr (PoolRefColl) db-read 1/1 objs/chan/bytes 12/12/1980 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/MinBias (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/174 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/MinBiasAverage (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/MphysOverMcal (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Noise (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Pedestal (PoolRef) db-read 1/1 objs/chan/bytes 1/1/167 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Ramp (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/489 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Shape (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/477 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/Identifier/LArTTCellMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/173 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/fSampl (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/194 (( 0.00 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/uA2MeV (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/165 (( 0.00 ))s -IOVDbSvc INFO bytes in (( 0.21 ))s +IOVDbFolder INFO Folder /LAR/Align (PoolRef) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.03 ))s +IOVDbFolder INFO Folder /LAR/BadChannels/BadChannels (AttrListColl) db-read 1/1 objs/chan/bytes 0/8/0 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/BadChannels/MissingFEBs (AttrList) db-read 1/1 objs/chan/bytes 1/1/16 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/CellCorrOfl/deadOTX (AttrListColl) db-read 1/1 objs/chan/bytes 1/1/705 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/Identifier/CalibIdMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/1520148 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/Identifier/FebRodMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/6100 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/Identifier/OnOffIdMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/780292 (( 0.02 ))s +IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/183 (( 0.03 ))s +IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.02 ))s +IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.02 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/AutoCorr (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/486 (( 0.02 ))s +IOVDbFolder INFO Folder /LAR/LArCellPositionShift (PoolRef) db-read 1/1 objs/chan/bytes 1/1/195 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/DAC2uA (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/HVScaleCorr (PoolRefColl) db-read 1/1 objs/chan/bytes 12/12/1980 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/MinBias (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/174 (( 0.02 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/MinBiasAverage (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/MphysOverMcal (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.02 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/Noise (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.02 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/Pedestal (PoolRef) db-read 1/1 objs/chan/bytes 1/1/167 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/Ramp (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/489 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/Shape (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/477 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/Identifier/LArTTCellMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/173 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/fSampl (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/194 (( 0.01 ))s +IOVDbFolder INFO Folder /LAR/ElecCalibMC/uA2MeV (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/165 (( 0.02 ))s +IOVDbSvc INFO bytes in (( 0.38 ))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: 21 ReadTime: (( 0.14 ))s +IOVDbSvc INFO Connection COOLOFL_LAR/OFLP200 : nConnect: 2 nFolders: 21 ReadTime: (( 0.32 ))s IOVDbSvc INFO Connection COOLOFL_CALO/OFLP200 : nConnect: 2 nFolders: 3 ReadTime: (( 0.07 ))s AthDictLoaderSvc INFO in finalize... ToolSvc INFO Removing all tools created by ToolSvc @@ -562,9 +566,9 @@ ToolSvc.CaloTri... INFO => CaloTriggerTowerService::finalize() *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 6.39 [s] Ave/Min/Max=0.168(+-0.664)/ 0/ 3.45 [s] #= 38 -cObj_ALL INFO Time User : Tot= 6.6 [s] Ave/Min/Max=0.275(+-0.829)/ 0/ 3.51 [s] #= 24 -ChronoStatSvc INFO Time User : Tot= 42 [s] #= 1 +cObjR_ALL INFO Time User : Tot= 0.53 [s] Ave/Min/Max= 0.0139(+- 0.064)/ 0/ 0.4 [s] #= 38 +cObj_ALL INFO Time User : Tot= 0.76 [s] Ave/Min/Max= 0.0317(+- 0.0842)/ 0/ 0.41 [s] #= 24 +ChronoStatSvc INFO Time User : Tot= 49 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/LArCalorimeter/LArCellRec/src/LArCellDeadOTXCorr.h b/LArCalorimeter/LArCellRec/src/LArCellDeadOTXCorr.h index 61fb2607958e16a9d09b7fd31207953e05919115..31bcb7a014823eb0c20948448a70359b16875301 100644 --- a/LArCalorimeter/LArCellRec/src/LArCellDeadOTXCorr.h +++ b/LArCalorimeter/LArCellRec/src/LArCellDeadOTXCorr.h @@ -31,7 +31,7 @@ // Headerfile #include "AthenaBaseComps/AthAlgTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandleKey.h" #include "CaloInterface/ICaloCellMakerTool.h" #include "Identifier/Identifier.h" diff --git a/LArCalorimeter/LArCellRec/src/LArHVFraction.h b/LArCalorimeter/LArCellRec/src/LArHVFraction.h index 22837d5dca868feb67ed9f29cf0fef599e956cd2..c17189aecf01876168d46788bd15e43fa52df98f 100644 --- a/LArCalorimeter/LArCellRec/src/LArHVFraction.h +++ b/LArCalorimeter/LArCellRec/src/LArHVFraction.h @@ -9,7 +9,7 @@ #include "LArCabling/LArOnOffIdMapping.h" #include "LArElecCalib/ILArHVScaleCorr.h" #include "CaloEvent/CaloClusterCellLink.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CaloInterface/ILArHVFraction.h" diff --git a/LArCalorimeter/LArCellRec/src/LArTimeVetoAlg.cxx b/LArCalorimeter/LArCellRec/src/LArTimeVetoAlg.cxx index becac234003d9153bd9e6933ac57fcb66eb016eb..5b469210fba6b0d94ead4ee42e24ab130d4c119a 100644 --- a/LArCalorimeter/LArCellRec/src/LArTimeVetoAlg.cxx +++ b/LArCalorimeter/LArCellRec/src/LArTimeVetoAlg.cxx @@ -5,7 +5,7 @@ #include "LArTimeVetoAlg.h" #include "AthenaPoolUtilities/AthenaAttributeList.h" #include "LArRecEvent/LArEventBitInfo.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODEventInfo/EventInfo.h" //Constructor diff --git a/LArCalorimeter/LArClusterRec/LArClusterRec/LArClusterCollisionTimeAlg.h b/LArCalorimeter/LArClusterRec/LArClusterRec/LArClusterCollisionTimeAlg.h index a9a86abdc017661f450f430f99b95906db2dc04e..7f6d4fd45ac1d6bd5dc48f1bdd67bbbf9d201918 100644 --- a/LArCalorimeter/LArClusterRec/LArClusterRec/LArClusterCollisionTimeAlg.h +++ b/LArCalorimeter/LArClusterRec/LArClusterRec/LArClusterCollisionTimeAlg.h @@ -5,7 +5,7 @@ #ifndef LARCLUSTERCOLLISIONTIMEALG_H #define LARCLUSTERCOLLISIONTIMEALG_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgorithm.h" #include "xAODCaloEvent/CaloClusterContainer.h" diff --git a/LArCalorimeter/LArCondUtils/src/LArHV2Ntuple.cxx b/LArCalorimeter/LArCondUtils/src/LArHV2Ntuple.cxx index 05f9cce8c1684dd807240b29d5c2c3a0cac6755d..d09418a3424e4a9c7ff52a1c54735cbf72421289 100644 --- a/LArCalorimeter/LArCondUtils/src/LArHV2Ntuple.cxx +++ b/LArCalorimeter/LArCondUtils/src/LArHV2Ntuple.cxx @@ -3,7 +3,7 @@ */ #include "LArHV2Ntuple.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/NTuple.h" #include "LArHV/LArHVManager.h" diff --git a/LArCalorimeter/LArDetDescr/src/LArRecoMaterialTool.cxx b/LArCalorimeter/LArDetDescr/src/LArRecoMaterialTool.cxx index b010ca6f99a994cb5b4b188fd8308a6ef1711c8a..a84edad0c163748002d1c14417dd3bf101845529 100755 --- a/LArCalorimeter/LArDetDescr/src/LArRecoMaterialTool.cxx +++ b/LArCalorimeter/LArDetDescr/src/LArRecoMaterialTool.cxx @@ -10,7 +10,7 @@ #include "LArDetDescr/LArRecoMaterialTool.h" #include "GaudiKernel/Bootstrap.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IService.h" #include "GaudiKernel/IToolSvc.h" #include "StoreGate/StoreGate.h" diff --git a/LArCalorimeter/LArDetDescr/src/LArRecoSimpleGeomTool.cxx b/LArCalorimeter/LArDetDescr/src/LArRecoSimpleGeomTool.cxx index a66d51ff0aead64195969faeda7d42002059c812..93337f14065a57c32b33f70083e5860550cbf4c7 100755 --- a/LArCalorimeter/LArDetDescr/src/LArRecoSimpleGeomTool.cxx +++ b/LArCalorimeter/LArDetDescr/src/LArRecoSimpleGeomTool.cxx @@ -9,7 +9,7 @@ #include "LArDetDescr/LArRecoSimpleGeomTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IService.h" #include "GaudiKernel/IToolSvc.h" #include <vector> diff --git a/LArCalorimeter/LArDigitization/LArDigitization/LArHitFilter.h b/LArCalorimeter/LArDigitization/LArDigitization/LArHitFilter.h index 307e0417868825be00bead9b04f7748d2e8b8ac3..f213bd1c5dd24ff54474454875cc6ae4720b99a7 100755 --- a/LArCalorimeter/LArDigitization/LArDigitization/LArHitFilter.h +++ b/LArCalorimeter/LArDigitization/LArDigitization/LArHitFilter.h @@ -7,7 +7,7 @@ #include "AthenaBaseComps/AthAlgorithm.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadHandle.h" #include "StoreGate/WriteHandle.h" #include "LArSimEvent/LArHitContainer.h" diff --git a/LArCalorimeter/LArDigitization/LArDigitization/LArHitMerger.h b/LArCalorimeter/LArDigitization/LArDigitization/LArHitMerger.h index eef0fbba6a2dd2b091c184eddf3c4df3d3859f85..2ddad1c3125cbc219ddcedee57343cd60e163d79 100755 --- a/LArCalorimeter/LArDigitization/LArDigitization/LArHitMerger.h +++ b/LArCalorimeter/LArDigitization/LArDigitization/LArHitMerger.h @@ -7,7 +7,7 @@ #include "AthenaBaseComps/AthAlgorithm.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <vector> class StoreGateSvc; diff --git a/LArCalorimeter/LArDigitization/LArDigitization/LArPileUpTool.h b/LArCalorimeter/LArDigitization/LArDigitization/LArPileUpTool.h index 15a592542362452cfe6abd2f87ab50ed89033dc5..8b086ffe6685d3204fd0c3ced15c70d50d539971 100755 --- a/LArCalorimeter/LArDigitization/LArDigitization/LArPileUpTool.h +++ b/LArCalorimeter/LArDigitization/LArDigitization/LArPileUpTool.h @@ -38,7 +38,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/ReadCondHandle.h" #include "StoreGate/WriteHandleKey.h" #include "StoreGate/WriteHandle.h" diff --git a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloDDE.cxx b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloDDE.cxx index 6bf43084e6b752c19510de031e356b1121d50163..ec51253979a9c0d5613b10d9817b499fadca52f3 100755 --- a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloDDE.cxx +++ b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloDDE.cxx @@ -7,7 +7,7 @@ // Athena related #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <algorithm> #include "StoreGate/StoreGateSvc.h" #include "CLHEP/Units/SystemOfUnits.h" diff --git a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloGeom.cxx b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloGeom.cxx index d12b85eac372dbea0234042b6fd4c843394e0ed9..8b723c03765324368c4ddce2e43561f8b201c3c9 100755 --- a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloGeom.cxx +++ b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestCaloGeom.cxx @@ -7,7 +7,7 @@ // Athena related #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Bootstrap.h" #include "GaudiKernel/ISvcLocator.h" #include "GaudiKernel/IService.h" diff --git a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArMaterial.cxx b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArMaterial.cxx index 3a602ec7a97faeaeea6ee894d6fc9ed51161c18c..65184a941833533212a0cf2e407d8a5924bc13cb 100755 --- a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArMaterial.cxx +++ b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArMaterial.cxx @@ -6,7 +6,7 @@ #include "TestLArDetDescr/TestLArMaterial.h" // Athena related -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/Bootstrap.h" #include "GaudiKernel/ISvcLocator.h" #include "GaudiKernel/IService.h" diff --git a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArTT.cxx b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArTT.cxx index b5fbc5f9a517b7fbcefd0d691a8fe2d618e7a139..07eda3a9d188e921992f37eb1d49eba5d499da10 100755 --- a/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArTT.cxx +++ b/LArCalorimeter/LArExample/TestLArDetDescr/src/TestLArTT.cxx @@ -7,7 +7,7 @@ // Athena related #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <algorithm> #include "StoreGate/StoreGateSvc.h" #include "CLHEP/Units/SystemOfUnits.h" diff --git a/LArCalorimeter/LArExample/TestLArHardwareID/src/TestLArHWID_Algo.cxx b/LArCalorimeter/LArExample/TestLArHardwareID/src/TestLArHWID_Algo.cxx index 8a0e17f3737ce323129901cb95f50adccb1fbbc1..36454b8526bcb0eda0fe8d27010a1ed9ec58e717 100644 --- a/LArCalorimeter/LArExample/TestLArHardwareID/src/TestLArHWID_Algo.cxx +++ b/LArCalorimeter/LArExample/TestLArHardwareID/src/TestLArHWID_Algo.cxx @@ -9,7 +9,7 @@ #include "GaudiKernel/IService.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IChronoStatSvc.h" #include "GaudiKernel/IToolSvc.h" diff --git a/LArCalorimeter/LArExample/TestLArHardwareID/src/initTTMap_Algo.cxx b/LArCalorimeter/LArExample/TestLArHardwareID/src/initTTMap_Algo.cxx index 04cc746a215ac8faf5ab99c74a58e9501640db5a..121a934fe1e7e645288c55d26be289f0fb8490d8 100644 --- a/LArCalorimeter/LArExample/TestLArHardwareID/src/initTTMap_Algo.cxx +++ b/LArCalorimeter/LArExample/TestLArHardwareID/src/initTTMap_Algo.cxx @@ -10,7 +10,7 @@ #include "GaudiKernel/IService.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IChronoStatSvc.h" #include "GaudiKernel/IToolSvc.h" diff --git a/LArCalorimeter/LArExample/TestLArHardwareID/src/reinitTTMap_Algo.cxx b/LArCalorimeter/LArExample/TestLArHardwareID/src/reinitTTMap_Algo.cxx index 5f7f83a3f1902c6d6e85d51041df841301f01cd3..82aa191d9fbd691b311da2e2569ca4e2772038fc 100644 --- a/LArCalorimeter/LArExample/TestLArHardwareID/src/reinitTTMap_Algo.cxx +++ b/LArCalorimeter/LArExample/TestLArHardwareID/src/reinitTTMap_Algo.cxx @@ -10,7 +10,7 @@ #include "GaudiKernel/IService.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IChronoStatSvc.h" #include "GaudiKernel/IToolSvc.h" diff --git a/LArCalorimeter/LArExample/TestLArHardwareID/src/testTTMap_Algo.cxx b/LArCalorimeter/LArExample/TestLArHardwareID/src/testTTMap_Algo.cxx index 429d33895df95fe787162a51227f0064d6fdc764..c7f5e171bafe605d71af516acad9a373d9fd99f7 100755 --- a/LArCalorimeter/LArExample/TestLArHardwareID/src/testTTMap_Algo.cxx +++ b/LArCalorimeter/LArExample/TestLArHardwareID/src/testTTMap_Algo.cxx @@ -9,7 +9,7 @@ #include "GaudiKernel/IService.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IChronoStatSvc.h" #include "GaudiKernel/IToolSvc.h" diff --git a/LArCalorimeter/LArExample/TestLArHardwareID/src/updateTTMap_Algo.cxx b/LArCalorimeter/LArExample/TestLArHardwareID/src/updateTTMap_Algo.cxx index 03e639bf7fcc7225c0bc2b556d020cc8b2b4d965..5ccc92e103db2b81fdb35a749da6c2a7c5f6523f 100644 --- a/LArCalorimeter/LArExample/TestLArHardwareID/src/updateTTMap_Algo.cxx +++ b/LArCalorimeter/LArExample/TestLArHardwareID/src/updateTTMap_Algo.cxx @@ -9,7 +9,7 @@ #include "GaudiKernel/IService.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IChronoStatSvc.h" #include "GaudiKernel/IToolSvc.h" diff --git a/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.cc b/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.cc index 2e9512a429dad3e133f013c10249118a201867c8..c3231a9bc6750f35a1ee655707adf3cf9db6f3e2 100644 --- a/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.cc +++ b/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.cc @@ -31,7 +31,7 @@ namespace LArG4 { declareProperty("GeometryCalculator",m_geometryCalculator); } - void CalibrationCalculator::WheelTypeHandler(Property&) + void CalibrationCalculator::WheelTypeHandler(Gaudi::Details::PropertyBase&) { switch(m_wcalc_tProp.value()) { diff --git a/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.h b/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.h index d66577ab5478917cfaa4983543badf08e4814d4b..eaa187f89bd3c1633173968372231fd91b4bf8bf 100644 --- a/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.h +++ b/LArCalorimeter/LArG4/LArG4EC/src/CalibrationCalculator.h @@ -52,7 +52,7 @@ namespace LArG4 { CalibrationCalculator(const std::string& name, ISvcLocator *pSvcLocator); virtual ~CalibrationCalculator(); // Update handler - void WheelTypeHandler(Property&); + void WheelTypeHandler(Gaudi::Details::PropertyBase&); StatusCode initialize() override final; // The Process method returns a boolean value. If it's true, the diff --git a/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.cc b/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.cc index df9e480f7c5fbcf9b622fe1dd01ec78287201de2..416f9b29703687eca07ef8e238af823149ba0940 100644 --- a/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.cc +++ b/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.cc @@ -210,7 +210,7 @@ EnergyCalculator::EnergyCalculator(const std::string& name, ISvcLocator *pSvcLoc declareProperty("zSide",m_zside); } -void EnergyCalculator::CorrectionTypeHandler(Property&) +void EnergyCalculator::CorrectionTypeHandler(Gaudi::Details::PropertyBase&) { switch(m_corrProp.value()) { @@ -235,7 +235,7 @@ void EnergyCalculator::CorrectionTypeHandler(Property&) } } -void EnergyCalculator::SolidTypeHandler(Property&) +void EnergyCalculator::SolidTypeHandler(Gaudi::Details::PropertyBase&) { switch(m_solidtypeProp.value()) { diff --git a/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.h b/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.h index 0e29d9ae0f5607ef9b5b0b671bf7b65511c98231..c2cf362a11d807a43d8bcc8bfe5101f490d5d74a 100644 --- a/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.h +++ b/LArCalorimeter/LArG4/LArG4EC/src/EnergyCalculator.h @@ -54,8 +54,8 @@ namespace LArG4 { EnergyCalculator(const std::string& name, ISvcLocator *pSvcLocator); // Update handlers - void CorrectionTypeHandler(Property&); - void SolidTypeHandler(Property&); + void CorrectionTypeHandler(Gaudi::Details::PropertyBase&); + void SolidTypeHandler(Gaudi::Details::PropertyBase&); virtual StatusCode initialize() override final; virtual StatusCode finalize() override final; diff --git a/LArCalorimeter/LArG4/LArG4FastSimSvc/LArG4FastSimSvc/LArG4FastSimSvc.h b/LArCalorimeter/LArG4/LArG4FastSimSvc/LArG4FastSimSvc/LArG4FastSimSvc.h index 4b38112f63f99b59eab3357240cd3f4acb223053..e32f47170c121b267bd7af844930d83291a7f29c 100644 --- a/LArCalorimeter/LArG4/LArG4FastSimSvc/LArG4FastSimSvc/LArG4FastSimSvc.h +++ b/LArCalorimeter/LArG4/LArG4FastSimSvc/LArG4FastSimSvc/LArG4FastSimSvc.h @@ -11,7 +11,7 @@ // Minimal service includes #include "GaudiKernel/StatusCode.h" //#include "GaudiKernel/Service.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "G4Electron.hh" #include "G4Positron.hh" diff --git a/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.cc b/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.cc index 8a3a014d79047f4847e870ee6fa6a2689ea32203..d0e4b78b36d562260a9e0a9c5c8cc63d689c2f6c 100644 --- a/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.cc +++ b/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.cc @@ -28,7 +28,7 @@ namespace LArG4 { m_geometryTypeProp.declareUpdateHandler(&LArHECCalibrationWheelCalculator::GeometryTypeUpdateHandler, this); } - void LArHECCalibrationWheelCalculator::GeometryTypeUpdateHandler(Property&) + void LArHECCalibrationWheelCalculator::GeometryTypeUpdateHandler(Gaudi::Details::PropertyBase&) { switch(m_geometryTypeProp.value()) { diff --git a/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.h b/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.h index a9e5562d453f333b439b2b249051a66562665bf4..dd1ad300a78194ac165fe4063c404cfcb62819da 100644 --- a/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.h +++ b/LArCalorimeter/LArG4/LArG4HEC/src/LArHECCalibrationWheelCalculator.h @@ -27,7 +27,7 @@ namespace LArG4 { public: LArHECCalibrationWheelCalculator(const std::string& name, ISvcLocator *pSvcLocator); - void GeometryTypeUpdateHandler(Property&); + void GeometryTypeUpdateHandler(Gaudi::Details::PropertyBase&); StatusCode initialize() override final; virtual ~LArHECCalibrationWheelCalculator(); diff --git a/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.cc b/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.cc index 914abae827232da886f6eda77d6c4206fdb6e1c2..c50b71729dd8a3c1280ab88cafa3b127fddf65b4 100644 --- a/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.cc +++ b/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.cc @@ -28,7 +28,7 @@ namespace LArG4 { #endif } - void LocalCalibrationCalculator::GeometryTypeUpdateHandler(Property&) + void LocalCalibrationCalculator::GeometryTypeUpdateHandler(Gaudi::Details::PropertyBase&) { std::string geoTypeString = m_strgeometryType.value(); std::transform(geoTypeString.begin(), geoTypeString.end(),geoTypeString.begin(), ::toupper); diff --git a/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.h b/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.h index 1985b52903abfd9369a4a38e497ab5606f093514..8899a81f6be2458fd564f4f41f96f64e28a29974 100644 --- a/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.h +++ b/LArCalorimeter/LArG4/LArG4HEC/src/LocalCalibrationCalculator.h @@ -26,7 +26,7 @@ namespace LArG4 { public: LocalCalibrationCalculator(const std::string& name, ISvcLocator *pSvcLocatorconst); - void GeometryTypeUpdateHandler(Property&); + void GeometryTypeUpdateHandler(Gaudi::Details::PropertyBase&); StatusCode initialize() override final; virtual ~LocalCalibrationCalculator(); diff --git a/LArCalorimeter/LArL1Sim/LArL1Sim/LArSCL1Maker.h b/LArCalorimeter/LArL1Sim/LArL1Sim/LArSCL1Maker.h index f50d4925c2171427c3e9ca17d96481262d45af33..ae48f24264aa9a2604e4aae8d6f030545562798a 100644 --- a/LArCalorimeter/LArL1Sim/LArL1Sim/LArSCL1Maker.h +++ b/LArCalorimeter/LArL1Sim/LArL1Sim/LArSCL1Maker.h @@ -16,7 +16,7 @@ // #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "LArDigitization/LArHitEMap.h" diff --git a/LArCalorimeter/LArL1Sim/LArL1Sim/LArTTL1Maker.h b/LArCalorimeter/LArL1Sim/LArL1Sim/LArTTL1Maker.h index 0d7e718c96ce4696ab9941b41fe0cfe3e4541051..167d00b1de2d5f95aa1aac386d4dc59008bc4e7e 100755 --- a/LArCalorimeter/LArL1Sim/LArL1Sim/LArTTL1Maker.h +++ b/LArCalorimeter/LArL1Sim/LArL1Sim/LArTTL1Maker.h @@ -16,7 +16,7 @@ // #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "LArDigitization/LArHitEMap.h" diff --git a/LArCalorimeter/LArL1Sim/src/LArSCL1Maker.cxx b/LArCalorimeter/LArL1Sim/src/LArSCL1Maker.cxx index 6635deb48a6cfa5c4dd6e7c95aa5cf67a319c548..a1eab237b7019fb1820ef580ab7a4a35e61c32a3 100755 --- a/LArCalorimeter/LArL1Sim/src/LArSCL1Maker.cxx +++ b/LArCalorimeter/LArL1Sim/src/LArSCL1Maker.cxx @@ -43,7 +43,7 @@ // ........ Gaudi needed includes // #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IService.h" #include "GaudiKernel/IChronoStatSvc.h" diff --git a/LArCalorimeter/LArL1Sim/src/LArTTL1Calib.cxx b/LArCalorimeter/LArL1Sim/src/LArTTL1Calib.cxx index b98e391670561ba783d85f835a4cf4a86a384cc1..c9a25c368de831600079f71b5e736df56bcec306 100755 --- a/LArCalorimeter/LArL1Sim/src/LArTTL1Calib.cxx +++ b/LArCalorimeter/LArL1Sim/src/LArTTL1Calib.cxx @@ -23,7 +23,7 @@ // // ........ Gaudi needed includes // -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ISvcLocator.h" #include "GaudiKernel/INTupleSvc.h" diff --git a/LArCalorimeter/LArSim/src/LArFakeHitProducer.cxx b/LArCalorimeter/LArSim/src/LArFakeHitProducer.cxx index 7ec4b8eec737231121dbb9189c5b1a9f0f715eed..b33f0e44bbc6f836213c378040c26a5f765d06b9 100755 --- a/LArCalorimeter/LArSim/src/LArFakeHitProducer.cxx +++ b/LArCalorimeter/LArSim/src/LArFakeHitProducer.cxx @@ -5,7 +5,7 @@ #include "LArSim/LArFakeHitProducer.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IDataProviderSvc.h" diff --git a/LArCalorimeter/LArSim/src/LArHitMaker.cxx b/LArCalorimeter/LArSim/src/LArHitMaker.cxx index 5a49c6f4b346e840607989197ba749dc48afebf4..df0b3e3453974eeb48d46b4b322d906badb57f5b 100755 --- a/LArCalorimeter/LArSim/src/LArHitMaker.cxx +++ b/LArCalorimeter/LArSim/src/LArHitMaker.cxx @@ -6,7 +6,7 @@ #include "LArSim/LArHitProducer.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/StoreGateSvc.h" diff --git a/LArCalorimeter/LArSim/src/LArHitProducer.cxx b/LArCalorimeter/LArSim/src/LArHitProducer.cxx index ee93a8e77572e295910e781ac48c1bfc7fad41c3..ed6ba8a7a0cd5b0b5a66261162c343ed00afb8cd 100755 --- a/LArCalorimeter/LArSim/src/LArHitProducer.cxx +++ b/LArCalorimeter/LArSim/src/LArHitProducer.cxx @@ -5,7 +5,7 @@ #include "LArSim/LArHitProducer.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IDataProviderSvc.h" diff --git a/LArCalorimeter/LArSim/src/LArHitReader.cxx b/LArCalorimeter/LArSim/src/LArHitReader.cxx index 2de954abf1027335205e9d919d2fef2a457832f6..fa209e4c458e77a6797e2ec12c198543515a308d 100755 --- a/LArCalorimeter/LArSim/src/LArHitReader.cxx +++ b/LArCalorimeter/LArSim/src/LArHitReader.cxx @@ -4,7 +4,7 @@ #include "LArSim/LArHitReader.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IDataProviderSvc.h" #include "LArSimEvent/LArHit.h" diff --git a/LArCalorimeter/LArTest/LArCalibTest/src/FixLArElecCalib.cxx b/LArCalorimeter/LArTest/LArCalibTest/src/FixLArElecCalib.cxx index 3997f9833bbe95bd7739acf28974e1aee498f8b7..6e11e6c8c778fb435801944379383e6c11207ea4 100644 --- a/LArCalorimeter/LArTest/LArCalibTest/src/FixLArElecCalib.cxx +++ b/LArCalorimeter/LArTest/LArCalibTest/src/FixLArElecCalib.cxx @@ -59,7 +59,7 @@ #include "LArCalibTest/FixLArElecCalib.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IToolSvc.h" #include "StoreGate/StoreGateSvc.h" diff --git a/LArCalorimeter/LArTest/LArCalibTest/src/FixLArIdMap.cxx b/LArCalorimeter/LArTest/LArCalibTest/src/FixLArIdMap.cxx index 6923c5218d067cb32e8d5c5c6cb6bf83605d0cf7..da0a8d009434192cf0e892c3bfee52a10f49b2ce 100755 --- a/LArCalorimeter/LArTest/LArCalibTest/src/FixLArIdMap.cxx +++ b/LArCalorimeter/LArTest/LArCalibTest/src/FixLArIdMap.cxx @@ -180,7 +180,7 @@ quadrant: #include "LArCalibTest/FixLArIdMap.h" #include "GaudiKernel/Algorithm.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IToolSvc.h" #include "StoreGate/StoreGateSvc.h" diff --git a/LArCalorimeter/LArTest/LArCalibTest/src/LArOFCtoOFC.cxx b/LArCalorimeter/LArTest/LArCalibTest/src/LArOFCtoOFC.cxx index 49765c0b1cf5242279367947967d2a4f1a678cb4..875f2e61ee9e37aac8905312269957d945f15053 100644 --- a/LArCalorimeter/LArTest/LArCalibTest/src/LArOFCtoOFC.cxx +++ b/LArCalorimeter/LArTest/LArCalibTest/src/LArOFCtoOFC.cxx @@ -11,7 +11,7 @@ #include "AthenaKernel/errorcheck.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" diff --git a/LArCalorimeter/LArTest/LArCalibTest/src/LArShapeToSCShape.cxx b/LArCalorimeter/LArTest/LArCalibTest/src/LArShapeToSCShape.cxx index e8730d22a065242113036fa294eb2398c633e9c2..f0e6941d80f5315cfb6bed73b9e33bd0e9df7bf5 100644 --- a/LArCalorimeter/LArTest/LArCalibTest/src/LArShapeToSCShape.cxx +++ b/LArCalorimeter/LArTest/LArCalibTest/src/LArShapeToSCShape.cxx @@ -25,7 +25,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" diff --git a/LArCalorimeter/LArTest/LArConditionsTest/src/LArCondDataTest.cxx b/LArCalorimeter/LArTest/LArConditionsTest/src/LArCondDataTest.cxx index bf0cfd468c326c4523fa81e37f81cca90adc2ea0..c8bf5fd1725967a6b340f28343c6cc314d01b10c 100644 --- a/LArCalorimeter/LArTest/LArConditionsTest/src/LArCondDataTest.cxx +++ b/LArCalorimeter/LArTest/LArConditionsTest/src/LArCondDataTest.cxx @@ -20,7 +20,7 @@ #include "LArIdentifier/LArOnlineID.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include "LArElecCalib/ILArShape.h" diff --git a/LArCalorimeter/LArTest/LArConditionsTest/src/LArConditionsTestAlg.cxx b/LArCalorimeter/LArTest/LArConditionsTest/src/LArConditionsTestAlg.cxx index 5e3a4349ba687edf598cb663d2dc1ef706594efc..b25249b3952cd4de6a0098f173856186ba03e833 100644 --- a/LArCalorimeter/LArTest/LArConditionsTest/src/LArConditionsTestAlg.cxx +++ b/LArCalorimeter/LArTest/LArConditionsTest/src/LArConditionsTestAlg.cxx @@ -25,7 +25,7 @@ //#include "AthenaKernel/IIOVSvc.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include "LArRawConditions/LArRampMC.h" diff --git a/LumiBlock/LumiBlockComps/src/BunchCrossingCondTest.h b/LumiBlock/LumiBlockComps/src/BunchCrossingCondTest.h index cc78063370370609fbee3f94de9b4ac637739666..4bd599f357f61b446df189273fcce0199626dc54 100644 --- a/LumiBlock/LumiBlockComps/src/BunchCrossingCondTest.h +++ b/LumiBlock/LumiBlockComps/src/BunchCrossingCondTest.h @@ -9,7 +9,7 @@ // Gaudi/Athena include(s): #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgorithm.h" #include "LumiBlockData/BunchCrossingCondData.h" diff --git a/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RPC_RawDataProviderTool.cxx b/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RPC_RawDataProviderTool.cxx index c66cbd719ebbc8051c63e1035a35d0084fdb7e36..202ef879ef87b62485829d4e8c2491c18bb92ed3 100644 --- a/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RPC_RawDataProviderTool.cxx +++ b/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RPC_RawDataProviderTool.cxx @@ -73,17 +73,17 @@ StatusCode Muon::RPC_RawDataProviderTool::initialize() return StatusCode::FAILURE; } - const std::vector<const Property*>* dataFlowProps + const std::vector<const Gaudi::Details::PropertyBase*>* dataFlowProps = (jobOptionsSvc)? jobOptionsSvc->getProperties("DataFlowConfig") : 0; - const std::vector<const Property*>* eventSelProps + const std::vector<const Gaudi::Details::PropertyBase*>* eventSelProps = (jobOptionsSvc)? jobOptionsSvc->getProperties("EventSelector") : TrigConfSvc->getProperties("EventSelector"); if ( dataFlowProps != 0 ) has_bytestream = true; else if( eventSelProps != 0 ) { - for (std::vector<const Property*>::const_iterator + for (std::vector<const Gaudi::Details::PropertyBase*>::const_iterator cur = eventSelProps->begin(); cur != eventSelProps->end(); cur++) { diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/MuonCondAlg/MuonAlignmentErrorDbAlg.h b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/MuonCondAlg/MuonAlignmentErrorDbAlg.h index 517ece6d13ec8555ae678bf2e6a1efd05d3a4dff..e307dac06c633d1610dffda6575d53a10789c97a 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/MuonCondAlg/MuonAlignmentErrorDbAlg.h +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/MuonCondAlg/MuonAlignmentErrorDbAlg.h @@ -13,7 +13,7 @@ #include "StoreGate/ReadCondHandleKey.h" #include "StoreGate/WriteCondHandleKey.h" #include "GaudiKernel/ICondSvc.h" -//#include "GaudiKernel/Property.h" +//#include "Gaudi/Property.h" #include "AthenaPoolUtilities/CondAttrListCollection.h" #include "MuonCondAlg/MuonAlignmentErrorData.h" diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/CSC_DCSConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/CSC_DCSConditionsSvc.cxx index 59b7bc7734cc0d9b9643f6c4b96f32b4523f1c50..778cf1496d3262096b08684d07262941967ee6c4 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/CSC_DCSConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/CSC_DCSConditionsSvc.cxx @@ -14,7 +14,7 @@ #include <algorithm> #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsRun2Svc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsRun2Svc.cxx index 6615d72bf3a94660b988313a3205a9094d7a9a65..5ed93d6e85ddf2df62dfef29452974133b3573c1 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsRun2Svc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsRun2Svc.cxx @@ -10,7 +10,7 @@ #include <string> #include <algorithm> #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsSvc.cxx index 9499b46d43a30517a07414ad5d3cb7e10398de18..4efe9611c9f88b1cacb8fb092bbafeb3e33e8eba 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DCSConditionsSvc.cxx @@ -10,7 +10,7 @@ #include <string> #include <algorithm> #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DQConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DQConditionsSvc.cxx index f96abeed3be238ff5305ce03e836b1f477fbed43..cf499a63d76b960d0a2f99736b2a4966c26d0651 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DQConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DQConditionsSvc.cxx @@ -9,7 +9,7 @@ //#include "PathResolver/PathResolver.h" #include "StoreGate/StoreGateSvc.h" #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DeadTubeConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DeadTubeConditionsSvc.cxx index b47e935f2f60413936db17769fa11f1a274a6848..806b041f0e4358d1b68f592af3eb2a980b457f89 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DeadTubeConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/MDT_DeadTubeConditionsSvc.cxx @@ -9,7 +9,7 @@ //#include "PathResolver/PathResolver.h" #include "StoreGate/StoreGateSvc.h" #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_DCSConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_DCSConditionsSvc.cxx index 5afa47ae75d191395c96e14368fb72502b1f3d00..99596e06211e4790ff571a40c3795548b10a2dc4 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_DCSConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_DCSConditionsSvc.cxx @@ -10,7 +10,7 @@ #include <string> #include <algorithm> #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_STATUSConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_STATUSConditionsSvc.cxx index 62477569e016f917d5cba6457c130bf59037d22c..2e921525e928fa8444d97896fa4d0f56a66b8ce8 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_STATUSConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/RPC_STATUSConditionsSvc.cxx @@ -14,7 +14,7 @@ #include <algorithm> #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" #include <iostream> diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/TGC_STATUSConditionsSvc.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/TGC_STATUSConditionsSvc.cxx index 3d5544479667469e7c04622a6ec07ad1619886f0..1103167b2d34a4a9247375f75ec35bfa59697025 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/TGC_STATUSConditionsSvc.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondSvc/src/TGC_STATUSConditionsSvc.cxx @@ -16,7 +16,7 @@ #include <iostream> #include "Identifier/Identifier.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "Identifier/IdentifierHash.h" TGC_STATUSConditionsSvc::TGC_STATUSConditionsSvc(const std::string& name, ISvcLocator* pSvcLocator) : diff --git a/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscPeakThresholdClusterBuilderTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscPeakThresholdClusterBuilderTool.cxx index 70746b9da01c0a1ff47f622f97b19fcfb41e89fa..91fb74640c8ee39c1a1ed83027f52e5db82e457d 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscPeakThresholdClusterBuilderTool.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscPeakThresholdClusterBuilderTool.cxx @@ -4,7 +4,7 @@ // CscPeakThresholdClusterBuilderTool.cxx #include "CscPeakThresholdClusterBuilderTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "MuonPrepRawData/CscPrepDataContainer.h" #include "MuonPrepRawData/CscStripPrepDataContainer.h" #include "MuonPrepRawData/CscStripPrepData.h" diff --git a/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilder.cxx b/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilder.cxx index 02380c606f9fc9002f360a249765add4dd396f79..aa4f6b890ff32154ca9234bc0e77d2b7023fc08d 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilder.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilder.cxx @@ -4,7 +4,7 @@ // CscThresholdClusterBuilder.cxx #include "CscThresholdClusterBuilder.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <sstream> using std::string; diff --git a/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilderTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilderTool.cxx index 5e4ed65d17a1e636f48b74b07dffb94cf468499b..a7b870edb616376208e35f6144a8239919b7abac 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilderTool.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonDataPrep/CscClusterization/src/CscThresholdClusterBuilderTool.cxx @@ -6,7 +6,7 @@ // CscThresholdClusterBuilderTool.cxx #include "CscThresholdClusterBuilderTool.h" #include <sstream> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "MuonPrepRawData/CscPrepDataContainer.h" #include "MuonPrepRawData/CscStripPrepDataContainer.h" #include "MuonPrepRawData/CscStripPrepData.h" diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx index be24f750b19f9a10fef1529034412895ddc75ba4..532adb28c0fe30ab98ebc009f86a04c8c9843fe7 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx @@ -106,7 +106,7 @@ StatusCode MuonSegmentRegionRecoveryTool::finalize() Trk::Track* MuonSegmentRegionRecoveryTool::recover( const Trk::Track& track ) const { - Trk::Track* result = recoverImp(track);; + Trk::Track* result = recoverImp(track); if ( result ) ATH_MSG_DEBUG("Final track " << m_printer->print(*result) << std::endl << m_printer->printStations(*result) ); else ATH_MSG_DEBUG("Track lost during recovery"); return result; @@ -125,7 +125,7 @@ Trk::Track* MuonSegmentRegionRecoveryTool::recoverImp( const Trk::Track& track ) ATH_MSG_VERBOSE(" Entering segment recovery method " << m_printer->print(track) << std::endl << m_printer->printStations(track) ); //First run the MuonChamberHoleRecoveryTool on the input track - const Trk::Track* chRecTrack = m_chamberHoleRecoveryTool->recover(track); + std::unique_ptr<Trk::Track> chRecTrack(m_chamberHoleRecoveryTool->recover(track)); if (!chRecTrack) { ATH_MSG_DEBUG(" MuonChamberHoleRecoveryTool failed to create a new track " << " Returning input (unrecovered) track " ); @@ -136,13 +136,15 @@ Trk::Track* MuonSegmentRegionRecoveryTool::recoverImp( const Trk::Track& track ) // only run this on single station EM tracks if ( m_onlyEO ) { // should be a sl track - if ( !m_edmHelperSvc->isSLTrack(*chRecTrack) ) return const_cast<Trk::Track*>(chRecTrack); + //using release until parent tools use unique_ptr + if ( !m_edmHelperSvc->isSLTrack(*chRecTrack) ) return chRecTrack.release(); // get hit summary IMuonHitSummaryTool::CompactSummary hitSummary = m_hitSummaryTool->summary(*chRecTrack); // should be single station + //using release until parent tools use unique_ptr if ( hitSummary.stationLayers.size() != 1 || - !hitSummary.stationLayers.count(MuonStationIndex::EM) ) return const_cast<Trk::Track*>(chRecTrack); + !hitSummary.stationLayers.count(MuonStationIndex::EM) ) return chRecTrack.release(); ATH_MSG_DEBUG("Single station track, checking for EO hits"); } @@ -167,27 +169,18 @@ Trk::Track* MuonSegmentRegionRecoveryTool::recoverImp( const Trk::Track& track ) collectCrossedChambers( *chRecTrack, muonData ); //3b) compare the two std::sets and make a final std::set of not-yet-on-track Hashes - const Trk::Track* triggerRecTrack = addMissingChambers( *chRecTrack, muonData, false ); - if ( triggerRecTrack ) { - if ( chRecTrack != &track ) delete chRecTrack; - chRecTrack = triggerRecTrack; - } + std::unique_ptr<Trk::Track> triggerRecTrack = addMissingChambers( chRecTrack.get(), muonData, false ); + if ( triggerRecTrack ) chRecTrack.swap(triggerRecTrack); - const Trk::Track* mdtRecTrack = addMissingChambers( *chRecTrack, muonData, true ); - if ( mdtRecTrack ) { - if ( chRecTrack != &track ) delete chRecTrack; - chRecTrack = mdtRecTrack; - } + std::unique_ptr<Trk::Track> mdtRecTrack = addMissingChambers( chRecTrack.get(), muonData, true ); + if ( mdtRecTrack ) chRecTrack.swap(mdtRecTrack); - - const Trk::Track* mdtRecTrackWithHoles = findHoles( *chRecTrack, muonData ); - if ( mdtRecTrackWithHoles ) { - if ( chRecTrack != &track ) delete chRecTrack; - chRecTrack = mdtRecTrackWithHoles; - } + std::unique_ptr<Trk::Track> mdtRecTrackWithHoles = findHoles( chRecTrack.get(), muonData ); + if ( mdtRecTrackWithHoles ) chRecTrack.swap(mdtRecTrackWithHoles); //recovered track, success! - return const_cast<Trk::Track*>(chRecTrack); + //use release until calling tools also use unique_ptr + return chRecTrack.release(); } @@ -428,19 +421,19 @@ void MuonSegmentRegionRecoveryTool::fillOnTrackChambers ( const Trk::Track& trac } -const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& track, MuonData& data ) const { +std::unique_ptr<Trk::Track> MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track* track, MuonData& data ) const { - const DataVector<const Trk::TrackStateOnSurface>* oldStates = track.trackStateOnSurfaces(); + const DataVector<const Trk::TrackStateOnSurface>* oldStates = track->trackStateOnSurfaces(); if ( !oldStates ) { ATH_MSG_WARNING(" track without states, cannot perform mdt hole search "); - return 0; + return std::unique_ptr<Trk::Track>(); } SG::ReadCondHandle<MuonGM::MuonDetectorManager> DetectorManagerHandle{m_DetectorManagerKey}; const MuonGM::MuonDetectorManager* MuonDetMgr{*DetectorManagerHandle}; if(MuonDetMgr==nullptr){ ATH_MSG_ERROR("Null pointer to the read MuonDetectorManager conditions object"); - return 0; + return std::unique_ptr<Trk::Track>(); } std::vector<const Trk::TrackStateOnSurface*> states; @@ -469,7 +462,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr ATH_MSG_WARNING("Found no detector element for " << *ith ); continue; } - const Trk::TrackParameters* exPars = reachableDetEl(track, *detEl, true ); + const Trk::TrackParameters* exPars = reachableDetEl(*track, *detEl, true ); if ( !exPars ) { ATH_MSG_DEBUG("Did not reach " << m_idHelperSvc->toStringChamber(chId) << " hash " << *ith ); continue; @@ -555,7 +548,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr continue; } - const Trk::TrackParameters* exPars = reachableDetEl(track, *detEl, true ); + const Trk::TrackParameters* exPars = reachableDetEl(*track, *detEl, true ); if ( !exPars ) { ATH_MSG_DEBUG("Did not reach " << m_idHelperSvc->toStringChamber(chId) << " hash " << *ith ); continue; @@ -596,7 +589,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr continue; } - const Trk::TrackParameters* exPars = reachableDetEl(track, *detEl, true ); + const Trk::TrackParameters* exPars = reachableDetEl(*track, *detEl, true ); if ( !exPars ) { ATH_MSG_DEBUG("Did not reach " << m_idHelperSvc->toStringChamber(chId) << " hash " << *ith ); continue; @@ -638,7 +631,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr continue; } - const Trk::TrackParameters* exPars = reachableDetEl(track, *detEl, true ); + const Trk::TrackParameters* exPars = reachableDetEl(*track, *detEl, true ); if ( !exPars ) { ATH_MSG_DEBUG("Did not reach " << m_idHelperSvc->toStringChamber(chId) << " hash " << *ith ); continue; @@ -689,7 +682,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr continue; } - const Trk::TrackParameters* exPars = reachableDetEl(track, *detEl, true ); + const Trk::TrackParameters* exPars = reachableDetEl(*track, *detEl, true ); if ( !exPars ) { ATH_MSG_DEBUG("Did not reach " << m_idHelperSvc->toStringChamber(chId) << " hash " << *ith ); continue; @@ -738,7 +731,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr continue; } - const Trk::TrackParameters* exPars = reachableDetEl(track, *detEl, true ); + const Trk::TrackParameters* exPars = reachableDetEl(*track, *detEl, true ); if ( !exPars ) { ATH_MSG_DEBUG("Did not reach " << m_idHelperSvc->toStringChamber(chId) << " hash " << *ith ); continue; @@ -782,7 +775,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr std::stable_sort(toBeSorted.begin(), toBeSorted.end(), SortTSOSs(&*m_edmHelperSvc, &*m_idHelperSvc)); trackStateOnSurfaces->insert(trackStateOnSurfaces->begin(), toBeSorted.begin(), toBeSorted.end()); - Trk::Track* trackWithHoles = new Trk::Track( track.info(), trackStateOnSurfaces, track.fitQuality() ? track.fitQuality()->clone() : 0 ); + std::unique_ptr<Trk::Track> trackWithHoles = std::make_unique<Trk::Track>( track->info(), trackStateOnSurfaces, track->fitQuality() ? track->fitQuality()->clone() : 0 ); // generate a track summary for this track if (m_trackSummaryTool.isEnabled()) { m_trackSummaryTool->computeAndReplaceTrackSummary(*trackWithHoles, nullptr, false); @@ -790,10 +783,10 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::findHoles( const Trk::Track& tr ATH_MSG_DEBUG("Track with holes " << m_printer->print(*trackWithHoles) << std::endl << m_printer->printStations(*trackWithHoles) ); return trackWithHoles; } - return 0; + return std::unique_ptr<Trk::Track>(); } -const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk::Track& track, MuonData& data, bool addMdt ) const { +std::unique_ptr<Trk::Track> MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk::Track* track, MuonData& data, bool addMdt ) const { // states were added, create a new track std::vector< std::pair<bool, const Trk::TrackStateOnSurface* > > states; @@ -818,7 +811,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: std::map<int, std::vector<const MdtPrepData*> > mdtPrds; const Trk::TrackParameters* exParsFirst = 0; for ( ; mit != mit_end; ++mit ) { - const Trk::TrackParameters* exPars = reachableDetEl( track, *(*mit)->front()->detectorElement() ); + const Trk::TrackParameters* exPars = reachableDetEl( *track, *(*mit)->front()->detectorElement() ); if ( exPars ) { int sector = m_idHelperSvc->sector((*mit)->identify()); ATH_MSG_DEBUG("New chamber " << m_idHelperSvc->toStringChamber((*mit)->identify()) << " hash " << (*mit)->identifyHash() << " sector " << sector ); @@ -838,7 +831,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: } else if ( mdtPrds.size() == 1 ) { prds = §orIt->second; } else { - IMuonHitSummaryTool::CompactSummary hitSummary = m_hitSummaryTool->summary(track); + IMuonHitSummaryTool::CompactSummary hitSummary = m_hitSummaryTool->summary(*track); ATH_MSG_VERBOSE("Multiple sectors selected, using main sector: " << hitSummary.mainSector); std::map<int, std::vector<const MdtPrepData*> >::iterator pos = mdtPrds.find(hitSummary.mainSector); if ( pos != mdtPrds.end() ) prds = &pos->second; @@ -861,7 +854,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: MuonSegment* mseg=dynamic_cast<MuonSegment*>(tseg); if ( m_trackSegmentMatchingTool.empty() ) ATH_MSG_VERBOSE("No track/segment matching"); - else if ( !m_trackSegmentMatchingTool->match(track, *mseg, true) ) { + else if ( !m_trackSegmentMatchingTool->match(*track, *mseg, true) ) { ATH_MSG_DEBUG(" Segment does not match with track "); continue; } else { @@ -916,7 +909,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: std::vector<const RpcPrepDataCollection*>::iterator rit_end = data.rpcCols.end(); std::vector<const RpcPrepDataCollection*> newrcols; for ( ; rit != rit_end; ++rit ) { - const Trk::TrackParameters* exPars = reachableDetEl( track, *(*rit)->front()->detectorElement() ); + const Trk::TrackParameters* exPars = reachableDetEl( *track, *(*rit)->front()->detectorElement() ); if ( exPars ) { Identifier detElId = m_idHelperSvc->detElId( (*rit)->identify() ); std::set<Identifier> layIds; @@ -935,7 +928,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: std::vector<const TgcPrepDataCollection*>::const_iterator tgcit_end = data.tgcCols.end(); std::vector<const TgcPrepDataCollection*> newtcols; for ( ; tgcit != tgcit_end; ++tgcit ) { - const Trk::TrackParameters* exPars = reachableDetEl( track, *(*tgcit)->front()->detectorElement() ); + const Trk::TrackParameters* exPars = reachableDetEl( *track, *(*tgcit)->front()->detectorElement() ); if ( exPars ) { newtcols.push_back(*tgcit); Identifier detElId = m_idHelperSvc->detElId( (*tgcit)->identify() ); @@ -957,7 +950,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: std::vector<const CscPrepDataCollection*>::const_iterator cit_end = data.cscCols.end(); std::vector<const CscPrepDataCollection*> newccols; for ( ; cit != cit_end; ++cit ) { - const Trk::TrackParameters* exPars = reachableDetEl( track, *(*cit)->front()->detectorElement() ); + const Trk::TrackParameters* exPars = reachableDetEl( *track, *(*cit)->front()->detectorElement() ); if ( exPars ) { newccols.push_back(*cit); Identifier detElId = m_idHelperSvc->detElId( (*cit)->identify() ); @@ -983,7 +976,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: std::vector<const sTgcPrepDataCollection*> newstcols; ATH_MSG_DEBUG(" extractsTgcPrdCols data.stgcCols.size() " << data.stgcCols.size()); for ( ; stgcit != stgcit_end; ++stgcit ) { - const Trk::TrackParameters* exPars = reachableDetEl( track, *(*stgcit)->front()->detectorElement() ); + const Trk::TrackParameters* exPars = reachableDetEl( *track, *(*stgcit)->front()->detectorElement() ); if ( exPars ) { newstcols.push_back(*stgcit); Identifier detElId = m_idHelperSvc->detElId( (*stgcit)->identify() ); @@ -1008,7 +1001,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: std::vector<const MMPrepDataCollection*>::const_iterator mit_end = data.mmCols.end(); std::vector<const MMPrepDataCollection*> newmcols; for ( ; mit != mit_end; ++mit ) { - const Trk::TrackParameters* exPars = reachableDetEl( track, *(*mit)->front()->detectorElement() ); + const Trk::TrackParameters* exPars = reachableDetEl( *track, *(*mit)->front()->detectorElement() ); if ( exPars ) { newmcols.push_back(*mit); Identifier detElId = m_idHelperSvc->detElId( (*mit)->identify() ); @@ -1029,7 +1022,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: if ( !states.empty() ) { ATH_MSG_DEBUG("Collected new states: " << states.size()); - const DataVector<const Trk::TrackStateOnSurface>* oldStates = track.trackStateOnSurfaces(); + const DataVector<const Trk::TrackStateOnSurface>* oldStates = track->trackStateOnSurfaces(); if ( !oldStates ) { ATH_MSG_WARNING(" track without states, cannot perform cleaning "); std::vector< std::pair<bool, const Trk::TrackStateOnSurface* > >::iterator nit = states.begin(); @@ -1037,7 +1030,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: for ( ; nit != nit_end; ++nit ) { if ( nit->first ) delete nit->second; } - return 0; + return std::unique_ptr<Trk::Track>(); } @@ -1066,11 +1059,10 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: trackStateOnSurfaces->insert( trackStateOnSurfaces->begin(), newStates.begin(), newStates.end() ); ATH_MSG_DEBUG("Creating new Track " << newStates.size()); - Trk::Track* newTrack = new Trk::Track( track.info(), trackStateOnSurfaces, track.fitQuality() ? track.fitQuality()->clone() : 0 ); - const Trk::Track* refittedTrack; - if(m_onlyEO) refittedTrack=m_fitter->fit(*newTrack, m_useFitterOutlierLogic, Trk::muon); - else refittedTrack=m_builder->fit(*newTrack, m_useFitterOutlierLogic, Trk::muon); - delete newTrack; + std::unique_ptr<Trk::Track> newTrack = std::make_unique<Trk::Track>( track->info(), trackStateOnSurfaces, track->fitQuality() ? track->fitQuality()->clone() : 0 ); + std::unique_ptr<Trk::Track> refittedTrack; + if(m_onlyEO) refittedTrack=std::unique_ptr<Trk::Track>(m_fitter->fit(*newTrack, m_useFitterOutlierLogic, Trk::muon)); + else refittedTrack=std::unique_ptr<Trk::Track>(m_builder->fit(*newTrack, m_useFitterOutlierLogic, Trk::muon)); if ( refittedTrack ) { ATH_MSG_DEBUG("New Track " << m_printer->print(*refittedTrack) << std::endl << m_printer->printStations(*refittedTrack) ); @@ -1085,7 +1077,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk:: } return refittedTrack; } - return 0; + return std::unique_ptr<Trk::Track>(); //delete newStates; } diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.h b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.h index 5ae1646ca315a1b352b6e335e6a19a8e3047bc2f..c653b80206c5986cf3cc15971cc55e0caa3e58a0 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.h +++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.h @@ -137,12 +137,12 @@ namespace Muon { //Fill already on track chamber std::set void fillOnTrackChambers ( const Trk::Track& theTrack, MuonData& data ) const; //Select hashes of chambers not yet on track - const Trk::Track* addMissingChambers( const Trk::Track& track, MuonData& data, bool addMdt ) const; + std::unique_ptr<Trk::Track> addMissingChambers( const Trk::Track* track, MuonData& data, bool addMdt ) const; void addHashes( DETID type, const IRoiDescriptor& roi, std::set<IdentifierHash>& hashes, const std::set<IdentifierHash>& exclusion ) const; - const Trk::Track* findHoles( const Trk::Track& track, MuonData& data ) const; + std::unique_ptr<Trk::Track> findHoles( const Trk::Track* track, MuonData& data ) const; SG::ReadCondHandleKey<MuonGM::MuonDetectorManager> m_DetectorManagerKey {this, "DetectorManagerKey", "MuonDetectorManager", diff --git a/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdEvtStore.cxx b/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdEvtStore.cxx index 77df975eb7863da44fc1dd5b72a3d659dbb182b3..fc1eaf0006d745d7ecdf0bfef80522d990fa3ea6 100644 --- a/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdEvtStore.cxx +++ b/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdEvtStore.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/IDictLoaderSvc.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" diff --git a/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdNtuple.cxx b/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdNtuple.cxx index d009c3b2c7e0d9f5925b999e18ef30907a270955..7f016b01dd78fe354714e369dacbee2cd152b461 100644 --- a/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdNtuple.cxx +++ b/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/AthExReadD3pdNtuple.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/IDictLoaderSvc.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" diff --git a/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/WriteTruthParticles.cxx b/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/WriteTruthParticles.cxx index b3edf57121b2cc0a38d9ef766f0deddbc4a3d122..ca654849c29eb8faeec1b6a0e886ff64d793af2b 100644 --- a/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/WriteTruthParticles.cxx +++ b/PhysicsAnalysis/AnalysisCommon/AnalysisExamples/src/WriteTruthParticles.cxx @@ -14,7 +14,7 @@ // FrameWork includes #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // McParticleKernel includes #include "McParticleKernel/ITruthParticleCnvTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/ReadINav4MomAssocs.cxx b/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/ReadINav4MomAssocs.cxx index 3245dfa39f716f1021f6b1d2db044e91d718ae01..e6bf57d320365211ac1dc45b0c57c7227858c808 100644 --- a/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/ReadINav4MomAssocs.cxx +++ b/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/ReadINav4MomAssocs.cxx @@ -12,7 +12,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // NavFourMom includes #include "NavFourMom/INav4MomAssocs.h" diff --git a/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/WriteINav4MomAssocs.cxx b/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/WriteINav4MomAssocs.cxx index 1e22bf0d22f28c8d50e1391f3082c6d2c0900acc..93542497f11a139a31c01204016a570bbfc507f6 100644 --- a/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/WriteINav4MomAssocs.cxx +++ b/PhysicsAnalysis/AnalysisCommon/AnalysisTest/src/WriteINav4MomAssocs.cxx @@ -12,7 +12,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // NavFourMom includes #include "NavFourMom/INav4MomAssocs.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.cxx b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.cxx index 4a410005e11955f2f4dbae90d1a6a60adfa5cfe0..4ac57f25a55e665f67af27571d4024f9197ef2bf 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IAugmentationTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.h b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.h index fbbfe12fc876c7690551b6b86aad6b43e6c680dd..a0099b1ad5cea8aed3f424155a8f5443290518e1 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/AddVarAlg.h @@ -59,16 +59,16 @@ private: // The update handlers /// This internal method will realize if a user sets the 'AddVarTo' property - void setupInputContainer( Property& /*prop*/ ); + void setupInputContainer( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'VarName' property - void setupVarName( Property& /*prop*/ ); + void setupVarName( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'VarType' property - void setupVarType( Property& /*prop*/ ); + void setupVarType( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'Selection' property - void setupSelection( Property& /*prop*/ ); + void setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ); @@ -127,25 +127,25 @@ private: /////////////////////////////////////////////////////////////////// /// This internal method will realize if a user sets the 'AddVarTo' property -inline void AddVarAlg::setupInputContainer( Property& /*prop*/ ) { +inline void AddVarAlg::setupInputContainer( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKey = true; return; } /// This internal method will realize if a user sets the 'VarName' property -inline void AddVarAlg::setupVarName( Property& /*prop*/ ) { +inline void AddVarAlg::setupVarName( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setVarName = true; return; } /// This internal method will realize if a user sets the 'VarType' property -inline void AddVarAlg::setupVarType( Property& /*prop*/ ) { +inline void AddVarAlg::setupVarType( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setVarType = true; return; } /// This internal method will realize if a user sets the 'Selection' property -inline void AddVarAlg::setupSelection( Property& /*prop*/ ) { +inline void AddVarAlg::setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSelection = true; return; } diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/CutAlg.cxx b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/CutAlg.cxx index 1b4211dd5cc00f6f0de2ddfd6e4915758067ccf6..7642a29a3d29b82625be3b151c3385bf2a1890b6 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/CutAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/CutAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "ExpressionEvaluation/ExpressionParser.h" #include "ExpressionEvaluation/SGxAODProxyLoader.h" #include "ExpressionEvaluation/SGNTUPProxyLoader.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/EventDecisionAlg.cxx b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/EventDecisionAlg.cxx index de769b8900b474ac5fb6dc5e21d8e184f09d7904..355ed8eed020dec4a5e55df990090a2f42721f1e 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/EventDecisionAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/EventDecisionAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/IDecisionSvc.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerAlg.h b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerAlg.h index 4f458ab7edf45c4d7f4a2b01ea786241e977f3fb..1b550bbbb19276f8c716d5f3f3408d28b6f9d335 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerAlg.h @@ -71,22 +71,22 @@ private: // The update handlers /// This internal method will realize if a user sets the 'InputContainerList' property - void setupInputContainerList( Property& /*prop*/ ); + void setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'MissingETObject' property - void setupMissingETObject( Property& /*prop*/ ); + void setupMissingETObject( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'OutputContainer' property - void setupOutputContainer( Property& /*prop*/ ); + void setupOutputContainer( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'WriteSplitOutputContainer' property - void setupWriteSplitOutputContainer( Property& /*prop*/ ); + void setupWriteSplitOutputContainer( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'SetPdgId' property - void setupSetPdgId( Property& /*prop*/ ); + void setupSetPdgId( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'SortConstituents' property - void setupSort( Property& /*prop*/ ); + void setupSort( Gaudi::Details::PropertyBase& /*prop*/ ); @@ -151,37 +151,37 @@ private: // Inline methods /// This internal method will realize if a user sets the 'InputContainerList' property -inline void ParticleCombinerAlg::setupInputContainerList( Property& /*prop*/ ) { +inline void ParticleCombinerAlg::setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKeyList = true; return; } /// This internal method will realize if a user sets the 'MissingETObject' property -inline void ParticleCombinerAlg::setupMissingETObject( Property& /*prop*/ ) { +inline void ParticleCombinerAlg::setupMissingETObject( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setMetName = true; return; } /// This internal method will realize if a user sets the 'OutputContainer' property -inline void ParticleCombinerAlg::setupOutputContainer( Property& /*prop*/ ) { +inline void ParticleCombinerAlg::setupOutputContainer( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setOutCollKey = true; return; } /// This internal method will realize if a user sets the 'WriteSplitOutputContainer' property -inline void ParticleCombinerAlg::setupWriteSplitOutputContainer( Property& /*prop*/ ) { +inline void ParticleCombinerAlg::setupWriteSplitOutputContainer( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setWriteSplitAux = true; return; } /// This internal method will realize if a user sets the 'SetPdgId' property -inline void ParticleCombinerAlg::setupSetPdgId( Property& /*prop*/ ) { +inline void ParticleCombinerAlg::setupSetPdgId( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setPdgId = true; return; } /// This internal method will realize if a user sets the 'SortConstituents' property -inline void ParticleCombinerAlg::setupSort( Property& /*prop*/ ) { +inline void ParticleCombinerAlg::setupSort( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSort = true; return; } diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerTool.h b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerTool.h index a521ae857da5d5b5ce5e76eae6812bf9d70664b7..7f57a6101afd244e3f9759287152bbeb6c8c7a0a 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerTool.h +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleCombinerTool.h @@ -30,7 +30,7 @@ #include <vector> // Athena includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgTool.h" #include "DerivationFrameworkInterfaces/IAugmentationTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSelectionAlg.cxx b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSelectionAlg.cxx index e66c049af8e135b2e7574b062621d4127e924b34..fd4c83812d9c9ecfea902693e5824fe9b5d6c803 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSelectionAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSelectionAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IAugmentationTool.h" #include "ExpressionEvaluation/ExpressionParser.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.cxx b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.cxx index f2a33b296cdcf9a64ba7386dde726a0f3eb2cd11..5c8aa14ebbc16233ff264bf0892cbc3ae8cc50a9 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IAugmentationTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.h b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.h index 060f8aeb7923af02d1c34bf28b4b3b53989349f2..a9ec50eccdaff8ebe08a66319b8565ec250bff94 100644 --- a/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/EventUtils/src/ParticleSortingAlg.h @@ -60,16 +60,16 @@ private: // The update handlers /// This internal method will realize if a user sets the 'InputContainer' property - void setupInputContainer( Property& /*prop*/ ); + void setupInputContainer( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'OutputContainer' property - void setupOutputContainer( Property& /*prop*/ ); + void setupOutputContainer( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'SortVariable' property - void setupSortVar( Property& /*prop*/ ); + void setupSortVar( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'SortDeceding' property - void setupSortDescending( Property& /*prop*/ ); + void setupSortDescending( Gaudi::Details::PropertyBase& /*prop*/ ); @@ -124,26 +124,26 @@ private: /////////////////////////////////////////////////////////////////// /// This internal method will realize if a user sets the 'InputContainer' property -inline void ParticleSortingAlg::setupInputContainer( Property& /*prop*/ ) { +inline void ParticleSortingAlg::setupInputContainer( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKey = true; return; } /// This internal method will realize if a user sets the 'OutputContainer' property -inline void ParticleSortingAlg::setupOutputContainer( Property& /*prop*/ ) { +inline void ParticleSortingAlg::setupOutputContainer( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setOutCollKey = true; return; } /// This internal method will realize if a user sets the 'SortVariable' property -inline void ParticleSortingAlg::setupSortVar( Property& /*prop*/ ) +inline void ParticleSortingAlg::setupSortVar( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSortVar = true; return; } /// This internal method will realize if a user sets the 'SortDeceding' property -inline void ParticleSortingAlg::setupSortDescending( Property& /*prop*/ ) +inline void ParticleSortingAlg::setupSortDescending( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSortDescending = true; return; diff --git a/PhysicsAnalysis/AnalysisCommon/PileupReweighting/PileupReweighting/PileupReweightingTool.h b/PhysicsAnalysis/AnalysisCommon/PileupReweighting/PileupReweighting/PileupReweightingTool.h index 93fb1f2ded7204a9745e66d4d02937e22c440144..bdd43a31fdb805f949c825395dac7e842344c152 100644 --- a/PhysicsAnalysis/AnalysisCommon/PileupReweighting/PileupReweighting/PileupReweightingTool.h +++ b/PhysicsAnalysis/AnalysisCommon/PileupReweighting/PileupReweighting/PileupReweightingTool.h @@ -126,7 +126,7 @@ namespace CP { CP::SystematicCode applySystematicVariation( const CP::SystematicSet& systConfig ); #ifndef XAOD_STANDALONE - void updateHandler(Property& /*p*/); + void updateHandler(Gaudi::Details::PropertyBase& /*p*/); #endif protected: diff --git a/PhysicsAnalysis/AnalysisCommon/PileupReweighting/Root/PileupReweightingTool.cxx b/PhysicsAnalysis/AnalysisCommon/PileupReweighting/Root/PileupReweightingTool.cxx index 10a957c649da96bc61f08e8d779c24cf5f906caf..8c5ecf033fa85a47df9a92ea1da1adc3073c3bd8 100644 --- a/PhysicsAnalysis/AnalysisCommon/PileupReweighting/Root/PileupReweightingTool.cxx +++ b/PhysicsAnalysis/AnalysisCommon/PileupReweighting/Root/PileupReweightingTool.cxx @@ -73,7 +73,7 @@ PileupReweightingTool::PileupReweightingTool( const std::string& name ) :CP::TPi #ifndef XAOD_STANDALONE //attached update handler to the outputlevel property, so we can pass changes on to the underlying tool auto props = getProperties(); - for( Property* prop : props ) { + for( Gaudi::Details::PropertyBase* prop : props ) { if( prop->name() != "OutputLevel" ) { continue; } @@ -86,7 +86,7 @@ PileupReweightingTool::PileupReweightingTool( const std::string& name ) :CP::TPi #ifndef XAOD_STANDALONE //rootcore can't do this yet! -void PileupReweightingTool::updateHandler(Property& /*p*/) { +void PileupReweightingTool::updateHandler(Gaudi::Details::PropertyBase& /*p*/) { // commenting this out as it doesn't compile anymore // leaving it to domain expert to decide whether to keep or remove it // //call the original update handler diff --git a/PhysicsAnalysis/AnalysisCommon/ReweightUtils/CMakeLists.txt b/PhysicsAnalysis/AnalysisCommon/ReweightUtils/CMakeLists.txt index 153087a615f5dcf7bd8d47f200aba074bf2942f6..2b6901e84656c4249844e31119e375bd58b705ef 100644 --- a/PhysicsAnalysis/AnalysisCommon/ReweightUtils/CMakeLists.txt +++ b/PhysicsAnalysis/AnalysisCommon/ReweightUtils/CMakeLists.txt @@ -12,23 +12,6 @@ if( NOT XAOD_STANDALONE ) set( extra_dep Control/AthenaBaseComps GaudiKernel ) endif() -# Declare the package's dependencies: -atlas_depends_on_subdirs( - PUBLIC - Control/AthToolSupport/AsgTools - Event/xAOD/xAODBase - Event/xAOD/xAODEventInfo - PhysicsAnalysis/AnalysisCommon/PATInterfaces - PhysicsAnalysis/Interfaces/AsgAnalysisInterfaces - PRIVATE - Control/CxxUtils - Event/xAOD/xAODParticleEvent - Event/xAOD/xAODTruth - Event/xAOD/xAODEgamma - Event/xAOD/xAODCutFlow - Tools/PathResolver - ${extra_dep} ) - # External dependencies: find_package( Lhapdf ) find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO ) @@ -49,13 +32,13 @@ atlas_add_library( ReweightUtilsLib INCLUDE_DIRS ${LHAPDF_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS} LINK_LIBRARIES ${LHAPDF_LIBRARIES} ${ROOT_LIBRARIES} AsgTools xAODEventInfo xAODBase PATInterfaces AsgAnalysisInterfaces - PRIVATE_LINK_LIBRARIES xAODParticleEvent xAODTruth PathResolver ) + PRIVATE_LINK_LIBRARIES xAODParticleEvent xAODTruth PathResolver xAODCutFlow ) if( NOT XAOD_STANDALONE ) atlas_add_component( ReweightUtils src/*.h src/*.cxx src/components/*.cxx INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} - LINK_LIBRARIES ${ROOT_LIBRARIES} AthenaBaseComps + LINK_LIBRARIES ${ROOT_LIBRARIES} AthenaBaseComps xAODCutFlow GaudiKernel ReweightUtilsLib ) endif() diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.cxx index 8b3ed14c2e5fe4239de41156b1384f11d9fee32b..6ee792ac79c52ec444240dce22d39b4877352e62 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IThinningTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.h b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.h index 9a321f116793ddc9b6fc299a82cb3382348415e2..4fbe27324280b532c9e5a7983ea80e5661e70bc9 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloCellsAlg.h @@ -61,10 +61,10 @@ private: // The update handlers /// This internal method will realize if a user sets the 'CaloCellsToThin' property - void setupCaloCellsToThin( Property& /*prop*/ ); + void setupCaloCellsToThin( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'InputContainerList' property - void setupInputContainerList( Property& /*prop*/ ); + void setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ); /////////////////////////////////////////////////////////////////// @@ -107,13 +107,13 @@ private: /////////////////////////////////////////////////////////////////// /// This internal method will realize if a user sets the 'CaloCellsToThin' property -inline void ThinCaloCellsAlg::setupCaloCellsToThin( Property& /*prop*/ ) { +inline void ThinCaloCellsAlg::setupCaloCellsToThin( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setCaloCellKey = true; return; } /// This internal method will realize if a user sets the 'InputContainerList' property -inline void ThinCaloCellsAlg::setupInputContainerList( Property& /*prop*/ ) { +inline void ThinCaloCellsAlg::setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKey = true; return; } diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.cxx index 4aa5439c374782e38e3ecde7747c690834f3cd9f..56028209af2cf0c22565cbc01780a7f6e98c51cb 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IThinningTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.h b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.h index dfc05e5f0cbf1efe3a6ef5e030dd46c3f9b4c604..db6d844fd80aac7eb752a657115bd8f639d6360f 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinCaloClustersAlg.h @@ -63,13 +63,13 @@ private: // The update handlers /// This internal method will realize if a user sets the 'CaloClustersToThin' property - void setupCaloClustersToThin( Property& /*prop*/ ); + void setupCaloClustersToThin( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'InputContainerList' property - void setupInputContainerList( Property& /*prop*/ ); + void setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'Selection' property - void setupSelection( Property& /*prop*/ ); + void setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ); /////////////////////////////////////////////////////////////////// @@ -120,19 +120,19 @@ private: /////////////////////////////////////////////////////////////////// /// This internal method will realize if a user sets the 'CaloClustersToThin' property -inline void ThinCaloClustersAlg::setupCaloClustersToThin( Property& /*prop*/ ) { +inline void ThinCaloClustersAlg::setupCaloClustersToThin( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setCaloClusKey = true; return; } /// This internal method will realize if a user sets the 'InputContainerList' property -inline void ThinCaloClustersAlg::setupInputContainerList( Property& /*prop*/ ) { +inline void ThinCaloClustersAlg::setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKey = true; return; } /// This internal method will realize if a user sets the 'Selection' property -inline void ThinCaloClustersAlg::setupSelection( Property& /*prop*/ ) { +inline void ThinCaloClustersAlg::setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSelection = true; return; } diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinGeantTruthAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinGeantTruthAlg.cxx index 8fc3cf3ba1b174c080f0fbac556e492c509a964c..c535efd8548284e80f538cf3596c79b00a49522b 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinGeantTruthAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinGeantTruthAlg.cxx @@ -29,7 +29,7 @@ // FrameWork includes #include "StoreGate/ThinningHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" //Standard includes diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.cxx index 729f7f50a0056e8e6e61565195bbd2f26386d7b5..223e8d9b520bc98a53f3453a344fb61786ae9f9d 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IThinningTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.h b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.h index f36fcc4a47a88e51e89b31cd634c4913b81b0b06..794cae00b620cb150dbdabb30ba16618ecd90e60 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinIParticlesAlg.h @@ -63,13 +63,13 @@ private: // The update handlers /// This internal method will realize if a user sets the 'IParticlesToThin' property - void setupIParticlesToThin( Property& /*prop*/ ); + void setupIParticlesToThin( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'InputContainerList' property - void setupInputContainerList( Property& /*prop*/ ); + void setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'Selection' property - void setupSelection( Property& /*prop*/ ); + void setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ); /////////////////////////////////////////////////////////////////// @@ -121,19 +121,19 @@ private: /////////////////////////////////////////////////////////////////// /// This internal method will realize if a user sets the 'IParticlesToThin' property -inline void ThinIParticlesAlg::setupIParticlesToThin( Property& /*prop*/ ) { +inline void ThinIParticlesAlg::setupIParticlesToThin( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setIPartKey = true; return; } /// This internal method will realize if a user sets the 'InputContainerList' property -inline void ThinIParticlesAlg::setupInputContainerList( Property& /*prop*/ ) { +inline void ThinIParticlesAlg::setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKey = true; return; } /// This internal method will realize if a user sets the 'Selection' property -inline void ThinIParticlesAlg::setupSelection( Property& /*prop*/ ) { +inline void ThinIParticlesAlg::setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSelection = true; return; } diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinInDetForwardTrackParticlesAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinInDetForwardTrackParticlesAlg.cxx index 39b47b4847484291f28db3ade72501d3d06f7f46..c3bc8d9be458bbe01f4f6f95ca286640568a81fe 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinInDetForwardTrackParticlesAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinInDetForwardTrackParticlesAlg.cxx @@ -25,7 +25,7 @@ // FrameWork includes #include "StoreGate/ThinningHandle.h" #include "StoreGate/ReadHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "GaudiKernel/ThreadLocalContext.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyCaloClustersAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyCaloClustersAlg.cxx index 8f6b28756acb720d6f40381009ef0ab9dbd494be..685e364ea91b1e685daca484cb90795df4bbeebe 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyCaloClustersAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyCaloClustersAlg.cxx @@ -21,7 +21,7 @@ // FrameWork includes #include "StoreGate/ThinningHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "GaudiKernel/ThreadLocalContext.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyNeutralPFOsAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyNeutralPFOsAlg.cxx index 25af96e203592e792fc3ec6f21d7da24ec1a77f3..a9d5cd41acc8a6e2dcc7817da8f306fe855573a0 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyNeutralPFOsAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinNegativeEnergyNeutralPFOsAlg.cxx @@ -22,7 +22,7 @@ // FrameWork includes #include "StoreGate/ThinningHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "GaudiKernel/ThreadLocalContext.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.cxx b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.cxx index 89e394e89b8a9f05fc59edfec6a797b7180930b5..1f06f106c17e82e9849acb08a7c7a1ce23a072d5 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.cxx +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IJobOptionsSvc.h" #include "DerivationFrameworkInterfaces/IThinningTool.h" diff --git a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.h b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.h index 11a8aad3342b2480eafcf30708d33a522a20a94f..1b0b65eecbaa06ddc48755ea9d4dc58abaebf93c 100644 --- a/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.h +++ b/PhysicsAnalysis/AnalysisCommon/ThinningUtils/src/ThinTrackParticlesAlg.h @@ -63,25 +63,25 @@ private: // The update handlers /// This internal method will realize if a user sets the 'TrackParticlesToThin' property - void setupTrackPartsToThin( Property& /*prop*/ ); + void setupTrackPartsToThin( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'InputContainerList' property - void setupInputContainerList( Property& /*prop*/ ); + void setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'Selection' property - void setupSelection( Property& /*prop*/ ); + void setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'KeepTauConversions' property - void setupTauConv( Property& /*prop*/ ); + void setupTauConv( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'KeepTauWide' property - void setupTauWide( Property& /*prop*/ ); + void setupTauWide( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'KeepTauOther' property - void setupTauOther( Property& /*prop*/ ); + void setupTauOther( Gaudi::Details::PropertyBase& /*prop*/ ); /// This internal method will realize if a user sets the 'NMaxElectronTrackParticles' property - void setupNEleTPMax( Property& /*prop*/ ); + void setupNEleTPMax( Gaudi::Details::PropertyBase& /*prop*/ ); /////////////////////////////////////////////////////////////////// @@ -160,43 +160,43 @@ private: /////////////////////////////////////////////////////////////////// /// This internal method will realize if a user sets the 'TrackParticlesToThin' property -inline void ThinTrackParticlesAlg::setupTrackPartsToThin( Property& /*prop*/ ) { +inline void ThinTrackParticlesAlg::setupTrackPartsToThin( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setTrackPartKey = true; return; } /// This internal method will realize if a user sets the 'InputContainerList' property -inline void ThinTrackParticlesAlg::setupInputContainerList( Property& /*prop*/ ) { +inline void ThinTrackParticlesAlg::setupInputContainerList( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setInCollKey = true; return; } /// This internal method will realize if a user sets the 'Selection' property -inline void ThinTrackParticlesAlg::setupSelection( Property& /*prop*/ ) { +inline void ThinTrackParticlesAlg::setupSelection( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setSelection = true; return; } /// This internal method will realize if a user sets the 'KeepTauConversions' property -inline void ThinTrackParticlesAlg::setupTauConv( Property& /*prop*/ ) { +inline void ThinTrackParticlesAlg::setupTauConv( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setTauConv = true; return; } /// This internal method will realize if a user sets the 'KeepTauWide' property -inline void ThinTrackParticlesAlg::setupTauWide( Property& /*prop*/ ) { +inline void ThinTrackParticlesAlg::setupTauWide( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setTauWide = true; return; } /// This internal method will realize if a user sets the 'KeepTauOther' property -inline void ThinTrackParticlesAlg::setupTauOther( Property& /*prop*/ ) { +inline void ThinTrackParticlesAlg::setupTauOther( Gaudi::Details::PropertyBase& /*prop*/ ) { m_setTauOther = true; return; } /// This internal method will realize if a user sets the 'NMaxElectronTrackParticles' property -inline void ThinTrackParticlesAlg::setupNEleTPMax( Property& /*prop*/ ){ +inline void ThinTrackParticlesAlg::setupNEleTPMax( Gaudi::Details::PropertyBase& /*prop*/ ){ m_setNEleTPMax = true; return; } diff --git a/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapCheckingTool.cxx b/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapCheckingTool.cxx index c613002b4f0cdefe5633a6bcc85190ef0ea18a1e..4d79e4ad6147293a72957820263bf7d42aefb3c4 100644 --- a/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapCheckingTool.cxx +++ b/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapCheckingTool.cxx @@ -11,7 +11,7 @@ Purpose : User Analysis Overlap Checking - see UserAnalysisOverlapCheckingTool.h *****************************************************************************/ #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Accessing data: #include "CLHEP/Units/PhysicalConstants.h" diff --git a/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapRemovalTool.cxx b/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapRemovalTool.cxx index 5aeb8042427d0151351ffb8903f6b27eb18bcd50..b79c89d14f46bf19b5a8ac3edb683a94e40ef733 100644 --- a/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapRemovalTool.cxx +++ b/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisOverlapRemovalTool.cxx @@ -11,7 +11,7 @@ Purpose : User Analysis Overlap Removal - see UserAnalysisOverlapRemovalTool.h f *****************************************************************************/ #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Accessing data: #include "CLHEP/Units/PhysicalConstants.h" diff --git a/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisPreparationTool.cxx b/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisPreparationTool.cxx index 394b7e5ae91009eacd7ea1333d10aa317265f1a9..99c6a91ab1922dcf7eb1bbc00bf6aeee2e9eb724 100644 --- a/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisPreparationTool.cxx +++ b/PhysicsAnalysis/AnalysisCommon/UserAnalysisUtils/src/UserAnalysisPreparationTool.cxx @@ -11,7 +11,7 @@ Purpose : User Analysis Preparation - see UserAnalysisPreparationTool.h for deta *****************************************************************************/ #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Accessing data: #include "CLHEP/Units/PhysicalConstants.h" diff --git a/PhysicsAnalysis/AraTool/AraTool/AraToolBase.h b/PhysicsAnalysis/AraTool/AraTool/AraToolBase.h index ba6a5a207e5db40613a5d1ec7a3b80813dbc6c6b..d7ed9cf6d90181ed9dd8f9a14971fe3119fad0db 100644 --- a/PhysicsAnalysis/AraTool/AraTool/AraToolBase.h +++ b/PhysicsAnalysis/AraTool/AraTool/AraToolBase.h @@ -5,7 +5,7 @@ #ifndef ARATOOLBASE_H #define ARATOOLBASE_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/PropertyHolder.h" #include "GaudiKernel/IAlgTool.h" #include "GaudiKernel/IDataHandleHolder.h" @@ -35,7 +35,7 @@ public: template<class TYPE> - Property* declareProperty + Gaudi::Details::PropertyBase* declareProperty ( const std::string& name , TYPE& value, const std::string& doc = "none" ) ; @@ -47,7 +47,7 @@ public: }; template<class TYPE> -inline Property * +inline Gaudi::Details::PropertyBase * AraToolBase::declareProperty ( const std::string& name , TYPE& value, diff --git a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.cxx b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.cxx index cd3727615a5065ff652bd41804d4299c2220af9f..bdfbd38cae21780a470549710b0a67563af6fb0b 100644 --- a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.cxx +++ b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // CLHEP includes #include "AthenaKernel/Units.h" @@ -259,19 +259,19 @@ StatusCode AssocBuilder::execute() // Non-const methods: /////////////////////////////////////////////////////////////////// -void AssocBuilder::setupInputContainers( Property& /*inputName*/ ) +void AssocBuilder::setupInputContainers( Gaudi::Details::PropertyBase& /*inputName*/ ) { // nothing to do (yet ?) return; } -void AssocBuilder::setupInputAssocContainers( Property& /*inputAssocName*/ ) +void AssocBuilder::setupInputAssocContainers( Gaudi::Details::PropertyBase& /*inputAssocName*/ ) { // nothing to do (yet ?) return; } -void AssocBuilder::setupAssocsOutput( Property& /*assocsOutputName*/ ) +void AssocBuilder::setupAssocsOutput( Gaudi::Details::PropertyBase& /*assocsOutputName*/ ) { // nothing to do (yet ?) return; diff --git a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.h b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.h index 1f0c67e8a4bbb911230302ffe71f17cf199ed8cc..48541e809787566685d183d790060ec816ac4d8b 100644 --- a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.h +++ b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocBuilder.h @@ -61,15 +61,15 @@ class AssocBuilder : public AthAlgorithm /** Callback method to setup the "ObjectContainers" property */ - void setupInputContainers( Property& inputNames ); + void setupInputContainers( Gaudi::Details::PropertyBase& inputNames ); /** Callback method to setup the "AssocContainers" property */ - void setupInputAssocContainers( Property& inputAssocNames ); + void setupInputAssocContainers( Gaudi::Details::PropertyBase& inputAssocNames ); /** Callback method to setup the "AssocsOutput" property */ - void setupAssocsOutput( Property& assocsOutputName ); + void setupAssocsOutput( Gaudi::Details::PropertyBase& assocsOutputName ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.cxx b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.cxx index b3a65688bbdb9604f9abe47025dbf2f3daa3168a..90ae1fce300944eff1b600f706530827c7e5342e 100644 --- a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.cxx +++ b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.cxx @@ -17,7 +17,7 @@ #include <ostream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // CLHEP includes #include "AthenaKernel/Units.h" @@ -256,13 +256,13 @@ StatusCode AssocDumper::dump( const INav4MomAssocs* assocs ) // Non-const methods: /////////////////////////////////////////////////////////////////// -void AssocDumper::setupINav4MomAssocs( Property& /*inav4MomAssocsName*/ ) +void AssocDumper::setupINav4MomAssocs( Gaudi::Details::PropertyBase& /*inav4MomAssocsName*/ ) { // nothing to do (yet?) return; } -void AssocDumper::setupOutputStream( Property& /*outputStreamName*/ ) +void AssocDumper::setupOutputStream( Gaudi::Details::PropertyBase& /*outputStreamName*/ ) { // reset internal state if ( m_outputStream && diff --git a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.h b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.h index 68f107428830f4e21eff79c68499b0bcd66e01f4..818768c0d511907ba80e85868a979c413b072b41 100644 --- a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.h +++ b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/AssocDumper.h @@ -70,12 +70,12 @@ class AssocDumper : public AthAlgorithm /** Callback method to configure the input location of the * @c INav4MomAssocs we want to print out */ - void setupINav4MomAssocs( Property& inav4MomAssocsName ); + void setupINav4MomAssocs( Gaudi::Details::PropertyBase& inav4MomAssocsName ); /** Callback method to configure the output stream into which we'll * dump the informations from @c INav4MomAssocs. */ - void setupOutputStream( Property& outputStreamName ); + void setupOutputStream( Gaudi::Details::PropertyBase& outputStreamName ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/DeltaROverlapTool.h b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/DeltaROverlapTool.h index 5c260ffb81b57c48d8e4f039ad60fe277da0979f..447605ddbbd64519e66859db5e7c44fad96e0597 100644 --- a/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/DeltaROverlapTool.h +++ b/PhysicsAnalysis/AssociationBuilder/AssociationComps/src/DeltaROverlapTool.h @@ -74,7 +74,7 @@ class DeltaROverlapTool : public OverlapBaseTool /** Call-back method to configure the "XyzDeltaR" properties (min/max) */ - void setupDeltaR( Property& deltaR ); + void setupDeltaR( Gaudi::Details::PropertyBase& deltaR ); /////////////////////////////////////////////////////////////////// // Protected data: @@ -102,7 +102,7 @@ class DeltaROverlapTool : public OverlapBaseTool // Inline methods: /////////////////////////////////////////////////////////////////// -inline void DeltaROverlapTool::setupDeltaR( Property& /*maxDeltaR*/ ) +inline void DeltaROverlapTool::setupDeltaR( Gaudi::Details::PropertyBase& /*maxDeltaR*/ ) { m_filter = AssociationComps::DeltaROverlapFilter( m_minDeltaR.value(), m_maxDeltaR.value() ); return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDElectronSelector.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDElectronSelector.h index 9deb60867486451266f2888c0cb8825d28724fa9..b92a4123371da0dcd1c051661a091e37d140222b 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDElectronSelector.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDElectronSelector.h @@ -90,112 +90,112 @@ private: //------------------------------------------------------ /// Call-back method to configure the cut properties (min/max): IsEM - void setupIsEM( Property& prop ); + void setupIsEM( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): passID - void setupPassID( Property& prop ); + void setupPassID( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): Author - void setupAuthor( Property& prop ); + void setupAuthor( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined et - void setupUncombinedEt( Property& prop ); + void setupUncombinedEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined e - void setupUncombinedE( Property& prop ); + void setupUncombinedE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined eta - void setupUncombinedEta( Property& prop ); + void setupUncombinedEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined |eta| - void setupUncombinedAbsEta( Property& prop ); + void setupUncombinedAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined phi - void setupUncombinedPhi( Property& prop ); + void setupUncombinedPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined mass - void setupUncombinedMass( Property& prop ); + void setupUncombinedMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster et - void setupClusterEt( Property& prop ); + void setupClusterEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster e - void setupClusterE( Property& prop ); + void setupClusterE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster eta - void setupClusterEta( Property& prop ); + void setupClusterEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster |eta| - void setupClusterAbsEta( Property& prop ); + void setupClusterAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster eta veto - void setupClusterEtaVeto( Property& prop ); + void setupClusterEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster phi - void setupClusterPhi( Property& prop ); + void setupClusterPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster phi veto - void setupClusterPhiVeto( Property& prop ); + void setupClusterPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster mass - void setupClusterMass( Property& prop ); + void setupClusterMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer e - void setupClusterLayerE( Property& prop ); + void setupClusterLayerE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer eta - void setupClusterLayerEta( Property& prop ); + void setupClusterLayerEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer |eta| - void setupClusterLayerAbsEta( Property& prop ); + void setupClusterLayerAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer eta veto - void setupClusterLayerEtaVeto( Property& prop ); + void setupClusterLayerEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer phi - void setupClusterLayerPhi( Property& prop ); + void setupClusterLayerPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer phi veto - void setupClusterLayerPhiVeto( Property& prop ); + void setupClusterLayerPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track pt - void setupTrackPt( Property& prop ); + void setupTrackPt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track p - void setupTrackP( Property& prop ); + void setupTrackP( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track eta - void setupTrackEta( Property& prop ); + void setupTrackEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track |eta| - void setupTrackAbsEta( Property& prop ); + void setupTrackAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track eta veto - void setupTrackEtaVeto( Property& prop ); + void setupTrackEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track phi - void setupTrackPhi( Property& prop ); + void setupTrackPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track phi veto - void setupTrackPhiVeto( Property& prop ); + void setupTrackPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track mass - void setupTrackMass( Property& prop ); + void setupTrackMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster-track et - void setupClusterTrackEt( Property& prop ); + void setupClusterTrackEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track pt iso - void setupTrackPtIso( Property& prop ); + void setupTrackPtIso( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): |track pt iso| - void setupAbsTrackPtIso( Property& prop ); + void setupAbsTrackPtIso( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): calo et iso - void setupCaloEtIso( Property& prop ); + void setupCaloEtIso( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): |calo et iso| - void setupAbsCaloEtIso( Property& prop ); + void setupAbsCaloEtIso( Gaudi::Details::PropertyBase& prop ); @@ -749,217 +749,217 @@ private: /////////////////////////////////////////////////////////////////// // Inline methods: /////////////////////////////////////////////////////////////////// -inline void D2PDElectronSelector::setupIsEM( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupIsEM( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doIsEM = true; return; } -inline void D2PDElectronSelector::setupPassID( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupPassID( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doPassID = true; return; } -inline void D2PDElectronSelector::setupAuthor( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupAuthor( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAuthor = true; return; } -inline void D2PDElectronSelector::setupUncombinedEt( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupUncombinedEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedEt = true; return; } -inline void D2PDElectronSelector::setupUncombinedE( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupUncombinedE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedE = true; return; } -inline void D2PDElectronSelector::setupUncombinedEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupUncombinedEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedEta = true; return; } -inline void D2PDElectronSelector::setupUncombinedAbsEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupUncombinedAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedAbsEta = true; return; } -inline void D2PDElectronSelector::setupUncombinedPhi( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupUncombinedPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedPhi = true; return; } -inline void D2PDElectronSelector::setupUncombinedMass( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupUncombinedMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedMass = true; return; } -inline void D2PDElectronSelector::setupClusterEt( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterEt = true; return; } -inline void D2PDElectronSelector::setupClusterE( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterE = true; return; } -inline void D2PDElectronSelector::setupClusterEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterEta = true; return; } -inline void D2PDElectronSelector::setupClusterAbsEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterAbsEta = true; return; } -inline void D2PDElectronSelector::setupClusterEtaVeto( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterEtaVeto = true; return; } -inline void D2PDElectronSelector::setupClusterPhi( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterPhi = true; return; } -inline void D2PDElectronSelector::setupClusterPhiVeto( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterPhiVeto = true; return; } -inline void D2PDElectronSelector::setupClusterMass( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterMass = true; return; } -inline void D2PDElectronSelector::setupClusterLayerE( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterLayerE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerE = true; return; } -inline void D2PDElectronSelector::setupClusterLayerEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterLayerEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerEta = true; return; } -inline void D2PDElectronSelector::setupClusterLayerAbsEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterLayerAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerAbsEta = true; return; } -inline void D2PDElectronSelector::setupClusterLayerEtaVeto( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterLayerEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerEtaVeto = true; return; } -inline void D2PDElectronSelector::setupClusterLayerPhi( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterLayerPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerPhi = true; return; } -inline void D2PDElectronSelector::setupClusterLayerPhiVeto( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterLayerPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerPhiVeto = true; return; } -inline void D2PDElectronSelector::setupTrackPt( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackPt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPt = true; return; } -inline void D2PDElectronSelector::setupTrackP( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackP( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackP = true; return; } -inline void D2PDElectronSelector::setupTrackEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackEta = true; return; } -inline void D2PDElectronSelector::setupTrackAbsEta( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackAbsEta = true; return; } -inline void D2PDElectronSelector::setupTrackEtaVeto( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackEtaVeto = true; return; } -inline void D2PDElectronSelector::setupTrackPhi( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPhi = true; return; } -inline void D2PDElectronSelector::setupTrackPhiVeto( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPhiVeto = true; return; } -inline void D2PDElectronSelector::setupTrackMass( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackMass = true; return; } -inline void D2PDElectronSelector::setupClusterTrackEt( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupClusterTrackEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterTrackEt = true; return; } -inline void D2PDElectronSelector::setupTrackPtIso( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupTrackPtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPtIso = true; return; } -inline void D2PDElectronSelector::setupAbsTrackPtIso( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupAbsTrackPtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAbsTrackPtIso = true; return; } -inline void D2PDElectronSelector::setupCaloEtIso( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupCaloEtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doCaloEtIso = true; return; } -inline void D2PDElectronSelector::setupAbsCaloEtIso( Property& /*prop*/ ) +inline void D2PDElectronSelector::setupAbsCaloEtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAbsCaloEtIso = true; return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDJetSelector.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDJetSelector.h index dccaf112072875bc32aa1664077621d9461096ba..e7d64e7825d7c2db1812b7f014236b5e4549425e 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDJetSelector.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDJetSelector.h @@ -90,70 +90,70 @@ private: //------------------------------------------------------ /// Call-back method to configure the cut properties (min/max): - void setupJetVertexFraction( Property& prop ); + void setupJetVertexFraction( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupFlavorTag( Property& prop ); + void setupFlavorTag( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupEMFrac( Property& prop ); + void setupEMFrac( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupPSFrac( Property& prop ); + void setupPSFrac( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupN90( Property& prop ); + void setupN90( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSamplingMax( Property& prop ); + void setupSamplingMax( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupFCor( Property& prop ); + void setupFCor( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupScaledJESEt( Property& prop ); + void setupScaledJESEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupScaledJESE( Property& prop ); + void setupScaledJESE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupScaledJESPt( Property& prop ); + void setupScaledJESPt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupScaledJESP( Property& prop ); + void setupScaledJESP( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupScaledJESMass( Property& prop ); + void setupScaledJESMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateEt( Property& prop ); + void setupSignalStateEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateE( Property& prop ); + void setupSignalStateE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStatePt( Property& prop ); + void setupSignalStatePt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateP( Property& prop ); + void setupSignalStateP( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateEta( Property& prop ); + void setupSignalStateEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateAbsEta( Property& prop ); + void setupSignalStateAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateEtaVeto( Property& prop ); + void setupSignalStateEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStatePhi( Property& prop ); + void setupSignalStatePhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStatePhiVeto( Property& prop ); + void setupSignalStatePhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupSignalStateMass( Property& prop ); + void setupSignalStateMass( Gaudi::Details::PropertyBase& prop ); @@ -499,133 +499,133 @@ private: /////////////////////////////////////////////////////////////////// // Inline methods: /////////////////////////////////////////////////////////////////// -inline void D2PDJetSelector::setupJetVertexFraction( Property& /*prop*/ ) +inline void D2PDJetSelector::setupJetVertexFraction( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doJVF = true; return; } -inline void D2PDJetSelector::setupFlavorTag( Property& /*prop*/ ) +inline void D2PDJetSelector::setupFlavorTag( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doFlavorTag = true; return; } -inline void D2PDJetSelector::setupEMFrac( Property& /*prop*/ ) +inline void D2PDJetSelector::setupEMFrac( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doEMFrac = true; return; } -inline void D2PDJetSelector::setupPSFrac( Property& /*prop*/ ) +inline void D2PDJetSelector::setupPSFrac( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doPSFrac = true; return; } -inline void D2PDJetSelector::setupN90( Property& /*prop*/ ) +inline void D2PDJetSelector::setupN90( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doN90 = true; return; } -inline void D2PDJetSelector::setupSamplingMax( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSamplingMax( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSamplingMax = true; return; } -inline void D2PDJetSelector::setupFCor( Property& /*prop*/ ) +inline void D2PDJetSelector::setupFCor( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doFCor = true; return; } -inline void D2PDJetSelector::setupScaledJESEt( Property& /*prop*/ ) +inline void D2PDJetSelector::setupScaledJESEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doScaledJESEt = true; return; } -inline void D2PDJetSelector::setupScaledJESE( Property& /*prop*/ ) +inline void D2PDJetSelector::setupScaledJESE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doScaledJESE = true; return; } -inline void D2PDJetSelector::setupScaledJESPt( Property& /*prop*/ ) +inline void D2PDJetSelector::setupScaledJESPt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doScaledJESPt = true; return; } -inline void D2PDJetSelector::setupScaledJESP( Property& /*prop*/ ) +inline void D2PDJetSelector::setupScaledJESP( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doScaledJESP = true; return; } -inline void D2PDJetSelector::setupScaledJESMass( Property& /*prop*/ ) +inline void D2PDJetSelector::setupScaledJESMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doScaledJESMass = true; return; } -inline void D2PDJetSelector::setupSignalStateEt( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateEt = true; return; } -inline void D2PDJetSelector::setupSignalStateE( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateE = true; return; } -inline void D2PDJetSelector::setupSignalStatePt( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStatePt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStatePt = true; return; } -inline void D2PDJetSelector::setupSignalStateP( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateP( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateP = true; return; } -inline void D2PDJetSelector::setupSignalStateEta( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateEta = true; return; } -inline void D2PDJetSelector::setupSignalStateAbsEta( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateAbsEta = true; return; } -inline void D2PDJetSelector::setupSignalStateEtaVeto( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateEtaVeto = true; return; } -inline void D2PDJetSelector::setupSignalStatePhi( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStatePhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStatePhi = true; return; } -inline void D2PDJetSelector::setupSignalStatePhiVeto( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStatePhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStatePhiVeto = true; return; } -inline void D2PDJetSelector::setupSignalStateMass( Property& /*prop*/ ) +inline void D2PDJetSelector::setupSignalStateMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doSignalStateMass = true; return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDMuonSelector.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDMuonSelector.h index cb2621923609719393a946b4ef01166a0eafe179..a19a61fadcf6a74e798cddf765b6738e8d6e04b7 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDMuonSelector.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDMuonSelector.h @@ -80,7 +80,7 @@ private: private: /// Call-back method to configure the cut properties (min/max): mass - void setupChi2( Property& prop ); + void setupChi2( Gaudi::Details::PropertyBase& prop ); //------------------------------------------------------ @@ -260,7 +260,7 @@ private: /////////////////////////////////////////////////////////////////// // Inline methods: /////////////////////////////////////////////////////////////////// -inline void D2PDMuonSelector::setupChi2( Property& /*prop*/ ) +inline void D2PDMuonSelector::setupChi2( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doChi2 = true; return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDPhotonSelector.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDPhotonSelector.h index e6516ecff997f10d9dec69ee084637fecb305e5f..403179bbb4fdf5bc0af4a5dca6e319355d982802 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDPhotonSelector.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDPhotonSelector.h @@ -91,109 +91,109 @@ private: //------------------------------------------------------ /// Call-back method to configure the cut properties (min/max): IsEM - void setupIsEM( Property& prop ); + void setupIsEM( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): passID - void setupPassID( Property& prop ); + void setupPassID( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): Author - void setupAuthor( Property& prop ); + void setupAuthor( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined et - void setupUncombinedEt( Property& prop ); + void setupUncombinedEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined e - void setupUncombinedE( Property& prop ); + void setupUncombinedE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined eta - void setupUncombinedEta( Property& prop ); + void setupUncombinedEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined |eta| - void setupUncombinedAbsEta( Property& prop ); + void setupUncombinedAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined phi - void setupUncombinedPhi( Property& prop ); + void setupUncombinedPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): uncombined mass - void setupUncombinedMass( Property& prop ); + void setupUncombinedMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster et - void setupClusterEt( Property& prop ); + void setupClusterEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster e - void setupClusterE( Property& prop ); + void setupClusterE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster eta - void setupClusterEta( Property& prop ); + void setupClusterEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster |eta| - void setupClusterAbsEta( Property& prop ); + void setupClusterAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster eta veto - void setupClusterEtaVeto( Property& prop ); + void setupClusterEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster phi - void setupClusterPhi( Property& prop ); + void setupClusterPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster phi veto - void setupClusterPhiVeto( Property& prop ); + void setupClusterPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster mass - void setupClusterMass( Property& prop ); + void setupClusterMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer e - void setupClusterLayerE( Property& prop ); + void setupClusterLayerE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer eta - void setupClusterLayerEta( Property& prop ); + void setupClusterLayerEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer |eta| - void setupClusterLayerAbsEta( Property& prop ); + void setupClusterLayerAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer eta veto - void setupClusterLayerEtaVeto( Property& prop ); + void setupClusterLayerEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer phi - void setupClusterLayerPhi( Property& prop ); + void setupClusterLayerPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): cluster layer phi veto - void setupClusterLayerPhiVeto( Property& prop ); + void setupClusterLayerPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track pt - void setupTrackPt( Property& prop ); + void setupTrackPt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track p - void setupTrackP( Property& prop ); + void setupTrackP( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track eta - void setupTrackEta( Property& prop ); + void setupTrackEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track |eta| - void setupTrackAbsEta( Property& prop ); + void setupTrackAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track eta veto - void setupTrackEtaVeto( Property& prop ); + void setupTrackEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track phi - void setupTrackPhi( Property& prop ); + void setupTrackPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track phi veto - void setupTrackPhiVeto( Property& prop ); + void setupTrackPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track mass - void setupTrackMass( Property& prop ); + void setupTrackMass( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): track pt iso - void setupTrackPtIso( Property& prop ); + void setupTrackPtIso( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): |track pt iso| - void setupAbsTrackPtIso( Property& prop ); + void setupAbsTrackPtIso( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): calo et iso - void setupCaloEtIso( Property& prop ); + void setupCaloEtIso( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): |calo et iso| - void setupAbsCaloEtIso( Property& prop ); + void setupAbsCaloEtIso( Gaudi::Details::PropertyBase& prop ); @@ -732,211 +732,211 @@ private: /////////////////////////////////////////////////////////////////// // Inline methods: /////////////////////////////////////////////////////////////////// -inline void D2PDPhotonSelector::setupIsEM( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupIsEM( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doIsEM = true; return; } -inline void D2PDPhotonSelector::setupPassID( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupPassID( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doPassID = true; return; } -inline void D2PDPhotonSelector::setupAuthor( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupAuthor( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAuthor = true; return; } -inline void D2PDPhotonSelector::setupUncombinedEt( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupUncombinedEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedEt = true; return; } -inline void D2PDPhotonSelector::setupUncombinedE( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupUncombinedE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedE = true; return; } -inline void D2PDPhotonSelector::setupUncombinedEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupUncombinedEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedEta = true; return; } -inline void D2PDPhotonSelector::setupUncombinedAbsEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupUncombinedAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedAbsEta = true; return; } -inline void D2PDPhotonSelector::setupUncombinedPhi( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupUncombinedPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedPhi = true; return; } -inline void D2PDPhotonSelector::setupUncombinedMass( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupUncombinedMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doUncombinedMass = true; return; } -inline void D2PDPhotonSelector::setupClusterEt( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterEt = true; return; } -inline void D2PDPhotonSelector::setupClusterE( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterE = true; return; } -inline void D2PDPhotonSelector::setupClusterEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterEta = true; return; } -inline void D2PDPhotonSelector::setupClusterAbsEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterAbsEta = true; return; } -inline void D2PDPhotonSelector::setupClusterEtaVeto( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterEtaVeto = true; return; } -inline void D2PDPhotonSelector::setupClusterPhi( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterPhi = true; return; } -inline void D2PDPhotonSelector::setupClusterPhiVeto( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterPhiVeto = true; return; } -inline void D2PDPhotonSelector::setupClusterMass( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterMass = true; return; } -inline void D2PDPhotonSelector::setupClusterLayerE( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterLayerE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerE = true; return; } -inline void D2PDPhotonSelector::setupClusterLayerEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterLayerEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerEta = true; return; } -inline void D2PDPhotonSelector::setupClusterLayerAbsEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterLayerAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerAbsEta = true; return; } -inline void D2PDPhotonSelector::setupClusterLayerEtaVeto( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterLayerEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerEtaVeto = true; return; } -inline void D2PDPhotonSelector::setupClusterLayerPhi( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterLayerPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerPhi = true; return; } -inline void D2PDPhotonSelector::setupClusterLayerPhiVeto( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupClusterLayerPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doClusterLayerPhiVeto = true; return; } -inline void D2PDPhotonSelector::setupTrackPt( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackPt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPt = true; return; } -inline void D2PDPhotonSelector::setupTrackP( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackP( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackP = true; return; } -inline void D2PDPhotonSelector::setupTrackEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackEta = true; return; } -inline void D2PDPhotonSelector::setupTrackAbsEta( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackAbsEta = true; return; } -inline void D2PDPhotonSelector::setupTrackEtaVeto( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackEtaVeto = true; return; } -inline void D2PDPhotonSelector::setupTrackPhi( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPhi = true; return; } -inline void D2PDPhotonSelector::setupTrackPhiVeto( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPhiVeto = true; return; } -inline void D2PDPhotonSelector::setupTrackMass( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackMass = true; return; } -inline void D2PDPhotonSelector::setupTrackPtIso( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupTrackPtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTrackPtIso = true; return; } -inline void D2PDPhotonSelector::setupAbsTrackPtIso( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupAbsTrackPtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAbsTrackPtIso = true; return; } -inline void D2PDPhotonSelector::setupCaloEtIso( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupCaloEtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doCaloEtIso = true; return; } -inline void D2PDPhotonSelector::setupAbsCaloEtIso( Property& /*prop*/ ) +inline void D2PDPhotonSelector::setupAbsCaloEtIso( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAbsCaloEtIso = true; return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDSelectorBase.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDSelectorBase.h index c7a7e9c94c1243125a76e0f139de5abc11835520..fc426bb614b10f2b4b3f2f05af8fe2041e3a8c09 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDSelectorBase.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDSelectorBase.h @@ -201,34 +201,34 @@ private: //------------------------------------------------------ /// Call-back method to configure the cut properties (min/max): pt - void setupPt( Property& prop ); + void setupPt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): p - void setupP( Property& prop ); + void setupP( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): et - void setupEt( Property& prop ); + void setupEt( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): e - void setupE( Property& prop ); + void setupE( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): eta - void setupEta( Property& prop ); + void setupEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): |eta| - void setupAbsEta( Property& prop ); + void setupAbsEta( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): eta veto ranges - void setupEtaVeto( Property& prop ); + void setupEtaVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): phi - void setupPhi( Property& prop ); + void setupPhi( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): phi veto ranges - void setupPhiVeto( Property& prop ); + void setupPhiVeto( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): mass - void setupMass( Property& prop ); + void setupMass( Gaudi::Details::PropertyBase& prop ); @@ -430,70 +430,70 @@ private: // Inline methods: /////////////////////////////////////////////////////////////////// template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupPt( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupPt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doPt = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupP( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupP( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doP = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupEt( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupEt( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doEt = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupE( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupE( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doE = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupEta( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doEta = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupAbsEta( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupAbsEta( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAbsEta = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupEtaVeto( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupEtaVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doEtaVeto = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupPhi( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupPhi( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doPhi = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupPhiVeto( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupPhiVeto( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doPhiVeto = true; return; } template < class T, class CT > -inline void D2PDSelectorBase< T, CT >::setupMass( Property& /*prop*/ ) +inline void D2PDSelectorBase< T, CT >::setupMass( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doMass = true; return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTauSelector.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTauSelector.h index f2c17ea8106dde905df400ea08d67628976605ac..e0a1d0ad3ce37202b3461f47ad4da5fc428403af 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTauSelector.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTauSelector.h @@ -86,19 +86,19 @@ private: //------------------------------------------------------ /// Call-back method to configure the cut properties (min/max): IsTau - void setupIsTau( Property& prop ); + void setupIsTau( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): Author - void setupAuthor( Property& prop ); + void setupAuthor( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): Discriminant - void setupDiscriminant( Property& prop ); + void setupDiscriminant( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): Charge - void setupCharge( Property& prop ); + void setupCharge( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): - void setupNTracks( Property& prop ); + void setupNTracks( Gaudi::Details::PropertyBase& prop ); @@ -287,31 +287,31 @@ private: /////////////////////////////////////////////////////////////////// // Inline methods: /////////////////////////////////////////////////////////////////// -inline void D2PDTauSelector::setupIsTau( Property& /*prop*/ ) +inline void D2PDTauSelector::setupIsTau( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doIsTau = true; return; } -inline void D2PDTauSelector::setupAuthor( Property& /*prop*/ ) +inline void D2PDTauSelector::setupAuthor( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doAuthor = true; return; } -inline void D2PDTauSelector::setupDiscriminant( Property& /*prop*/ ) +inline void D2PDTauSelector::setupDiscriminant( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doTauDiscriminant = true; return; } -inline void D2PDTauSelector::setupCharge( Property& /*prop*/ ) +inline void D2PDTauSelector::setupCharge( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doCharge = true; return; } -inline void D2PDTauSelector::setupNTracks( Property& /*prop*/ ) +inline void D2PDTauSelector::setupNTracks( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doNTracks = true; return; diff --git a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTrackParticleSelector.h b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTrackParticleSelector.h index 9c3ca75931200d57dc7540394cbb919e809dfcaa..7d893e56ea63ecae57b06f561cde6a495cea03dc 100644 --- a/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTrackParticleSelector.h +++ b/PhysicsAnalysis/D2PDMaker/D2PDMaker/D2PDTrackParticleSelector.h @@ -81,19 +81,19 @@ private: //------------------------------------------------------ /// Call-back method to configure the cut properties (min/max): numberBLayerHits - void setupNumberBLayerHits( Property& prop ); + void setupNumberBLayerHits( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): numberPixelHits - void setupNumberPixelHits( Property& prop ); + void setupNumberPixelHits( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): numberSCTHits - void setupNumberSCTHits( Property& prop ); + void setupNumberSCTHits( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): numberSiliconHits - void setupNumberSiliconHits( Property& prop ); + void setupNumberSiliconHits( Gaudi::Details::PropertyBase& prop ); /// Call-back method to configure the cut properties (min/max): numberTRTHits - void setupNumberTRTHits( Property& prop ); + void setupNumberTRTHits( Gaudi::Details::PropertyBase& prop ); @@ -175,31 +175,31 @@ private: /////////////////////////////////////////////////////////////////// // Inline methods: /////////////////////////////////////////////////////////////////// -inline void D2PDTrackParticleSelector::setupNumberBLayerHits( Property& /*prop*/ ) +inline void D2PDTrackParticleSelector::setupNumberBLayerHits( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doNumberBLayerHits = true; return; } -inline void D2PDTrackParticleSelector::setupNumberPixelHits( Property& /*prop*/ ) +inline void D2PDTrackParticleSelector::setupNumberPixelHits( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doNumberPixelHits = true; return; } -inline void D2PDTrackParticleSelector::setupNumberSCTHits( Property& /*prop*/ ) +inline void D2PDTrackParticleSelector::setupNumberSCTHits( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doNumberSCTHits = true; return; } -inline void D2PDTrackParticleSelector::setupNumberSiliconHits( Property& /*prop*/ ) +inline void D2PDTrackParticleSelector::setupNumberSiliconHits( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doNumberSiliconHits = true; return; } -inline void D2PDTrackParticleSelector::setupNumberTRTHits( Property& /*prop*/ ) +inline void D2PDTrackParticleSelector::setupNumberTRTHits( Gaudi::Details::PropertyBase& /*prop*/ ) { m_doNumberTRTHits = true; return; diff --git a/PhysicsAnalysis/D3PDMaker/D3PDMakerCoreComps/src/CollectionGetterRegistryTool.cxx b/PhysicsAnalysis/D3PDMaker/D3PDMakerCoreComps/src/CollectionGetterRegistryTool.cxx index 4e1f72429ef6b9934100866c6c2ed35e09a82041..da734606c6affb1b6c2f64b02b46ea14365cc462 100644 --- a/PhysicsAnalysis/D3PDMaker/D3PDMakerCoreComps/src/CollectionGetterRegistryTool.cxx +++ b/PhysicsAnalysis/D3PDMaker/D3PDMakerCoreComps/src/CollectionGetterRegistryTool.cxx @@ -101,7 +101,7 @@ CollectionGetterRegistryTool::get (const std::string& label, } // Get the properties for the source tool. - const std::vector<const Property*>* props = + const std::vector<const Gaudi::Details::PropertyBase*>* props = m_jos->getProperties (i->second->name()); // Copy them to the destination tool (except for Label). diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMCTruth/src/CompactHardTruth.cxx b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMCTruth/src/CompactHardTruth.cxx index 9590503b34fe025190eeb67716ac35048c1196e6..32d008c5c725f9c9f9d5663b86fd68886f468b74 100644 --- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMCTruth/src/CompactHardTruth.cxx +++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMCTruth/src/CompactHardTruth.cxx @@ -16,7 +16,7 @@ #include <list> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ITHistSvc.h" #include "GaudiKernel/ServiceHandle.h" diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMuons/src/MuonTPJpsiVertexFittingAlg.cxx b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMuons/src/MuonTPJpsiVertexFittingAlg.cxx index 1e2f4e536317b68c91436c10b02730fdf9ad3efd..59cdd4b84fd4eee0b288db0dc64671dc1e89cedc 100644 --- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMuons/src/MuonTPJpsiVertexFittingAlg.cxx +++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkMuons/src/MuonTPJpsiVertexFittingAlg.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration */ #include "DerivationFrameworkMuons/MuonTPJpsiVertexFittingAlg.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ITHistSvc.h" #include "xAODEventInfo/EventInfo.h" diff --git a/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/EgammaTagTool.cxx b/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/EgammaTagTool.cxx index fec9448da3817f4ed77e097ee4af1c1963fc358d..371834720f62836dcf66e0e4113ed4e5dd8e0adf 100755 --- a/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/EgammaTagTool.cxx +++ b/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/EgammaTagTool.cxx @@ -12,7 +12,7 @@ Purpose : create a collection of EgammaTag *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/SystemOfUnits.h" #include "ElectronPhotonTagTools/EgammaTagTool.h" #include "TagEvent/EgammaAttributeNames.h" diff --git a/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/ElectronTagTool.cxx b/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/ElectronTagTool.cxx index dd52faf91ddf989ac8e6d1e25b5747037b3c8a8b..140cc4c7824f91f8ec1741de06ca0cc96ffc8cbb 100755 --- a/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/ElectronTagTool.cxx +++ b/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/ElectronTagTool.cxx @@ -10,7 +10,7 @@ Purpose : create a collection of ElectronTag *****************************************************************************/ #include "ElectronPhotonTagTools/ElectronTagTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/StoreGateSvc.h" #include "xAODCore/ShallowCopy.h" #include "xAODParticleEvent/IParticleLink.h" diff --git a/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/PhotonTagTool.cxx b/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/PhotonTagTool.cxx index cc82e2b228d7c96c6923a5c68f1720d8bcb1b322..66baf090de2654138719dab8ca1b7ddf31fe0ff7 100755 --- a/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/PhotonTagTool.cxx +++ b/PhysicsAnalysis/ElectronPhotonID/ElectronPhotonTagTools/src/PhotonTagTool.cxx @@ -11,7 +11,7 @@ Purpose : create a collection of PhotonTag #include "ElectronPhotonTagTools/PhotonTagTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/StoreGateSvc.h" #include "xAODCore/ShallowCopy.h" #include "xAODParticleEvent/IParticleLink.h" diff --git a/PhysicsAnalysis/EventTag/EventTagUtils/EventTagUtils/RegistrationStreamTrig.h b/PhysicsAnalysis/EventTag/EventTagUtils/EventTagUtils/RegistrationStreamTrig.h index 78808cc220c523db5cc61a2522adedecd8971e34..ca4beccb3c838de857531744e4aa30133ee66dbd 100755 --- a/PhysicsAnalysis/EventTag/EventTagUtils/EventTagUtils/RegistrationStreamTrig.h +++ b/PhysicsAnalysis/EventTag/EventTagUtils/EventTagUtils/RegistrationStreamTrig.h @@ -14,7 +14,7 @@ //<<<<<< INCLUDES >>>>>> #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IIncidentListener.h" #include "GaudiKernel/ToolHandle.h" diff --git a/PhysicsAnalysis/EventTag/EventTagUtils/src/EventInfoTagTool.cxx b/PhysicsAnalysis/EventTag/EventTagUtils/src/EventInfoTagTool.cxx index 012e94e184f9d69683dcf9c59556d5c2a48ce900..4f08637383751cb38abb11dc81fb67c90939e682 100755 --- a/PhysicsAnalysis/EventTag/EventTagUtils/src/EventInfoTagTool.cxx +++ b/PhysicsAnalysis/EventTag/EventTagUtils/src/EventInfoTagTool.cxx @@ -13,7 +13,7 @@ Purpose : create a EventInfoTag - The Tag information associated to the event *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IIncidentSvc.h" #include "CLHEP/Units/SystemOfUnits.h" diff --git a/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalEventTagTool.cxx b/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalEventTagTool.cxx index ab3b71c0287f2460a57fd458f6ac2c7eb58d972e..65e828e8f83a6558b4ed23ed0a99ed0606dfcfcd 100755 --- a/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalEventTagTool.cxx +++ b/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalEventTagTool.cxx @@ -13,7 +13,7 @@ Purpose : create a GlobalEventTag - The Tag information associated to the event *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "StoreGate/StoreGateSvc.h" diff --git a/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalTriggerTagTool.cxx b/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalTriggerTagTool.cxx index fdc46ac4de77febfd109db0ba4a4d3aab5abb94b..1315e89af23b11f972a4f7ea666c97afd22e555e 100755 --- a/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalTriggerTagTool.cxx +++ b/PhysicsAnalysis/EventTag/EventTagUtils/src/GlobalTriggerTagTool.cxx @@ -14,7 +14,7 @@ Purpose : create a GlobalTriggerTag - The Tag information associated to the even #include "EventTagUtils/GlobalTriggerTagTool.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IIncidentSvc.h" #include "CLHEP/Units/SystemOfUnits.h" diff --git a/PhysicsAnalysis/EventTag/EventTagUtils/src/RawInfoSummaryForTagTool.cxx b/PhysicsAnalysis/EventTag/EventTagUtils/src/RawInfoSummaryForTagTool.cxx index ed866fb59383f73f53edab4745285981982e91ce..8cb73690389b31161aaa3b2dac33bf265c050ee2 100755 --- a/PhysicsAnalysis/EventTag/EventTagUtils/src/RawInfoSummaryForTagTool.cxx +++ b/PhysicsAnalysis/EventTag/EventTagUtils/src/RawInfoSummaryForTagTool.cxx @@ -13,7 +13,7 @@ Purpose : create a DataQualityTag - The Detector Status Words and the Good *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "StoreGate/StoreGateSvc.h" diff --git a/PhysicsAnalysis/ExoticPhys/ExoticPhysTagTools/src/ExoticPhysTagTool.cxx b/PhysicsAnalysis/ExoticPhys/ExoticPhysTagTools/src/ExoticPhysTagTool.cxx index fb7cbe57da362282564f8b03cd67053b9284a256..4d43994972364451008b50f6c9bce57816088c09 100755 --- a/PhysicsAnalysis/ExoticPhys/ExoticPhysTagTools/src/ExoticPhysTagTool.cxx +++ b/PhysicsAnalysis/ExoticPhys/ExoticPhysTagTools/src/ExoticPhysTagTool.cxx @@ -12,7 +12,7 @@ Purpose : create a ExoticPhysTag - a word to encode ExoticPhys specific informat *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "ExoticPhysTagTools/ExoticPhysTagTool.h" diff --git a/PhysicsAnalysis/HeavyIonPhys/HeavyIonPhysTagTools/src/HeavyIonPhysTagTool.cxx b/PhysicsAnalysis/HeavyIonPhys/HeavyIonPhysTagTools/src/HeavyIonPhysTagTool.cxx index e6f98b4671aade535b0f6e0bfa9ac23cc5c905d4..2ad0971a94888eb26dd75b4ef0eb66a284de484f 100755 --- a/PhysicsAnalysis/HeavyIonPhys/HeavyIonPhysTagTools/src/HeavyIonPhysTagTool.cxx +++ b/PhysicsAnalysis/HeavyIonPhys/HeavyIonPhysTagTools/src/HeavyIonPhysTagTool.cxx @@ -13,7 +13,7 @@ Purpose : create a HeavyIonPhysTag - a word to encode ExoticPhys specific inform *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "HeavyIonPhysTagTools/HeavyIonPhysTagTool.h" diff --git a/PhysicsAnalysis/HiggsPhys/HiggsPhysTagTools/src/HiggsPhysTagTool.cxx b/PhysicsAnalysis/HiggsPhys/HiggsPhysTagTools/src/HiggsPhysTagTool.cxx index b0f0fba19576c2d9647b88ee1ff23dcc3c42cecc..86c2b35aae0b1a8aa39d89a7fe8c66a825404c9e 100755 --- a/PhysicsAnalysis/HiggsPhys/HiggsPhysTagTools/src/HiggsPhysTagTool.cxx +++ b/PhysicsAnalysis/HiggsPhys/HiggsPhysTagTools/src/HiggsPhysTagTool.cxx @@ -12,7 +12,7 @@ Purpose : create a HiggsPhysTag - a word to encode HiggsPhys specific informatio *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "HiggsPhysTagTools/HiggsPhysTagTool.h" diff --git a/PhysicsAnalysis/JetMissingEtID/JetMissingEtTagTools/src/JetMissingEtIdentificationTagTool.cxx b/PhysicsAnalysis/JetMissingEtID/JetMissingEtTagTools/src/JetMissingEtIdentificationTagTool.cxx index 68c218c937f8d62e332fedcea141d1aed9e4ed00..965d9640474044f9ce6510da36287cef7d07a08d 100755 --- a/PhysicsAnalysis/JetMissingEtID/JetMissingEtTagTools/src/JetMissingEtIdentificationTagTool.cxx +++ b/PhysicsAnalysis/JetMissingEtID/JetMissingEtTagTools/src/JetMissingEtIdentificationTagTool.cxx @@ -10,7 +10,7 @@ Purpose : create a JetMissingEtIdentificationTag - word to encode Jet and *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "xAODJet/JetContainer.h" diff --git a/PhysicsAnalysis/JetTagging/JetTagCalibration/JetTagCalibration/CalibrationBroker.h b/PhysicsAnalysis/JetTagging/JetTagCalibration/JetTagCalibration/CalibrationBroker.h index f7117d662eeaafd866a7f200abc7a0515b7938d2..6565eea27fdaa62bf0b456b90db4580324168263 100755 --- a/PhysicsAnalysis/JetTagging/JetTagCalibration/JetTagCalibration/CalibrationBroker.h +++ b/PhysicsAnalysis/JetTagging/JetTagCalibration/JetTagCalibration/CalibrationBroker.h @@ -8,7 +8,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" #include "StoreGate/DataHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TFile.h" #include <map> #include <string> diff --git a/PhysicsAnalysis/JetTagging/JetTaggingTagTools/src/JetTaggingTagTool.cxx b/PhysicsAnalysis/JetTagging/JetTaggingTagTools/src/JetTaggingTagTool.cxx index 8d4fa1e309ea3e9fe3a484e374709a3f51241972..b06a2c17b81b57633847a4ec329f43e5abcbaa56 100755 --- a/PhysicsAnalysis/JetTagging/JetTaggingTagTools/src/JetTaggingTagTool.cxx +++ b/PhysicsAnalysis/JetTagging/JetTaggingTagTools/src/JetTaggingTagTool.cxx @@ -13,7 +13,7 @@ Purpose : create a Flavor Tagging Event Tag - a word to encode Flavor Tagging sp *****************************************************************************/ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "StoreGate/StoreGateSvc.h" diff --git a/PhysicsAnalysis/MuonID/MuonSelectorTools/MuonSelectorTools/MuonSelectionTool.h b/PhysicsAnalysis/MuonID/MuonSelectorTools/MuonSelectorTools/MuonSelectionTool.h index 8c7f66f440366cb59c02a52484f0f50de280e71f..3777efe2a04e0dfee91c9c81e85e88669da19153 100644 --- a/PhysicsAnalysis/MuonID/MuonSelectorTools/MuonSelectorTools/MuonSelectionTool.h +++ b/PhysicsAnalysis/MuonID/MuonSelectorTools/MuonSelectorTools/MuonSelectionTool.h @@ -125,12 +125,11 @@ namespace CP { private: MuonSelectionTool & operator=(const MuonSelectionTool &right); - MuonSelectionTool( const MuonSelectionTool& toCopy ); + const std::string m_name; /// Maximum pseudorapidity for the selected muons double m_maxEta; int m_quality; - bool m_isSimulation; /// Store selection information. asg::AcceptInfo m_acceptInfo; @@ -157,13 +156,12 @@ namespace CP { std::string m_BMVcutFile; /// Checks for each histogram - StatusCode getHist( TFile* file, const char* histName, TH2D*& hist ); + StatusCode getHist( TFile* file, const char* histName, std::unique_ptr<TH2D>& hist ); // - std::string m_tightWP_rootFile; - TH2D* m_tightWP_lowPt_rhoCuts; - TH2D* m_tightWP_lowPt_qOverPCuts; - TH2D* m_tightWP_mediumPt_rhoCuts; - TH2D* m_tightWP_highPt_rhoCuts; + std::unique_ptr<TH2D> m_tightWP_lowPt_rhoCuts; + std::unique_ptr<TH2D> m_tightWP_lowPt_qOverPCuts; + std::unique_ptr<TH2D> m_tightWP_mediumPt_rhoCuts; + std::unique_ptr<TH2D> m_tightWP_highPt_rhoCuts; // std::unique_ptr<TF1> m_BMVcutFunction_barrel; std::unique_ptr<TF1> m_BMVcutFunction_endcap; @@ -185,10 +183,10 @@ namespace CP { bool isBMG(const float eta, const float phi) const; //TMVA readers for low-pT working point - TMVA::Reader* m_readerE_MUID; - TMVA::Reader* m_readerO_MUID; - TMVA::Reader* m_readerE_MUGIRL; - TMVA::Reader* m_readerO_MUGIRL; + std::unique_ptr<TMVA::Reader> m_readerE_MUID; + std::unique_ptr<TMVA::Reader> m_readerO_MUID; + std::unique_ptr<TMVA::Reader> m_readerE_MUGIRL; + std::unique_ptr<TMVA::Reader> m_readerO_MUGIRL; //TMVA initialize function void PrepareReader(TMVA::Reader* reader); diff --git a/PhysicsAnalysis/MuonID/MuonSelectorTools/Root/MuonSelectionTool.cxx b/PhysicsAnalysis/MuonID/MuonSelectorTools/Root/MuonSelectionTool.cxx index 6a5ad66afe026ee104e70f7743959452ec25a011..1149b107390ff45960cf8007777c39dce2fdd871 100644 --- a/PhysicsAnalysis/MuonID/MuonSelectorTools/Root/MuonSelectionTool.cxx +++ b/PhysicsAnalysis/MuonID/MuonSelectorTools/Root/MuonSelectionTool.cxx @@ -63,91 +63,17 @@ namespace CP { declareProperty( "SiHolesCutOff", m_SiHolesCutOff = false ); declareProperty( "UseAllAuthors", m_useAllAuthors = true ); // - m_tightWP_lowPt_rhoCuts = 0; - m_tightWP_lowPt_qOverPCuts = 0; - m_tightWP_mediumPt_rhoCuts = 0; - m_tightWP_highPt_rhoCuts = 0; - // m_lowPTmva_middleHoles = new Float_t; m_lowPTmva_muonSeg1ChamberIdx = new Float_t; m_lowPTmva_muonSeg2ChamberIdx = new Float_t; m_lowPTmva_momentumBalanceSig = new Float_t; m_lowPTmva_scatteringCurvatureSig = new Float_t; m_lowPTmva_scatteringNeighbourSig = new Float_t; m_lowPTmva_energyLoss = new Float_t; m_lowPTmva_muonSegmentDeltaEta = new Float_t; - ATH_MSG_DEBUG("Creating MuonSelectionTool named "<<m_name); } - - MuonSelectionTool::MuonSelectionTool( const MuonSelectionTool& toCopy ) - : asg::AsgTool(toCopy.m_name+"_copy"), - m_name(toCopy.m_name+"_copy"), - m_maxEta( toCopy.m_maxEta ), - m_quality( toCopy.m_quality ), - m_acceptInfo( toCopy.m_acceptInfo ), - m_toroidOff( toCopy.m_toroidOff ), - m_developMode( toCopy.m_developMode ), - m_TrtCutOff( toCopy.m_TrtCutOff ), - m_SctCutOff( toCopy.m_SctCutOff ), - m_PixCutOff( toCopy.m_PixCutOff ), - m_SiHolesCutOff( toCopy.m_SiHolesCutOff ), - m_TurnOffMomCorr( toCopy.m_TurnOffMomCorr ), - m_calibration_version( toCopy.m_calibration_version ), - m_custom_dir( toCopy.m_custom_dir ), - m_readerE_MUID(nullptr), - m_readerO_MUID(nullptr), - m_readerE_MUGIRL(nullptr), - m_readerO_MUGIRL(nullptr) - { - // - m_tightWP_lowPt_rhoCuts = 0; - m_tightWP_lowPt_qOverPCuts = 0; - m_tightWP_mediumPt_rhoCuts = 0; - m_tightWP_highPt_rhoCuts = 0; - // - m_lowPTmva_middleHoles = new Float_t; m_lowPTmva_muonSeg1ChamberIdx = new Float_t; - m_lowPTmva_muonSeg2ChamberIdx = new Float_t; m_lowPTmva_momentumBalanceSig = new Float_t; - m_lowPTmva_scatteringCurvatureSig = new Float_t; m_lowPTmva_scatteringNeighbourSig = new Float_t; - m_lowPTmva_energyLoss = new Float_t; m_lowPTmva_muonSegmentDeltaEta = new Float_t; - - ATH_MSG_DEBUG("Creating copy of MuonSelectionTool named "<<m_name); - } MuonSelectionTool::~MuonSelectionTool(){ ATH_MSG_DEBUG(Form("Deleting MuonSelectionTool named %s",m_name.c_str())); // - if( m_tightWP_lowPt_rhoCuts ){ - delete m_tightWP_lowPt_rhoCuts; - m_tightWP_lowPt_rhoCuts = 0; - } - if( m_tightWP_lowPt_qOverPCuts ){ - delete m_tightWP_lowPt_qOverPCuts; - m_tightWP_lowPt_qOverPCuts = 0; - } - if( m_tightWP_mediumPt_rhoCuts ){ - delete m_tightWP_mediumPt_rhoCuts; - m_tightWP_mediumPt_rhoCuts = 0; - } - if( m_tightWP_highPt_rhoCuts ){ - delete m_tightWP_highPt_rhoCuts; - m_tightWP_highPt_rhoCuts = 0; - } - // - if( m_readerE_MUID ){ - delete m_readerE_MUID; - m_readerE_MUID = nullptr; - } - if( m_readerO_MUID ){ - delete m_readerO_MUID; - m_readerO_MUID = nullptr; - } - if( m_readerE_MUGIRL ){ - delete m_readerE_MUGIRL; - m_readerE_MUGIRL = nullptr; - } - if( m_readerO_MUGIRL ){ - delete m_readerO_MUGIRL; - m_readerO_MUGIRL = nullptr; - } - // delete m_lowPTmva_middleHoles; delete m_lowPTmva_muonSeg1ChamberIdx; delete m_lowPTmva_muonSeg2ChamberIdx; delete m_lowPTmva_momentumBalanceSig; delete m_lowPTmva_scatteringCurvatureSig; delete m_lowPTmva_scatteringNeighbourSig; delete m_lowPTmva_energyLoss; delete m_lowPTmva_muonSegmentDeltaEta; } @@ -165,9 +91,9 @@ namespace CP { if (m_custom_dir!="") ATH_MSG_WARNING("!! SETTING UP WITH USER SPECIFIED INPUT LOCATION \""<<m_custom_dir<<"\"!! FOR DEVELOPMENT USE ONLY !! "); if (!m_useAllAuthors) ATH_MSG_WARNING("Not using allAuthors variable as currently missing in many derivations; LowPtEfficiency working point will always return false, but this is expected at the moment. Have a look here: https://twiki.cern.ch/twiki/bin/view/Atlas/MuonSelectionToolR21#New_LowPtEfficiency_working_poin"); - //Print warning to ensure that users including 2-station muons in the high-pT selection are aware of this - if (!m_use2stationMuonsHighPt) ATH_MSG_INFO("You have opted select 3-station muons in the high-pT selection! "<< - "Please feed 'HighPt3Layers' to the 'WorkingPoint' property to retrieve the appropiate scale-factors"); + //Print message to ensure that users excluding 2-station muons in the high-pT selection are aware of this + if (!m_use2stationMuonsHighPt) ATH_MSG_INFO("You have opted to select only 3-station muons in the high-pT selection! "<< + "Please feed 'HighPt3Layers' to the 'WorkingPoint' property to retrieve the appropriate scale-factors"); // Set up the TAccept object: @@ -248,20 +174,20 @@ namespace CP { TString weightPath_EVEN_MuGirl = PathResolverFindCalibFile(m_MVAreaderFile_EVEN_MuGirl); TString weightPath_ODD_MuGirl = PathResolverFindCalibFile(m_MVAreaderFile_ODD_MuGirl); - m_readerE_MUID = new TMVA::Reader(); - PrepareReader( m_readerE_MUID ); + m_readerE_MUID = std::make_unique<TMVA::Reader>(); + PrepareReader( m_readerE_MUID.get() ); m_readerE_MUID->BookMVA("BDTG", weightPath_EVEN_MuidCB); - m_readerO_MUID = new TMVA::Reader(); - PrepareReader( m_readerO_MUID ); + m_readerO_MUID = std::make_unique<TMVA::Reader>(); + PrepareReader( m_readerO_MUID.get() ); m_readerO_MUID->BookMVA("BDTG", weightPath_ODD_MuidCB); - m_readerE_MUGIRL = new TMVA::Reader(); - PrepareReader( m_readerE_MUGIRL ); + m_readerE_MUGIRL = std::make_unique<TMVA::Reader>(); + PrepareReader( m_readerE_MUGIRL.get() ); m_readerE_MUGIRL->BookMVA("BDTG", weightPath_EVEN_MuGirl); - m_readerO_MUGIRL = new TMVA::Reader(); - PrepareReader( m_readerO_MUGIRL ); + m_readerO_MUGIRL = std::make_unique<TMVA::Reader>(); + PrepareReader( m_readerO_MUGIRL.get() ); m_readerO_MUGIRL->BookMVA("BDTG", weightPath_ODD_MuGirl); ATH_CHECK( m_eventInfo.initialize() ); @@ -270,14 +196,14 @@ namespace CP { return StatusCode::SUCCESS; } - StatusCode MuonSelectionTool::getHist( TFile* file, const char* histName, TH2D*& hist ){ + StatusCode MuonSelectionTool::getHist( TFile* file, const char* histName, std::unique_ptr<TH2D>& hist ){ // if( !file ) { ATH_MSG_ERROR(" getHist(...) TFile is nullptr! Check that the Tight cut map is loaded correctly"); return StatusCode::FAILURE; } // - hist = dynamic_cast<TH2D*>( file->Get( histName ) ); + hist = std::unique_ptr<TH2D>( (TH2D*)file->Get( histName ) ); // if( !hist ){ ATH_MSG_ERROR( "Cannot retrieve histogram " << histName ); @@ -665,6 +591,7 @@ namespace CP { } bool MuonSelectionTool::passedIDCuts( const xAOD::Muon& mu ) const { + //do not apply the ID hit requirements for SA muons for |eta| > 2.5 if ( mu.author()==xAOD::Muon::MuidSA && std::abs(mu.eta())>2.5 ) { return true; @@ -873,12 +800,12 @@ namespace CP { //use different trainings for even/odd numbered events TMVA::Reader *reader_MUID, *reader_MUGIRL; if( eventInfo->eventNumber() % 2 == 1) { - reader_MUID = m_readerE_MUID; - reader_MUGIRL = m_readerE_MUGIRL; + reader_MUID = m_readerE_MUID.get(); + reader_MUGIRL = m_readerE_MUGIRL.get(); } else { - reader_MUID = m_readerO_MUID; - reader_MUGIRL = m_readerO_MUGIRL; + reader_MUID = m_readerO_MUID.get(); + reader_MUGIRL = m_readerO_MUGIRL.get(); } // get the BDT discriminant response @@ -1259,6 +1186,7 @@ namespace CP { } bool MuonSelectionTool::passedIDCuts( const xAOD::TrackParticle & track ) const { + uint8_t value1=0; uint8_t value2=0; diff --git a/PhysicsAnalysis/MuonID/MuonTagTools/src/MuonTagTool.cxx b/PhysicsAnalysis/MuonID/MuonTagTools/src/MuonTagTool.cxx index 59d27766db79aefa9e971cc625f942292218b8e8..4f900025d5cfd81f62444f701eb541607b47c3c4 100644 --- a/PhysicsAnalysis/MuonID/MuonTagTools/src/MuonTagTool.cxx +++ b/PhysicsAnalysis/MuonID/MuonTagTools/src/MuonTagTool.cxx @@ -9,7 +9,7 @@ Purpose : create a collection of MuonTag *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODCore/ShallowCopy.h" #include "xAODParticleEvent/IParticleLink.h" #include "AthContainers/ConstDataVector.h" diff --git a/PhysicsAnalysis/PrimaryDPDMaker/src/PrimaryDPDPrescaler.h b/PhysicsAnalysis/PrimaryDPDMaker/src/PrimaryDPDPrescaler.h index 2bf8891b1014aaee40184ae21931294253289d41..5e16fddbb18888504283b22a473dd396278bb5df 100644 --- a/PhysicsAnalysis/PrimaryDPDMaker/src/PrimaryDPDPrescaler.h +++ b/PhysicsAnalysis/PrimaryDPDMaker/src/PrimaryDPDPrescaler.h @@ -14,7 +14,7 @@ #include <string> #include <vector> #include "AthenaBaseComps/AthFilterAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IIncidentListener.h" diff --git a/PhysicsAnalysis/PrimaryDPDMaker/src/muonTrkTrackThinTool.cxx b/PhysicsAnalysis/PrimaryDPDMaker/src/muonTrkTrackThinTool.cxx index 2627f61cde1c5d965df51d09f55ba8dbfb273fdd..c8d929a6d87ad9e3391bc87c0e236a35c26065f6 100644 --- a/PhysicsAnalysis/PrimaryDPDMaker/src/muonTrkTrackThinTool.cxx +++ b/PhysicsAnalysis/PrimaryDPDMaker/src/muonTrkTrackThinTool.cxx @@ -13,7 +13,7 @@ #include <iostream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // StoreGate #include "StoreGate/DataHandle.h" #include "StoreGate/ThinningHandle.h" diff --git a/PhysicsAnalysis/SUSYPhys/SUSYPhysTagTools/src/SUSYPhysTagTool.cxx b/PhysicsAnalysis/SUSYPhys/SUSYPhysTagTools/src/SUSYPhysTagTool.cxx index e1245b209794718e6f5ffc1b52c9b5ce3733e08b..0d81bda279a3c7b111ad822c600c513edcc1533e 100755 --- a/PhysicsAnalysis/SUSYPhys/SUSYPhysTagTools/src/SUSYPhysTagTool.cxx +++ b/PhysicsAnalysis/SUSYPhys/SUSYPhysTagTools/src/SUSYPhysTagTool.cxx @@ -12,7 +12,7 @@ Purpose : create a SUSYPhysTag - a word to encode SUSYPhys specific information *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" diff --git a/PhysicsAnalysis/SUSYPhys/SUSYTools/src/ApplySUSYTools.cxx b/PhysicsAnalysis/SUSYPhys/SUSYTools/src/ApplySUSYTools.cxx index 8312602001ef4351e66f702c7e319e30225d3929..3ecabbb3ea2f51427d719e7ed3f6254f8355d4fa 100644 --- a/PhysicsAnalysis/SUSYPhys/SUSYTools/src/ApplySUSYTools.cxx +++ b/PhysicsAnalysis/SUSYPhys/SUSYTools/src/ApplySUSYTools.cxx @@ -51,7 +51,7 @@ #include "PATInterfaces/SystematicVariation.h" // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ITHistSvc.h" #include "GaudiKernel/ServiceHandle.h" diff --git a/PhysicsAnalysis/StandardModelPhys/StandardModelPhysTagTools/src/StandardModelTagTool.cxx b/PhysicsAnalysis/StandardModelPhys/StandardModelPhysTagTools/src/StandardModelTagTool.cxx index 2a6eba2f1764467d236535dd3cc08994e76fd504..33efb0d5cb5d4ec5321c5a3141ee4fac7f6d75ef 100755 --- a/PhysicsAnalysis/StandardModelPhys/StandardModelPhysTagTools/src/StandardModelTagTool.cxx +++ b/PhysicsAnalysis/StandardModelPhys/StandardModelPhysTagTools/src/StandardModelTagTool.cxx @@ -12,7 +12,7 @@ Purpose : create a StandardModelPhysTag - a word to encode StandardModelPhys spe *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "GaudiKernel/GaudiException.h" diff --git a/PhysicsAnalysis/TauID/TauTagTools/src/TauIdentificationTagTool.cxx b/PhysicsAnalysis/TauID/TauTagTools/src/TauIdentificationTagTool.cxx index 6ce885975458796ec043baf0c2f2c36fb4da8ddc..b2acfcfd0da6db7fb3d0b8a3c7f6e3de808b6563 100755 --- a/PhysicsAnalysis/TauID/TauTagTools/src/TauIdentificationTagTool.cxx +++ b/PhysicsAnalysis/TauID/TauTagTools/src/TauIdentificationTagTool.cxx @@ -10,7 +10,7 @@ Created : January 2006 Purpose : create a TauIdentificationTag - word to encode tauJet specific informations *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "TauTagTools/TauIdentificationTagTool.h" diff --git a/PhysicsAnalysis/TauID/TauTagTools/src/TauJetTagTool.cxx b/PhysicsAnalysis/TauID/TauTagTools/src/TauJetTagTool.cxx index 0a85c9400e87cfca34fd52e020470183a3b9fd25..75d0d88bf573eca4463a267f8c4f5d5317f9e00f 100755 --- a/PhysicsAnalysis/TauID/TauTagTools/src/TauJetTagTool.cxx +++ b/PhysicsAnalysis/TauID/TauTagTools/src/TauJetTagTool.cxx @@ -9,7 +9,7 @@ Purpose : create a collection of TauJetTag *****************************************************************************/ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/StoreGateSvc.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodFilter.cxx b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodFilter.cxx index f1514675dd615f80c3a0c828ba56c933d74a63a6..cb525180bbae4395b1a8a020a13e1b64aeb5116c 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodFilter.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodFilter.cxx @@ -13,7 +13,7 @@ #include <algorithm> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // McParticleUtils includes #include "McParticleUtils/McVtxFilter.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodValidationAlg.cxx b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodValidationAlg.cxx index 91d395161e71c7ed04edf913a4f9a6bd3d2c7bb1..25325e9e5d44e216792838cb5ba75c3c7aff6238 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodValidationAlg.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/McAodValidationAlg.cxx @@ -14,7 +14,7 @@ #include <stdexcept> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // CLHEP includes #include "CLHEP/Units/SystemOfUnits.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.cxx b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.cxx index 5cfcfc493a103b655127baf723742185d6316e29..85153e8028a8274eceef466777def42ee662e4a6 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.cxx @@ -12,7 +12,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // McParticleKernel includes #include "McParticleKernel/ITruthParticleFilterTool.h" @@ -148,7 +148,7 @@ StatusCode TruthParticleBuilder::execute() /// Non-const methods: /////////////////////////////////////////////////////////////////// -void TruthParticleBuilder::setupFilterTool( Property& /*doFiltering*/ ) +void TruthParticleBuilder::setupFilterTool( Gaudi::Details::PropertyBase& /*doFiltering*/ ) { if ( m_doFiltering ) { @@ -186,7 +186,7 @@ void TruthParticleBuilder::setupFilterTool( Property& /*doFiltering*/ ) return; } -void TruthParticleBuilder::setupCnvTool( Property& /*doTruthParticles*/ ) +void TruthParticleBuilder::setupCnvTool( Gaudi::Details::PropertyBase& /*doTruthParticles*/ ) { if ( m_doTruthParticles ) { diff --git a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.h b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.h index fac5893c80db47a16abaf6a4a6b5d886645978f7..b535fe3062a002fa57b87fe2dba4520d8ac65aac 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleAlgs/src/TruthParticleBuilder.h @@ -65,12 +65,12 @@ class TruthParticleBuilder : public AthAlgorithm /** Call-back method to configure the filter tool if needed (this is defined * by the state of the "DoFiltering" property) */ - void setupFilterTool( Property& doFiltering ); + void setupFilterTool( Gaudi::Details::PropertyBase& doFiltering ); /** Call-back method to configure the converter tool if needed (this is * defined by the state of the "DoTruthParticles" property) */ - void setupCnvTool( Property& doTruthParticles ); + void setupCnvTool( Gaudi::Details::PropertyBase& doTruthParticles ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.cxx index 77a2cbdb7380a8c9f010b000ceeb435243964433..6fdb260a495462c372ed96863d78dea55e5cd8d3 100644 --- a/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.cxx @@ -204,13 +204,13 @@ StatusCode RootTruthParticleCnvTool::setProperty( const std::string& ) { abort(); } StatusCode RootTruthParticleCnvTool::setProperty( const std::string&, const Gaudi::Details::PropertyBase& ) { abort(); } StatusCode RootTruthParticleCnvTool::setPropertyRepr( const std::string&, const std::string& ){ abort(); } -StatusCode RootTruthParticleCnvTool::getProperty( Property* ) const { abort(); } -const Property& +StatusCode RootTruthParticleCnvTool::getProperty( Gaudi::Details::PropertyBase* ) const { abort(); } +const Gaudi::Details::PropertyBase& RootTruthParticleCnvTool::getProperty( const std::string& ) const{ abort(); } StatusCode RootTruthParticleCnvTool::getProperty( const std::string&, std::string& ) const { abort(); } -const std::vector< Property* >& +const std::vector< Gaudi::Details::PropertyBase* >& RootTruthParticleCnvTool::getProperties() const { abort(); } bool RootTruthParticleCnvTool::hasProperty( const std::string& ) const { abort(); } diff --git a/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.h b/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.h index 3573cbd1e416332bc5390b803940987431f87faf..52f05145f10c0aa79b2aa284d36d294f5e9cb1c5 100644 --- a/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleEventTPCnv/src/RootTruthParticleCnvTool.h @@ -8,7 +8,7 @@ #define MCPARTICLEEVENTTPCNV_ROOTTRUTHPARTICLECNVTOOL_H #include "McParticleKernel/ITruthParticleCnvTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class RootTruthParticleCnvTool : public ITruthParticleCnvTool @@ -56,10 +56,10 @@ public: virtual StatusCode setProperty( const std::string& name, const Gaudi::Details::PropertyBase& p ); virtual StatusCode setPropertyRepr( const std::string& n, const std::string& r ); - virtual StatusCode getProperty( Property* p ) const; - virtual const Property& getProperty( const std::string& name ) const; + virtual StatusCode getProperty( Gaudi::Details::PropertyBase* p ) const; + virtual const Gaudi::Details::PropertyBase& getProperty( const std::string& name ) const; virtual StatusCode getProperty( const std::string& n, std::string& v ) const; - virtual const std::vector<Property*>& getProperties( ) const; + virtual const std::vector<Gaudi::Details::PropertyBase*>& getProperties( ) const; virtual bool hasProperty(const std::string& name) const; /// @} diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna.cxx index 63d9838dda2384aa4db58b20b1e382b6827975fa..94ed60b461a2e94ed2b30e77b17ecf0e9abd1eff 100644 --- a/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" namespace McAod { diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna_solution.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna_solution.cxx index 77bfb2b4c666508f05c391983a962effeca7825a..6edfa84919980f71e3e2a593bfcc17d6c6853a80 100644 --- a/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna_solution.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodMcTopAna_solution.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ITHistSvc.h" #include "GaudiKernel/ServiceHandle.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodSymLinkTests.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodSymLinkTests.cxx index 1c7a946a76e7d0433a93a1afa570f8c1c87e7d2b..cd9576793676f20cb013c2396a76d1cf91c2c4a5 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodSymLinkTests.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTests/src/McAodSymLinkTests.cxx @@ -14,7 +14,7 @@ #include <limits> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // NavFourMom includes #include "NavFourMom/INavigable4MomentumCollection.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx index 88688ca952d073c81a2f1afcdaef6b2ca2e99514..6ece2481eea9030bb454985cccc02d0a28457331 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx @@ -449,13 +449,13 @@ StatusCode EtaPtFilterTool::initializeTool() return StatusCode::SUCCESS; } -void EtaPtFilterTool::setupInnerEtaRegionCuts( Property& /*innerRegion*/ ) +void EtaPtFilterTool::setupInnerEtaRegionCuts( Gaudi::Details::PropertyBase& /*innerRegion*/ ) { // nothing to do (yet?) return; } -void EtaPtFilterTool::setupOuterEtaRegionCuts( Property& /*outerRegion*/ ) +void EtaPtFilterTool::setupOuterEtaRegionCuts( Gaudi::Details::PropertyBase& /*outerRegion*/ ) { // nothing to do (yet?) return; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.h index 772357495c2df12fb2e696336df693ea42fc51d0..be8b8014c56e27e4551197625294e45b995fbb16 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.h @@ -137,11 +137,11 @@ class EtaPtFilterTool : public TruthParticleFilterBaseTool /** Callback function to setup the "InnerEtaRegionCuts" property */ - void setupInnerEtaRegionCuts( Property& innerEtaRegionCuts ); + void setupInnerEtaRegionCuts( Gaudi::Details::PropertyBase& innerEtaRegionCuts ); /** Callback function to setup the "OuterEtaRegionCuts" property */ - void setupOuterEtaRegionCuts( Property& outerEtaRegionCuts ); + void setupOuterEtaRegionCuts( Gaudi::Details::PropertyBase& outerEtaRegionCuts ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/GenAodValidationTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/GenAodValidationTool.cxx index 363c7d5cf17b6aa4abac34384bc5afa94e9940ad..1a72387d8dfd242fe54bc2637377a099e217e1e2 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/GenAodValidationTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/GenAodValidationTool.cxx @@ -13,7 +13,7 @@ #include <sstream> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // StoreGate #include "StoreGate/StoreGateSvc.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.cxx index 4aadf20744b7990c271a9501c82067d23a2d8803..b60f1bc1cf329e249951758bce32fcbc8e7d6752 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.cxx @@ -256,7 +256,7 @@ StatusCode HepMcFloatWriterTool::write( const HepMC::GenEvent* evt ) /// Non-const methods: /////////////////////////////////////////////////////////////////// -void HepMcFloatWriterTool::setupBackend( Property& /*prop*/ ) +void HepMcFloatWriterTool::setupBackend( Gaudi::Details::PropertyBase& /*prop*/ ) { // defaults std::string protocol = "ascii"; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.h index b0a8202e28b6e92a240d689a4b05d5d9c5f12b6b..81bff0a2447c71b6e647287d70f2678f01a55e60 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcFloatWriterTool.h @@ -74,7 +74,7 @@ class HepMcFloatWriterTool : virtual public IIOHepMcTool, /** @brief Method to configure the back-end to write out the * @c HepMC::GenEvent. */ - void setupBackend( Property& ioBackendURL ); + void setupBackend( Gaudi::Details::PropertyBase& ioBackendURL ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.cxx index af6d67a97cf00c79ea6172652584bc4f71dd88a9..691f771c7b8580363b4b888848a33dea4dbf55d2 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.cxx @@ -143,7 +143,7 @@ StatusCode HepMcReaderTool::read( HepMC::GenEvent* evt ) /// Non-const methods: /////////////////////////////////////////////////////////////////// -void HepMcReaderTool::setupFrontend( Property& /*prop*/ ) +void HepMcReaderTool::setupFrontend( Gaudi::Details::PropertyBase& /*prop*/ ) { // defaults std::string protocol = "ascii"; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.h index 2b0393adf668b58d3e2a72c2f9c3d2e2583657fa..dc1a82e20fc603eaaf51ea198b1a5da4d59bbc09 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcReaderTool.h @@ -73,7 +73,7 @@ class HepMcReaderTool : virtual public IIOHepMcTool, /** @brief Method to configure the front-end to read out the * @c HepMC::GenEvent. */ - void setupFrontend( Property& ioFrontendURL ); + void setupFrontend( Gaudi::Details::PropertyBase& ioFrontendURL ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.cxx index fd07363a58ca37329613a43e62f94884c074f8b1..3320a816c0939a114c98bdbc5909499ad2d33bdb 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.cxx @@ -14,7 +14,7 @@ // FrameWork includes #include "GaudiKernel/ITHistSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/GaudiException.h" // ROOT includes @@ -176,7 +176,7 @@ StatusCode HepMcTupleWriterTool::write( const HepMC::GenEvent* evt ) /// Non-const methods: /////////////////////////////////////////////////////////////////// -void HepMcTupleWriterTool::setupBackend( Property& /*m_outputFileName*/ ) +void HepMcTupleWriterTool::setupBackend( Gaudi::Details::PropertyBase& /*m_outputFileName*/ ) { const bool createIf = false; IProperty * tSvc = 0; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.h index 2284a4ec2f79b82e15a5e61a597d7a0254552cb4..cb27cf1700ea88718091212064b811eef8adfc69 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcTupleWriterTool.h @@ -77,7 +77,7 @@ class HepMcTupleWriterTool : virtual public IIOHepMcTool, /** @brief Method to configure the back-end to write out the * @c HepMC::GenEvent. */ - void setupBackend( Property& outputFileName ); + void setupBackend( Gaudi::Details::PropertyBase& outputFileName ); /** * @brief book the tuple diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.cxx index 10e6ec02c9ada63095896b3378d3dbb4bc2e2674..685b361fac618637ea23b958c74a3e0769c1d078 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.cxx @@ -151,7 +151,7 @@ StatusCode HepMcWriterTool::write( const HepMC::GenEvent* evt ) /// Non-const methods: /////////////////////////////////////////////////////////////////// -void HepMcWriterTool::setupBackend( Property& /*prop*/ ) +void HepMcWriterTool::setupBackend( Gaudi::Details::PropertyBase& /*prop*/ ) { // defaults std::string protocol = "ascii"; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.h index e10e73810702e7d7a44370e4944351ddd6786612..1845fb6c6be3ccd748ad19b6a54e82cefdb41bb8 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/HepMcWriterTool.h @@ -73,7 +73,7 @@ class HepMcWriterTool : virtual public IIOHepMcTool, /** @brief Method to configure the back-end to write out the * @c HepMC::GenEvent. */ - void setupBackend( Property& ioBackendURL ); + void setupBackend( Gaudi::Details::PropertyBase& ioBackendURL ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.cxx index 4460e67d1d864b036b4f2a0249ae90e7457f08b4..2ce8ab169f4566307bb06d4e0a4e90bdb5e7420e 100644 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.cxx @@ -14,7 +14,7 @@ // FrameWork includes #include "GaudiKernel/ITHistSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/GaudiException.h" // ROOT includes @@ -176,7 +176,7 @@ StatusCode McAodTupleWriterTool::write( const TruthParticleContainer* mc ) /// Non-const methods: /////////////////////////////////////////////////////////////////// -void McAodTupleWriterTool::setupBackend( Property& /*m_outputFileName*/ ) +void McAodTupleWriterTool::setupBackend( Gaudi::Details::PropertyBase& /*m_outputFileName*/ ) { const bool createIf = false; IProperty * tSvc = 0; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.h index 3cc305c9df39095a16519868d8bacb261e36d095..bcbbe185f8f48f2a7f79b34fc47f946081ec9824 100644 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodTupleWriterTool.h @@ -77,7 +77,7 @@ class McAodTupleWriterTool : virtual public IIOMcAodTool, /** @brief Method to configure the back-end to write out the * @c HepMC::GenEvent. */ - void setupBackend( Property& outputFileName ); + void setupBackend( Gaudi::Details::PropertyBase& outputFileName ); /** * @brief book the tuple diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.cxx index 8fd5bbe7b65b5c7556ad689a961f3247ee1c0eac..fabe82b6e369923439486af96908948862687acc 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.cxx @@ -172,7 +172,7 @@ StatusCode McAodWriterTool::write( const TruthParticleContainer* mcParts ) /// Non-const methods: /////////////////////////////////////////////////////////////////// -void McAodWriterTool::setupBackend( Property& /*prop*/ ) +void McAodWriterTool::setupBackend( Gaudi::Details::PropertyBase& /*prop*/ ) { // defaults std::string protocol = "ascii"; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.h index af9f9af46c0fd55a1bbddce1a2ca940af7d9eeaf..90ca9dae90a820a9f41f72a2a95e4b2b90f3bec2 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McAodWriterTool.h @@ -73,7 +73,7 @@ class McAodWriterTool : virtual public IIOMcAodTool, /** @brief Method to configure the back-end to write out the * @c TruthParticleContainer. */ - void setupBackend( Property& ioBackendURL ); + void setupBackend( Gaudi::Details::PropertyBase& ioBackendURL ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx index 73c8712743cbf7d83ec357c160e71a1a6e1bd107..95aaa55589373a51ab76ad771dd2bc570bf15507 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx @@ -13,7 +13,7 @@ #include <algorithm> // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // HepMC includes #include "AtlasHepMC/GenEvent.h" @@ -450,7 +450,7 @@ bool McVtxFilterTool::keepParticle( const VtxType::Flag vtxType, // Non-const methods: /////////////////////////////////////////////////////////////////// -void McVtxFilterTool::setupFilters( Property& /*decayPatterns*/ ) +void McVtxFilterTool::setupFilters( Gaudi::Details::PropertyBase& /*decayPatterns*/ ) { m_filters.clear(); m_counter.clear(); diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.h index 62da553336783a43ff592e71f0ef4f5fe4840987..723d0523320839b8705c7693041521436f0ff889 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.h @@ -51,7 +51,7 @@ // HepMC / CLHEP includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaBaseComps/AthAlgTool.h" @@ -163,7 +163,7 @@ class McVtxFilterTool : virtual public IMcVtxFilterTool, * We ensure the consistency between those 2 entities by defining a callback * function (@setupFilters) to perform the job. */ - void setupFilters( Property& decayPatterns ); + void setupFilters( Gaudi::Details::PropertyBase& decayPatterns ); /////////////////////////////////////////////////////////////////// // Protected data: diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx index 3d68a1119fd7620a7efeac2560e868108fb0bebd..d08ec274bd00a035a9bfa3924e727aca7541cee2 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx @@ -12,7 +12,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TruthHelper/IsGenStable.h" #include "TruthHelper/IsGenInteracting.h" diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.cxx index 9d2a377c934ffbcda37dca57a9d0fa8cc63950f1..53a362fc8814d3abb9d62034f80ca4fbf81b0828 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.cxx @@ -309,13 +309,13 @@ TruthIsolationTool::computeIso( const GenParticles_t& particles, } void -TruthIsolationTool::setupTruthEtIsolationsPrefix( Property& /*truthEtIsolationsPrefix*/ ) +TruthIsolationTool::setupTruthEtIsolationsPrefix( Gaudi::Details::PropertyBase& /*truthEtIsolationsPrefix*/ ) { // no-op for now } void -TruthIsolationTool::setupMcEventsOutput( Property& /*mcEventsOutputName*/ ) +TruthIsolationTool::setupMcEventsOutput( Gaudi::Details::PropertyBase& /*mcEventsOutputName*/ ) { // no-op for now } diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.h index c8973ca0370791efacc6a61ba4713d3c355f2040..85286d003d897f1a3c857f2d63125dc07f568977 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.h +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthIsolationTool.h @@ -101,12 +101,12 @@ class TruthIsolationTool : virtual public ITruthIsolationTool, /** @brief Callback method to ensure consistency of the TruthEtIsolations * prefix key. */ - void setupTruthEtIsolationsPrefix( Property& truthEtIsolationsPrefix ); + void setupTruthEtIsolationsPrefix( Gaudi::Details::PropertyBase& truthEtIsolationsPrefix ); /** @brief Callback method to ensure consistency of output McEventCollection * key. */ - void setupMcEventsOutput( Property& mcEventsOutputName ); + void setupMcEventsOutput( Gaudi::Details::PropertyBase& mcEventsOutputName ); /////////////////////////////////////////////////////////////////// // Private data: diff --git a/Projects/AnalysisBase/package_filters.txt b/Projects/AnalysisBase/package_filters.txt index 621f0ec76bb40a5bdb4c867fbfedfc98da87bb0e..38b5904e54252b60343e01862b79e3c5d599b9cc 100644 --- a/Projects/AnalysisBase/package_filters.txt +++ b/Projects/AnalysisBase/package_filters.txt @@ -49,7 +49,7 @@ - Event/xAOD/.*Cnv + Event/xAOD/.* #+ External/AtlasPyFwdBwdPorts -#+ ForwardDetectors/ZDC/ZdcAnalysis ++ ForwardDetectors/ZDC/ZdcAnalysis #+ ForwardDetectors/ZDC/ZdcNtuple + Generators/TruthUtils + InnerDetector/InDetRecTools/InDetTrackSelectionTool diff --git a/Projects/AthGeneration/externals.txt b/Projects/AthGeneration/externals.txt index f132bae02e50268d4db8afa1413149e0dc472d1d..283a2a39f42e9e42f72a57fce7581988e9e18a1f 100644 --- a/Projects/AthGeneration/externals.txt +++ b/Projects/AthGeneration/externals.txt @@ -9,4 +9,4 @@ AthGenerationExternalsVersion = 2.0.72 # The version of atlas/Gaudi to use: -GaudiVersion = v34r0.000 +GaudiVersion = v34r0.003 diff --git a/Projects/AthSimulation/externals.txt b/Projects/AthSimulation/externals.txt index 242f63bc4786e4b81e54ecad45da140d717eba6e..6b7106844207668f7378bd0e9441d8258cb50a36 100644 --- a/Projects/AthSimulation/externals.txt +++ b/Projects/AthSimulation/externals.txt @@ -9,4 +9,4 @@ AthSimulationExternalsVersion = 2.0.72 # The version of atlas/Gaudi to use: -GaudiVersion = v34r0.000 +GaudiVersion = v34r0.003 diff --git a/Projects/Athena/externals.txt b/Projects/Athena/externals.txt index eb81e7685bde6621a4c4f9c512a91330fbb87bd6..e1b1715350052a42e4aff75863dd9a7344f585b5 100644 --- a/Projects/Athena/externals.txt +++ b/Projects/Athena/externals.txt @@ -9,4 +9,4 @@ AthenaExternalsVersion = 2.0.72 # The version of atlas/Gaudi to use: -GaudiVersion = v34r0.000 +GaudiVersion = v34r0.003 diff --git a/Reconstruction/HeavyIonRec/HIGlobal/HIGlobal/HIEventShapeMaker.h b/Reconstruction/HeavyIonRec/HIGlobal/HIGlobal/HIEventShapeMaker.h index 11e48900b44399371047d6ed1549af7ce843a543..6357c70b4d0a3798066a527e3a74f4ca7788fe5f 100644 --- a/Reconstruction/HeavyIonRec/HIGlobal/HIGlobal/HIEventShapeMaker.h +++ b/Reconstruction/HeavyIonRec/HIGlobal/HIGlobal/HIEventShapeMaker.h @@ -13,7 +13,7 @@ #include <string> #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "IHIEventShapeFiller.h" #include "HIEventUtils/HIEventShapeSummaryTool.h" diff --git a/Reconstruction/HeavyIonRec/HIJetRec/share/HIegamma_jobOptions.py b/Reconstruction/HeavyIonRec/HIJetRec/share/HIegamma_jobOptions.py index a9743a824d95b6eae67e0c1a33af9c5863007634..3702c9100149d593c6ca11067c23697673466f7d 100644 --- a/Reconstruction/HeavyIonRec/HIJetRec/share/HIegamma_jobOptions.py +++ b/Reconstruction/HeavyIonRec/HIJetRec/share/HIegamma_jobOptions.py @@ -9,7 +9,7 @@ import PerfMonComps.DomainsRegistry as pdr pdr.flag_domain('calo') from CaloRec.CaloRecFlags import jobproperties -from AthenaCommon.Resilience import treatException +from AthenaCommon.Resilience import treatException from RecExConfig.RecFlags import rec from AthenaCommon.GlobalFlags import globalflags from AthenaCommon.DetFlags import DetFlags @@ -26,25 +26,24 @@ jobproperties.egammaRecFlags.Enabled=True jobproperties.egammaRecFlags.cellContainerName='SubtractedCells' jobproperties.egammaRecFlags.doEgammaCaloSeeded=True jobproperties.egammaRecFlags.doEgammaForwardSeeded=False -jobproperties.egammaRecFlags.doTopoCaloSeeded=False -if DetFlags.haveRIO.Calo_on() : +if DetFlags.haveRIO.Calo_on() : #combined clusters - if jobproperties.CaloRecFlags.doCaloCluster() : + if jobproperties.CaloRecFlags.doCaloCluster() : try: from CaloRec.CaloClusterSWCmbGetter import CaloClusterSWCmbGetter CaloClusterSWCmbGetter() - except Exception: + except Exception: treatException("Problem with CaloSWCmbCluster. Switched off.") - jobproperties.CaloRecFlags.doCaloCluster=False + jobproperties.CaloRecFlags.doCaloCluster=False #EM clusters if jobproperties.CaloRecFlags.doEmCluster() : try: include( "LArClusterRec/LArCluster_jobOptions.py" ) - except Exception: + except Exception: treatException("Problem with LArCluster. Switched off.") - jobproperties.CaloRecFlags.doEmCluster=False + jobproperties.CaloRecFlags.doEmCluster=False # write digits of EM clusters - if jobproperties.CaloRecFlags.doEMDigits() and globalflags.DataSource()=='data' and globalflags.InputFormat() == 'bytestream': + if jobproperties.CaloRecFlags.doEMDigits() and globalflags.DataSource()=='data' and globalflags.InputFormat() == 'bytestream': try: include ("LArClusterRec/LArDigits_fromEMCluster_jobptions.py") except Exception: treatException("Problem with LArDigitsFromEMClust. Switched off.") @@ -59,7 +58,7 @@ if DetFlags.haveRIO.Calo_on() : #EM Topoclusters if jobproperties.CaloRecFlags.doCaloEMTopoCluster() : - try: include( "CaloRec/EMTopoCluster_jobOptions.py" ) + try: include( "CaloRec/EMTopoCluster_jobOptions.py" ) except Exception: treatException("Problem with EMTopoCluster. Switched off") jobproperties.CaloRecFlags.doCaloTopoCluster=False diff --git a/Reconstruction/HeavyIonRec/HIRecExample/share/heavyion_flagsESD.py b/Reconstruction/HeavyIonRec/HIRecExample/share/heavyion_flagsESD.py index 787087fc25861d5cf88c07d4c2a96ec67a530bd1..80884031969a6c851aa26f667663ce8e0335c101 100755 --- a/Reconstruction/HeavyIonRec/HIRecExample/share/heavyion_flagsESD.py +++ b/Reconstruction/HeavyIonRec/HIRecExample/share/heavyion_flagsESD.py @@ -18,7 +18,7 @@ if not jobproperties.HIRecExampleFlags.ppMode : # AO general rec.Commissioning.set_Value_and_Lock(True) rec.doRestrictedESD.set_Value_and_Lock(False) - + # AO (standard JetRec turned off) from JetRec.JetRecFlags import jetFlags jetFlags.Enabled = False @@ -43,7 +43,7 @@ if not jobproperties.HIRecExampleFlags.ppMode : if ( globalflags.DataSource == "geant4" ): from CaloRec.CaloCellFlags import jobproperties jobproperties.CaloCellFlags.doLArCellEmMisCalib = False - + if jobproperties.HIRecExampleFlags.doHIJetRec() and \ jobproperties.HIRecExampleFlags.doHIegamma() : # 2015 fix: cell subtraction @@ -57,28 +57,23 @@ if not jobproperties.HIRecExampleFlags.ppMode : #turning off TopoClusters #jobproperties.CaloRecFlags.doCaloTopoCluster = False #jobproperties.CaloRecFlags.doCaloEMTopoCluster = False - + rec.doEgamma=False from egammaRec.egammaRecFlags import jobproperties - # turning off TopoCaloSeeded - jobproperties.egammaRecFlags.doTopoCaloSeeded = False - # turning off not used softe - #tmp 112014 - #jobproperties.egammaRecFlags.doEgammaTrackSeeded = False rec.doTau = False #from JetRec.JetRecFlags import jobproperties #jobproperties.JetRecFlags.doBTagging = False #from tauRec.tauRecFlags import jobproperties - #jobproperties.tauRecFlags.doTauRec = False + #jobproperties.tauRecFlags.doTauRec = False # AO (this turns off all MissingET and EFlow) rec.doJetMissingETTag = False recAlgs.doMissingET = False recAlgs.doMissingETSig = False recAlgs.doEFlow = False - recAlgs.doEFlowJet = False + recAlgs.doEFlowJet = False recAlgs.doMuGirl = False @@ -97,5 +92,5 @@ if not jobproperties.HIRecExampleFlags.ppMode : InDetNewTrackingCuts = ConfiguredNewTrackingCuts("HeavyIon") InDetNewTrackingCuts._ConfiguredNewTrackingCuts__minPT = ptCutVal * Units.GeV InDetNewTrackingCuts.printInfo() - + ############################################################################ diff --git a/Reconstruction/MissingETGoodness/src/JetGoodiesFiller.cxx b/Reconstruction/MissingETGoodness/src/JetGoodiesFiller.cxx index a1015e1b1fa5fc1c1f96fb0f6633384ee0b2b362..4eaf7bee42331a7b614c8991186f228c1b0237d2 100644 --- a/Reconstruction/MissingETGoodness/src/JetGoodiesFiller.cxx +++ b/Reconstruction/MissingETGoodness/src/JetGoodiesFiller.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "MissingETGoodness/JetGoodiesFiller.h" #include "MissingETGoodness/MissingETUtils.h" diff --git a/Reconstruction/MissingETGoodness/src/MuonGoodiesFiller.cxx b/Reconstruction/MissingETGoodness/src/MuonGoodiesFiller.cxx index 69fe8b5d178b37b123f89daeeaecb8e515114c38..ac1fdcf45b23540cfe4c52ddfc2b0a294f4edc02 100644 --- a/Reconstruction/MissingETGoodness/src/MuonGoodiesFiller.cxx +++ b/Reconstruction/MissingETGoodness/src/MuonGoodiesFiller.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "muonEvent/MuonContainer.h" #include "MissingETGoodness/MuonGoodiesFiller.h" #include "MissingETGoodness/MuonSpShowerHelper.h" diff --git a/Reconstruction/MissingETPerformance/src/BasicPlotsTool.cxx b/Reconstruction/MissingETPerformance/src/BasicPlotsTool.cxx index 901a4b1ddcb3f0f383be7016d9fbd87887c81a9a..8465c8bac77533f94530d65dd8d1e52f6463c099 100755 --- a/Reconstruction/MissingETPerformance/src/BasicPlotsTool.cxx +++ b/Reconstruction/MissingETPerformance/src/BasicPlotsTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODEventInfo/EventInfo.h" diff --git a/Reconstruction/MissingETPerformance/src/ContainerComparatorTool.cxx b/Reconstruction/MissingETPerformance/src/ContainerComparatorTool.cxx index 6c18ac2cb4e234124004aa860bc3f13c27e2b2af..bf3fad81fe650c88db04fa08fd72a5565356aa46 100755 --- a/Reconstruction/MissingETPerformance/src/ContainerComparatorTool.cxx +++ b/Reconstruction/MissingETPerformance/src/ContainerComparatorTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //#include "CLHEP/Units/PhysicalConstants.h" diff --git a/Reconstruction/MissingETPerformance/src/EtaRingsTool.cxx b/Reconstruction/MissingETPerformance/src/EtaRingsTool.cxx index f2e746e87045a2f94e65442c38c7d2ce945360d7..69a255d86c30fcfa447f54faddbf0d5866692019 100755 --- a/Reconstruction/MissingETPerformance/src/EtaRingsTool.cxx +++ b/Reconstruction/MissingETPerformance/src/EtaRingsTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //#include "CLHEP/Units/PhysicalConstants.h" diff --git a/Reconstruction/MissingETPerformance/src/FakeMissingETTool.cxx b/Reconstruction/MissingETPerformance/src/FakeMissingETTool.cxx index e5e67680f7af504161c6b4580fc9ac72f1e6d81b..1efeecece8fe3635f248e6eb7dbee3d6eefcfa51 100755 --- a/Reconstruction/MissingETPerformance/src/FakeMissingETTool.cxx +++ b/Reconstruction/MissingETPerformance/src/FakeMissingETTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //#include "CLHEP/Units/PhysicalConstants.h" #include "TLorentzVector.h" diff --git a/Reconstruction/MissingETPerformance/src/LinearityTool.cxx b/Reconstruction/MissingETPerformance/src/LinearityTool.cxx index f76fecc13b3b7c80f66325c0a9009e321e2bb585..448238c8f7dda4a444f573eac46538eff1a864b7 100755 --- a/Reconstruction/MissingETPerformance/src/LinearityTool.cxx +++ b/Reconstruction/MissingETPerformance/src/LinearityTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //#include "CLHEP/Units/PhysicalConstants.h" diff --git a/Reconstruction/MissingETPerformance/src/MissingETCompositionTool.cxx b/Reconstruction/MissingETPerformance/src/MissingETCompositionTool.cxx index 373a41192f288f520e04c20cd50a3a218469fc5c..c9a8276fdc9726467af46e98815062e5c90af655 100755 --- a/Reconstruction/MissingETPerformance/src/MissingETCompositionTool.cxx +++ b/Reconstruction/MissingETPerformance/src/MissingETCompositionTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODEventInfo/EventInfo.h" diff --git a/Reconstruction/MissingETPerformance/src/MissingETScaleTool.cxx b/Reconstruction/MissingETPerformance/src/MissingETScaleTool.cxx index 46e1c3676227bc7b910253af3746b09e05e650d6..d80947c5e5ded89e9420d26f5fc26714ea0d9f9c 100755 --- a/Reconstruction/MissingETPerformance/src/MissingETScaleTool.cxx +++ b/Reconstruction/MissingETPerformance/src/MissingETScaleTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "egammaEvent/ElectronContainer.h" diff --git a/Reconstruction/MissingETPerformance/src/MuonTool.cxx b/Reconstruction/MissingETPerformance/src/MuonTool.cxx index 1865325d41fd848aa9548d6ecefe2f70cc82a9be..6746f89c0283e4f28713016b8d1809fb88d8d8f7 100644 --- a/Reconstruction/MissingETPerformance/src/MuonTool.cxx +++ b/Reconstruction/MissingETPerformance/src/MuonTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "MissingETPerformance/MuonTool.h" diff --git a/Reconstruction/MissingETPerformance/src/ResolutionTool.cxx b/Reconstruction/MissingETPerformance/src/ResolutionTool.cxx index 323bcd3e4ff3beb9eca0d3c11c709c0c8e0623be..46256b23156655922232540f32586564909a1e7f 100755 --- a/Reconstruction/MissingETPerformance/src/ResolutionTool.cxx +++ b/Reconstruction/MissingETPerformance/src/ResolutionTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/PhysicalConstants.h" #include "AthenaKernel/Units.h" diff --git a/Reconstruction/MissingETPerformance/src/ZMuMuTool.cxx b/Reconstruction/MissingETPerformance/src/ZMuMuTool.cxx index cc8b08e035274f4bd9ee506a7f5e1337f40498f5..98f62cf6c9859dda31bf8e5ff5c46d829ca5e55a 100755 --- a/Reconstruction/MissingETPerformance/src/ZMuMuTool.cxx +++ b/Reconstruction/MissingETPerformance/src/ZMuMuTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //#include "CLHEP/Units/PhysicalConstants.h" #include <vector> diff --git a/Reconstruction/MissingETPerformance/src/ZeeTool.cxx b/Reconstruction/MissingETPerformance/src/ZeeTool.cxx index 3202e7f8aa35e38fb677011c27b92e745bea6c5a..e589b705b016476af5d900bd77643ba5b127b7a9 100755 --- a/Reconstruction/MissingETPerformance/src/ZeeTool.cxx +++ b/Reconstruction/MissingETPerformance/src/ZeeTool.cxx @@ -4,7 +4,7 @@ #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/GaudiException.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "egammaEvent/ElectronContainer.h" diff --git a/Reconstruction/MuonIdentification/MuonCombinedConfig/python/MuonCombinedRecToolsConfig.py b/Reconstruction/MuonIdentification/MuonCombinedConfig/python/MuonCombinedRecToolsConfig.py index bee7b31c20d38ded5859b283cbd0a1a96711305d..1f1f7d6051539c7cb6145b1805559d8f937b44e8 100644 --- a/Reconstruction/MuonIdentification/MuonCombinedConfig/python/MuonCombinedRecToolsConfig.py +++ b/Reconstruction/MuonIdentification/MuonCombinedConfig/python/MuonCombinedRecToolsConfig.py @@ -816,6 +816,16 @@ def CaloMuonLikelihoodToolCfg(flags, name='CaloMuonLikelihoodTool', **kwargs ): result.setPrivateTools(tool) return result +def CaloMuonScoreToolCfg(flags, name='CaloMuonScoreTool', **kwargs ): + from TrackToCalo.TrackToCaloConfig import ParticleCaloCellAssociationToolCfg + result = ParticleCaloCellAssociationToolCfg(flags) + kwargs.setdefault("ParticleCaloCellAssociationTool", result.popPrivateTools()) + caloMuonScoreSvc = CompFactory.CaloMuonScoreONNXRuntimeSvc(name="CaloMuonScoreONNXRuntimeSvc") + result.addService(caloMuonScoreSvc) + tool = CompFactory.CaloMuonScoreTool(name, **kwargs ) + result.setPrivateTools(tool) + return result + def MuonCaloTagToolCfg(flags, name='MuonCaloTagTool', **kwargs ): result = ComponentAccumulator() kwargs.setdefault("CaloMuonTagLoose", CompFactory.CaloMuonTag(name = "CaloMuonTagLoose", TagMode="Loose") ) @@ -827,6 +837,10 @@ def MuonCaloTagToolCfg(flags, name='MuonCaloTagTool', **kwargs ): kwargs.setdefault("CaloMuonLikelihoodTool", acc.popPrivateTools() ) result.addPublicTool(kwargs['CaloMuonLikelihoodTool']) + acc = CaloMuonScoreToolCfg(flags) + kwargs.setdefault("CaloMuonScoreTool", acc.popPrivateTools() ) + result.addPublicTool(kwargs['CaloMuonScoreTool']) + result.merge(acc) acc = TrackDepositInCaloToolCfg(flags) trackDepositInCaloTool = acc.popPrivateTools() @@ -838,7 +852,7 @@ def MuonCaloTagToolCfg(flags, name='MuonCaloTagTool', **kwargs ): result.addPublicTool(calotrkmuidalgtrackselectortool) kwargs.setdefault("TrackSelectorTool", calotrkmuidalgtrackselectortool ) result.merge(acc) - kwargs.setdefault("doCaloLR", True ) + kwargs.setdefault("doCaloLR", True) tool = CompFactory.MuonCombined.MuonCaloTagTool(name, **kwargs ) result.setPrivateTools(tool) return result diff --git a/Reconstruction/RecAlgs/src/JobOptsDumperAlg.h b/Reconstruction/RecAlgs/src/JobOptsDumperAlg.h index 936e8d8bf3cf3e5056c2009d05620b20aad19246..bd86ae90aa58377501d9f30338c5de5dff27a686 100755 --- a/Reconstruction/RecAlgs/src/JobOptsDumperAlg.h +++ b/Reconstruction/RecAlgs/src/JobOptsDumperAlg.h @@ -7,7 +7,7 @@ #ifndef RECO_ALGS_JOBOPTIONSDUMPERALG_H #define RECO_ALGS_JOBOPTIONSDUMPERALG_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgorithm.h" #include <string> diff --git a/Reconstruction/RecoTools/CaloClusterMatching/src/CaloClusterMatchLinkAlg.cxx b/Reconstruction/RecoTools/CaloClusterMatching/src/CaloClusterMatchLinkAlg.cxx index d3b7c8b460f9a17284010b104d12c53b2effc898..d851ec7de07ea2b91236be13c69e6aee936ffc43 100644 --- a/Reconstruction/RecoTools/CaloClusterMatching/src/CaloClusterMatchLinkAlg.cxx +++ b/Reconstruction/RecoTools/CaloClusterMatching/src/CaloClusterMatchLinkAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CaloClusterMatching/TopoClusterMap.h" diff --git a/Reconstruction/egamma/egammaAlgs/src/components/egammaAlgs_entries.cxx b/Reconstruction/egamma/egammaAlgs/src/components/egammaAlgs_entries.cxx index d2e04127c24dd9ae7ad3e5a0fb67a278b647a732..a3a53e0094712eaac119bae0c327449954a28f42 100644 --- a/Reconstruction/egamma/egammaAlgs/src/components/egammaAlgs_entries.cxx +++ b/Reconstruction/egamma/egammaAlgs/src/components/egammaAlgs_entries.cxx @@ -1,4 +1,3 @@ -#include "../egammaBuilder.h" #include "../egammaRecBuilder.h" #include "../topoEgammaBuilder.h" #include "../egammaForwardBuilder.h" @@ -12,7 +11,6 @@ #include "../egammaSelectedTrackCopy.h" #include "../EMGSFCaloExtensionBuilder.h" -DECLARE_COMPONENT( egammaBuilder ) DECLARE_COMPONENT( egammaRecBuilder ) DECLARE_COMPONENT( topoEgammaBuilder ) DECLARE_COMPONENT( egammaForwardBuilder ) diff --git a/Reconstruction/egamma/egammaAlgs/src/egammaBuilder.cxx b/Reconstruction/egamma/egammaAlgs/src/egammaBuilder.cxx deleted file mode 100644 index b9d6a7bb435adf00d0e4e43316eee947007f3e1d..0000000000000000000000000000000000000000 --- a/Reconstruction/egamma/egammaAlgs/src/egammaBuilder.cxx +++ /dev/null @@ -1,567 +0,0 @@ -/* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - */ - -/******************************************************************** - -NAME: egammaBuilder.cxx -PACKAGE: offline/Reconstruction/egamma/egammaRec - -AUTHORS: H. Ma MW, SR , FD , JH , KT , CA, BL -CREATED: Nov 2000 -CHANGES: Mar 2014 (CA / BL) xAOD migration - -PURPOSE: Algorithm which makes a egammaObjectCollection. For each cluster -create a new egamma object and fills it then in the egammaContainer. -The algorithm takes care to make the objects containing shower -shape variables, leakage into had. calo, objects for track matching -and eventually conversions. - ********************************************************************/ - -// INCLUDE HEADER FILES: - -#include "egammaBuilder.h" - -#include "AthenaKernel/errorcheck.h" -#include "GaudiKernel/IToolSvc.h" - -#include "xAODCaloEvent/CaloClusterContainer.h" -#include "xAODTracking/TrackParticleContainer.h" -#include "xAODTracking/VertexContainer.h" -#include "xAODEgamma/EgammaContainer.h" -#include "xAODEgamma/ElectronContainer.h" -#include "xAODEgamma/PhotonContainer.h" -#include "xAODEgamma/ElectronAuxContainer.h" -#include "xAODEgamma/PhotonAuxContainer.h" -#include "egammaRecEvent/egammaRecContainer.h" - -#include "xAODEgamma/Electron.h" -#include "xAODEgamma/Photon.h" - - -#include "egammaUtils/egammaDuplicateRemoval.h" - -#include "CaloDetDescr/CaloDetDescrManager.h" -#include "CaloUtils/CaloClusterStoreHelper.h" -#include "CaloGeoHelpers/CaloPhiRange.h" - -#include "StoreGate/ReadHandle.h" -#include "StoreGate/WriteHandle.h" - -// INCLUDE GAUDI HEADER FILES: -#include <algorithm> -#include <cmath> - - -// END OF HEADER FILES INCLUDE - -///////////////////////////////////////////////////////////////// - -// CONSTRUCTOR: - -egammaBuilder::egammaBuilder(const std::string& name, - ISvcLocator* pSvcLocator): - AthAlgorithm(name, pSvcLocator), - m_timingProfile(nullptr) -{ -} - -// ================================================================ -egammaBuilder::~egammaBuilder() -{ - // - // destructor - // -} - -// ================================================================= -StatusCode egammaBuilder::initialize() -{ - // - // initialize method - // - - ATH_MSG_DEBUG("Initializing egammaBuilder"); - - // the keys - ATH_CHECK(m_electronOutputKey.initialize()); - ATH_CHECK(m_photonOutputKey.initialize()); - ATH_CHECK(m_inputClusterContainerKey.initialize()); - ATH_CHECK(m_topoSeededClusterContainerKey.initialize(m_doTopoSeededPhotons)); - ATH_CHECK(m_egammaRecContainerKey.initialize()); - - // retrieve track match builder - CHECK( RetrieveEMTrackMatchBuilder() ); - - // retrieve conversion builder - CHECK( RetrieveEMConversionBuilder() ); - - // retrieve EM Cluster Tool - ATH_CHECK( m_clusterTool.retrieve() ); - - // retrieve ambiguity tool - ATH_CHECK( m_ambiguityTool.retrieve() ); - - //retrieve shower builder - ATH_CHECK( m_ShowerTool.retrieve() ); - - ATH_MSG_INFO("Retrieving " << m_egammaTools.size() << " tools for egamma objects"); - ATH_CHECK( m_egammaTools.retrieve() ); - - ATH_MSG_INFO("Retrieving " << m_electronTools.size() << " tools for electrons"); - ATH_CHECK( m_electronTools.retrieve() ); - - ATH_MSG_INFO("Retrieving " << m_photonTools.size() << " tools for photons"); - ATH_CHECK( m_photonTools.retrieve() ); - - // retrieve timing profile - CHECK( service("ChronoStatSvc",m_timingProfile) ); - - ATH_MSG_INFO("Initialization completed successfully"); - return StatusCode::SUCCESS; -} - - -// ==================================================================== -StatusCode egammaBuilder::RetrieveEMTrackMatchBuilder(){ - // - // retrieve EMTrackMatchBuilder tool - // - if (!m_doTrackMatching) { - m_trackMatchBuilder.disable(); - return StatusCode::SUCCESS; - } - - if (m_trackMatchBuilder.empty()) { - ATH_MSG_ERROR("EMTrackMatchBuilder is empty, but track matching is enabled"); - return StatusCode::FAILURE; - } - - - if(m_trackMatchBuilder.retrieve().isFailure()) { - ATH_MSG_ERROR("Unable to retrieve "<<m_trackMatchBuilder); - return StatusCode::FAILURE; - } - ATH_MSG_DEBUG("Retrieved Tool "<<m_trackMatchBuilder); - - return StatusCode::SUCCESS; -} - -// ==================================================================== -StatusCode egammaBuilder::RetrieveEMConversionBuilder(){ - // - // retrieve EMConversionBuilder tool - // - - if (!m_doConversions) { - m_conversionBuilder.disable(); - return StatusCode::SUCCESS; - } - - if (m_conversionBuilder.empty()) { - ATH_MSG_ERROR("EMConversionBuilder is empty"); - return StatusCode::FAILURE; - } - - if(m_conversionBuilder.retrieve().isFailure()) { - ATH_MSG_ERROR("Unable to retrieve "<<m_conversionBuilder); - return StatusCode::FAILURE; - } - ATH_MSG_DEBUG("Retrieved Tool "<<m_conversionBuilder); - - return StatusCode::SUCCESS; -} - -// ==================================================================== -StatusCode egammaBuilder::finalize(){ - // - // finalize method - // - return StatusCode::SUCCESS; -} - -// ====================================================================== -StatusCode egammaBuilder::execute(){ - // - // athena execute method - // - - ATH_MSG_DEBUG("Executing egammaBuilder"); - - // This we can drop once the Alg becomes re-entrant - const EventContext& ctx = Gaudi::Hive::currentContext(); - - // Chrono name for each Tool - std::string chronoName; - - // create egammaRecContainer, ElectronContainer, PhotonContainer and register them - //Build the initial egamma Rec objects for all copied Topo Clusters - SG::WriteHandle<EgammaRecContainer> egammaRecs(m_egammaRecContainerKey); - ATH_CHECK(egammaRecs.record(std::make_unique<EgammaRecContainer>())); - - - SG::WriteHandle<xAOD::ElectronContainer> electronContainer(m_electronOutputKey); - ATH_CHECK(electronContainer.record(std::make_unique<xAOD::ElectronContainer>(), - std::make_unique<xAOD::ElectronAuxContainer>())); - - SG::WriteHandle<xAOD::PhotonContainer> photonContainer(m_photonOutputKey); - ATH_CHECK(photonContainer.record(std::make_unique<xAOD::PhotonContainer>(), - std::make_unique<xAOD::PhotonAuxContainer>())); - - // Loop over clusters and create egammaRec objects - ATH_MSG_DEBUG("Creating egammaRec objects"); - SG::ReadHandle<xAOD::CaloClusterContainer> clusters(m_inputClusterContainerKey); - // only for single-threaded running, remove later - if (!clusters.isValid()) { - ATH_MSG_FATAL("Could not retrieve cluster container " << m_inputClusterContainerKey.key()); - return StatusCode::FAILURE; - } - - for (unsigned int i = 0; i < clusters->size(); ++i) { - const ElementLink< xAOD::CaloClusterContainer > clusterLink( *clusters, i ); - const std::vector< ElementLink<xAOD::CaloClusterContainer> > elClusters {clusterLink}; - egammaRec *egRec = new egammaRec(); - egRec->setCaloClusters( elClusters ); - egammaRecs->push_back( egRec ); - } - - // - if (m_doTrackMatching){ - ATH_MSG_DEBUG("Running TrackMatchBuilder"); - // - std::string chronoName = this->name()+"_"+m_trackMatchBuilder->name(); - if(m_timingProfile) m_timingProfile->chronoStart(chronoName); - // - ATH_CHECK(m_trackMatchBuilder->executeRec(ctx,egammaRecs.ptr())); - // - if(m_timingProfile) m_timingProfile->chronoStop(chronoName); - } - // - if (m_doConversions){ - ATH_MSG_DEBUG("Running ConversionBuilder"); - // - chronoName = this->name()+"_"+m_conversionBuilder->name(); - if(m_timingProfile) m_timingProfile->chronoStart(chronoName); - for (auto egRec : *egammaRecs) { - if (m_conversionBuilder->executeRec(ctx,egRec).isFailure()){ - ATH_MSG_ERROR("Problem executing " << m_conversionBuilder); - return StatusCode::FAILURE; - } - } - if(m_timingProfile) m_timingProfile->chronoStop(chronoName); - } - //////////////////////////// - - // Run the ambiguity resolving to decide if we should create electron and/or photon - static const SG::AuxElement::Accessor<uint8_t> acc("ambiguityType"); - static const SG::AuxElement::Accessor<ElementLink<xAOD::EgammaContainer> > ELink ("ambiguityLink"); - ElementLink<xAOD::EgammaContainer> dummylink; - - for (const auto& egRec : *egammaRecs){ - - xAOD::AmbiguityTool::AmbiguityType type= xAOD::AmbiguityTool::unknown; - - ATH_MSG_DEBUG("Running AmbiguityTool"); - unsigned int author = m_ambiguityTool->ambiguityResolve(egRec->caloCluster(), - egRec->vertex(), - egRec->trackParticle(), - type); - - ATH_MSG_DEBUG("...author: " << author); - if (author == xAOD::EgammaParameters::AuthorUnknown) { - continue; - } - //Electron - if (author == xAOD::EgammaParameters::AuthorElectron){ - ATH_MSG_DEBUG("getElectron"); - if ( !getElectron(egRec, electronContainer.ptr(), author) ){ - return StatusCode::FAILURE; - } - acc(*(electronContainer->back())) = type; - ELink(*(electronContainer->back()))=dummylink; - } - //Photon - if (author == xAOD::EgammaParameters::AuthorPhoton ){ - ATH_MSG_DEBUG("getPhoton"); - if ( !getPhoton(egRec, photonContainer.ptr(), author) ){ - return StatusCode::FAILURE; - } - acc(*(photonContainer->back())) = type; - ELink(*(photonContainer->back()))=dummylink; - } - //Both Electron and Photon - if(author == xAOD::EgammaParameters::AuthorAmbiguous){ - - ATH_MSG_DEBUG("get Electron and Photon"); - - if ( !getPhoton(egRec, photonContainer.ptr(), author) || - !getElectron(egRec, electronContainer.ptr(), author)){ - return StatusCode::FAILURE; - } - - acc(*(electronContainer->back())) = type; - size_t photonIndex=photonContainer->size()-1; - ElementLink<xAOD::EgammaContainer> linktoPhoton (*photonContainer,photonIndex); - ELink(*(electronContainer->back()))=linktoPhoton; - - acc(*(photonContainer->back())) = type; - size_t electronIndex=electronContainer->size()-1; - ElementLink<xAOD::EgammaContainer> linktoElectron (*electronContainer,electronIndex); - ELink(*(photonContainer->back()))=linktoElectron; - } - } - - // Add topo-seeded clusters to the photon collection - if (m_doTopoSeededPhotons) { - CHECK( addTopoSeededPhotons(photonContainer.ptr(), clusters.ptr()) ); - } - - const CaloDetDescrManager* calodetdescrmgr = nullptr; - ATH_CHECK( detStore()->retrieve(calodetdescrmgr,"CaloMgr") ); - // Call tools - - /* - * Shower Shapes - */ - if (electronContainer.ptr()) { - for (xAOD::Electron* electron : *electronContainer) { - ATH_CHECK(m_ShowerTool->execute(ctx, *calodetdescrmgr, electron)); - } - } - if (photonContainer.ptr()) { - for (xAOD::Photon* photon : *photonContainer) { - ATH_CHECK(m_ShowerTool->execute(ctx, *calodetdescrmgr, photon)); - } - } - - // First the final cluster/calibration - ATH_MSG_DEBUG("Executing : " << m_clusterTool); - if ( m_clusterTool->contExecute(ctx, *calodetdescrmgr ,electronContainer.ptr(), photonContainer.ptr()).isFailure() ){ - ATH_MSG_ERROR("Problem executing the " << m_clusterTool<<" tool"); - return StatusCode::FAILURE; - } - - - for (auto& tool : m_egammaTools) - { - CHECK( CallTool(ctx, tool, electronContainer.ptr(), photonContainer.ptr()) ); - } - - for (auto& tool : m_electronTools) - { - CHECK( CallTool(ctx, tool, electronContainer.ptr(), nullptr) ); - } - - for (auto& tool : m_photonTools) - { - CHECK( CallTool(ctx, tool, nullptr, photonContainer.ptr()) ); - } - ATH_MSG_DEBUG("execute completed successfully"); - - return StatusCode::SUCCESS; -} - -// ===================================================== -StatusCode egammaBuilder::CallTool(const EventContext& ctx, - ToolHandle<IegammaBaseTool>& tool, - xAOD::ElectronContainer *electronContainer /* = 0*/, - xAOD::PhotonContainer *photonContainer /* = 0*/) -{ - - std::string chronoName = this->name()+"_"+tool->name(); - if(m_timingProfile) m_timingProfile->chronoStart(chronoName); - - if (electronContainer) - { - ATH_MSG_DEBUG("Executing tool on electrons: " << tool ); - for (const auto& electron : *electronContainer) - { - if (tool->execute(ctx, electron).isFailure() ) - { - ATH_MSG_ERROR("Problem executing tool on electrons: " << tool); - return StatusCode::FAILURE; - } - } - } - - if (photonContainer) - { - ATH_MSG_DEBUG("Executing tool on photons: " << tool ); - for (const auto& photon : *photonContainer) - { - if (tool->execute(ctx, photon).isFailure() ) - { - ATH_MSG_ERROR("Problem executing tool on photons: " << tool); - return StatusCode::FAILURE; - } - } - } - - if(m_timingProfile) m_timingProfile->chronoStop(chronoName); - return StatusCode::SUCCESS; -} -// ===================================================== -bool egammaBuilder::getElectron(const egammaRec* egRec, - xAOD::ElectronContainer *electronContainer, - unsigned int author) -{ - if (!egRec || !electronContainer) return false; - - xAOD::Electron *electron = new xAOD::Electron(); - electronContainer->push_back( electron ); - electron->setAuthor( author ); - - std::vector< ElementLink< xAOD::CaloClusterContainer > > clusterLinks; - for (unsigned int i = 0 ; i < egRec->getNumberOfClusters(); ++i){ - clusterLinks.push_back( egRec->caloClusterElementLink(i) ); - } - electron->setCaloClusterLinks( clusterLinks ); - - std::vector< ElementLink< xAOD::TrackParticleContainer > > trackLinks; - for (unsigned int i = 0 ; i < egRec->getNumberOfTrackParticles(); ++i){ - trackLinks.push_back( egRec->trackParticleElementLink(i) ); - } - electron->setTrackParticleLinks( trackLinks ); - - electron->setCharge(electron->trackParticle()->charge()); - - //Set DeltaEta, DeltaPhi , DeltaPhiRescaled - std::array<double,4> deltaEta = egRec->deltaEta(); - std::array<double,4> deltaPhi = egRec->deltaPhi(); - std::array<double,4> deltaPhiRescaled = egRec->deltaPhiRescaled(); - - electron->setTrackCaloMatchValue(static_cast<float>(deltaEta[0]),xAOD::EgammaParameters::deltaEta0); - electron->setTrackCaloMatchValue(static_cast<float> (deltaPhi[0]),xAOD::EgammaParameters::deltaPhi0 ); - electron->setTrackCaloMatchValue(static_cast<float>(deltaPhiRescaled[0]), xAOD::EgammaParameters::deltaPhiRescaled0); - - electron->setTrackCaloMatchValue(static_cast<float>(deltaEta[1]), xAOD::EgammaParameters::deltaEta1); - electron->setTrackCaloMatchValue(static_cast<float> (deltaPhi[1]),xAOD::EgammaParameters::deltaPhi1 ); - electron->setTrackCaloMatchValue(static_cast<float>(deltaPhiRescaled[1]), xAOD::EgammaParameters::deltaPhiRescaled1); - - electron->setTrackCaloMatchValue(static_cast<float>(deltaEta[2]), xAOD::EgammaParameters::deltaEta2); - electron->setTrackCaloMatchValue(static_cast<float> (deltaPhi[2]),xAOD::EgammaParameters::deltaPhi2 ); - electron->setTrackCaloMatchValue(static_cast<float>(deltaPhiRescaled[2]), xAOD::EgammaParameters::deltaPhiRescaled2); - - electron->setTrackCaloMatchValue(static_cast<float>(deltaEta[3]), xAOD::EgammaParameters::deltaEta3); - electron->setTrackCaloMatchValue(static_cast<float> (deltaPhi[3]),xAOD::EgammaParameters::deltaPhi3 ); - electron->setTrackCaloMatchValue(static_cast<float>(deltaPhiRescaled[3]), xAOD::EgammaParameters::deltaPhiRescaled3); - - - float deltaPhiLast = static_cast<float>(egRec->deltaPhiLast ()); - electron->setTrackCaloMatchValue(deltaPhiLast,xAOD::EgammaParameters::deltaPhiFromLastMeasurement ); - - return true; -} - -// ===================================================== -bool egammaBuilder::getPhoton(const egammaRec* egRec, - xAOD::PhotonContainer *photonContainer, - unsigned int author) -{ - if (!egRec || !photonContainer) return false; - - xAOD::Photon *photon = new xAOD::Photon(); - photonContainer->push_back( photon ); - photon->setAuthor( author ); - - // Transfer the links to the clusters - std::vector< ElementLink< xAOD::CaloClusterContainer > > clusterLinks; - for (unsigned int i = 0 ; i < egRec->getNumberOfClusters(); ++i) - clusterLinks.push_back( egRec->caloClusterElementLink(i) ); - photon->setCaloClusterLinks( clusterLinks ); - - // Transfer the links to the vertices - std::vector< ElementLink< xAOD::VertexContainer > > vertexLinks; - for (unsigned int i = 0 ; i < egRec->getNumberOfVertices(); ++i) - vertexLinks.push_back( egRec->vertexElementLink(i) ); - photon->setVertexLinks( vertexLinks ); - - // Transfer deltaEta/Phi info - float deltaEta = egRec->deltaEtaVtx(); - float deltaPhi = egRec->deltaPhiVtx(); - if (!photon->setVertexCaloMatchValue( deltaEta, - xAOD::EgammaParameters::convMatchDeltaEta1) ) - { - ATH_MSG_WARNING("Could not transfer deltaEta to photon"); - return false; - } - - if (!photon->setVertexCaloMatchValue( deltaPhi, - xAOD::EgammaParameters::convMatchDeltaPhi1) ) - { - ATH_MSG_WARNING("Could not transfer deltaPhi to photon"); - return false; - } - - return true; -} - -// ===================================================== -StatusCode egammaBuilder::addTopoSeededPhotons(xAOD::PhotonContainer *photonContainer, - const xAOD::CaloClusterContainer *clusters) -{ - // Retrieve the cluster container - SG::ReadHandle<xAOD::CaloClusterContainer> topoSeededClusters(m_topoSeededClusterContainerKey); - // only for single-threaded running, remove later - if (!topoSeededClusters.isValid()) { - ATH_MSG_FATAL("Could not retrieve toposeeded cluster container " << m_topoSeededClusterContainerKey.key()); - return StatusCode::FAILURE; - } - - ATH_MSG_DEBUG("Number of photons (before topo-clusters): " << photonContainer->size() ); - ATH_MSG_DEBUG("Number of topo-seeded clusters: " << topoSeededClusters->size() ); - - // Create photon objects for the clusters that pass minimum Et and eta requirements and - // do not overlap with egamma clusters - typedef ElementLink<xAOD::CaloClusterContainer> ClusterLink_t; - - std::vector<const xAOD::CaloCluster* > candidateTopoClusters; - for (const auto topoCluster : *topoSeededClusters){ - if (topoCluster->et() < m_minEtTopo || - topoCluster->et() > m_maxEtTopo || - fabs(topoCluster->etaBE(2)) > 2.47 || - clustersOverlap(topoCluster, clusters)) - continue; - - candidateTopoClusters.push_back(topoCluster); - } - - std::vector<const xAOD::CaloCluster* > finalTopoClusters= egammaDuplicateRemoval::getClusterDuplicateRemoval(candidateTopoClusters); - - for (const auto topoCluster : finalTopoClusters){ - ATH_MSG_DEBUG("Creating topo-seeded photon, Et: " << topoCluster->et() << - " eta: " << topoCluster->eta() << " phi: " << topoCluster->phi()); - - xAOD::Photon *photon = new xAOD::Photon(); - photonContainer->push_back(photon); - photon->setAuthor( xAOD::EgammaParameters::AuthorCaloTopo35 ); - - ClusterLink_t link(topoCluster, *topoSeededClusters ); - photon->setCaloClusterLinks( std::vector< ClusterLink_t>{ link } ); - // - //Add the dummy to all new photons created here - static const SG::AuxElement::Accessor<ElementLink<xAOD::EgammaContainer> > ELink ("ambiguityLink"); - ElementLink<xAOD::EgammaContainer> dummylink; - ELink(*photon)=dummylink; - } - ATH_MSG_DEBUG("Number of photons (after topo-clusters): " << photonContainer->size() ); - - return StatusCode::SUCCESS; -} - -// ===================================================== -bool egammaBuilder::clustersOverlap(const xAOD::CaloCluster *refCluster, - const xAOD::CaloClusterContainer *clusters) -{ - if (!refCluster || !clusters) return false; - - for (const auto cluster: *clusters) - { - if (fabs(refCluster->eta() - cluster->eta()) < m_minDeltaEta && - fabs(CaloPhiRange::diff(refCluster->phi(), cluster->phi())) < m_minDeltaPhi) - return true; - } - return false; -} - -// LocalWords: newClus egc getCellLinks diff --git a/Reconstruction/egamma/egammaAlgs/src/egammaBuilder.h b/Reconstruction/egamma/egammaAlgs/src/egammaBuilder.h deleted file mode 100644 index e1835f6a3a5762c91b6da821eed65394395a1d37..0000000000000000000000000000000000000000 --- a/Reconstruction/egamma/egammaAlgs/src/egammaBuilder.h +++ /dev/null @@ -1,216 +0,0 @@ -/* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef EGAMMAALGS_EGAMMABUILDER_H -#define EGAMMAALGS_EGAMMABUILDER_H -/** - @class egammaBuilder - top-Algorithm which creates an egammaObjectCollection. - It retrieves data objects from TDS, and calls the subalgorithms to - make the pieces in egamma classs. The subclass should inherit from - egammaBuilder, and implement the method build(egamma*) - - It is seeded from the electromagnetic (EM) calorimeters and starts from clusters reconstructed in the calorimeters by the SlidingWindowFinder (https://twiki.cern.ch/twiki/bin/view/Atlas/SlidingWindowClustering#Sliding_Window_Clustering). For each cluster, with ET(seed)>3GeV in the cluster container the best inner detector track is searched for within a given E/p range. The complexity of the extrapolation (coordinate systems, etc) is hidden in ExtrapolateToCaloTool. It then builds identification variables - - The electromagnetic shower shape variables are calculated in the EMShowerBuilder tool with respect to these hot cells; - - Some variables combining inner detector and electromagnetic calorimeter information, like E/p, are build; - - In order to minimize amount of fakes, in particular in jets, pre-selection cuts are applied in egammaSelectSETool; - - Discriminating variables are build and used in the EMPIDBuilder tool based on shower shapes in the electromagnetic calorimeter and information from the inner detector; - - Possible matching to a conversion object is done through the tool EMConversionBuilder; - - Bremsstrahlung recovery information is obtained through the tools EMBremsstrahlungBuilder and EMTrkRefitter; - - the 4-momentum is build in EMFourMomBuilder. - - apply photon recovery - - apply photon post-processing to recalculate correctly - information for these recovered photons -*/ - -// INCLUDE HEADER FILES: -#include <vector> - -#include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/IChronoStatSvc.h" -#include "GaudiKernel/EventContext.h" - -#include "StoreGate/ReadHandleKey.h" -#include "StoreGate/WriteHandleKey.h" - -#include "xAODEgamma/ElectronFwd.h" -#include "xAODEgamma/PhotonFwd.h" -#include "xAODEgamma/ElectronContainer.h" -#include "xAODEgamma/PhotonContainer.h" -#include "xAODCaloEvent/CaloClusterContainer.h" -#include "egammaRecEvent/egammaRecContainer.h" - -#include "EgammaAnalysisInterfaces/IEGammaAmbiguityTool.h" -#include "egammaInterfaces/IEMClusterTool.h" -#include "egammaInterfaces/IegammaBaseTool.h" -#include "egammaInterfaces/IEMTrackMatchBuilder.h" -#include "egammaInterfaces/IEMConversionBuilder.h" -#include "egammaInterfaces/IEMShowerBuilder.h" -#include "GaudiKernel/SystemOfUnits.h" - -class egammaRec; - -class egammaBuilder : public AthAlgorithm -{ - public: - - /** @brief Default constructor*/ - egammaBuilder(const std::string& name, ISvcLocator* pSvcLocator); - - /** @brief Destructor*/ - ~egammaBuilder(); - - /** @brief initialize method*/ - StatusCode initialize() override final; - /** @brief finalize method*/ - StatusCode finalize() override final; - /** @brief execute method*/ - StatusCode execute() override final; - - /** Given an egammaRec object, a pointer to the electron container and the author, - * create and dress an electron, pushing it back to the container and - * calling the relevant tools **/ - bool getElectron(const egammaRec*, xAOD::ElectronContainer*, unsigned int); - - /** Given an egammaRec object, a pointer to the photon container and the author, - * create and dress a photon, pushing it back to the container and - * calling the relevant tools **/ - bool getPhoton(const egammaRec*, xAOD::PhotonContainer*, unsigned int); - - /** Add topo-seeded photons (that do not overlap with other clusters) - * to the photon container **/ - StatusCode addTopoSeededPhotons(xAOD::PhotonContainer *photonContainer, - const xAOD::CaloClusterContainer *clusters); - - /** Return true if refCluster overlaps with any cluster in the collection - * Used to select topo-seeded clusters **/ - bool clustersOverlap(const xAOD::CaloCluster *refCluster, - const xAOD::CaloClusterContainer *clusters); - - - private: - - - /** @brief Vector of tools for dressing electrons and photons **/ - ToolHandleArray<IegammaBaseTool> m_egammaTools {this, - "egammaTools", {}, "Tools for dressing electrons and photons"}; - - /** @brief Vector of tools for dressing ONLY electrons **/ - ToolHandleArray<IegammaBaseTool> m_electronTools {this, - "ElectronTools", {}, "Tools for dressing ONLY electrons"}; - - /** @brief Vector of tools for dressing ONLY photons **/ - ToolHandleArray<IegammaBaseTool> m_photonTools {this, - "PhotonTools", {}, "Tools for dressing ONLY photons"}; - - /** @brief Tool to do the final electron/photon cluster building */ - ToolHandle<IEMShowerBuilder> m_ShowerTool {this, - "EMShowerTool", "egammaTools/EMShowerBuilder", - "Tool that does electron/photon shower shape building"}; - - /** @brief Tool to do the final electron/photon cluster building */ - ToolHandle<IEMClusterTool> m_clusterTool {this, - "EMClusterTool", "EMClusterTool", - "Tool that does electron/photon final cluster building"}; - - /** @brief Tool to resolve electron/photon ambiguity */ - ToolHandle<IEGammaAmbiguityTool> m_ambiguityTool {this, - "AmbiguityTool", "EGammaAmbiguityTool", - "Tool that does electron/photon ambiguity resolution"}; - - /** @brief Tool to perform track matching*/ - ToolHandle<IEMTrackMatchBuilder> m_trackMatchBuilder {this, - "TrackMatchBuilderTool", "EMTrackMatchBuilder", - "Tool that matches tracks to egammaRecs"}; - - /** @brief Tool to perfrom conversion vertex matching*/ - ToolHandle<IEMConversionBuilder> m_conversionBuilder {this, - "ConversionBuilderTool", "EMConversionBuilder", - "Tool that matches conversion vertices to egammaRecs"}; - - - /** @brief Call a tool using contExecute and electrons, photon containers if given **/ - StatusCode CallTool(const EventContext& ctx, - ToolHandle<IegammaBaseTool>& tool, - xAOD::ElectronContainer *electronContainer = nullptr, - xAOD::PhotonContainer *photonContainer = nullptr); - - /** @brief retrieve EMTrackMatchBuilder **/ - StatusCode RetrieveEMTrackMatchBuilder(); - /** @brief retrieve EMConversionBuilder **/ - StatusCode RetrieveEMConversionBuilder(); - - /** @brief Name of the electron output collection*/ - SG::WriteHandleKey<xAOD::ElectronContainer> m_electronOutputKey {this, - "ElectronOutputName", "ElectronContainer", - "Name of Electron Container to be created"}; - - /** @brief Name of the photon output collection */ - SG::WriteHandleKey<xAOD::PhotonContainer> m_photonOutputKey {this, - "PhotonOutputName", "PhotonContainer", - "Name of Photon Container to be created"}; - - /** @brief Name of the cluster intput collection */ - SG::ReadHandleKey<xAOD::CaloClusterContainer> m_inputClusterContainerKey {this, - "InputClusterContainerName", "LArClusterEM", - "Input cluster container for egamma objects"}; - - /** @brief Name of the topo-seeded cluster collection */ - SG::ReadHandleKey<xAOD::CaloClusterContainer> m_topoSeededClusterContainerKey {this, - "TopoSeededClusterContainerName", "EMTopoCluster430", - "Input topo-seeded cluster container for egamma objects"}; - - /** @brief Name of egammaRec container */ - SG::WriteHandleKey<EgammaRecContainer> m_egammaRecContainerKey {this, - "egammaRecContainer", "egammaRecCollection", - "Output container for egammaRec objects"}; - - // All booleans - // - /** @brief private member flag to do the track matching */ - Gaudi::Property<bool> m_doTrackMatching {this, "doTrackMatching", true, - "Boolean to do track matching"}; - - /** @brief private member flag to do the conversion matching */ - Gaudi::Property<bool> m_doConversions {this, "doConversions", true, - "Boolean to do conversion matching"}; - - /** @brief add topo-seeded photons */ - Gaudi::Property<bool> m_doTopoSeededPhotons {this, - "doTopoSeededPhotons", true, - "Boolean to do topo-seeded photons"}; - // - // Other properties. - // - /** @brief Discard clusters with energy less than this after corrections. */ - Gaudi::Property<float> m_clusterEnergyCut {this, - "clusterEnergyCut", 10 * Gaudi::Units::MeV, - "Discard clusters with energies below this after corrections"}; - - // @brief Minimum deltaEta to check if clusters overlap - Gaudi::Property<float> m_minDeltaEta {this, "minDeltaEta", 0.05, - "Minimum deltaEta to check if clusters overlap"}; - - // @brief Minimum deltaPhi to check if clusters overlap - Gaudi::Property<float> m_minDeltaPhi {this, "minDeltaPhi", 0.1, - "Minimum deltaPhi to check if clusters overlap"}; - - // @brief Minimum transverse energy to accept topo-seeded clusters - Gaudi::Property<float> m_minEtTopo {this, "minEtTopo", 1.5 * Gaudi::Units::GeV, - "Minimum transverse energy to accept topo-seeded clusters"}; - - // @brief Maximum transverse energy to accept topo-seeded clusters - Gaudi::Property<float> m_maxEtTopo {this, "maxEtTopo", 8 * Gaudi::Units::GeV, - "Maximum transverse energy to accept topo-seeded clusters"}; - - // others: - Gaudi::Property<bool> m_dump {this, "Dump", false, - "Boolean to dump content of each object"}; - - IChronoStatSvc* m_timingProfile; - -}; - -#endif diff --git a/Reconstruction/egamma/egammaCaloTools/src/egammaPreSamplerShape.cxx b/Reconstruction/egamma/egammaCaloTools/src/egammaPreSamplerShape.cxx index 3c1ed3ad74195eca60d6c0baab942f7b77bcde53..03f7d947f2d3a97354bb3bc184331e28ee317d56 100755 --- a/Reconstruction/egamma/egammaCaloTools/src/egammaPreSamplerShape.cxx +++ b/Reconstruction/egamma/egammaCaloTools/src/egammaPreSamplerShape.cxx @@ -14,7 +14,7 @@ #include "GaudiKernel/ObjectVector.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include "CLHEP/Units/SystemOfUnits.h" diff --git a/Reconstruction/egamma/egammaRec/python/egammaGetter.py b/Reconstruction/egamma/egammaRec/python/egammaGetter.py deleted file mode 100755 index 1ee172fbbb64e4c13f9bc4118f3b7ee3c3a5f0b2..0000000000000000000000000000000000000000 --- a/Reconstruction/egamma/egammaRec/python/egammaGetter.py +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration - -from __future__ import print_function - -# This file is for the "old" non-topocluster version of egamma -from AthenaCommon.Logging import logging -from AthenaCommon.SystemOfUnits import * -from AthenaCommon.Constants import * - -from AthenaCommon.DetFlags import DetFlags -from RecExConfig.Configured import Configured -# -from egammaRec import egammaKeys -from egammaAlgs import egammaAlgsConf -from egammaRec.Factories import AlgFactory, FcnWrapper -from egammaRec import egammaRecFlags as egRecFlags -egammaRecFlags = egRecFlags.jobproperties.egammaRecFlags - -def doConversions() : - return DetFlags.detdescr.ID_on() and egammaRecFlags.doConversions() -################ - -# Import the tool factories -from egammaTools.egammaToolsFactories import \ - EMTrackMatchBuilder,\ - EMConversionBuilder, EGammaAmbiguityTool,\ - EMClusterTool, EMFourMomBuilder, EMShowerBuilder, egammaOQFlagsBuilder, \ - ElectronPIDBuilder, PhotonPIDBuilder - -# -#Topo seeded fixed size clusters, related configurations -#Create and return the TopoSeededCollection -def getTopoSeededCollectionName(): - if egammaRecFlags.doTopoCaloSeeded(): - from CaloRec import CaloRecFlags - from CaloRec.CaloRecTopoEM35Flags import jobproperties - jobproperties.CaloRecTopoEM35Flags.EtSeedCut =0.8 * GeV # The cut on the Fixed size is 1.5 GeV later on - from CaloRec.CaloClusterTopoEMFixedSizeGetter import CaloClusterTopoEMFixedSizeGetter - theCaloClusterTopoEMFixedSizeGetter = CaloClusterTopoEMFixedSizeGetter() - return theCaloClusterTopoEMFixedSizeGetter.outputKey() - else: - return "" - -#The tools used to add properties -def egammaDecorationTools(): - "Return a list with the tools that decorate both electrons and photons" - return [EMFourMomBuilder(), egammaOQFlagsBuilder()] - -def electronDecorationTools(): - "Return a list with the tools that decorate only electrons" - return [ ElectronPIDBuilder() ] - -def photonDecorationTools(): - "Return a list with the tools that decorate only photons" - return [ PhotonPIDBuilder() ] -# - -class egammaGetter ( Configured ) : - - def configure(self): - mlog = logging.getLogger ('egammaGetter.py::configure:') - mlog.info('entering') - - egammaBuilder = AlgFactory(egammaAlgsConf.egammaBuilder, name = 'egamma', - # Keys - ElectronOutputName = egammaKeys.outputElectronKey(), - PhotonOutputName = egammaKeys.outputPhotonKey(), - TopoSeededClusterContainerName = getTopoSeededCollectionName(), - # Builder tools - TrackMatchBuilderTool = EMTrackMatchBuilder, - ConversionBuilderTool = EMConversionBuilder if doConversions() else None, - EMClusterTool=EMClusterTool, - EMShowerTool=EMShowerBuilder, - AmbiguityTool = EGammaAmbiguityTool, - # Decoration tools - egammaTools = FcnWrapper(egammaDecorationTools), - ElectronTools = FcnWrapper(electronDecorationTools), - PhotonTools = FcnWrapper(photonDecorationTools), - # Flags and other properties - # Track matching depending if ID is on/off - doTrackMatching = DetFlags.detdescr.ID_on(), - # conversions matching depending if ID is on/off - doConversions = doConversions(), - # - clusterEnergyCut = 10*MeV, - doTopoSeededPhotons = egammaRecFlags.doTopoCaloSeeded() - ) - - # configure egamma here: - try: - self._egammaBuilderHandle = egammaBuilder() - except Exception: - mlog.error("could not get handle to egamma") - import traceback - traceback.print_exc() - return False - - print (self._egammaBuilderHandle) - return True - - def egammaBuilderHandle(self): - return self._egammaBuilderHandle diff --git a/Reconstruction/egamma/egammaRec/python/egammaRecFlags.py b/Reconstruction/egamma/egammaRec/python/egammaRecFlags.py index 1d0dfea0faa18cb8a3bd2a5e36bc38376b45c52c..8b2425563986febd35588cef08cc426238dac9ea 100755 --- a/Reconstruction/egamma/egammaRec/python/egammaRecFlags.py +++ b/Reconstruction/egamma/egammaRec/python/egammaRecFlags.py @@ -52,14 +52,6 @@ class doEgammaForwardSeeded (egammaRecFlagsJobProperty): StoredValue = True -class doTopoCaloSeeded (JobProperty): - """ switch for SW TopoCalo algorithm - """ - statusOn = True - allowedTypes = ['bool'] - StoredValue = True - - class doBremFinding (egammaRecFlagsJobProperty): """ switch for whether to do the brem finding """ @@ -75,8 +67,8 @@ class doVertexBuilding (egammaRecFlagsJobProperty): allowedTypes = ['bool'] StoredValue = True -# Other options +# Other options class doEgammaTruthAssociation (JobProperty): """ switch for truth association alg @@ -161,7 +153,7 @@ jobproperties.add_Container(egammaRecFlags) # I want always the following flags in the container _list_Egamma = [Enabled, doEgammaCaloSeeded, doEgammaForwardSeeded, doBremFinding, doVertexBuilding, doConversions, - doTopoCaloSeeded, cellContainerName, doEgammaTruthAssociation, + cellContainerName, doEgammaTruthAssociation, clusterCorrectionVersion, calibMVAVersion, doSuperclusters, inputTopoClusterCollection, egammaTopoClusterCollection] diff --git a/Reconstruction/egamma/egammaRec/share/egammaRec_jobOptions.py b/Reconstruction/egamma/egammaRec/share/egammaRec_jobOptions.py index 7f8b2a47b88565c4d301e0afdbca41021946bc86..1404a2e29c2594cf969283f93529f6c89b7afabc 100755 --- a/Reconstruction/egamma/egammaRec/share/egammaRec_jobOptions.py +++ b/Reconstruction/egamma/egammaRec/share/egammaRec_jobOptions.py @@ -10,6 +10,7 @@ topSequence = AlgSequence() jobproperties.egammaRecFlags.print_JobProperties("full") # The simple cases where we can disable a flag + # Truth if not rec.doTruth(): jobproperties.egammaRecFlags.doEgammaTruthAssociation = False @@ -19,11 +20,11 @@ if not DetFlags.detdescr.ID_on(): jobproperties.egammaRecFlags.doBremFinding = False jobproperties.egammaRecFlags.doVertexBuilding = False -# We can not run Forward without having the TopoClusters +# We can not run without having the Calo if not (rec.readESD() or jobproperties.CaloRecFlags.doCaloTopoCluster()): + jobproperties.egammaRecFlags.doEgammaCaloSeeded = False jobproperties.egammaRecFlags.doEgammaForwardSeeded = False -# Helper Functions # Function to schedule the GSF @@ -81,19 +82,6 @@ def setupTopoSeededEgamma(): jobproperties.egammaRecFlags.doEgammaCaloSeeded = False topoEgammaGetter(disable=True) - -# Function to schedule the SW seeded egamma -# Only if we do not do topo seeded -def setupSWSeededEgamma(): - try: - from egammaRec.egammaGetter import egammaGetter - egammaGetter(ignoreExistingDataObject=True) - except Exception: - treatException("Could not set up egammaGetter. Switch it off !") - # If we wanted SW based cluster seeded egamma it just failed - jobproperties.egammaRecFlags.doEgammaCaloSeeded = False - egammaGetter(disable=True) - # Function to schedule the Fwd egamma @@ -122,25 +110,15 @@ def setupTruthAssociation(): # Do the actual scheduling + if jobproperties.egammaRecFlags.doBremFinding(): setupGSF() + if jobproperties.egammaRecFlags.doVertexBuilding(): setupVertices() -# Calo seeded egamma -# Either we can do TopoSeeded superClusters -# Or we can do SW seeded -# Or we can do nothing (i.e no ESD nor CaloTopo nor LarEM clusters) + if jobproperties.egammaRecFlags.doEgammaCaloSeeded(): - if (jobproperties.egammaRecFlags.doSuperclusters() - and (jobproperties.CaloRecFlags.doCaloTopoCluster() - or rec.readESD())): - setupTopoSeededEgamma() - elif (not jobproperties.egammaRecFlags.doSuperclusters() - and (jobproperties.CaloRecFlags.doEmCluster() - or rec.readESD())): - setupSWSeededEgamma() - else: - jobproperties.egammaRecFlags.doEgammaCaloSeeded = False + setupTopoSeededEgamma() if jobproperties.egammaRecFlags.doEgammaForwardSeeded(): setupFwdSeededEgamma() diff --git a/Reconstruction/egamma/egammaTrackTools/src/egammaTrkRefitterTool.cxx b/Reconstruction/egamma/egammaTrackTools/src/egammaTrkRefitterTool.cxx index 1abba788f4264f1329f6e1b866ac54b2b6004e4d..d0b00200a8fa811ac092b68e06d1183861b632c6 100644 --- a/Reconstruction/egamma/egammaTrackTools/src/egammaTrkRefitterTool.cxx +++ b/Reconstruction/egamma/egammaTrackTools/src/egammaTrkRefitterTool.cxx @@ -31,7 +31,7 @@ // INCLUDE GAUDI HEADER FILES: #include "GaudiKernel/ObjectVector.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" egammaTrkRefitterTool::egammaTrkRefitterTool(const std::string& type, diff --git a/Reconstruction/egamma/egammaValidation/src/EfficiencyPlot.cxx b/Reconstruction/egamma/egammaValidation/src/EfficiencyPlot.cxx index 08b349310712a0e093a821f816bf52ee3ec22421..62c370e1e0d37fab3feca5f6c78ed32ffba580a8 100644 --- a/Reconstruction/egamma/egammaValidation/src/EfficiencyPlot.cxx +++ b/Reconstruction/egamma/egammaValidation/src/EfficiencyPlot.cxx @@ -7,7 +7,7 @@ #include "EfficiencyPlot.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" #include "AthenaBaseComps/AthAlgorithm.h" diff --git a/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.h b/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.h index 2c46cc99f3bb23232c87a2acac758d8b5ee7481b..c2d4c52b235072c55d4883c3091505f5acb7d282 100644 --- a/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.h +++ b/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.h @@ -25,7 +25,7 @@ #include "xAODTruth/xAODTruthHelpers.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/ITHistSvc.h" diff --git a/Reconstruction/egamma/egammaValidation/src/ParticleHistograms.cxx b/Reconstruction/egamma/egammaValidation/src/ParticleHistograms.cxx index fc4b83e2018fff1d4e02a4f4ae2b7db8c8ec608e..a4a584733bf6e0064b68c34a8c97cca8766ef7eb 100644 --- a/Reconstruction/egamma/egammaValidation/src/ParticleHistograms.cxx +++ b/Reconstruction/egamma/egammaValidation/src/ParticleHistograms.cxx @@ -6,7 +6,7 @@ #include <typeinfo> #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" #include "AthenaBaseComps/AthAlgorithm.h" diff --git a/Reconstruction/egamma/egammaValidation/src/WidthPlot.cxx b/Reconstruction/egamma/egammaValidation/src/WidthPlot.cxx index 6360ce859dda99a5fc4539c1848a295cf4c9dcda..f8b214c78e72091213ed65577c321aab9a0071da 100644 --- a/Reconstruction/egamma/egammaValidation/src/WidthPlot.cxx +++ b/Reconstruction/egamma/egammaValidation/src/WidthPlot.cxx @@ -5,7 +5,7 @@ #include "WidthPlot.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" #include "AthenaBaseComps/AthAlgorithm.h" diff --git a/Reconstruction/tauRecTools/Root/TauRecToolBase.cxx b/Reconstruction/tauRecTools/Root/TauRecToolBase.cxx index e6763cc28db5e6534835a1e4f904af9abd2dc055..3e0466a674d29e6cbc60b54b3ad58945d57891ed 100644 --- a/Reconstruction/tauRecTools/Root/TauRecToolBase.cxx +++ b/Reconstruction/tauRecTools/Root/TauRecToolBase.cxx @@ -27,11 +27,11 @@ std::string TauRecToolBase::find_file(const std::string& fname) const { StatusCode TauRecToolBase::readConfig() { // Sanity check to see if property ConfigPath is declared for a tool. Might be // removed once all tools are updated to have a config path declared. - // in athena getProperties returns std::vector<Property*> + // in athena getProperties returns std::vector<Gaudi::Details::PropertyBase*> // in rc getProperties returns std::map<std::string,Property*> #ifndef XAOD_STANDALONE bool configPathDeclared = false; - for (Property* property : getProperties()) + for (Gaudi::Details::PropertyBase* property : getProperties()) { if (property->name() == "ConfigPath") { diff --git a/Simulation/BeamEffects/src/CrabKissingVertexPositioner.cxx b/Simulation/BeamEffects/src/CrabKissingVertexPositioner.cxx index 3ada121414e1bdb05577fb1b543974c544aa5a23..330776676aaf3a16172b473d6bbef8efa17ee328 100644 --- a/Simulation/BeamEffects/src/CrabKissingVertexPositioner.cxx +++ b/Simulation/BeamEffects/src/CrabKissingVertexPositioner.cxx @@ -60,7 +60,7 @@ namespace Simulation { } - void CrabKissingVertexPositioner::BunchShapeHandler(Property&) + void CrabKissingVertexPositioner::BunchShapeHandler(Gaudi::Details::PropertyBase&) { if(m_bunchShapeProp.value() == "GAUSS") m_bunchShape = BunchShape::GAUSS; else if(m_bunchShapeProp.value() == "FLAT") m_bunchShape = BunchShape::FLAT; diff --git a/Simulation/BeamEffects/src/CrabKissingVertexPositioner.h b/Simulation/BeamEffects/src/CrabKissingVertexPositioner.h index fba1fa239958da2cb30e2c133410bae580c965ba..9348a52f1e5b96efe0d22335db55013cf79eb78e 100644 --- a/Simulation/BeamEffects/src/CrabKissingVertexPositioner.h +++ b/Simulation/BeamEffects/src/CrabKissingVertexPositioner.h @@ -72,7 +72,7 @@ namespace Simulation std::string m_randomEngineName; //!< Name of the random number stream StringProperty m_bunchShapeProp; - void BunchShapeHandler(Property&); + void BunchShapeHandler(Gaudi::Details::PropertyBase&); enum BunchShape{GAUSS,FLAT,NSHAPES}; BunchShape m_bunchShape; // GAUSS or FLAT double m_bunchLength; //!< Parameter in the Z distribution of the beamspot diff --git a/Simulation/Digitization/python/DigitizationConfigFlags.py b/Simulation/Digitization/python/DigitizationConfigFlags.py index f03f4c0cf4fbdcf35176bd2c8eff8f0e2c8ee2be..980ef260e126934176f872355ab80d4d54d59005 100644 --- a/Simulation/Digitization/python/DigitizationConfigFlags.py +++ b/Simulation/Digitization/python/DigitizationConfigFlags.py @@ -38,6 +38,7 @@ def getSpecialConfiguration(flags): # include(inc) return out + def createDigitizationCfgFlags(): """Return an AthConfigFlags object with required flags""" flags = AthConfigFlags() @@ -71,3 +72,23 @@ def createDigitizationCfgFlags(): flags.addFlag("Digitization.ExtraInputs", [("xAOD::EventInfo", "EventInfo")]) return flags + +def digitizationRunArgsToFlags(runArgs, flags): + """Fill digitization configuration flags from run arguments.""" + if hasattr(runArgs, "PileUpPremixing"): + flags.Digitization.PileUpPremixing = runArgs.PileUpPremixing + + if hasattr(runArgs, "doAllNoise"): + flags.Digitization.DoInnerDetectorNoise = runArgs.doAllNoise + flags.Digitization.DoCaloNoise = runArgs.doAllNoise + + if hasattr(runArgs, "AddCaloDigi"): + flags.Digitization.AddCaloDigi = runArgs.AddCaloDigi + + if hasattr(runArgs, "digiSeedOffset1"): + flags.Digitization.RandomSeedOffset = runArgs.digiSeedOffset1 + + # TODO: Not covered yet as no flag equivalents exist yet + # '--digiRndmSvc' + # '--digiSteeringConf' + # '--samplingFractionDbTag' diff --git a/Simulation/FastShower/FastCaloSim/src/CaloCellContainerFCSFinalizerTool.cxx b/Simulation/FastShower/FastCaloSim/src/CaloCellContainerFCSFinalizerTool.cxx index 2a9507522c5624c6dbad3c2a2a79b6c7b5e3c0d8..49ccf8f71b442caa40fe8cdce24ce68f51141915 100644 --- a/Simulation/FastShower/FastCaloSim/src/CaloCellContainerFCSFinalizerTool.cxx +++ b/Simulation/FastShower/FastCaloSim/src/CaloCellContainerFCSFinalizerTool.cxx @@ -19,7 +19,7 @@ PURPOSE: Apply necessary finalising operation to CaloCellContainer #include "GaudiKernel/Service.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include "StoreGate/StoreGateSvc.h" diff --git a/Simulation/G4Sim/G4HiveEx/src/G4InputLoader.cxx b/Simulation/G4Sim/G4HiveEx/src/G4InputLoader.cxx index 8daa1f348c6bb8986f9a063114cf52e40fa2b50b..16be5ad8cd26d7bb6d2b20cdd05559bad5175dd5 100644 --- a/Simulation/G4Sim/G4HiveEx/src/G4InputLoader.cxx +++ b/Simulation/G4Sim/G4HiveEx/src/G4InputLoader.cxx @@ -9,7 +9,7 @@ #include "G4InputLoader.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GeneratorObjects/McEventCollection.h" #include "AthenaKernel/errorcheck.h" diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h index fa469a37abf3f2115d8a4142c2f19dc048922a56..7b6167d4a0c854fa39ca7fbe724da8e8266a0af0 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h @@ -9,7 +9,7 @@ #include "MuonSimEvent/GenericMuonSimHitCollection.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include <string> diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.h index e556c97518a47f7146e952eb190db0bc65518676..038b9aefa9285373060744f0e1c14690d6d6a6cc 100755 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.h @@ -7,7 +7,7 @@ #include "PileUpTools/PileUpToolBase.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/PhysicalConstants.h" diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.h index 036f05839cdb94b23a72d38d24f1bf23677802b3..8c934d33c2f7ca6736d4cd03ee5dff8aabd383b6 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.h @@ -7,7 +7,7 @@ #include "PileUpTools/PileUpToolBase.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "PileUpTools/PileUpMergeSvc.h" diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h index f7f438309a4b396c1385573fa3a52ae3eb6b6dcb..204c3f02d546955842106396fc449a3964d1a006 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h @@ -8,7 +8,7 @@ #include "PileUpTools/PileUpToolBase.h" #include "TrackRecord/TrackRecordCollection.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "PileUpTools/PileUpMergeSvc.h" diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.h index 177c6dd0d8838ec3c7020800d030a13557c6a752..623c8b260c1a3bf55d7452f923922c84e7f4b4d8 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.h @@ -9,7 +9,7 @@ #include "xAODJet/JetContainer.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" #include "PileUpTools/PileUpMergeSvc.h" diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h index 07c14ad2440b0961366feab1e522ddee8886c73c..aad1f6615745ec0ccaa9615c5eb4b22de56ce295 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h @@ -5,7 +5,7 @@ #ifndef MCTRUTHSIMALGS_NEWMERGEMCEVENTCOLLTOOL_H #define MCTRUTHSIMALGS_NEWMERGEMCEVENTCOLLTOOL_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include "StoreGate/WriteHandle.h" diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h b/Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h index 15e3259f717936d8fd67445a68f6181d49536d87..a378da019de6d254d91e54465dcd9560e1151848 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h @@ -7,7 +7,7 @@ #include "PileUpTools/PileUpToolBase.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ServiceHandle.h" #include <utility> /* pair */ diff --git a/Simulation/ISF/ISF_Core/ISF_Algorithms/src/SimKernel.cxx b/Simulation/ISF/ISF_Core/ISF_Algorithms/src/SimKernel.cxx index 55e5cba78f08360639861154e0011917da309d41..02bcb6db259a99d48d21732e903468217ddcec1a 100644 --- a/Simulation/ISF/ISF_Core/ISF_Algorithms/src/SimKernel.cxx +++ b/Simulation/ISF/ISF_Core/ISF_Algorithms/src/SimKernel.cxx @@ -13,7 +13,7 @@ #include "ISF_Interfaces/IMonitoringTool.h" #include "ISF_Interfaces/IEventFilterTool.h" // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Boost #include <boost/lexical_cast.hpp> // ATLAS cxx utils diff --git a/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.cxx b/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.cxx index 646d3b15d701ee1993126a9d9fd702b2720c42b4..d83c4d2320399486645049a7974e0d51b7404746 100644 --- a/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.cxx +++ b/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.cxx @@ -24,7 +24,7 @@ ISF::BaseSimulationSelector::BaseSimulationSelector(const std::string& type, con m_simFlavorProp.declareUpdateHandler(&ISF::BaseSimulationSelector::SimulationFlavorHandler, this); } -void ISF::BaseSimulationSelector::SimulationFlavorHandler(Property&) +void ISF::BaseSimulationSelector::SimulationFlavorHandler(Gaudi::Details::PropertyBase&) { // FIXME would probably be better to have this in SimulationFlavor.h switch(m_simFlavorProp.value()) diff --git a/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.h b/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.h index d0e9940463e33b46420041c7bc31c6488116c123..6b23eb1bc62e089b98b9f33c18c0db52ec42d68e 100644 --- a/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.h +++ b/Simulation/ISF/ISF_SimulationSelectors/src/BaseSimulationSelector.h @@ -72,7 +72,7 @@ class BaseSimulationSelector : public extends<AthAlgTool, ISimulationSelector> { bool m_isDynamic; //!< this selector is either dynamic or static bool m_invertCuts; //!< invert the result given by passesCuts(..) method Gaudi::CheckedProperty<unsigned short> m_simFlavorProp{0}; //!< the simulation flavour that this selector will select - void SimulationFlavorHandler(Property&); + void SimulationFlavorHandler(Gaudi::Details::PropertyBase&); ISF::SimulationFlavor m_simflavor{ISF::UndefinedSim}; //!< simulation flavor }; diff --git a/Simulation/Tools/CaloSamplingFractionAnalysis/src/LarEMSamplingFraction.cxx b/Simulation/Tools/CaloSamplingFractionAnalysis/src/LarEMSamplingFraction.cxx index 98cca5dec77c58e83a5a2db1ebe278921b9566e3..401e0e793ddcf2a5774b8e4309ac6aa0164d113c 100644 --- a/Simulation/Tools/CaloSamplingFractionAnalysis/src/LarEMSamplingFraction.cxx +++ b/Simulation/Tools/CaloSamplingFractionAnalysis/src/LarEMSamplingFraction.cxx @@ -14,7 +14,7 @@ Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ITHistSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GeneratorObjects/McEventCollection.h" diff --git a/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.cxx b/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.cxx index 730da3a8ad9c428b65bf0187e564b4c816b868d4..7143e0ee41647d3f3b98450f2ddc3fc68ef80fe7 100644 --- a/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.cxx +++ b/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.cxx @@ -1,10 +1,12 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ #include "PixelRDOAnalysis.h" #include "StoreGate/ReadHandle.h" +#include "GeneratorObjects/McEventCollection.h" + #include "TTree.h" #include "TString.h" @@ -49,7 +51,6 @@ PixelRDOAnalysis::PixelRDOAnalysis(const std::string& name, ISvcLocator *pSvcLoc , m_barcode_vec(0) , m_eventIndex_vec(0) , m_charge_vec(0) - , m_h_rdoID(0) , m_h_rdoWord(0) , m_h_barrelEndcap(0) @@ -80,6 +81,7 @@ PixelRDOAnalysis::PixelRDOAnalysis(const std::string& name, ISvcLocator *pSvcLoc , m_h_ecBCID(0) , m_h_ecLVL1A(0) , m_h_ecLVL1ID(0) + , m_h_TruthMatchedRDOs(nullptr) , m_tree(0) , m_ntupleFileName("/ntuples/file1") @@ -316,6 +318,13 @@ StatusCode PixelRDOAnalysis::initialize() { m_h_charge->StatOverflows(); ATH_CHECK(m_thistSvc->regHist(m_path + m_h_charge->GetName(), m_h_charge)); + m_h_TruthMatchedRDOs = new TH1F("h_TruthMatchedPixelRDOs", "h_TruthMatchedPixelRDOs", 4, 1, 5); + TString truthMatchBinLables[4] = { "All RDOs", "Truth Matched", "HS Matched", "Unmatched" }; + for(unsigned int ibin = 1; ibin < 5; ibin++) { + m_h_TruthMatchedRDOs->GetXaxis()->SetBinLabel(ibin, truthMatchBinLables[ibin-1]); + } + ATH_CHECK(m_thistSvc->regHist(m_path + m_h_TruthMatchedRDOs->GetName(), m_h_TruthMatchedRDOs)); + return StatusCode::SUCCESS; } @@ -356,6 +365,18 @@ StatusCode PixelRDOAnalysis::execute() { // Raw Data SG::ReadHandle<PixelRDO_Container> p_pixelRDO_cont (m_inputKey); + //Adding SimMap and McEvent here for added truthMatching checks + SG::ReadHandle<InDetSimDataCollection> simDataMapPixel (m_inputTruthKey); + SG::ReadHandle<McEventCollection> mcEventCollection("TruthEvent"); + bool doTruthMatching = true; + const HepMC::GenEvent* hardScatterEvent(nullptr); + + if (mcEventCollection->size()==0){ + ATH_MSG_WARNING("Failed to retrieve a nonzero sized truth event collection, disabling truthMatching"); + doTruthMatching = false; + } + if(doTruthMatching) hardScatterEvent = mcEventCollection->at(0); + if(p_pixelRDO_cont.isValid()) { // loop over RDO container PixelRDO_Container::const_iterator rdoCont_itr(p_pixelRDO_cont->begin()); @@ -365,6 +386,30 @@ StatusCode PixelRDOAnalysis::execute() { PixelRDO_Collection::const_iterator rdo_itr(p_pixelRDO_coll->begin()); const PixelRDO_Collection::const_iterator rdo_end(p_pixelRDO_coll->end()); for ( ; rdo_itr != rdo_end; ++rdo_itr ) { + if(doTruthMatching){ + m_h_TruthMatchedRDOs->Fill(1.5); + bool findMatch = false; + if(simDataMapPixel.isValid()){ + InDetSimDataCollection::const_iterator iter = (*simDataMapPixel).find((*rdo_itr)->identify()); + + if ( iter != (*simDataMapPixel).end() ) { + const InDetSimData& sdo = iter->second; + const std::vector< InDetSimData::Deposit >& deposits = sdo.getdeposits(); + std::vector< InDetSimData::Deposit >::const_iterator nextdeposit = deposits.begin(); + std::vector< InDetSimData::Deposit >::const_iterator lastdeposit = deposits.end(); + for( ; nextdeposit!=lastdeposit; ++nextdeposit) { + const HepMcParticleLink& particleLink = nextdeposit->first; + if(particleLink.isValid() && !findMatch){ + const HepMC::GenParticle *genPart(particleLink.cptr()); + if(genPart->parent_event() == hardScatterEvent) m_h_TruthMatchedRDOs->Fill(3.5); + m_h_TruthMatchedRDOs->Fill(2.5); + findMatch = true; + } + } + } + } + if(!findMatch) m_h_TruthMatchedRDOs->Fill(4.5); + } const Identifier rdoID((*rdo_itr)->identify()); const int pixBrlEc(m_pixelID->barrel_ec(rdoID)); const unsigned int rdoWord((*rdo_itr)->getWord()); @@ -432,7 +477,6 @@ StatusCode PixelRDOAnalysis::execute() { } // Sim Data - SG::ReadHandle<InDetSimDataCollection> simDataMapPixel (m_inputTruthKey); if(simDataMapPixel.isValid()) { // loop over SDO container InDetSimDataCollection::const_iterator sdo_itr(simDataMapPixel->begin()); diff --git a/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.h b/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.h index c2371ca72506ad05162a96a57e0abf13c50bbab9..52ff0323b7ca6015009830901c151295b95db62d 100644 --- a/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.h +++ b/Simulation/Tools/RDOAnalysis/src/PixelRDOAnalysis.h @@ -123,6 +123,7 @@ private: TH1* m_h_barcode; TH1* m_h_eventIndex; TH1* m_h_charge; + TH1* m_h_TruthMatchedRDOs; TTree* m_tree; std::string m_ntupleFileName; diff --git a/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.cxx b/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.cxx index 217f16dfbc99c839d22fbd9bb5d194fa42422037..383484cdac8b4b5cbd4cbfe2040fd05f496424a5 100644 --- a/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.cxx +++ b/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.cxx @@ -5,6 +5,7 @@ #include "SCT_RDOAnalysis.h" #include "InDetIdentifier/SCT_ID.h" +#include "GeneratorObjects/McEventCollection.h" #include "StoreGate/ReadHandle.h" #include "TString.h" @@ -81,6 +82,7 @@ SCT_RDOAnalysis::SCT_RDOAnalysis(const std::string& name, ISvcLocator *pSvcLocat , m_h_eventIndex{nullptr} , m_h_charge{nullptr} , m_h_phi_v_eta_sdo{nullptr} + , m_h_TruthMatchedRDOs{nullptr} , m_tree{nullptr} , m_thistSvc("THistSvc", name) @@ -282,6 +284,15 @@ StatusCode SCT_RDOAnalysis::initialize() { m_h_phi_v_eta_sdo->StatOverflows(); ATH_CHECK(m_thistSvc->regHist(m_path.value() + m_h_phi_v_eta_sdo->GetName(), m_h_phi_v_eta_sdo)); + m_h_TruthMatchedRDOs = new TH1F("h_TruthMatchedSCTRDOs", "h_TruthMatchedSCTRDOs", 4, 1, 5); + TString truthMatchBinLables[4] = { "All RDOs", "Truth Matched", "HS Matched", "Unmatched" }; + for(unsigned int ibin = 1; ibin < 5; ibin++) { + m_h_TruthMatchedRDOs->GetXaxis()->SetBinLabel(ibin, truthMatchBinLables[ibin-1]); + } + ATH_CHECK(m_thistSvc->regHist(m_path + m_h_TruthMatchedRDOs->GetName(), m_h_TruthMatchedRDOs)); + + + return StatusCode::SUCCESS; } @@ -317,7 +328,19 @@ StatusCode SCT_RDOAnalysis::execute() { // RawData SG::ReadHandle<SCT_RDO_Container> p_SCT_RDO_cont (m_inputKey); - if (p_SCT_RDO_cont.isValid()) { + //Adding SimMap and McEvent here for added truthMatching checks + SG::ReadHandle<InDetSimDataCollection> simDataMapSCT (m_inputTruthKey); + SG::ReadHandle<McEventCollection> mcEventCollection("TruthEvent"); + + const HepMC::GenEvent* hardScatterEvent(nullptr); + bool doTruthMatching = true; + if (mcEventCollection->size()==0){ + ATH_MSG_WARNING("Failed to retrieve a nonzero sized truth event collection, disabling truthMatching"); + doTruthMatching = false; + } + if(doTruthMatching) hardScatterEvent = mcEventCollection->at(0); + + if(p_SCT_RDO_cont.isValid()) { // loop over RDO container SCT_RDO_Container::const_iterator rdoCont_itr(p_SCT_RDO_cont->begin()); const SCT_RDO_Container::const_iterator rdoCont_end(p_SCT_RDO_cont->end()); @@ -328,6 +351,30 @@ StatusCode SCT_RDOAnalysis::execute() { const SCT_RDO_Collection::const_iterator rdo_end(p_SCT_RDO_coll->end()); for ( ; rdo_itr != rdo_end; ++rdo_itr ) { + if(doTruthMatching){ + m_h_TruthMatchedRDOs->Fill(1.5); + bool findMatch = false; + if(simDataMapSCT.isValid()){ + InDetSimDataCollection::const_iterator iter = (*simDataMapSCT).find((*rdo_itr)->identify()); + + if ( iter != (*simDataMapSCT).end() ) { + const InDetSimData& sdo = iter->second; + const std::vector< InDetSimData::Deposit >& deposits = sdo.getdeposits(); + std::vector< InDetSimData::Deposit >::const_iterator nextdeposit = deposits.begin(); + std::vector< InDetSimData::Deposit >::const_iterator lastdeposit = deposits.end(); + for( ; nextdeposit!=lastdeposit; ++nextdeposit) { + const HepMcParticleLink& particleLink = nextdeposit->first; + if(particleLink.isValid() && !findMatch){ + const HepMC::GenParticle *genPart(particleLink.cptr()); + if(genPart->parent_event() == hardScatterEvent) m_h_TruthMatchedRDOs->Fill(3.5); + m_h_TruthMatchedRDOs->Fill(2.5); + findMatch = true; + } + } + } + } + if(!findMatch) m_h_TruthMatchedRDOs->Fill(4.5); + } const Identifier rdoID((*rdo_itr)->identify()); const unsigned int rdoWord((*rdo_itr)->getWord()); const int sctBrlEc(m_sctID->barrel_ec(rdoID)); @@ -383,7 +430,6 @@ StatusCode SCT_RDOAnalysis::execute() { } // SimData - SG::ReadHandle<InDetSimDataCollection> simDataMapSCT (m_inputTruthKey); if (simDataMapSCT.isValid()) { // loop over SDO container InDetSimDataCollection::const_iterator sdo_itr(simDataMapSCT->begin()); diff --git a/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.h b/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.h index 38f7864104db09c9a2d508dd7ed26daffb3ae8de..7b81fd25cd21e4d51e25c1721425c326b4436665 100644 --- a/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.h +++ b/Simulation/Tools/RDOAnalysis/src/SCT_RDOAnalysis.h @@ -113,6 +113,8 @@ class SCT_RDOAnalysis : public AthAlgorithm { TH1* m_h_eventIndex; TH1* m_h_charge; TH2* m_h_phi_v_eta_sdo; + TH1* m_h_TruthMatchedRDOs; + TTree* m_tree; StringProperty m_ntupleFileName{this, "NtupleFileName", "/ntuples/file1"}; diff --git a/TestBeam/TBCaloGeometry/src/TBCaloCoordinate.cxx b/TestBeam/TBCaloGeometry/src/TBCaloCoordinate.cxx index 64f47ec3785439d206462b569c10773a835aadad..445fc27d1c9fd4735dd303233a56acfdf53029d6 100755 --- a/TestBeam/TBCaloGeometry/src/TBCaloCoordinate.cxx +++ b/TestBeam/TBCaloGeometry/src/TBCaloCoordinate.cxx @@ -11,7 +11,7 @@ #include "TBCaloGeometry/TBCaloCoordinate.h" #include "GaudiKernel/Bootstrap.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IService.h" #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ISvcLocator.h" diff --git a/TestBeam/TBCnv/src/TBByteStreamCnvTool.cxx b/TestBeam/TBCnv/src/TBByteStreamCnvTool.cxx index 9f77816c8067aac59393ad36cc4050ff90821073..fa1ab72feded07f8f4a77fdd9245a26993c6b8a5 100644 --- a/TestBeam/TBCnv/src/TBByteStreamCnvTool.cxx +++ b/TestBeam/TBCnv/src/TBByteStreamCnvTool.cxx @@ -4,7 +4,7 @@ #include "TBCnv/TBByteStreamCnvTool.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "ByteStreamCnvSvc/ByteStreamCnvSvc.h" #include "ByteStreamCnvSvcBase/IROBDataProviderSvc.h" diff --git a/TileCalorimeter/TileConditions/src/TileEMScaleCondAlg.h b/TileCalorimeter/TileConditions/src/TileEMScaleCondAlg.h index bad5ace034947621efa966fd9eddc0dbfe4bc492..740c31dd0d2a8a295148e549b1b3df7114010b4b 100644 --- a/TileCalorimeter/TileConditions/src/TileEMScaleCondAlg.h +++ b/TileCalorimeter/TileConditions/src/TileEMScaleCondAlg.h @@ -17,7 +17,7 @@ #include "AthenaPoolUtilities/CondAttrListCollection.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" /** * @brief Condition algorithm to produce TileEMScale and put it into condition store diff --git a/TileCalorimeter/TileRecUtils/src/TileCellMaskingTool.cxx b/TileCalorimeter/TileRecUtils/src/TileCellMaskingTool.cxx index 4a349f41b2635f858661dde6f119eb7767f17842..873bca789c38430f472ae4ac3d4aee92c3390e6d 100644 --- a/TileCalorimeter/TileRecUtils/src/TileCellMaskingTool.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileCellMaskingTool.cxx @@ -4,7 +4,7 @@ // Gaudi includes #include "GaudiKernel/Service.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Atlas includes #include "AthenaKernel/errorcheck.h" diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilter.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilter.cxx index 7a87b1650ba1b6c7f1e5f404ddfd169fcf1f706e..d929947ccbeadfcde1e4b95a06af0318e2a33ace 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilter.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilter.cxx @@ -19,7 +19,7 @@ #include "AthenaKernel/errorcheck.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // lang include diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilterCool.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilterCool.cxx index cd39b530c4a0594a9ffd01b88a0dd5e4f8885666..477d783b14c27d6ae612032870c0bcee46233b20 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilterCool.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFitFilterCool.cxx @@ -5,7 +5,7 @@ #include "TileEvent/TileRawChannel.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IIncidentSvc.h" // Atlas includes diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFlatFilter.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFlatFilter.cxx index da200a02a37d63df79d79cbabc67e427f1440f12..ca39c80ada9234938210ec6443532ba7c4685177 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFlatFilter.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderFlatFilter.cxx @@ -5,7 +5,7 @@ #include "TileEvent/TileRawChannel.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Atlas includes #include "AthAllocators/DataPool.h" diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderMF.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderMF.cxx index f5a53f0eea6a6787b4fee30a393f310d0bdb9918..b67c1087fb72cea2882577f95a7db03fb6915034 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderMF.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderMF.cxx @@ -18,7 +18,7 @@ #include "AthenaKernel/errorcheck.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // lang include #include <algorithm> diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderManyAmps.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderManyAmps.cxx index 21a8686b63a5bec5ddb7d2ff2e7fc4aa8331db27..234fb28ca51908b3369bdf802fc8af5e1623954f 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderManyAmps.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderManyAmps.cxx @@ -15,7 +15,7 @@ #include "TileRecUtils/TileFilterTester.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //Atlas includes #include "AthAllocators/DataPool.h" diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderOpt2Filter.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderOpt2Filter.cxx index 2e0082e0d21f5c4030acaad63a2af4af21f7b0d0..5ef745a88fac3868e0220a6825dc3ede91b3384f 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderOpt2Filter.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderOpt2Filter.cxx @@ -32,7 +32,7 @@ #include "AthenaKernel/errorcheck.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Matrix/Matrix.h" //using namespace std; diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderQIEFilter.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderQIEFilter.cxx index 6f898b871acdef1abf4df12fbc06140737421f64..60d40ea8b5d54fb330c244508b804d92bbb44f3f 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderQIEFilter.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderQIEFilter.cxx @@ -22,7 +22,7 @@ #include "TileCalibBlobObjs/TileCalibUtils.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Atlas includes #include "AthAllocators/DataPool.h" diff --git a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderWienerFilter.cxx b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderWienerFilter.cxx index 6ec1792a13aa7515040778da89c45ac76804de69..2b3c7b9dba0f438f981f5ee10ca7bd4533482c3e 100644 --- a/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderWienerFilter.cxx +++ b/TileCalorimeter/TileRecUtils/src/TileRawChannelBuilderWienerFilter.cxx @@ -6,7 +6,7 @@ #include "TileCalibBlobObjs/TileCalibUtils.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GeoModelInterfaces/IGeoModelSvc.h" // Atlas includes diff --git a/TileCalorimeter/TileSimUtils/src/TileCalibHitCntNtup.cxx b/TileCalorimeter/TileSimUtils/src/TileCalibHitCntNtup.cxx index 6053a20abf54dfdd0721abcfdd90e26f12cbdd29..4b086efc0d24043504153bcb5c451c37df8a9689 100644 --- a/TileCalorimeter/TileSimUtils/src/TileCalibHitCntNtup.cxx +++ b/TileCalorimeter/TileSimUtils/src/TileCalibHitCntNtup.cxx @@ -6,7 +6,7 @@ // Atlas includes #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/errorcheck.h" // ROOT includes diff --git a/TileCalorimeter/TileSimUtils/src/TileCalibHitNtuple.cxx b/TileCalorimeter/TileSimUtils/src/TileCalibHitNtuple.cxx index 10e10f12f88907719cb0aafcb797a420448bfcad..70a433b97236713137014bd1057347f436555fbb 100644 --- a/TileCalorimeter/TileSimUtils/src/TileCalibHitNtuple.cxx +++ b/TileCalorimeter/TileSimUtils/src/TileCalibHitNtuple.cxx @@ -6,7 +6,7 @@ // Atlas includes #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaKernel/errorcheck.h" // ROOT includes diff --git a/Tools/PyJobTransforms/scripts/makeTrfJSONSignatures.py b/Tools/PyJobTransforms/scripts/makeTrfJSONSignatures.py index 7f5f5461636d735acc17d2adb73fae24b8ee609a..66c370bed0eb0b60f995d1a4200cba1bc9b0bfe0 100755 --- a/Tools/PyJobTransforms/scripts/makeTrfJSONSignatures.py +++ b/Tools/PyJobTransforms/scripts/makeTrfJSONSignatures.py @@ -164,7 +164,7 @@ def main(): msg.info('Processing transform {0}:'.format(transform_path)) try: - trfModule = __import__(transform_module, globals(), locals(), ['getTransform'], -1) + trfModule = __import__(transform_module, globals(), locals(), ['getTransform'], 0) except Exception as e: msg.warning('Failed to import transform {0} ({1}) - ignored'.format(transform_module, e)) diff --git a/Tools/PyJobTransforms/scripts/makeTrfSignatures.py b/Tools/PyJobTransforms/scripts/makeTrfSignatures.py index 2ce23e42503c13b2a6cb188e85d57d6986579526..ed670c19c9ed4275b3529079a8d6f06dfeb30470 100755 --- a/Tools/PyJobTransforms/scripts/makeTrfSignatures.py +++ b/Tools/PyJobTransforms/scripts/makeTrfSignatures.py @@ -43,7 +43,7 @@ def main(): logging.info('Processing argument signatures for {0}'.format(trf)) # Use __import__ to allow us to import from the trf list try: - trfModule = __import__('{0}'.format(trf), globals(), locals(), ['getTransform'], -1) + trfModule = __import__('{0}'.format(trf), globals(), locals(), ['getTransform'], 0) except ImportError: logging.warning('Failed to import transform {0} - ignored'.format(trf)) continue diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExCellWriterSvc.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExCellWriterSvc.h index ec9bc4cd60dad47e2dc10eac751020e127c09d45..a0f2ae278f69ce02c4d3d8cc3ec7fcf241ecfc0d 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExCellWriterSvc.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExCellWriterSvc.h @@ -7,7 +7,7 @@ #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/IInterface.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "ActsGeometry/IActsExCellWriterSvc.h" diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationAlg.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationAlg.h index 9c6aa5d3058a8296f7eee7da2395dd427322651d..89635fe82c745fa86a91ed512e04dff1590691d0 100755 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationAlg.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationAlg.h @@ -8,7 +8,7 @@ // ATHENA #include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/ISvcLocator.h" // ACTS diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationTool.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationTool.h index 942549f678952093b50c41bd263e04205295a7e5..3b3588e846d323dfab659776bab1ba219e84abb3 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationTool.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationTool.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/IInterface.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/EventContext.h" // Need to include this early; otherwise, we run into errors with diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialJsonWriterTool.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialJsonWriterTool.h index c457d4ee3efc7186e6da1a7b372e6a9b91d97c90..6ae582a783f4b1d08e89b20db65538f4185a3865 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialJsonWriterTool.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialJsonWriterTool.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/IInterface.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ // PACKAGE #include "ActsGeometryInterfaces/IActsMaterialJsonWriterTool.h" diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialMapping.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialMapping.h index 10a7105a2454a5b577f08d4154d85db3002dfb64..4cad3f6f2e6d9f0781921fdb49447f06201ec13a 100755 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialMapping.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialMapping.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/ISvcLocator.h" #include "StoreGate/ReadHandleKey.h" #include "TrkGeometry/MaterialStepCollection.h" diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialTrackWriterSvc.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialTrackWriterSvc.h index c8aeff8c547570008f850dc0fbe71aa8629fa78e..7c4e5a32d90eb45bde17de11d0532a349d89e049 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialTrackWriterSvc.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsMaterialTrackWriterSvc.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/IInterface.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include <vector> #include <deque> diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsObjWriterTool.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsObjWriterTool.h index 23f101e8f8584a48d2b5474306a2a84fffe5198f..5ad9eea85e6fbe1d16901053dbb0d6e3086e2c14 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsObjWriterTool.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsObjWriterTool.h @@ -11,7 +11,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/IInterface.h" #include "ActsGeometry/ActsGeometryContext.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ namespace Acts { diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsPropStepRootWriterSvc.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsPropStepRootWriterSvc.h index 7c63e67f3a7f297c3a4a07e0e5964556dce2fc28..ec67d1c3b007b349b8bb489fac2e8e54c95df994 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsPropStepRootWriterSvc.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsPropStepRootWriterSvc.h @@ -7,7 +7,7 @@ #include "AthenaBaseComps/AthService.h" #include "GaudiKernel/IInterface.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "ActsGeometry/IActsPropStepRootWriterSvc.h" diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsSurfaceMappingTool.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsSurfaceMappingTool.h index 95e225b023cce7ede305185212cd48cb7367c004..d9211d1e9bbff72b70b74d08cab51d2c85beca91 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsSurfaceMappingTool.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsSurfaceMappingTool.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/IInterface.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/EventContext.h" // PACKAGE diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsVolumeMappingTool.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsVolumeMappingTool.h index e22160eb09baf4e517c8401aa77241a4d72af9ee..4b04bd4dd468ffafd4b1866e4158abf09c370fdc 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsVolumeMappingTool.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsVolumeMappingTool.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/IInterface.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/EventContext.h" // PACKAGE diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometry.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometry.h index 9d79fb9e7ed6590d5daddfe8110e67e2c8842152..c86281634a50dc4c03a4d8d901ddea99b500507a 100755 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometry.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometry.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaKernel/IAthRNGSvc.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/ISvcLocator.h" // PACKAGE diff --git a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometryTransforms.h b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometryTransforms.h index 14d1da4953312df6e5d4c9c85b60d29c5086a7e3..32fcf333e67bfca3bcdf5d8d8fec32552b75d2f5 100644 --- a/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometryTransforms.h +++ b/Tracking/Acts/ActsGeometry/ActsGeometry/ActsWriteTrackingGeometryTransforms.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgorithm.h" #include "GaudiKernel/ServiceHandle.h" #include "AthenaKernel/IAthRNGSvc.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/ISvcLocator.h" // PACKAGE diff --git a/Tracking/Acts/ActsGeometry/python/ActsTrackingGeometryTool.py b/Tracking/Acts/ActsGeometry/python/ActsTrackingGeometryTool.py new file mode 100644 index 0000000000000000000000000000000000000000..0537e430445c037d5230c3e65760aaab34f1bab1 --- /dev/null +++ b/Tracking/Acts/ActsGeometry/python/ActsTrackingGeometryTool.py @@ -0,0 +1,60 @@ +# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + +################################################################################## +# The ActsTrackingGeometryTool fragment +# +# usage: +# include('ActsGeometry/ActsTrackingGeometryTool.py') +################################################################################## + +from __future__ import print_function + +# import the DetFlags for the setting +from AthenaCommon.DetFlags import DetFlags + +from TrkDetDescrSvc.TrkDetDescrJobProperties import TrkDetFlags + +# import the Extrapolator configurable +from ActsGeometry.ActsGeometryConf import ActsTrackingGeometryTool + +class ConfiguredActsTrackingGeometry( ActsTrackingGeometryTool ) : + # constructor + def __init__(self,name): + + subDetectors = [] + if DetFlags.pixel_on(): + subDetectors += ["Pixel"] + if DetFlags.SCT_on(): + subDetectors += ["SCT"] + if DetFlags.TRT_on(): + subDetectors += ["TRT"] + if DetFlags.Calo_on(): + subDetectors += ["Calo"] + + from ActsGeometry.ActsGeometryConf import ActsTrackingGeometrySvc + actsTrackingGeometrySvc = ActsTrackingGeometrySvc(name = "ActsTrackingGeometrySvc", + BuildSubDetectors = subDetectors) + + from AthenaCommon.AppMgr import ServiceMgr + ServiceMgr += actsTrackingGeometrySvc + + + from ActsGeometry.ActsGeometryConf import NominalAlignmentCondAlg + from AthenaCommon.AlgSequence import AthSequencer + condSeq = AthSequencer("AthCondSeq") + if not hasattr(condSeq, "NominalAlignmentCondAlg"): + condSeq += NominalAlignmentCondAlg(name = "NominalAlignmentCondAlg") + + ActsTrackingGeometryTool.__init__(self, + name, + ActsTrackingGeometrySvc=actsTrackingGeometrySvc) + +################################################################################## + +# now create the instance +from AthenaCommon.AppMgr import ToolSvc +if not hasattr(ToolSvc, "ActsTrackingGeometryTool"): + actsTrackingGeometryTool = ConfiguredActsTrackingGeometry(name = "ActsTrackingGeometryTool") + # add it to the ServiceManager + ToolSvc += actsTrackingGeometryTool + diff --git a/Tracking/Acts/ActsPriVtxFinder/ActsPriVtxFinder/ActsAdaptiveMultiPriVtxFinderTool.h b/Tracking/Acts/ActsPriVtxFinder/ActsPriVtxFinder/ActsAdaptiveMultiPriVtxFinderTool.h index 2093fe29d1f97ef553e5ba36a4a819106c9dce34..9b742841e1606e2e238c765fdcf1c9855850440c 100644 --- a/Tracking/Acts/ActsPriVtxFinder/ActsPriVtxFinder/ActsAdaptiveMultiPriVtxFinderTool.h +++ b/Tracking/Acts/ActsPriVtxFinder/ActsPriVtxFinder/ActsAdaptiveMultiPriVtxFinderTool.h @@ -9,7 +9,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/IInterface.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/EventContext.h" #include "BeamSpotConditionsData/BeamSpotData.h" #include "TrkTrackLink/ITrackLink.h" diff --git a/Tracking/Acts/ActsPriVtxFinder/share/ActsPriVtxFinder_jobOptions.py b/Tracking/Acts/ActsPriVtxFinder/share/ActsPriVtxFinder_jobOptions.py new file mode 100644 index 0000000000000000000000000000000000000000..4189a85049cac4640b2cda11c2e743f326d25de6 --- /dev/null +++ b/Tracking/Acts/ActsPriVtxFinder/share/ActsPriVtxFinder_jobOptions.py @@ -0,0 +1,237 @@ +from AthenaCommon.AppMgr import ServiceMgr +#-------------------------------------------------------------- +# control input +#-------------------------------------------------------------- +# --- specify input type +#if not 'readAOD' in dir(): +readAOD = True +readESD = not readAOD + +# Use Acts AMVF +doAMVF = True +useActs = True +#-------------------------------------------------------------- +# Event related parameters +#-------------------------------------------------------------- +nEvents = 30 + +# Set your input AOD file here +myfile = "" + +from AthenaCommon.AthenaCommonFlags import athenaCommonFlags + +if readESD: + athenaCommonFlags.FilesInput = [ "ESD.pool.root" ] +elif readAOD: + athenaCommonFlags.FilesInput = [ myfile ] + +import AthenaPython.ConfigLib as apcl +cfg = apcl.AutoCfg(name = 'InDetRecExampleAutoConfig', input_files=athenaCommonFlags.FilesInput()) + +theApp.EvtMax = nEvents + +#-------------------------------------------------------------- +# control output (here so RecExCommon via auto-config doesn't delete the global flags) +#-------------------------------------------------------------- +# --- controls what is written out. ESD includes AOD, so it's normally enough +doWriteESD = False and readESD +doWriteAOD = True + +#-------------------------------------------------------------- +# control algorithms to be rerun +#-------------------------------------------------------------- +# --- run InDetRecStatistics (only possible if readESD = True) +doInDetRecStatistics = True and readESD +# --- refit the EXISTING tracks in ESD (only possible if readESD = True) +doRefitTracks = False and readESD +# --- redo the pattern reco and the tracking (do not use that in conjunction with doRefitTracks above) +redoPatternRecoAndTracking = False and not doRefitTracks and readESD +# --- redo primary vertexing (will be set to true later automatically if you redid the tracking and want to redo the TrackParticle creation) +reDoPrimaryVertexing = True +# --- redo particle creation (recommended after revertexing on ESD, otherwise trackparticles are inconsistent) +reDoParticleCreation = False and readESD and reDoPrimaryVertexing +# --- redo conversion finding +reDoConversions = False +# --- redo V0 finding +reDoV0Finder = False + +#-------------------------------------------------------------- +# Control - standard options (as in jobOptions.py) +#-------------------------------------------------------------- +# --- Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) +OutputLevel = INFO +# --- produce an atlantis data file +doJiveXML = False +# --- run the Virtual Point 1 event visualisation +doVP1 = False +# --- do auditors ? +doAuditors = True + +import os +if os.environ['CMTCONFIG'].endswith('-dbg'): + # --- do EDM monitor (debug mode only) + doEdmMonitor = True + # --- write out a short message upon entering or leaving each algorithm + doNameAuditor = True +else: + doEdmMonitor = False + doNameAuditor = False + +# safety section ... redoing tracking/vertexing is a tricky business to stay consistent ... +if redoPatternRecoAndTracking and reDoParticleCreation: + reDoPrimaryVertexing = True + +if not (readESD or readAOD): + print( "You have to turn on reading of ESD or AOD! That's the purpose of this jobO!") +if readESD and readAOD: + print( "I can either read ESD or AOD but not both at the same time! Turn one or the other off!") +if readESD and reDoPrimaryVertexing and not reDoParticleCreation: + print( "INFO! You are running on ESD, redoing the vertexing but not recreating the TrackParticles!") + print( "INFO! To avoid inconsistencies do not use the old track particles in conjunction with the new vertex!") + if doWriteESD or doWriteAOD: + print( "INFO! To avoid inconsistencies the old track particle (truth) container will not be in the new ESD/AOD!") +if readAOD and reDoPrimaryVertexing: + print( "INFO! You are running on AOD, and redoing the vertexing. At the moment new track particles cannot be made from old ones.") + print( "INFO! To avoid inconsistencies do not use the old track particles in conjunction with the new vertex!") + if doWriteAOD: + print( "INFO! To avoid inconsistencies the old track particle (truth) container will not be in the new AOD!") +if doRefitTracks and (reDoPrimaryVertexing or reDoParticleCreation): + print( "INFO! You are refitting tracks and also revertex and/or recreate track particles") + print( "INFO! The input for that will be the refitted tracks!") + +#-------------------------------------------------------------- +# Additional Detector setup +#-------------------------------------------------------------- + +from RecExConfig.RecFlags import rec +rec.Commissioning=False + +from AthenaCommon.DetFlags import DetFlags +# --- switch on InnerDetector +DetFlags.ID_setOn() +# --- and switch off all the rest +DetFlags.Calo_setOff() +DetFlags.Muon_setOff() +# --- print(out) +DetFlags.Print() + +#-------------------------------------------------------------- +# Load Reconstruction configuration for tools only +#-------------------------------------------------------------- +#-------------------------------------------------------------- +# Load InDet configuration +#-------------------------------------------------------------- +import MagFieldServices.SetupField + +from AthenaCommon.GlobalFlags import globalflags +globalflags.DetDescrVersion = "ATLAS-R2-2016-00-01-00" + +# --- setup InDetJobProperties +from InDetRecExample.InDetJobProperties import InDetFlags +InDetFlags.doTruth = (globalflags.DataSource == 'geant4' and globalflags.InputFormat == "pool") +InDetFlags.preProcessing = redoPatternRecoAndTracking +InDetFlags.doPRDFormation = False # those two will be (later) automatically false if +InDetFlags.doSpacePointFormation = redoPatternRecoAndTracking # preProcessing is false +InDetFlags.doNewTracking = redoPatternRecoAndTracking +#InDetFlags.doiPatRec = False +#InDetFlags.doxKalman = False +InDetFlags.doLowPt = False +InDetFlags.doBackTracking = redoPatternRecoAndTracking +InDetFlags.doTRTStandalone = redoPatternRecoAndTracking +InDetFlags.doTrtSegments = redoPatternRecoAndTracking +InDetFlags.postProcessing = reDoPrimaryVertexing or reDoParticleCreation or reDoConversions or doInDetRecStatistics or reDoV0Finder +InDetFlags.doTrackSegmentsPixel = False +InDetFlags.doTrackSegmentsSCT = False +InDetFlags.doTrackSegmentsTRT = False +InDetFlags.doSlimming = False +InDetFlags.loadTools = True +InDetFlags.doVertexFinding = reDoPrimaryVertexing +InDetFlags.doParticleCreation = reDoParticleCreation +InDetFlags.doConversions = reDoConversions +InDetFlags.doSecVertexFinder = False +InDetFlags.doV0Finder = reDoV0Finder +InDetFlags.doSimpleV0Finder = False +InDetFlags.doTrkNtuple = False +InDetFlags.doPixelTrkNtuple = False +InDetFlags.doSctTrkNtuple = False +InDetFlags.doTrtTrkNtuple = False +#InDetFlags.doPixelClusterNtuple = False +InDetFlags.doSctClusterNtuple = False +#InDetFlags.doTrtDriftCircleNtuple = False +InDetFlags.doVtxNtuple = False +InDetFlags.doConvVtxNtuple = False +InDetFlags.doV0VtxNtuple = False +InDetFlags.doRefit = doRefitTracks +InDetFlags.doLowBetaFinder = False +InDetFlags.doPrintConfigurables = True + +# --- activate (memory/cpu) monitoring +#InDetFlags.doPerfMon = True + +# IMPORTANT NOTE: initialization of the flags and locking them is done in InDetRec_jobOptions.py! +# This way RecExCommon just needs to import the properties without doing anything else! +# DO NOT SET JOBPROPERTIES AFTER THIS LINE! The change will be ignored! + +from InDetRecExample.InDetKeys import InDetKeys +if InDetFlags.doVertexFinding() and readAOD: + InDetKeys.Tracks = InDetKeys.TrackParticles() + +# uncomment if you don't want to overwrite the original fits (e.g. for comparison) +# this would also require enabling "pass-through" output mode (see bottom of this file) +# or else manually adding the input collection to the output stream +if InDetFlags.doVertexFinding(): + InDetKeys.xAODVertexContainer = "RefitPrimaryVertices" + +if readESD and not redoPatternRecoAndTracking: + InDetKeys.UnslimmedTracks = 'Tracks' + InDetKeys.UnslimmedTracksTruth = 'TrackTruthCollection' + +# Set container names +if doWriteESD: + InDetKeys.OutputESDFileName = "InDetRecESD_new.root" + +toolString = "" +if useActs: + toolString = "acts" +else: + toolString = "athena" + +if doWriteAOD: + InDetKeys.OutputAODFileName = "InDetRecAOD_{}_n{}.root".format(toolString,nEvents) + +print( "Printing InDetKeys") +InDetKeys.lockAllExceptAlias() +InDetKeys.print_JobProperties() + +#-------------------------------------------------------------- +# enable statistics for reading ESD testing +#-------------------------------------------------------------- + +InDetFlags.doStatistics = doInDetRecStatistics +TrackCollectionKeys = [InDetKeys.Tracks()] +TrackCollectionTruthKeys = [InDetKeys.TracksTruth()] + +# Uncomment to use variant vertex seeding and/or finding +if doAMVF: + InDetFlags.primaryVertexSetup = "GaussAdaptiveMultiFinding" +# Use Acts primary vertexing +InDetFlags.useActsPriVertexing = useActs + +#-------------------------------------------------------------- +# load master joboptions file +#-------------------------------------------------------------- + +include("InDetRecExample/InDetRec_all.py") + +from GaudiSvc.GaudiSvcConf import THistSvc +ServiceMgr += THistSvc() +ServiceMgr.THistSvc.Output += ["InDetAdaptiveMultiPriVxFinderTool DATAFILE='AMVF_{}_output_nEvent{}.root' OPT='RECREATE'".format(toolString,nEvents)] + +# Set to True if you want to write out all input data ("pass-through" mode) +if doWriteESD: + StreamESD.TakeItemsFromInput = False + +if doWriteAOD: + StreamAOD.TakeItemsFromInput = True + +from AthenaCommon.ConfigurationShelve import saveToAscii; saveToAscii("config_vertexing_{}.txt".format(toolString)); diff --git a/Tracking/Acts/ActsPriVtxFinder/src/ActsAdaptiveMultiPriVtxFinderTool.cxx b/Tracking/Acts/ActsPriVtxFinder/src/ActsAdaptiveMultiPriVtxFinderTool.cxx index 3cd5914f102f2921bbbfbb65943659944934fdb5..69d853cb9831bec7db9f5de319ddffe1630a781b 100755 --- a/Tracking/Acts/ActsPriVtxFinder/src/ActsAdaptiveMultiPriVtxFinderTool.cxx +++ b/Tracking/Acts/ActsPriVtxFinder/src/ActsAdaptiveMultiPriVtxFinderTool.cxx @@ -104,7 +104,7 @@ ActsAdaptiveMultiPriVtxFinderTool::initialize() // Vertex seed finder VertexSeedFinder::Config seedFinderConfig; - //seedFinderConfig.trackDensityEstimator = trackDensity; + seedFinderConfig.trackDensityEstimator = trackDensity; VertexSeedFinder seedFinder(seedFinderConfig, extractParameters); VertexFinder::Config finderConfig(std::move(fitter), seedFinder, ipEst, linearizer); diff --git a/Tracking/TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h b/Tracking/TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h index 843ae7714d571b9058277f295bbaea7bd8ad7071..22f57382df0e485cf182f9649b9e362544af49ae 100755 --- a/Tracking/TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h +++ b/Tracking/TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h @@ -14,7 +14,7 @@ #include "TrkGeometry/LayerMaterialMap.h" #include "TrkDetDescrInterfaces/IGeometryBuilder.h" #include "TrkDetDescrInterfaces/IGeometryProcessor.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ToolHandle.h" #include "AthenaKernel/IOVSvcDefs.h" #include "AthenaBaseComps/AthService.h" diff --git a/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/CMakeLists.txt b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/CMakeLists.txt index 3011f269fb4381180b7a7062f0e27f1c6d4670b5..8d4149792b3aad99d6952657476d80d681585b0a 100644 --- a/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/CMakeLists.txt +++ b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/CMakeLists.txt @@ -5,21 +5,15 @@ # Declare the package name: atlas_subdir( TrkMultiComponentStateOnSurface ) -# Declare the package's dependencies: -atlas_depends_on_subdirs( PUBLIC - Tracking/TrkEvent/TrkEventPrimitives - Tracking/TrkEvent/TrkParameters - Tracking/TrkEvent/TrkTrack - PRIVATE - GaudiKernel - Tracking/TrkDetDescr/TrkSurfaces - Tracking/TrkEvent/TrkMaterialOnTrack - Tracking/TrkEvent/TrkMeasurementBase ) - # Component(s) in the package: atlas_add_library( TrkMultiComponentStateOnSurface src/*.cxx PUBLIC_HEADERS TrkMultiComponentStateOnSurface - LINK_LIBRARIES TrkEventPrimitives TrkParameters TrkTrack + LINK_LIBRARIES TrkEventPrimitives TrkParameters TrkTrack AthContainers PRIVATE_LINK_LIBRARIES GaudiKernel TrkSurfaces TrkMaterialOnTrack TrkMeasurementBase ) +atlas_add_dictionary( TrkMultiComponentStateOnSurfaceDict + TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurfaceDict.h + TrkMultiComponentStateOnSurface/selection.xml + LINK_LIBRARIES TrkMultiComponentStateOnSurface) + diff --git a/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/MultiComponentStateOnSurface.h b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/MultiComponentStateOnSurface.h index 09b2c1624d5a1da0beac8a003001992532752556..a88f025329fcd4f8f64d383751f305309c2d4d8a 100755 --- a/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/MultiComponentStateOnSurface.h +++ b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/MultiComponentStateOnSurface.h @@ -9,15 +9,15 @@ begin : Monday 20th December 2004 author : atkinson, amorley,anastopoulos email : Anthony.Morley@cern.ch (adapted from Edward Moyse) description : This class is a multi component adaption of the class - TrackStateOnSurface. + TrackStateOnSurface. In that class the track state was represented by a single 5 component track paramter vector (a0, z0, phi0, theta0, q/p) and the associated - covariance matrix. - In its multi-component form the track state on surface - is represented by many track parameters each with a covariance matrix - and additionally a weighting is attached to each component - which reflects the importance of that particular component + covariance matrix. + In its multi-component form the track state on surface + is represented by many track parameters each with a covariance matrix + and additionally a weighting is attached to each component + which reflects the importance of that particular component in the overall mixture of components which is used to describe the track state at that surface. Instances of this class are EDM objects. So objects passed @@ -101,7 +101,7 @@ public: /** Clone method for deep copy of MultiComponentStateOnSurface - overidden from base class */ virtual TrackStateOnSurface* clone() const override final; - + /** This is Multi, since we MultiComponent */ virtual TrackStateOnSurface::Variety variety() const override final; @@ -126,5 +126,13 @@ operator<<(std::ostream&, const MultiComponentStateOnSurface&); } // end of Trk namespace +/// Trk::Track is constucted from DataVector<const Trk::TrackStateOnSurface>. +/// Let the type system know this class inherits so we can have +/// DataVector<const Trk::MultiComponentStateOnSurface> +#include "AthContainers/DataVector.h" +DATAVECTOR_BASE(const Trk::MultiComponentStateOnSurface,const Trk::TrackStateOnSurface); +typedef DataVector<const Trk::MultiComponentStateOnSurface> TrkMultiComponentStateOnSurfaceDV; + + #include "TrkMultiComponentStateOnSurface/MultiComponentStateOnSurface.icc" #endif diff --git a/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurfaceDict.h b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurfaceDict.h new file mode 100644 index 0000000000000000000000000000000000000000..fcd55673abcfcb5dcf97938a10ef4db78a8ede8f --- /dev/null +++ b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurfaceDict.h @@ -0,0 +1,9 @@ +/* + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef TrkMultiComponentStateOnSurfaceDict_H +#define TrkMultiComponentStateOnSurfaceDitc_H +#include "TrkMultiComponentStateOnSurface/MultiComponentStateOnSurface.h" +#endif + diff --git a/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/selection.xml b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/selection.xml new file mode 100644 index 0000000000000000000000000000000000000000..572d27dd347b7846dc46d6955609f71bc0eb97d5 --- /dev/null +++ b/Tracking/TrkEvent/TrkMultiComponentStateOnSurface/TrkMultiComponentStateOnSurface/selection.xml @@ -0,0 +1,10 @@ +<lcgdict> + +<class name = "Trk::MultiComponentStateOnSurface" > +<field name = "m_multiComponentState" transient="true" /> +<field name = "m_mixtureModeQoverP" transient="true" /> +</class> + +<class name="TrkMultiComponentStateOnSurfaceDV" /> + +</lcgdict> diff --git a/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/ExtrapolatorComparisonTest.h b/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/ExtrapolatorComparisonTest.h index aa969d304ab7560608f5adf3ba6dad5e0698ada4..fa61505d3492948c4159589b4006b7b8bd42e5b8 100644 --- a/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/ExtrapolatorComparisonTest.h +++ b/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/ExtrapolatorComparisonTest.h @@ -15,7 +15,7 @@ // ATHENA #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/ISvcLocator.h" #include "GaudiKernel/EventContext.h" #include "GaudiKernel/RndmGenerators.h" diff --git a/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/PropResultRootWriterSvc.h b/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/PropResultRootWriterSvc.h index 420ca7a2f2fc413999e2e55b9185e63eb910822f..af7335299ac5a57adaa47b0d247cde9821c7f28d 100644 --- a/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/PropResultRootWriterSvc.h +++ b/Tracking/TrkExtrapolation/TrkExAlgs/TrkExAlgs/PropResultRootWriterSvc.h @@ -7,7 +7,7 @@ #define TRKEXALGS_PROPRESULTROOTWRITERSVC_H #include "GaudiKernel/IInterface.h" -#include "GaudiKernel/Property.h" /*no forward decl: typedef*/ +#include "Gaudi/Property.h" /*no forward decl: typedef*/ #include "GaudiKernel/ITHistSvc.h" #include "AthenaBaseComps/AthService.h" diff --git a/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/IMaterialEffectsUpdator.h b/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/IMaterialEffectsUpdator.h index 1334fae9d69713437536362869bd13daf7827e0e..a2aae99c34fe19c8d37adbeaedcda384411df0a2 100755 --- a/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/IMaterialEffectsUpdator.h +++ b/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/IMaterialEffectsUpdator.h @@ -84,61 +84,61 @@ public: virtual std::unique_ptr<ICache> getCache() const = 0; /** Updator interface (full update for a layer): - The parmeters are given as a pointer, they are delete inside the update + The parameters are given as a pointer, they are delete inside the update method. Layer-based material update */ virtual const TrackParameters* update( ICache& icache, - const TrackParameters* parm, + const TrackParameters* param, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** User updator interface (full update for a layer): - The parmeters are given as a pointer, they are deleted inside the update - method. Update occurs on the place where the parameters parm are according - to the specified MaterialEffectsOnTrack + The parameters are given as a pointer owned by the caller. + The returned ptr is owned by the caller */ - virtual const TrackParameters* update( + virtual TrackParameters* update( ICache& icache, - const TrackParameters* parm, + const TrackParameters* param, const MaterialEffectsOnTrack& meff, Trk::ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** Updator interface (pre-update for a layer): - The parmeters are given as a pointer, they are delete inside the update - method. Layer-based material update + The parameters are given as a pointer owned by the caller. + The returned ptr is owned by the caller */ - virtual const TrackParameters* preUpdate( + virtual TrackParameters* preUpdate( ICache& icache, - const TrackParameters* parm, + const TrackParameters* param, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** Updator interface (pre-update for a layer): - The parmeters are given as a pointer, they are delete inside the update - method. Layer-based material update if the postUpdate fails, it returns 0 + The parameters are given as a pointer owned by the caller. + The returned ptr is owned by the caller + Layer-based material update if the postUpdate fails, it returns 0 */ - virtual const TrackParameters* postUpdate( + virtual TrackParameters* postUpdate( ICache& icache, - const TrackParameters& parm, + const TrackParameters& param, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** Updator interface: - The parmeters are given as a pointer, they are delete inside the update + The parameters are given as a pointer, they are delete inside the update method. MaterialProperties based material update - used by all Layer-based methods */ - virtual const TrackParameters* update( + virtual TrackParameters* update( ICache& icache, - const TrackParameters& parm, + const TrackParameters& param, const MaterialProperties& mprop, double pathcorrection, PropDirection dir = alongMomentum, @@ -150,58 +150,51 @@ public: /** Model Action:*/ virtual void modelAction(ICache& icache, - const TrackParameters* parm = nullptr) const = 0; + const TrackParameters* param = nullptr) const = 0; /** Updator interface (full update for a layer): - The parmeters are given as a pointer, they are delete inside the update - method. Layer-based material update */ - virtual const TrackParameters* update( - const TrackParameters* parm, + virtual TrackParameters* update( + const TrackParameters* param, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** User updator interface (full update for a layer): - The parmeters are given as a pointer, they are deleted inside the update - method. Update occurs on the place where the parameters parm are according - to the specified MaterialEffectsOnTrack */ - virtual const TrackParameters* update( - const TrackParameters* parm, + virtual TrackParameters* update( + const TrackParameters* param, const MaterialEffectsOnTrack& meff, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** Updator interface (pre-update for a layer): - The parmeters are given as a pointer, they are delete inside the update + The parameters are given as a pointer, they are delete inside the update method. Layer-based material update */ - virtual const TrackParameters* preUpdate( - const TrackParameters* parm, + virtual TrackParameters* preUpdate( + const TrackParameters* param, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** Updator interface (pre-update for a layer): - The parmeters are given as a pointer, they are delete inside the update - method. Layer-based material update if the postUpdate fails, it returns 0 */ - virtual const TrackParameters* postUpdate( - const TrackParameters& parm, + + virtual TrackParameters* postUpdate( + const TrackParameters& param, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, MaterialUpdateMode matupmode = addNoise) const = 0; /** Updator interface: - The parmeters are given as a pointer, they are delete inside the update - method. MaterialProperties based material update + MaterialProperties based material update - used by all Layer-based methods */ - virtual const TrackParameters* update( - const TrackParameters& parm, + virtual TrackParameters* update( + const TrackParameters& param, const MaterialProperties& mprop, double pathcorrection, PropDirection dir = alongMomentum, @@ -216,7 +209,7 @@ public: * doing non-local MaterialEffectsUpdates for different models * Optional */ - virtual void modelAction(const TrackParameters* parm = nullptr) const = 0; + virtual void modelAction(const TrackParameters* param = nullptr) const = 0; }; } // end of namespace diff --git a/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.h b/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.h index 3fcfc1d67079db78d60663bddac0ccf2b7e0adc0..e9886fc221694c2ea938b8590317e622dd56f2d5 100755 --- a/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.h +++ b/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.h @@ -74,13 +74,16 @@ public: /** INavigator interface method - returns the TrackingGeometry used for * navigation */ - virtual const TrackingGeometry* trackingGeometry() const = 0; + virtual const TrackingGeometry* trackingGeometry( + const EventContext& ctx) const = 0; /** INavigator interface method - global search for the Volume one is in */ - virtual const TrackingVolume* volume(const Amg::Vector3D& gp) const = 0; + virtual const TrackingVolume* volume(const EventContext& ctx, + const Amg::Vector3D& gp) const = 0; /** INavigator interface method - forward hightes TrackingVolume */ - virtual const TrackingVolume* highestVolume() const = 0; + virtual const TrackingVolume* highestVolume( + const EventContext& ctx) const = 0; /** INavigator interface method - getting the closest TrackParameters from a * Track to a Surface */ @@ -142,6 +145,21 @@ public: const TrackingVolume& vol, double& path) const = 0; + /* + * Methods without explicit Event Context. To be removed + * when clients get migrated + */ + + /** INavigator interface method - returns the TrackingGeometry used for + * navigation */ + virtual const TrackingGeometry* trackingGeometry() const; + + /** INavigator interface method - global search for the Volume one is in */ + virtual const TrackingVolume* volume(const Amg::Vector3D& gp) const; + + /** INavigator interface method - forward hightes TrackingVolume */ + virtual const TrackingVolume* highestVolume() const; + /** INavigator interface method - getting the next BoundarySurface not knowing * the Volume*/ virtual const BoundarySurface<TrackingVolume>* nextBoundarySurface( diff --git a/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.icc b/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.icc index a9b9ddd34cf2afae18fdef2377b663090275f60a..d8676b50b721b6bba21088d1fb9bf8677298c54b 100644 --- a/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.icc +++ b/Tracking/TrkExtrapolation/TrkExInterfaces/TrkExInterfaces/INavigator.icc @@ -7,8 +7,26 @@ * in terms of the Gaudi Context aware ones */ namespace Trk { -/** INavigator interface method - getting the next BoundarySurface not knowing - * the Volume*/ + +inline const TrackingGeometry* +INavigator::trackingGeometry() const +{ + return trackingGeometry(Gaudi::Hive::currentContext()); +} + +inline const TrackingVolume* +INavigator::volume(const Amg::Vector3D& gp) const +{ + + return volume(Gaudi::Hive::currentContext(), gp); +} + +inline const TrackingVolume* +INavigator::highestVolume() const +{ + return highestVolume(Gaudi::Hive::currentContext()); +} + inline const BoundarySurface<TrackingVolume>* INavigator::nextBoundarySurface(const IPropagator& prop, const TrackParameters& parms, @@ -17,8 +35,6 @@ INavigator::nextBoundarySurface(const IPropagator& prop, return nextBoundarySurface(Gaudi::Hive::currentContext(), prop, parms, dir); } -/** INavigator interface method - getting the next BoundarySurface when - * knowing the Volume*/ inline const BoundarySurface<TrackingVolume>* INavigator::nextBoundarySurface(const IPropagator& prop, const TrackParameters& parms, @@ -30,8 +46,6 @@ INavigator::nextBoundarySurface(const IPropagator& prop, Gaudi::Hive::currentContext(), prop, parms, dir, vol); } -/** INavigator interface method - - getting the next Volume and the parameter - * for the next Navigation */ inline NavigationCell INavigator::nextTrackingVolume(const IPropagator& prop, const TrackParameters& parms, @@ -40,13 +54,9 @@ INavigator::nextTrackingVolume(const IPropagator& prop, { return nextTrackingVolume( - Gaudi::Hive::currentContext(),prop,parms, dir, vol); + Gaudi::Hive::currentContext(), prop, parms, dir, vol); } -/** INavigator interface method - getting the next Volume and the parameter - for the next Navigation - - contains full loop over volume boundaries -*/ inline NavigationCell INavigator::nextDenseTrackingVolume(const IPropagator& prop, const TrackParameters& parms, @@ -67,5 +77,4 @@ INavigator::nextDenseTrackingVolume(const IPropagator& prop, path); } - } diff --git a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/DummyMaterialEffectsUpdator.h b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/DummyMaterialEffectsUpdator.h index 489252c532b886c36d905242df3c897d6782644f..a7c8cc871d978f45b13122f0376f608a5c3b5e4a 100755 --- a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/DummyMaterialEffectsUpdator.h +++ b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/DummyMaterialEffectsUpdator.h @@ -47,59 +47,60 @@ class DummyMaterialEffectsUpdator : public AthAlgTool, StatusCode finalize() override; /** Updator interface (full update for a layer): Dummy full update - */ - const TrackParameters* update( const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override; + */ + TrackParameters* update(const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override; /** User updator interface (full update for a layer): The parmeters are given as a pointer, they are deleted inside the update method. Update occurs on the place where the parameters parm are according to the specified MaterialEffectsOnTrack */ - virtual const TrackParameters* update( const TrackParameters* parm, - const MaterialEffectsOnTrack& meff, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override { - (void) meff; - (void)particle; + virtual TrackParameters* update(const TrackParameters* parm, + const MaterialEffectsOnTrack& meff, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override + { + (void)meff; + (void)particle; (void)matupmode; - return parm; + return parm->clone(); } /** Updator interface (pre-update for a layer): Dummy pre update - */ - virtual const TrackParameters* preUpdate( const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override; + */ + virtual TrackParameters* preUpdate(const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override; /** Updator interface (post-update for a layer): Dummy post update - */ - virtual const TrackParameters* postUpdate(const TrackParameters& parm, + */ + virtual TrackParameters* postUpdate(const TrackParameters& parm, const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override; + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override; /** Updator interface: The parmeters are given as a pointer, they are delete inside the update method. MaterialProperties based material update - used by all Layer-based methods */ - virtual const TrackParameters* update( const TrackParameters& parm, - const MaterialProperties& mprop, - double pathcorrection, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override; - + virtual TrackParameters* update(const TrackParameters& parm, + const MaterialProperties& mprop, + double pathcorrection, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override; + virtual void validationAction() const override {}; - virtual void modelAction(const TrackParameters* parm=nullptr) const override{ - if(parm) return; + virtual void modelAction(const TrackParameters* parm=nullptr) const override{ + if(parm) return; } typedef IMaterialEffectsUpdator::ICache ICache; @@ -116,66 +117,74 @@ class DummyMaterialEffectsUpdator : public AthAlgTool, return std::make_unique<Cache>(); } - virtual const TrackParameters* update(ICache& icache, const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override { + virtual TrackParameters* update(ICache& icache, + const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override + { (void)icache; - return update(parm,sf,dir,particle,matupmode); - } + return update(parm, sf, dir, particle, matupmode); + } - virtual const TrackParameters* update(ICache& icache, const TrackParameters* parm, - const MaterialEffectsOnTrack& meff, - Trk::ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override{ + virtual TrackParameters* update(ICache& icache, + const TrackParameters* parm, + const MaterialEffectsOnTrack& meff, + Trk::ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override + { (void)icache; - return update(parm,meff,particle,matupmode); - } + return update(parm, meff, particle, matupmode); + } - virtual const TrackParameters* preUpdate(ICache& icache, const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override{ + virtual TrackParameters* preUpdate(ICache& icache, + const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override + { (void)icache; - return preUpdate(parm,sf,dir,particle,matupmode); + return preUpdate(parm, sf, dir, particle, matupmode); } - virtual const TrackParameters* postUpdate(ICache& icache,const TrackParameters& parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override{ + virtual TrackParameters* postUpdate(ICache& icache, + const TrackParameters& parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override + { (void)icache; return postUpdate(parm,sf,dir,particle,matupmode); } - virtual const TrackParameters* update(ICache& icache, const TrackParameters& parm, - const MaterialProperties& mprop, - double pathcorrection, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override{ + virtual TrackParameters* update(ICache& icache, const TrackParameters& parm, + const MaterialProperties& mprop, + double pathcorrection, + PropDirection dir=alongMomentum, + ParticleHypothesis particle=pion, + MaterialUpdateMode matupmode=addNoise) const override{ (void) icache; return update(parm,mprop,pathcorrection,dir,particle,matupmode); } /** Validation Action: */ - virtual void validationAction(ICache& icache) const override { + virtual void validationAction(ICache& icache) const override { (void) icache; - validationAction(); + validationAction(); } /** Model Action:*/ - virtual void modelAction(ICache& icache,const TrackParameters* parm=nullptr) const override{ + virtual void modelAction(ICache& icache,const TrackParameters* parm=nullptr) const override{ (void) icache; - modelAction(parm); - } + modelAction(parm); + } private: @@ -184,7 +193,7 @@ class DummyMaterialEffectsUpdator : public AthAlgTool, bool m_validationMode; //!< boolean switch for the validation mode int m_validationDirectionSwitch; //!< jO switch for PropDirection PropDirection m_validationDirection; //!< distinction between forward and backward validation - ToolHandle< IMaterialMapper > m_materialMapper; //!< the material mapper for recording the layer material + ToolHandle< IMaterialMapper > m_materialMapper; //!< the material mapper for recording the layer material }; } // end of namespace diff --git a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/MaterialEffectsUpdator.h b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/MaterialEffectsUpdator.h index 148939e7c31e22b918e7909f61e8d0667f9d802f..cdb1f7d0798affc183ee71384e95709cf0ad88fb 100755 --- a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/MaterialEffectsUpdator.h +++ b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/MaterialEffectsUpdator.h @@ -44,7 +44,7 @@ class IMaterialMapper; Point-like (also called surface-based) u pdate of TrackParameters and associated errors. - It extends the TrkParametersManipulator, for applying modifications on + It extends the TrkParametersManipulator, for applying modifications on the track parameters: - if the update is done on a pointer to a TrackParameters object, @@ -69,9 +69,6 @@ class MaterialEffectsUpdator : public AthAlgTool, /** AlgTool initailize method.*/ virtual StatusCode initialize() override ; - /** AlgTool finalize method */ - StatusCode finalize() override ; - /* * The concrete cache class for this specialization of the IMaterialEffectsUpdator */ @@ -108,8 +105,8 @@ class MaterialEffectsUpdator : public AthAlgTool, ---> ALWAYS the same pointer is returned the pointer to the same TrackParameters object is returned, it is manipulated (if sf.fullUpdateMaterial()) - */ - virtual const TrackParameters* update(ICache& icache, const TrackParameters* parm, + */ + virtual TrackParameters* update(ICache& icache, const TrackParameters* parm, const Layer& sf, PropDirection dir=alongMomentum, ParticleHypothesis particle=pion, @@ -119,7 +116,7 @@ class MaterialEffectsUpdator : public AthAlgTool, return nullptr; } Cache& cache= static_cast<Cache&> (icache); - const TrackParameters* outparam = updateImpl(cache,parm,sf,dir,particle,matupmode); + TrackParameters* outparam = updateImpl(cache,parm,sf,dir,particle,matupmode); return outparam; } /** Updator interface (full update for a layer) according to user @@ -128,7 +125,7 @@ class MaterialEffectsUpdator : public AthAlgTool, the pointer to the same TrackParameters object is returned, it is manipulated */ - virtual const TrackParameters* update(ICache& icache, + virtual TrackParameters* update(ICache& icache, const TrackParameters* parm, const MaterialEffectsOnTrack& meff, Trk::ParticleHypothesis particle = pion, @@ -140,7 +137,7 @@ class MaterialEffectsUpdator : public AthAlgTool, return nullptr; } Cache& cache = static_cast<Cache&>(icache); - const TrackParameters* outparam = updateImpl(cache, parm, meff, particle, matupmode); + TrackParameters* outparam = updateImpl(cache, parm, meff, particle, matupmode); return outparam; } @@ -149,7 +146,7 @@ class MaterialEffectsUpdator : public AthAlgTool, the pointer to the same TrackParametes object is returned, it is manipulated (if.preUpdateMaterial()) */ - virtual const TrackParameters* preUpdate(ICache& icache, + virtual TrackParameters* preUpdate(ICache& icache, const TrackParameters* parm, const Layer& sf, PropDirection dir = alongMomentum, @@ -161,7 +158,7 @@ class MaterialEffectsUpdator : public AthAlgTool, return nullptr; } Cache& cache = static_cast<Cache&>(icache); - const TrackParameters* outparam = preUpdateImpl(cache, parm, sf, dir, particle, matupmode); + TrackParameters* outparam = preUpdateImpl(cache, parm, sf, dir, particle, matupmode); return outparam; } @@ -169,43 +166,43 @@ class MaterialEffectsUpdator : public AthAlgTool, ---> ALWAYS pointer to new TrackParameters are returned if no postUpdate is to be done : return 0 */ - virtual const TrackParameters* postUpdate( + virtual TrackParameters* postUpdate( ICache& icache, const TrackParameters& parm, const Layer& sf, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, - MaterialUpdateMode matupmode = addNoise) const override + MaterialUpdateMode matupmode = addNoise) const override final { if (icache.type() != ICache::MaterialEffects) { ATH_MSG_WARNING("Wrong cache Type"); return nullptr; } Cache& cache = static_cast<Cache&>(icache); - const TrackParameters* outparam = postUpdateImpl(cache, parm, sf, dir, particle, matupmode); + TrackParameters* outparam = postUpdateImpl(cache, parm, sf, dir, particle, matupmode); return outparam; } /** Dedicated Updator interface:-> create new track parameters*/ - virtual const TrackParameters* update(ICache& icache, + virtual TrackParameters* update(ICache& icache, const TrackParameters& parm, const MaterialProperties& mprop, double pathcorrection, PropDirection dir = alongMomentum, ParticleHypothesis particle = pion, - MaterialUpdateMode matupmode = addNoise) const override + MaterialUpdateMode matupmode = addNoise) const override final { if (icache.type() != ICache::MaterialEffects) { ATH_MSG_WARNING("Wrong cache Type"); return nullptr; } Cache& cache = static_cast<Cache&>(icache); - const TrackParameters* outparam = + TrackParameters* outparam = updateImpl(cache, parm, mprop, pathcorrection, dir, particle, matupmode); return outparam; } /** Validation Action - calls the writing and resetting of the TTree variables */ - virtual void validationAction(ICache& icache) const override + virtual void validationAction(ICache& icache) const override final { if (icache.type() != ICache::MaterialEffects) { ATH_MSG_WARNING("Wrong cache Type"); @@ -217,7 +214,7 @@ class MaterialEffectsUpdator : public AthAlgTool, /** Only has an effect if m_landauMode == true. Resets mutable variables used for non-local calculation of energy loss if parm == 0. Otherwise, modifies parm with the final update of the covariance matrix*/ - virtual void modelAction(ICache& icache, const TrackParameters* parm = nullptr) const override + virtual void modelAction(ICache& icache, const TrackParameters* parm = nullptr) const override final { if (icache.type() != ICache::MaterialEffects) { @@ -228,110 +225,135 @@ class MaterialEffectsUpdator : public AthAlgTool, } public: - /* + /* * Public methods using the TLS cache. */ - virtual const TrackParameters* update( const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override { + virtual TrackParameters* update( + const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override final + { Cache& cache = getTLSCache(); - const TrackParameters* outparam = updateImpl(cache,parm,sf,dir,particle,matupmode); + TrackParameters* outparam = + updateImpl(cache, parm, sf, dir, particle, matupmode); return outparam; } - virtual const TrackParameters* update(const TrackParameters* parm, - const MaterialEffectsOnTrack& meff, - Trk::ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override { + virtual TrackParameters* update( + const TrackParameters* parm, + const MaterialEffectsOnTrack& meff, + Trk::ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override final + { Cache& cache = getTLSCache(); - const TrackParameters* outparam = updateImpl(cache,parm,meff,particle,matupmode); + TrackParameters* outparam = + updateImpl(cache, parm, meff, particle, matupmode); return outparam; } - virtual const TrackParameters* preUpdate( const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override { + virtual TrackParameters* preUpdate( + const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override final + { Cache& cache = getTLSCache(); - const TrackParameters* outparam = preUpdateImpl(cache,parm,sf,dir,particle,matupmode); + TrackParameters* outparam = + preUpdateImpl(cache, parm, sf, dir, particle, matupmode); return outparam; } - virtual const TrackParameters* postUpdate(const TrackParameters& parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override{ + virtual TrackParameters* postUpdate( + const TrackParameters& parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override final + { Cache& cache = getTLSCache(); - const TrackParameters* outparam = postUpdateImpl(cache,parm,sf,dir,particle,matupmode); + TrackParameters* outparam = + postUpdateImpl(cache, parm, sf, dir, particle, matupmode); return outparam; } - virtual const TrackParameters* update(const TrackParameters& parm, - const MaterialProperties& mprop, - double pathcorrection, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const override { + virtual TrackParameters* update( + const TrackParameters& parm, + const MaterialProperties& mprop, + double pathcorrection, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const override final + { Cache& cache = getTLSCache(); - const TrackParameters* outparam = updateImpl(cache,parm,mprop,pathcorrection,dir,particle,matupmode); + TrackParameters* outparam = updateImpl( + cache, parm, mprop, pathcorrection, dir, particle, matupmode); return outparam; } - virtual void validationAction() const override{ + virtual void validationAction() const override final + { Cache& cache = getTLSCache(); validationActionImpl(cache); - } + } - virtual void modelAction(const TrackParameters* parm = nullptr) const override { + virtual void modelAction( + const TrackParameters* parm = nullptr) const override final + { Cache& cache = getTLSCache(); - modelActionImpl(cache,parm); - } + modelActionImpl(cache, parm); + } private: - /* The acutal implementation methods using the tool's - * concrete Cache*/ - const TrackParameters* updateImpl(Cache& cache, const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const ; - - const TrackParameters* updateImpl(Cache& cache, const TrackParameters* parm, - const MaterialEffectsOnTrack& meff, - Trk::ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const ; - - const TrackParameters* preUpdateImpl(Cache& cache, const TrackParameters* parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const ; - - const TrackParameters* postUpdateImpl(Cache& cache,const TrackParameters& parm, - const Layer& sf, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const ; - - const TrackParameters* updateImpl(Cache& cache, const TrackParameters* parm, - const MaterialProperties& mprop, - double pathcorrection, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const ; - - const TrackParameters* updateImpl(Cache& cache, const TrackParameters& parm, - const MaterialProperties& mprop, - double pathcorrection, - PropDirection dir=alongMomentum, - ParticleHypothesis particle=pion, - MaterialUpdateMode matupmode=addNoise) const ; + /* The acutal implementation methods using the tool's + * concrete Cache*/ + TrackParameters* updateImpl(Cache& cache, + const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const; + + TrackParameters* updateImpl(Cache& cache, + const TrackParameters* parm, + const MaterialEffectsOnTrack& meff, + Trk::ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const; + + TrackParameters* preUpdateImpl( + Cache& cache, + const TrackParameters* parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const; + TrackParameters* postUpdateImpl( + Cache& cache, + const TrackParameters& parm, + const Layer& sf, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const; + + TrackParameters* updateImpl(Cache& cache, + const TrackParameters* parm, + const MaterialProperties& mprop, + double pathcorrection, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const; + + TrackParameters* updateImpl(Cache& cache, + const TrackParameters& parm, + const MaterialProperties& mprop, + double pathcorrection, + PropDirection dir = alongMomentum, + ParticleHypothesis particle = pion, + MaterialUpdateMode matupmode = addNoise) const; void validationActionImpl(Cache& cache) const; @@ -339,7 +361,7 @@ class MaterialEffectsUpdator : public AthAlgTool, /** A simple check method for the 'removeNoise' update model */ bool checkCovariance(AmgSymMatrix(5)& updated) const ; - const TrackParameters* finalLandauCovarianceUpdate (const TrackParameters* parm) const; + TrackParameters* finalLandauCovarianceUpdate (const TrackParameters* parm) const; /* Private Class members*/ bool m_doCompoundLayerCheck; //!< turn on/off the necessary checks when we may have compound layers @@ -356,7 +378,7 @@ class MaterialEffectsUpdator : public AthAlgTool, // ------------ validation variables ------------------------------------------------- bool m_validationMode; //!< Switch for validation mode bool m_validationIgnoreUnmeasured; //!< Ignore unmeasured TrackParameters (Navigation!) - bool m_landauMode; //!< If in Landau mode, error propagation is done as for landaus + bool m_landauMode; //!< If in Landau mode, error propagation is done as for landaus int m_validationDirection; //!< validation direction // ------------------------------ double m_momentumCut; //!< Minimal momentum cut for update @@ -366,12 +388,12 @@ class MaterialEffectsUpdator : public AthAlgTool, ToolHandle< IEnergyLossUpdator > m_eLossUpdator; //!< AlgoTool for EnergyLoss updates ToolHandle< IMultipleScatteringUpdator > m_msUpdator; //!< AlgoTool for MultipleScatterin effects // the material mapper for the validation process - ToolHandle< IMaterialMapper > m_materialMapper; //!< the material mapper for recording the layer material - + ToolHandle< IMaterialMapper > m_materialMapper; //!< the material mapper for recording the layer material + /* * TLS part - * The solution adopted here is an effort to implement - * "Schmidt, Douglas & Pryce, Nat & H. Harrison, Timothy. (1998). + * The solution adopted here is an effort to implement + * "Schmidt, Douglas & Pryce, Nat & H. Harrison, Timothy. (1998). * Thread-Specific Storage for C/C++ - An Object * Behavioral Pattern for Accessing per-Thread State Efficiently." * Published in "More C++ Gems (SIGS Reference Library)". @@ -379,13 +401,13 @@ class MaterialEffectsUpdator : public AthAlgTool, */ mutable boost::thread_specific_ptr<Cache> m_cache_tls; - Cache& getTLSCache() const{ + Cache& getTLSCache() const{ Cache* cache = m_cache_tls.get(); if (!cache) { cache = new Cache(); m_cache_tls.reset( cache ); } - return *cache; + return *cache; } }; } // end of namespace diff --git a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/Navigator.h b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/Navigator.h index b06cd208d6cf3d24cbce2f0c595831365a0c2136..fbc3fa6530453558e3e47793c922028691f08be2 100755 --- a/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/Navigator.h +++ b/Tracking/TrkExtrapolation/TrkExTools/TrkExTools/Navigator.h @@ -73,17 +73,27 @@ namespace Trk { /** AlgTool finalize method */ virtual StatusCode finalize() override; + using INavigator::trackingGeometry; + using INavigator::volume; + using INavigator::highestVolume; + using INavigator::nextBoundarySurface; + using INavigator::nextTrackingVolume; + using INavigator::nextDenseTrackingVolume; + + /** INavigator interface method - returns the TrackingGeometry used for * navigation */ - virtual const TrackingGeometry* trackingGeometry() const override final; + virtual const TrackingGeometry* trackingGeometry( + const EventContext& ctx) const override final; /** INavigator interface methods - global search for the Volume one is in */ virtual const TrackingVolume* volume( - const Amg::Vector3D& gp) const override final; + const EventContext& ctx, const Amg::Vector3D& gp) const override final; /** INavigator interface method - forward hightes TrackingVolume */ - virtual const TrackingVolume* highestVolume() const override final; + virtual const TrackingVolume* highestVolume( + const EventContext& ctx) const override final; /** INavigator interface method - getting the closest TrackParameters from * a Track to a Surface*/ @@ -104,10 +114,6 @@ namespace Trk { steps */ virtual void validationAction() const override {} - using INavigator::nextBoundarySurface; - using INavigator::nextTrackingVolume; - using INavigator::nextDenseTrackingVolume; - /** INavigator interface methods - getting the next BoundarySurface not * knowing the Volume*/ virtual const BoundarySurface<TrackingVolume>* nextBoundarySurface( diff --git a/Tracking/TrkExtrapolation/TrkExTools/src/DummyMaterialEffectsUpdator.cxx b/Tracking/TrkExtrapolation/TrkExTools/src/DummyMaterialEffectsUpdator.cxx index 2b1b9a2e7abd0a3a17d2ae5988e835dad90394fe..4a4cf2eef1b7dd82362ca8c12a8b705ae79d9b62 100755 --- a/Tracking/TrkExtrapolation/TrkExTools/src/DummyMaterialEffectsUpdator.cxx +++ b/Tracking/TrkExtrapolation/TrkExTools/src/DummyMaterialEffectsUpdator.cxx @@ -34,8 +34,7 @@ Trk::DummyMaterialEffectsUpdator::DummyMaterialEffectsUpdator(const std::string } // destructor -Trk::DummyMaterialEffectsUpdator::~DummyMaterialEffectsUpdator() { -} +Trk::DummyMaterialEffectsUpdator::~DummyMaterialEffectsUpdator() = default; // Athena standard methods // initialize @@ -44,9 +43,9 @@ Trk::DummyMaterialEffectsUpdator::initialize() { if (m_materialMapper.retrieve().isFailure()) { ATH_MSG_FATAL("Failed to retrieve tool " << m_materialMapper); return StatusCode::FAILURE; - } + } ATH_MSG_INFO("Retrieved tool " << m_materialMapper); - + // set the validation switch m_validationDirection = (m_validationDirectionSwitch == 1) ? Trk::alongMomentum : Trk::oppositeMomentum; @@ -62,7 +61,7 @@ Trk::DummyMaterialEffectsUpdator::finalize() { return StatusCode::SUCCESS; } -const Trk::TrackParameters * +Trk::TrackParameters * Trk::DummyMaterialEffectsUpdator::update(const TrackParameters *parm, const Layer &lay, PropDirection, @@ -101,10 +100,10 @@ Trk::DummyMaterialEffectsUpdator::update(const TrackParameters *parm, ATH_MSG_WARNING("update() ... dynamic cast to MaterialProperties failed!"); } } - return parm; + return parm->clone(); } -const Trk::TrackParameters * +Trk::TrackParameters * Trk::DummyMaterialEffectsUpdator::preUpdate(const TrackParameters *parm, const Layer &lay, PropDirection dir, @@ -117,7 +116,7 @@ Trk::DummyMaterialEffectsUpdator::preUpdate(const TrackParameters *parm, double preFactor = lay.preUpdateMaterialFactor(*parm, dir); // return if the preFactor is too small if (preFactor < 0.1) { - return(parm); + return parm->clone(); } double correctionFactor = fabs(lay.surfaceRepresentation().pathCorrection(parm->position(), parm->momentum())); @@ -155,10 +154,10 @@ Trk::DummyMaterialEffectsUpdator::preUpdate(const TrackParameters *parm, ATH_MSG_WARNING("preUpdate() ... dynamic cast to MaterialProperties failed!"); } } - return parm; + return parm->clone(); } -const Trk::TrackParameters * +Trk::TrackParameters * Trk::DummyMaterialEffectsUpdator::postUpdate(const TrackParameters &parm, const Layer &lay, PropDirection dir, @@ -207,7 +206,7 @@ Trk::DummyMaterialEffectsUpdator::postUpdate(const TrackParameters &parm, } // actual update method -const Trk::TrackParameters * +Trk::TrackParameters * Trk::DummyMaterialEffectsUpdator::update(const TrackParameters &parm, const MaterialProperties &, double, diff --git a/Tracking/TrkExtrapolation/TrkExTools/src/MaterialEffectsUpdator.cxx b/Tracking/TrkExtrapolation/TrkExTools/src/MaterialEffectsUpdator.cxx index 6e4eb845895185ec637fb4b519d615e3fa3567cd..dd8e97ef1752b5c4ae206a395ca40bb6c226bf2e 100755 --- a/Tracking/TrkExtrapolation/TrkExTools/src/MaterialEffectsUpdator.cxx +++ b/Tracking/TrkExtrapolation/TrkExTools/src/MaterialEffectsUpdator.cxx @@ -8,114 +8,114 @@ // Trk include #include "TrkExTools/MaterialEffectsUpdator.h" -#include "TrkExInterfaces/IEnergyLossUpdator.h" -#include "TrkExInterfaces/IMultipleScatteringUpdator.h" +#include "GaudiKernel/ITHistSvc.h" #include "TrkDetDescrInterfaces/IMaterialMapper.h" -#include "TrkParameters/TrackParameters.h" -#include "TrkEventPrimitives/ParamDefs.h" #include "TrkEventPrimitives/DefinedParameter.h" -#include "TrkSurfaces/Surface.h" -#include "TrkGeometry/Layer.h" +#include "TrkEventPrimitives/ParamDefs.h" +#include "TrkExInterfaces/IEnergyLossUpdator.h" +#include "TrkExInterfaces/IMultipleScatteringUpdator.h" +#include "TrkGeometry/AssociatedMaterial.h" #include "TrkGeometry/CompoundLayer.h" +#include "TrkGeometry/Layer.h" #include "TrkGeometry/MaterialProperties.h" -#include "TrkGeometry/AssociatedMaterial.h" #include "TrkGeometry/TrackingVolume.h" -#include "TrkMaterialOnTrack/MaterialEffectsOnTrack.h" #include "TrkMaterialOnTrack/EnergyLoss.h" +#include "TrkMaterialOnTrack/MaterialEffectsOnTrack.h" #include "TrkMaterialOnTrack/ScatteringAngles.h" -#include "GaudiKernel/ITHistSvc.h" +#include "TrkParameters/TrackParameters.h" +#include "TrkSurfaces/Surface.h" // Amg #include "EventPrimitives/EventPrimitives.h" #include "GeoPrimitives/GeoPrimitives.h" -//std -#include<functional> +// std #include <algorithm> +#include <functional> namespace { const Trk::ParticleMasses s_particleMasses{}; } // constructor -Trk::MaterialEffectsUpdator::MaterialEffectsUpdator(const std::string &t, const std::string &n, const IInterface *p) : - AthAlgTool(t, n, p), +Trk::MaterialEffectsUpdator::MaterialEffectsUpdator(const std::string& t, const std::string& n, const IInterface* p) + : AthAlgTool(t, n, p) + , // TrkParametersManipulator(), - m_doCompoundLayerCheck(false), - m_doEloss(true), - m_doMs(true), - m_forceMomentum(false), - m_xKalmanStraggling(false), - m_useMostProbableEloss(false), - m_msgOutputValidationDirection(true), - m_msgOutputCorrections(false), - m_validationMode(false), - m_validationIgnoreUnmeasured(true), - m_landauMode(false), - m_validationDirection(1), - m_momentumCut(50. * Gaudi::Units::MeV), - m_momentumMax(10. * Gaudi::Units::TeV), - m_forcedMomentum(2000. * Gaudi::Units::MeV), - m_eLossUpdator("Trk::EnergyLossUpdator/AtlasEnergyLossUpdator"), - m_msUpdator("Trk::MultipleScatteringUpdator/AtlasMultipleScatteringUpdator"), - m_materialMapper("Trk::MaterialMapper/AtlasMaterialMapper"){ - declareInterface<IMaterialEffectsUpdator>(this); - // configuration (to be changed to new genconf style) - declareProperty("CheckForCompoundLayers", m_doCompoundLayerCheck); - declareProperty("EnergyLoss", m_doEloss); - declareProperty("EnergyLossUpdator", m_eLossUpdator); - declareProperty("MultipleScattering", m_doMs); - declareProperty("MultipleScatteringUpdator", m_msUpdator); - // the momentum cut for particle interactions - declareProperty("MinimalMomentum", m_momentumCut); - declareProperty("MaximalMomentum", m_momentumMax); - declareProperty("ForceMomentum", m_forceMomentum); - declareProperty("ForcedMomentumValue", m_forcedMomentum); - declareProperty("MostProbableEnergyLoss", m_useMostProbableEloss); - declareProperty("ScreenOutputValidationDirection", m_msgOutputValidationDirection); - declareProperty("ScreenOutputCorrections", m_msgOutputCorrections); - // run vaidation mode true/false - declareProperty("ValidationMode", m_validationMode); - declareProperty("ValidationIgnoreUnmeasured", m_validationIgnoreUnmeasured); - declareProperty("ValidationDirection", m_validationDirection); - declareProperty("ValidationMaterialMapper", m_materialMapper); - declareProperty("LandauMode", m_landauMode); - } + m_doCompoundLayerCheck(false) + , m_doEloss(true) + , m_doMs(true) + , m_forceMomentum(false) + , m_xKalmanStraggling(false) + , m_useMostProbableEloss(false) + , m_msgOutputValidationDirection(true) + , m_msgOutputCorrections(false) + , m_validationMode(false) + , m_validationIgnoreUnmeasured(true) + , m_landauMode(false) + , m_validationDirection(1) + , m_momentumCut(50. * Gaudi::Units::MeV) + , m_momentumMax(10. * Gaudi::Units::TeV) + , m_forcedMomentum(2000. * Gaudi::Units::MeV) + , m_eLossUpdator("Trk::EnergyLossUpdator/AtlasEnergyLossUpdator") + , m_msUpdator("Trk::MultipleScatteringUpdator/AtlasMultipleScatteringUpdator") + , m_materialMapper("Trk::MaterialMapper/AtlasMaterialMapper") +{ + declareInterface<IMaterialEffectsUpdator>(this); + // configuration (to be changed to new genconf style) + declareProperty("CheckForCompoundLayers", m_doCompoundLayerCheck); + declareProperty("EnergyLoss", m_doEloss); + declareProperty("EnergyLossUpdator", m_eLossUpdator); + declareProperty("MultipleScattering", m_doMs); + declareProperty("MultipleScatteringUpdator", m_msUpdator); + // the momentum cut for particle interactions + declareProperty("MinimalMomentum", m_momentumCut); + declareProperty("MaximalMomentum", m_momentumMax); + declareProperty("ForceMomentum", m_forceMomentum); + declareProperty("ForcedMomentumValue", m_forcedMomentum); + declareProperty("MostProbableEnergyLoss", m_useMostProbableEloss); + declareProperty("ScreenOutputValidationDirection", m_msgOutputValidationDirection); + declareProperty("ScreenOutputCorrections", m_msgOutputCorrections); + // run vaidation mode true/false + declareProperty("ValidationMode", m_validationMode); + declareProperty("ValidationIgnoreUnmeasured", m_validationIgnoreUnmeasured); + declareProperty("ValidationDirection", m_validationDirection); + declareProperty("ValidationMaterialMapper", m_materialMapper); + declareProperty("LandauMode", m_landauMode); +} // destructor -Trk::MaterialEffectsUpdator::~MaterialEffectsUpdator() { -} +Trk::MaterialEffectsUpdator::~MaterialEffectsUpdator() = default; // Athena standard methods // initialize StatusCode -Trk::MaterialEffectsUpdator::initialize() { +Trk::MaterialEffectsUpdator::initialize() +{ ATH_MSG_INFO("Minimal momentum cut for material update : " << m_momentumCut << " MeV"); // retrieve the EnergyLoss Updator and Material Effects updator if (m_doEloss) { if (m_eLossUpdator.retrieve().isFailure()) { - ATH_MSG_FATAL( - "Failed to retrieve tool " << m_eLossUpdator << ". No multiple scattering effects will be taken into account."); + ATH_MSG_FATAL("Failed to retrieve tool " << m_eLossUpdator + << ". No multiple scattering effects will be taken into account."); m_doEloss = false; return StatusCode::FAILURE; - } - ATH_MSG_DEBUG("Retrieved tool " << m_eLossUpdator); - - } - else { + } + ATH_MSG_DEBUG("Retrieved tool " << m_eLossUpdator); + + } else { m_eLossUpdator.disable(); } if (m_doMs) { if (m_msUpdator.retrieve().isFailure()) { - ATH_MSG_FATAL("Failed to retrieve tool " << m_msUpdator << - ". No energy loss effects will be taken into account."); + ATH_MSG_FATAL("Failed to retrieve tool " << m_msUpdator + << ". No energy loss effects will be taken into account."); m_doMs = false; return StatusCode::FAILURE; - } - ATH_MSG_DEBUG("Retrieved tool " << m_msUpdator); - - } - else { + } + ATH_MSG_DEBUG("Retrieved tool " << m_msUpdator); + + } else { m_msUpdator.disable(); } @@ -124,48 +124,42 @@ Trk::MaterialEffectsUpdator::initialize() { if (m_materialMapper.retrieve().isFailure()) { ATH_MSG_FATAL("Failed to retrieve tool " << m_materialMapper << ". No material recording."); return StatusCode::FAILURE; - } - ATH_MSG_DEBUG("Retrieved tool " << m_materialMapper); - - } - else { + } + ATH_MSG_DEBUG("Retrieved tool " << m_materialMapper); + + } else { m_materialMapper.disable(); } return StatusCode::SUCCESS; } -// finalize -StatusCode -Trk::MaterialEffectsUpdator::finalize() { - ATH_MSG_DEBUG("finalize() successful"); - return StatusCode::SUCCESS; -} - -const Trk::TrackParameters * -Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm, - const Layer &lay, +Trk::TrackParameters* +Trk::MaterialEffectsUpdator::updateImpl(Cache& cache, + const TrackParameters* parm, + const Layer& lay, PropDirection dir, ParticleHypothesis particle, - MaterialUpdateMode matupmode) const { + MaterialUpdateMode matupmode) const +{ // no material properties - pass them back if (particle == Trk::geantino || particle == Trk::nonInteractingMuon || (!m_doMs && !m_doEloss) || !lay.isOnLayer(parm->position())) { - return(parm); + return parm->clone(); } // get the quantities - const Trk::MaterialProperties *mprop = lay.fullUpdateMaterialProperties(*parm); + const Trk::MaterialProperties* mprop = lay.fullUpdateMaterialProperties(*parm); if (!mprop) { - return(parm); + return parm->clone(); } // get the real pathlength double pathCorrection = fabs(lay.surfaceRepresentation().pathCorrection(parm->position(), parm->momentum())); // set the output if restricted to the direction - bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; + bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; // -------------------------------------------------------------------------------------------------- if (msgLvl(MSG::VERBOSE) && outputFlag) { @@ -174,34 +168,33 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm double eta = parm->momentum().eta(); double sX0 = mprop->thicknessInX0(); double tX0 = pathCorrection * mprop->thicknessInX0(); - ATH_MSG_VERBOSE( - " [M] full material update, layer with [r,z] = [ " << layerR << ", " << layerZ << " ] - Index " << - lay.layerIndex()); - ATH_MSG_VERBOSE( - " thickness/X0 , path/X0 (eta: g.factor) = " << sX0 << " , " << tX0 << " (" << eta << ": " << pathCorrection << - ")"); + ATH_MSG_VERBOSE(" [M] full material update, layer with [r,z] = [ " << layerR << ", " << layerZ << " ] - Index " + << lay.layerIndex()); + ATH_MSG_VERBOSE(" thickness/X0 , path/X0 (eta: g.factor) = " << sX0 << " , " << tX0 << " (" << eta << ": " + << pathCorrection << ")"); } // -------------------------------------------------------------------------------------------------- - if (m_validationMode){ - cache.validationLayer = &lay ; + if (m_validationMode) { + cache.validationLayer = &lay; } - return(updateImpl(cache,parm, *mprop, pathCorrection, dir, particle, matupmode)); + return (updateImpl(cache, parm, *mprop, pathCorrection, dir, particle, matupmode)); } -const Trk::TrackParameters * -Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm, - const MaterialEffectsOnTrack &meff, +Trk::TrackParameters* +Trk::MaterialEffectsUpdator::updateImpl(Cache& cache, + const TrackParameters* parm, + const MaterialEffectsOnTrack& meff, ParticleHypothesis particle, - MaterialUpdateMode matupmode) const { + MaterialUpdateMode matupmode) const +{ // no material properties - pass them back // TODO, if the parm doesn't have a surface (i.e. its in // curvilinear) then should we fall through? if (particle == Trk::geantino || particle == Trk::nonInteractingMuon || (!m_doMs && !m_doEloss) || parm->associatedSurface() != meff.associatedSurface()) { - return(parm); + return parm->clone(); } - // get the kinematics double p = parm->momentum().mag(); double updateMomentum = (m_forceMomentum) ? m_forcedMomentum : p; @@ -209,7 +202,7 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm double E = sqrt(p * p + m * m); double beta = p / E; - double pathcorrection = 1.; // Trick the MultipleScatteringUpdator interface + double pathcorrection = 1.; // Trick the MultipleScatteringUpdator interface double energyLoss = 0; double energyLossSigma = 0; @@ -226,11 +219,11 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm // Landaus mpvs don't just add, if in Landau mode we need to do a different update if (m_landauMode && cache.accumulatedElossSigma != 0 && energyLossSigma != 0) { if (energyLoss > 0) { - energyLoss += energyLossSigma * log(1 + cache.accumulatedElossSigma / (energyLossSigma)) - +cache.accumulatedElossSigma * log(1 + energyLossSigma / cache.accumulatedElossSigma); + energyLoss += energyLossSigma * std::log(1 + cache.accumulatedElossSigma / (energyLossSigma)) + + cache.accumulatedElossSigma * std::log(1 + energyLossSigma / cache.accumulatedElossSigma); } else { - energyLoss -= energyLossSigma * log(1 + cache.accumulatedElossSigma / energyLossSigma) - + cache.accumulatedElossSigma * log(1 + energyLossSigma / cache.accumulatedElossSigma); + energyLoss -= energyLossSigma * std::log(1 + cache.accumulatedElossSigma / energyLossSigma) + + cache.accumulatedElossSigma * std::log(1 + energyLossSigma / cache.accumulatedElossSigma); } cache.accumulatedElossSigma += energyLossSigma; } else if (m_landauMode) { @@ -255,9 +248,9 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm // check if Parameters are measured parameters // the updatedParameters - first a copy - const Trk::TrackParameters *mpars = parm; + const Trk::TrackParameters* mpars = parm; AmgVector(5) updatedParameters(mpars->parameters()); - AmgSymMatrix(5) * updatedCovariance = nullptr; + AmgSymMatrix(5)* updatedCovariance = nullptr; // initialize ErrorMatrix pointer if (m_validationMode && !m_validationIgnoreUnmeasured) { // the new CovarianceMatrix - a copy first @@ -275,10 +268,10 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm MaterialProperties mprop(meff.thicknessInX0(), 1., 1., 0., 0., 0.); angularVariation = m_msUpdator->sigmaSquare(mprop, updateMomentum, pathcorrection, Trk::muon); // sigmaDeltaPhiSq = angularVariation/(parm->sinTheta()*parm->sinTheta()); - sigmaDeltaPhiSq = angularVariation / - (sin(parm->parameters()[Trk::theta]) * sin(parm->parameters()[Trk::theta])); + sigmaDeltaPhiSq = + angularVariation / (std::sin(parm->parameters()[Trk::theta]) * std::sin(parm->parameters()[Trk::theta])); sigmaDeltaThetaSq = angularVariation; - }else { + } else { // material update from mefots -> D.L. sigmaDeltaPhiSq = meff.scatteringAngles()->sigmaDeltaPhi(); sigmaDeltaPhiSq *= sigmaDeltaPhiSq; @@ -297,18 +290,16 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::theta, Trk::theta), sign, sigmaDeltaThetaSq); if (!m_xKalmanStraggling && !m_landauMode) { COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::qOverP, Trk::qOverP), sign, sigmaQoverPSq); - }else if (m_xKalmanStraggling) { /* to be filled in*/ - }else if (m_landauMode) { + } else if (m_xKalmanStraggling) { /* to be filled in*/ + } else if (m_landauMode) { // subtract what we added up till now and add what we should add up till now // Landau's 68% limit is approx 1.6*sigmaParameter /* Get the TLS to a local here once and use it for calculation*/ - (*updatedCovariance)(Trk::qOverP, - Trk::qOverP) -= sign * - std::pow(1.6 * (cache.accumulatedElossSigma - p * p * sigmaQoverP) / (p * p), - 2); - (*updatedCovariance)(Trk::qOverP, Trk::qOverP) += sign * std::pow(1.6 * cache.accumulatedElossSigma / (newP * newP), - 2); + (*updatedCovariance)(Trk::qOverP, Trk::qOverP) -= + sign * std::pow(1.6 * (cache.accumulatedElossSigma - p * p * sigmaQoverP) / (p * p), 2); + (*updatedCovariance)(Trk::qOverP, Trk::qOverP) += + sign * std::pow(1.6 * cache.accumulatedElossSigma / (newP * newP), 2); } // the checks for the remove Noise mode ----------------------------------------------------- if (matupmode == Trk::removeNoise && !checkCovariance(*updatedCovariance)) { @@ -322,27 +313,30 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm // -------------------------------------- screen output -------------------------------------- if (m_msgOutputCorrections) { double sigmaAngle = sqrt(angularVariation); - ATH_MSG_VERBOSE(" sigma(phi) / sigma(theta) = " << sigmaAngle / sin( - parm->parameters()[Trk::theta]) << " / " << sigmaAngle); + ATH_MSG_VERBOSE(" sigma(phi) / sigma(theta) = " << sigmaAngle / std::sin(parm->parameters()[Trk::theta]) << " / " + << sigmaAngle); ATH_MSG_VERBOSE(" deltaP / sigmaQoverP = " << energyLoss << " / " << sigmaQoverP); } // ------------------------------------------------------------------------------------------- } // ----------------------------------------- validation section ---------------------------------- // validation if configured - if (m_validationMode){ - if(cache.validationLayer) { + if (m_validationMode) { + if (cache.validationLayer) { // all you have from MaterialProperties double pathInX0 = meff.thicknessInX0(); Trk::AssociatedMaterial assMatHit(parm->position(), - pathInX0, pathInX0, - 0, 0, 0, 0, + pathInX0, + pathInX0, + 0, + 0, + 0, + 0, pathcorrection, cache.validationLayer->enclosingTrackingVolume(), cache.validationLayer); - // record the Material hit ---------------------------------------------------------------- m_materialMapper->recordMaterialHit(assMatHit, parm->position()); @@ -356,36 +350,40 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm } // ----------------------------------------- validation section ---------------------------------- } - // return parm; updatedParameters[Trk::qOverP] = qOverPnew; - return parm->associatedSurface().createTrackParameters(updatedParameters[Trk::loc1], updatedParameters[Trk::loc2], - updatedParameters[Trk::phi], updatedParameters[Trk::theta], - updatedParameters[Trk::qOverP], updatedCovariance); + return parm->associatedSurface().createTrackParameters(updatedParameters[Trk::loc1], + updatedParameters[Trk::loc2], + updatedParameters[Trk::phi], + updatedParameters[Trk::theta], + updatedParameters[Trk::qOverP], + updatedCovariance); } -const Trk::TrackParameters * -Trk::MaterialEffectsUpdator::preUpdateImpl(Cache& cache,const TrackParameters *parm, - const Layer &lay, +Trk::TrackParameters* +Trk::MaterialEffectsUpdator::preUpdateImpl(Cache& cache, + const TrackParameters* parm, + const Layer& lay, PropDirection dir, ParticleHypothesis particle, - MaterialUpdateMode matupmode) const { + MaterialUpdateMode matupmode) const +{ // no material properties - pass the parameters back if (particle == Trk::geantino || particle == Trk::nonInteractingMuon || (!m_doMs && !m_doEloss)) { - return(parm); + return parm->clone(); } // get the split factor double preFactor = lay.preUpdateMaterialFactor(*parm, dir); // return if the preFactor is less than one if (preFactor < 0.01) { - return(parm); + return parm->clone(); } // get the material properties - const Trk::MaterialProperties *mprop = nullptr; + const Trk::MaterialProperties* mprop = nullptr; // set the output if restricted to the validation direction - bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; + bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; mprop = lay.fullUpdateMaterialProperties(*parm); double pathCorrection = fabs(lay.surfaceRepresentation().pathCorrection(parm->position(), parm->momentum())); @@ -393,7 +391,7 @@ Trk::MaterialEffectsUpdator::preUpdateImpl(Cache& cache,const TrackParameters *p // exit if no mprop could be assigned if (!mprop) { - return(parm); + return parm->clone(); } // -------------------------------------------------------------------------------------------------- if (outputFlag) { @@ -402,43 +400,43 @@ Trk::MaterialEffectsUpdator::preUpdateImpl(Cache& cache,const TrackParameters *p double eta = parm->momentum().eta(); double sX0 = mprop->thicknessInX0(); double tX0 = pathCorrection * mprop->thicknessInX0(); - ATH_MSG_VERBOSE( - " [M] pre material update at layer with [r,z] = [ " << layerR << ", " << layerZ << " ] - Index " << - lay.layerIndex()); - ATH_MSG_VERBOSE( - " thickness/X0 , path/X0 (eta: g.factor) = " << sX0 << " , " << tX0 << " (" << eta << ": " << pathCorrection << - ")"); + ATH_MSG_VERBOSE(" [M] pre material update at layer with [r,z] = [ " << layerR << ", " << layerZ << " ] - Index " + << lay.layerIndex()); + ATH_MSG_VERBOSE(" thickness/X0 , path/X0 (eta: g.factor) = " << sX0 << " , " << tX0 << " (" << eta << ": " + << pathCorrection << ")"); } // -------------------------------------------------------------------------------------------------- - if(m_validationMode){ - cache.validationLayer = &lay ; + if (m_validationMode) { + cache.validationLayer = &lay; } - return(updateImpl(cache,parm, *mprop, pathCorrection, dir, particle, matupmode)); + return (updateImpl(cache, parm, *mprop, pathCorrection, dir, particle, matupmode)); } -const Trk::TrackParameters * -Trk::MaterialEffectsUpdator::postUpdateImpl(Cache& cache,const TrackParameters &parm, - const Layer &lay, +Trk::TrackParameters* +Trk::MaterialEffectsUpdator::postUpdateImpl(Cache& cache, + const TrackParameters& parm, + const Layer& lay, PropDirection dir, ParticleHypothesis particle, - MaterialUpdateMode matupmode) const { + MaterialUpdateMode matupmode) const +{ // no material properties - pass the parameters back if (particle == Trk::geantino || particle == Trk::nonInteractingMuon || (!m_doMs && !m_doEloss) || !lay.isOnLayer(parm.position())) { - return(&parm); + return parm.clone(); } // get the quantities - const Trk::MaterialProperties *mprop = nullptr; + const Trk::MaterialProperties* mprop = nullptr; double postFactor = lay.postUpdateMaterialFactor(parm, dir); // no material properties - pass them back if (postFactor < 0.01) { - return(&parm); + return parm.clone(); } // set the output if restricted to the validation direction - bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; + bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; mprop = lay.fullUpdateMaterialProperties(parm); double pathCorrection = fabs(lay.surfaceRepresentation().pathCorrection(parm.position(), parm.momentum())); @@ -446,7 +444,7 @@ Trk::MaterialEffectsUpdator::postUpdateImpl(Cache& cache,const TrackParameters & // exit if no material properties if (!mprop) { - return(&parm); + return parm.clone(); } // -------------------------------------------------------------------------------------------------- @@ -456,31 +454,31 @@ Trk::MaterialEffectsUpdator::postUpdateImpl(Cache& cache,const TrackParameters & double eta = parm.momentum().eta(); double sX0 = mprop->thicknessInX0(); double tX0 = pathCorrection * mprop->thicknessInX0(); - ATH_MSG_VERBOSE( - " [M] post material update, layer with [r,z] = [ " << layerR << ", " << layerZ << " ] - Index " << - lay.layerIndex()); - ATH_MSG_VERBOSE( - " thickness/X0 , path/X0 (eta: g.factor) = " << sX0 << " , " << tX0 << " (" << eta << ": " << pathCorrection << - ")"); + ATH_MSG_VERBOSE(" [M] post material update, layer with [r,z] = [ " << layerR << ", " << layerZ << " ] - Index " + << lay.layerIndex()); + ATH_MSG_VERBOSE(" thickness/X0 , path/X0 (eta: g.factor) = " << sX0 << " , " << tX0 << " (" << eta << ": " + << pathCorrection << ")"); } // -------------------------------------------------------------------------------------------------- - if (m_validationMode){ - cache.validationLayer = &lay ; + if (m_validationMode) { + cache.validationLayer = &lay; } - return(updateImpl(cache,parm, *mprop, pathCorrection, dir, particle, matupmode)); + return (updateImpl(cache, parm, *mprop, pathCorrection, dir, particle, matupmode)); } // actual update method - manipulation -const Trk::TrackParameters * -Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm, - const MaterialProperties &matprop, +Trk::TrackParameters* +Trk::MaterialEffectsUpdator::updateImpl(Cache& cache, + const TrackParameters* parm, + const MaterialProperties& matprop, double pathcorrection, PropDirection dir, ParticleHypothesis particle, - MaterialUpdateMode matupmode) const { + MaterialUpdateMode matupmode) const +{ // no material properties - pass them back if (particle == Trk::geantino || particle == Trk::nonInteractingMuon || (!m_doMs && !m_doEloss)) { - return((parm)); + return parm->clone(); } // get the kinematics @@ -491,15 +489,15 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm double beta = p / E; // set the output if restricted to the validation direction - bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; + bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; // no material update below/above a certain cut value if (p > m_momentumCut && p < m_momentumMax) { // get the delta of the Energy - EnergyLoss *energyLoss = (m_doEloss) ? - m_eLossUpdator->energyLoss(matprop, updateMomentum, pathcorrection, dir, particle, - m_useMostProbableEloss) : - nullptr; + EnergyLoss* energyLoss = + (m_doEloss) + ? m_eLossUpdator->energyLoss(matprop, updateMomentum, pathcorrection, dir, particle, m_useMostProbableEloss) + : nullptr; // update for mean energy loss double deltaE = energyLoss ? energyLoss->deltaE() : 0; double sigmaDeltaE = energyLoss ? energyLoss->sigmaDeltaE() : 0; @@ -507,14 +505,14 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm if (m_landauMode && cache.accumulatedElossSigma != 0 && sigmaDeltaE != 0) { if (dir == Trk::oppositeMomentum) { - deltaE += sigmaDeltaE * log(1 + cache.accumulatedElossSigma / sigmaDeltaE) - + cache.accumulatedElossSigma * log(1 + sigmaDeltaE / cache.accumulatedElossSigma); + deltaE += sigmaDeltaE * std::log(1 + cache.accumulatedElossSigma / sigmaDeltaE) + + cache.accumulatedElossSigma * std::log(1 + sigmaDeltaE / cache.accumulatedElossSigma); } else { - deltaE -= sigmaDeltaE * log(1 + cache.accumulatedElossSigma / sigmaDeltaE) - + cache.accumulatedElossSigma * log(1 + sigmaDeltaE / cache.accumulatedElossSigma); + deltaE -= sigmaDeltaE * std::log(1 + cache.accumulatedElossSigma / sigmaDeltaE) + + cache.accumulatedElossSigma * std::log(1 + sigmaDeltaE / cache.accumulatedElossSigma); } cache.accumulatedElossSigma += sigmaDeltaE; - }else if (m_landauMode) { + } else if (m_landauMode) { cache.accumulatedElossSigma += sigmaDeltaE; } @@ -532,11 +530,11 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm // check if Parameters are measured parameters // const Trk::MeasuredTrackParameters* mpars = dynamic_cast<const Trk::MeasuredTrackParameters*>(parm); - const Trk::TrackParameters *mpars = parm; + const Trk::TrackParameters* mpars = parm; AmgVector(5) updatedParameters(mpars->parameters()); // initialize ErrorMatrix pointer // Trk::ErrorMatrix* updatedError = 0; - AmgSymMatrix(5) * updatedCovariance = nullptr; + AmgSymMatrix(5)* updatedCovariance = nullptr; if (mpars || (m_validationMode && !m_validationIgnoreUnmeasured)) { // the new CovarianceMatrix - a copy first if (mpars) { @@ -550,8 +548,8 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm // sign of the noise adding ---------------------------------------------------------------- int sign = int(matupmode); - double sigmaDeltaPhiSq = angularVariation / - (sin(parm->parameters()[Trk::theta]) * sin(parm->parameters()[Trk::theta])); + double sigmaDeltaPhiSq = + angularVariation / (std::sin(parm->parameters()[Trk::theta]) * std::sin(parm->parameters()[Trk::theta])); double sigmaDeltaThetaSq = angularVariation; // checks will only be done in the removeNoise mode COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::phi, Trk::phi), sign, sigmaDeltaPhiSq); @@ -560,19 +558,15 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::qOverP, Trk::qOverP), sign, sigmaQoverP * sigmaQoverP); } else if (m_xKalmanStraggling) { double q = parm->charge(); - COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::qOverP, - Trk::qOverP), sign, 0.2 * deltaP * deltaP * q * q * q * q); + COVARIANCEUPDATEWITHCHECK( + (*updatedCovariance)(Trk::qOverP, Trk::qOverP), sign, 0.2 * deltaP * deltaP * q * q * q * q); } else if (m_landauMode) { // subtract what we added up till now and add what we should add up till now // Landau's 68% limit is approx 1.6*sigmaParameter - (*updatedCovariance)(Trk::qOverP, - Trk::qOverP) -= sign * - std::pow(1.6 * (cache.accumulatedElossSigma - p * p * sigmaQoverP) / (p * p), - 2); - (*updatedCovariance)(Trk::qOverP, - Trk::qOverP) += sign * - std::pow(1.6 * cache.accumulatedElossSigma / ((p + deltaP) * (p + deltaP)), - 2); + (*updatedCovariance)(Trk::qOverP, Trk::qOverP) -= + sign * std::pow(1.6 * (cache.accumulatedElossSigma - p * p * sigmaQoverP) / (p * p), 2); + (*updatedCovariance)(Trk::qOverP, Trk::qOverP) += + sign * std::pow(1.6 * cache.accumulatedElossSigma / ((p + deltaP) * (p + deltaP)), 2); } // the checks for the remove Noise mode ----------------------------------------------------- if (matupmode == Trk::removeNoise && !checkCovariance(*updatedCovariance)) { @@ -587,19 +581,17 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm // -------------------------------------- screen output -------------------------------------- if (outputFlag && m_msgOutputCorrections) { double sigmaAngle = sqrt(angularVariation); - ATH_MSG_VERBOSE(" sigma(phi) / sigma(theta) = " << sigmaAngle / sin( - parm->parameters()[Trk::theta]) << " / " << sigmaAngle); + ATH_MSG_VERBOSE(" sigma(phi) / sigma(theta) = " << sigmaAngle / std::sin(parm->parameters()[Trk::theta]) + << " / " << sigmaAngle); ATH_MSG_VERBOSE(" deltaP / sigmaQoverP = " << deltaP << " / " << sigmaQoverP); } // ------------------------------------------------------------------------------------------- } // ----------------------------------------- validation section ---------------------------------- // validation if configured - if (m_validationMode - && dir == Trk::PropDirection(m_validationDirection) - && updatedCovariance) { + if (m_validationMode && dir == Trk::PropDirection(m_validationDirection) && updatedCovariance) { - if (cache.validationLayer){ + if (cache.validationLayer) { // all you have from MaterialProperties double pathInX0 = pathcorrection * matprop.thicknessInX0(); double A = 0.; @@ -607,8 +599,7 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm double rho = 0.; double l0 = 0.; // or better take the extended version for more information - const Trk::MaterialProperties *extProperties - = dynamic_cast<const Trk::MaterialProperties *>(&matprop); + const Trk::MaterialProperties* extProperties = dynamic_cast<const Trk::MaterialProperties*>(&matprop); if (extProperties) { A = extProperties->averageA(); @@ -618,16 +609,18 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm } Trk::AssociatedMaterial assMatHit(parm->position(), - pathInX0, matprop.x0(), - l0, A, Z, rho, + pathInX0, + matprop.x0(), + l0, + A, + Z, + rho, pathcorrection, cache.validationLayer->enclosingTrackingVolume(), cache.validationLayer); - // record the Material hit ---------------------------------------------------------------- - m_materialMapper->recordMaterialHit(assMatHit, - parm->position()); + m_materialMapper->recordMaterialHit(assMatHit, parm->position()); // the steps cache.validationSteps++; cache.validationPhi += parm->position().phi(); @@ -638,26 +631,31 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters *parm } // ----------------------------------------- validation section ---------------------------------- } - // parm = Trk::TrkParametersManipulator::manipulateParameter(parm, qOverPmod, updatedError); updatedParameters[Trk::qOverP] = parm->charge() / (p + deltaP); - parm = parm->associatedSurface().createTrackParameters(updatedParameters[Trk::loc1], updatedParameters[Trk::loc2], - updatedParameters[Trk::phi], updatedParameters[Trk::theta], - updatedParameters[Trk::qOverP], updatedCovariance); + return parm->associatedSurface().createTrackParameters(updatedParameters[Trk::loc1], + updatedParameters[Trk::loc2], + updatedParameters[Trk::phi], + updatedParameters[Trk::theta], + updatedParameters[Trk::qOverP], + updatedCovariance); } - return parm; + //default if we have not returned just above + return parm->clone(); } // actual update method -const Trk::TrackParameters * -Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm, - const MaterialProperties &matprop, +Trk::TrackParameters* +Trk::MaterialEffectsUpdator::updateImpl(Cache& cache, + const TrackParameters& parm, + const MaterialProperties& matprop, double pathcorrection, PropDirection dir, ParticleHypothesis particle, - MaterialUpdateMode matupmode) const { + MaterialUpdateMode matupmode) const +{ // no material properties - pass them back if (particle == Trk::geantino || (!m_doMs && !m_doEloss)) { - return(&(parm)); + return parm.clone(); } // get the kinematics @@ -668,7 +666,7 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm double beta = p / E; // set the output if restricted to the validation direction - bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; + bool outputFlag = m_msgOutputValidationDirection ? dir == int(m_validationDirection) : true; // no material update below or above a certain cut value if (p > m_momentumCut && p < m_momentumMax) { @@ -676,25 +674,25 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm AmgVector(5) updatedParameters(parm.parameters()); // get the delta of the Energy - EnergyLoss *energyLoss = (m_doEloss) ? - m_eLossUpdator->energyLoss(matprop, updateMomentum, pathcorrection, dir, particle, - m_useMostProbableEloss) : - nullptr; + EnergyLoss* energyLoss = + (m_doEloss) + ? m_eLossUpdator->energyLoss(matprop, updateMomentum, pathcorrection, dir, particle, m_useMostProbableEloss) + : nullptr; // update for mean energy loss double deltaE = energyLoss ? energyLoss->deltaE() : 0; double sigmaDeltaE = energyLoss ? energyLoss->sigmaDeltaE() : 0; delete energyLoss; if (m_landauMode && cache.accumulatedElossSigma != 0 && sigmaDeltaE != 0) { if (dir == Trk::oppositeMomentum) { - deltaE += sigmaDeltaE * log(1 + cache.accumulatedElossSigma / sigmaDeltaE) - + cache.accumulatedElossSigma * log(1 + sigmaDeltaE / cache.accumulatedElossSigma); + deltaE += sigmaDeltaE * std::log(1 + cache.accumulatedElossSigma / sigmaDeltaE) + + cache.accumulatedElossSigma * std::log(1 + sigmaDeltaE / cache.accumulatedElossSigma); } else { - deltaE -= sigmaDeltaE * log(1 + cache.accumulatedElossSigma / sigmaDeltaE) - + cache.accumulatedElossSigma * log(1 + sigmaDeltaE / cache.accumulatedElossSigma); + deltaE -= sigmaDeltaE * std::log(1 + cache.accumulatedElossSigma / sigmaDeltaE) + + cache.accumulatedElossSigma * std::log(1 + sigmaDeltaE / cache.accumulatedElossSigma); } cache.accumulatedElossSigma += sigmaDeltaE; - }else if (m_landauMode) { + } else if (m_landauMode) { cache.accumulatedElossSigma += sigmaDeltaE; } @@ -711,7 +709,7 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm updatedParameters[Trk::qOverP] = parm.charge() / (p + deltaP); // check if Parameters are measured parameters - AmgSymMatrix(5) * updatedCovariance = nullptr; + AmgSymMatrix(5)* updatedCovariance = nullptr; if (parm.covariance() || (m_validationMode && !m_validationIgnoreUnmeasured)) { // the new CovarianceMatrix - a copy first updatedCovariance = new AmgSymMatrix(5)(*parm.covariance()); @@ -722,8 +720,8 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm // sign of the noise adding ---------------------------------------------------------------- int sign = int(matupmode); // checks will only be done in the removeNoise mode - double sigmaDeltaPhiSq = angularVariation / - (sin(parm.parameters()[Trk::theta]) * sin(parm.parameters()[Trk::theta])); + double sigmaDeltaPhiSq = + angularVariation / (std::sin(parm.parameters()[Trk::theta]) * std::sin(parm.parameters()[Trk::theta])); double sigmaDeltaThetaSq = angularVariation; // checks will only be done in the removeNoise mode COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::phi, Trk::phi), sign, sigmaDeltaPhiSq); @@ -731,16 +729,13 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm if (!m_xKalmanStraggling && !m_landauMode) { COVARIANCEUPDATEWITHCHECK((*updatedCovariance)(Trk::qOverP, Trk::qOverP), sign, sigmaQoverP * sigmaQoverP); } else if (m_xKalmanStraggling) { /* to be filled in*/ - }else if (m_landauMode) { + } else if (m_landauMode) { // subtract what we added up till now and add what we should add up till now // Landau's 68% limit is best modeled by 1.6*sigmaParameter - (*updatedCovariance)(Trk::qOverP, - Trk::qOverP) -= sign * - std::pow(1.6 * (cache.accumulatedElossSigma - p * p * sigmaQoverP) / (p * p), - 2); - (*updatedCovariance)(Trk::qOverP, - Trk::qOverP) += sign * - std::pow(1.6 * cache.accumulatedElossSigma / ((p + deltaP) * (p + deltaP)), 2); + (*updatedCovariance)(Trk::qOverP, Trk::qOverP) -= + sign * std::pow(1.6 * (cache.accumulatedElossSigma - p * p * sigmaQoverP) / (p * p), 2); + (*updatedCovariance)(Trk::qOverP, Trk::qOverP) += + sign * std::pow(1.6 * cache.accumulatedElossSigma / ((p + deltaP) * (p + deltaP)), 2); } // the checks for the remove Noise mode ----------------------------------------------------- @@ -754,16 +749,15 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm // -------------------------------------- if (outputFlag && m_msgOutputCorrections) { double sigmaAngle = sqrt(angularVariation); - ATH_MSG_VERBOSE(" sigma(phi) / sigma(theta) = " << sigmaAngle / sin( - parm.parameters()[Trk::theta]) << " / " << sigmaAngle); + ATH_MSG_VERBOSE(" sigma(phi) / sigma(theta) = " << sigmaAngle / std::sin(parm.parameters()[Trk::theta]) << " / " + << sigmaAngle); ATH_MSG_VERBOSE(" deltaP / sigmaQoverP = " << deltaP << " / " << sigmaQoverP); } // ----------------------------------------- validation section ---------------------------------- // validation if configured - if (m_validationMode - && dir == Trk::PropDirection(m_validationDirection)){ + if (m_validationMode && dir == Trk::PropDirection(m_validationDirection)) { - if(cache.validationLayer) { + if (cache.validationLayer) { // all you have from MaterialProperties double pathInX0 = pathcorrection * matprop.thicknessInX0(); double A = 0.; @@ -771,8 +765,7 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm double rho = 0.; double l0 = 0.; // or better take the extended version for more information - const Trk::MaterialProperties *extProperties - = dynamic_cast<const Trk::MaterialProperties *>(&matprop); + const Trk::MaterialProperties* extProperties = dynamic_cast<const Trk::MaterialProperties*>(&matprop); if (extProperties) { A = extProperties->averageA(); @@ -782,18 +775,18 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm } Trk::AssociatedMaterial assMatHit(parm.position(), - pathInX0, matprop.x0(), + pathInX0, + matprop.x0(), l0, - A, Z, rho, pathcorrection, + A, + Z, + rho, + pathcorrection, cache.validationLayer->enclosingTrackingVolume(), cache.validationLayer); - // record the Material hit ---------------------------------------------------------------- - m_materialMapper->recordMaterialHit(assMatHit, - parm.position()); - - + m_materialMapper->recordMaterialHit(assMatHit, parm.position()); // the steps cache.validationSteps++; @@ -805,29 +798,34 @@ Trk::MaterialEffectsUpdator::updateImpl(Cache& cache,const TrackParameters &parm } // ------------------------------------------validation section ---------------------------------- } - return parm.associatedSurface().createTrackParameters(updatedParameters[Trk::loc1], updatedParameters[Trk::loc2], - updatedParameters[Trk::phi], updatedParameters[Trk::theta], - updatedParameters[Trk::qOverP], updatedCovariance); + return parm.associatedSurface().createTrackParameters(updatedParameters[Trk::loc1], + updatedParameters[Trk::loc2], + updatedParameters[Trk::phi], + updatedParameters[Trk::theta], + updatedParameters[Trk::qOverP], + updatedCovariance); } return parm.clone(); } void -Trk::MaterialEffectsUpdator::validationActionImpl(Cache& cache) const { +Trk::MaterialEffectsUpdator::validationActionImpl(Cache& cache) const +{ cache.validationEta = 0.; cache.validationPhi = 0.; cache.validationSteps = 0; } void -Trk::MaterialEffectsUpdator::modelActionImpl(Cache& cache, const Trk::TrackParameters * /*parm*/) const { +Trk::MaterialEffectsUpdator::modelActionImpl(Cache& cache, const Trk::TrackParameters* /*parm*/) const +{ cache.accumulatedElossSigma = 0; } -bool -Trk::MaterialEffectsUpdator::checkCovariance(AmgSymMatrix(5) &updated) const { - if (updated(Trk::phi, - Trk::phi) > 0. && updated(Trk::theta, Trk::theta) > 0. && updated(Trk::qOverP, Trk::qOverP) > 0.) { +bool Trk::MaterialEffectsUpdator::checkCovariance(AmgSymMatrix(5) & updated) const +{ + if (updated(Trk::phi, Trk::phi) > 0. && updated(Trk::theta, Trk::theta) > 0. && + updated(Trk::qOverP, Trk::qOverP) > 0.) { return true; } diff --git a/Tracking/TrkExtrapolation/TrkExTools/src/Navigator.cxx b/Tracking/TrkExtrapolation/TrkExTools/src/Navigator.cxx index e2042bf2915fc9df8e1be6933f832e3455bd4ad2..3ab740e92dba2ade05b5cfd46cbc633eddb52f1a 100755 --- a/Tracking/TrkExtrapolation/TrkExTools/src/Navigator.cxx +++ b/Tracking/TrkExtrapolation/TrkExTools/src/Navigator.cxx @@ -112,14 +112,16 @@ Trk::Navigator::initialize() { return StatusCode::SUCCESS; } -const Trk::TrackingVolume * -Trk::Navigator::volume(const Amg::Vector3D &gp) const { - return(trackingGeometry()->lowestTrackingVolume(gp)); +const Trk::TrackingVolume* +Trk::Navigator::volume(const EventContext& ctx, const Amg::Vector3D& gp) const +{ + return (trackingGeometry(ctx)->lowestTrackingVolume(gp)); } -const Trk::TrackingVolume * -Trk::Navigator::highestVolume() const { - return(trackingGeometry()->highestTrackingVolume()); +const Trk::TrackingVolume* +Trk::Navigator::highestVolume(const EventContext& ctx) const +{ + return (trackingGeometry(ctx)->highestTrackingVolume()); } const Trk::BoundarySurface<Trk::TrackingVolume>* @@ -363,7 +365,7 @@ Trk::Navigator::nextDenseTrackingVolume( if (atVolumeBoundary(currPar, &vol, dir, nextVolume, tol) && nextVolume != (&vol)) { if (!nextVolume) { const Amg::Vector3D& gp = currPar->position(); - const Trk::TrackingVolume *currStatic = trackingGeometry()->lowestStaticTrackingVolume(gp); + const Trk::TrackingVolume *currStatic = trackingGeometry(ctx)->lowestStaticTrackingVolume(gp); if (&vol != currStatic) { nextVolume = currStatic; } @@ -407,7 +409,7 @@ Trk::Navigator::nextDenseTrackingVolume( } else if (atVolumeBoundary(nextPar, &vol, dir, nextVolume, tol)) { if (!nextVolume) { // detached volume boundary or world boundary : resolve - const Trk::TrackingVolume *currStatic = trackingGeometry()->lowestStaticTrackingVolume(gp); + const Trk::TrackingVolume *currStatic = trackingGeometry(ctx)->lowestStaticTrackingVolume(gp); if (&vol != currStatic) { nextVolume = currStatic; } @@ -448,8 +450,9 @@ Trk::Navigator::atVolumeBoundary(const Trk::TrackParameters* parms, dir * parms->momentum().unit()); if (distSol.currentDistance(false) < tol && distSol.numberOfSolutions() > 0) { isAtBoundary = true; - const Trk::TrackingVolume *attachedVol = (bounds[ib].get())->attachedVolume( - parms->position(), parms->momentum(), dir); + const Trk::TrackingVolume* attachedVol = + (bounds[ib].get()) + ->attachedVolume(parms->position(), parms->momentum(), dir); if (!nextVol && attachedVol) { nextVol = attachedVol; } @@ -616,7 +619,8 @@ Trk::Navigator::finalize() { } const Trk::TrackingGeometry* -Trk::Navigator::trackingGeometry() const { +Trk::Navigator::trackingGeometry(const EventContext& ctx) const +{ if (!m_useConditions) { const TrackingGeometry* trackingGeometry = nullptr; if (detStore() @@ -627,8 +631,7 @@ Trk::Navigator::trackingGeometry() const { } return trackingGeometry; } else { - SG::ReadCondHandle<TrackingGeometry> handle(m_trackingGeometryReadKey, - Gaudi::Hive::currentContext()); + SG::ReadCondHandle<TrackingGeometry> handle(m_trackingGeometryReadKey, ctx); if (!handle.isValid()) { ATH_MSG_FATAL("Could not retrieve TrackingGeometry from DetectorStore."); throw Trk::NavigatorException(); diff --git a/Tracking/TrkFitter/TrkGaussianSumFilter/TrkGaussianSumFilter/GaussianSumFitter.h b/Tracking/TrkFitter/TrkGaussianSumFilter/TrkGaussianSumFilter/GaussianSumFitter.h index 8d89c5dcacabcaaef364b05e157372ba3b3772e6..5eaaa6eaa60d5c38084783c5f44ab82caeea4300 100644 --- a/Tracking/TrkFitter/TrkGaussianSumFilter/TrkGaussianSumFilter/GaussianSumFitter.h +++ b/Tracking/TrkFitter/TrkGaussianSumFilter/TrkGaussianSumFilter/GaussianSumFitter.h @@ -145,14 +145,31 @@ private: Gaudi::Property<bool> m_StoreMCSOS{ this, "StoreMCSOS", - false, - "Store multicomponent state or single state in final trajectory" + true, + "Store Multicomponent State (preferred if we slim later on) or Single " + "state in final trajectory" }; - bool m_reintegrateOutliers; - bool m_makePerigee; - bool m_refitOnMeasurementBase; - bool m_doHitSorting; + Gaudi::Property<bool> m_reintegrateOutliers{ this, + "ReintegrateOutliers", + true, + "Reintegrate Outliers" }; + + Gaudi::Property<bool> m_makePerigee{ this, + "MakePerigee", + true, + "Make Perigee" }; + + Gaudi::Property<bool> m_refitOnMeasurementBase{ this, + "RefitOnMeasurementBase", + true, + "Refit On Measurement Base" }; + + Gaudi::Property<bool> m_doHitSorting{ this, + "DoHitSorting", + true, + "Do Hit Sorting" }; + PropDirection m_directionToPerigee; std::unique_ptr<TrkParametersComparisonFunction> m_trkParametersComparisonFunction; diff --git a/Tracking/TrkFitter/TrkGaussianSumFilter/src/GaussianSumFitter.cxx b/Tracking/TrkFitter/TrkGaussianSumFilter/src/GaussianSumFitter.cxx index ce2565120e1ac665769fe33747baff89671299a3..3a8d3e982c2deaa87acfef457a2494a7568301f0 100644 --- a/Tracking/TrkFitter/TrkGaussianSumFilter/src/GaussianSumFitter.cxx +++ b/Tracking/TrkFitter/TrkGaussianSumFilter/src/GaussianSumFitter.cxx @@ -40,10 +40,6 @@ Trk::GaussianSumFitter::GaussianSumFitter(const std::string& type, const std::string& name, const IInterface* parent) : AthAlgTool(type, name, parent) - , m_reintegrateOutliers(false) - , m_makePerigee(true) - , m_refitOnMeasurementBase(true) - , m_doHitSorting(true) , m_directionToPerigee(Trk::oppositeMomentum) , m_trkParametersComparisonFunction(nullptr) , m_inputPreparator(nullptr) @@ -55,13 +51,7 @@ Trk::GaussianSumFitter::GaussianSumFitter(const std::string& type, , m_fitQualityFailure{ 0 } , m_fitSuccess{ 0 } { - declareInterface<ITrackFitter>(this); - - declareProperty("ReintegrateOutliers", m_reintegrateOutliers); - declareProperty("MakePerigee", m_makePerigee); - declareProperty("RefitOnMeasurementBase", m_refitOnMeasurementBase); - declareProperty("DoHitSorting", m_doHitSorting); declareProperty("SortingReferencePoint", m_sortingReferencePoint); // Estrablish reference point as origin m_sortingReferencePoint.push_back(0.); diff --git a/Tracking/TrkFitter/TrkGaussianSumFilter/src/GsfExtrapolator.cxx b/Tracking/TrkFitter/TrkGaussianSumFilter/src/GsfExtrapolator.cxx index 99417a5534f4c2f017cb1407f4ec72ae02407d96..d7bc79f5af500ef36fdba7eebb532250065cca06 100644 --- a/Tracking/TrkFitter/TrkGaussianSumFilter/src/GsfExtrapolator.cxx +++ b/Tracking/TrkFitter/TrkGaussianSumFilter/src/GsfExtrapolator.cxx @@ -32,8 +32,8 @@ decription : Implementation code for GsfExtrapolator class #include "TrkTrack/TrackStateOnSurface.h" -#include <utility> #include <unordered_set> +#include <utility> namespace { const bool useBoundaryMaterialUpdate(true); @@ -146,7 +146,7 @@ Trk::GsfExtrapolator::extrapolateImpl( const Trk::BoundaryCheck& boundaryCheck, Trk::ParticleHypothesis particleHypothesis) const { - ATH_MSG_DEBUG("Calling extrpolate: " << multiComponentState.size() ); + ATH_MSG_DEBUG("Calling extrpolate: " << multiComponentState.size()); auto buff_extrapolateCalls = m_extrapolateCalls.buffer(); // If the extrapolation is to be without material effects simply revert to the @@ -434,7 +434,8 @@ Trk::GsfExtrapolator::extrapolateImpl( return {}; } // After successful extrapolation return the state - ATH_MSG_DEBUG("extrapolateInsideVolume() successful: " << destinationState.size() ); + ATH_MSG_DEBUG( + "extrapolateInsideVolume() successful: " << destinationState.size()); return destinationState; } /* @@ -522,7 +523,7 @@ Trk::GsfExtrapolator::extrapolateDirectly( auto buff_extrapolateDirectlyCalls = m_extrapolateDirectlyCalls.buffer(); // statistics ++buff_extrapolateDirectlyCalls; - const Trk::TrackingVolume* currentVolume = m_navigator->highestVolume(); + const Trk::TrackingVolume* currentVolume = m_navigator->highestVolume(ctx); if (!currentVolume) { ATH_MSG_WARNING( "Current tracking volume could not be determined... returning 0"); @@ -633,8 +634,12 @@ Trk::GsfExtrapolator::extrapolateToVolumeBoundary( // Only loop over layers if they can be found within the tracking volume else if (trackingVolume.confinedLayers() && associatedLayer->layerMaterialProperties()) { - Trk::MultiComponentState updatedState = m_materialUpdator->postUpdate( - cache.m_materialEffectsCaches, *currentState, *layer, direction, particleHypothesis); + Trk::MultiComponentState updatedState = + m_materialUpdator->postUpdate(cache.m_materialEffectsCaches, + *currentState, + *layer, + direction, + particleHypothesis); if (!updatedState.empty()) { addMaterialtoVector(cache, layer, currentState->begin()->first.get()); @@ -756,8 +761,12 @@ Trk::GsfExtrapolator::extrapolateToVolumeBoundary( if (layerAtBoundary->layerMaterialProperties()) { ATH_MSG_DEBUG("Boundary surface has material - updating properties"); assert(currentState); - matUpdatedState = m_materialUpdator->postUpdate( - cache.m_materialEffectsCaches, *currentState, *layerAtBoundary, direction, particleHypothesis); + matUpdatedState = + m_materialUpdator->postUpdate(cache.m_materialEffectsCaches, + *currentState, + *layerAtBoundary, + direction, + particleHypothesis); } } @@ -814,7 +823,8 @@ Trk::GsfExtrapolator::extrapolateInsideVolume( { ATH_MSG_DEBUG("GSF extrapolateInsideVolume() in tracking volume: " - << trackingVolume.volumeName() << " with " << multiComponentState.size() << " components" ); + << trackingVolume.volumeName() << " with " + << multiComponentState.size() << " components"); /* * We use current State to track where we are @@ -860,8 +870,11 @@ Trk::GsfExtrapolator::extrapolateInsideVolume( trackingVolume.confinedLayers() && associatedLayer->layerMaterialProperties()) { - updatedState = m_materialUpdator->postUpdate( - cache.m_materialEffectsCaches, *currentState, *associatedLayer, direction, particleHypothesis); + updatedState = m_materialUpdator->postUpdate(cache.m_materialEffectsCaches, + *currentState, + *associatedLayer, + direction, + particleHypothesis); if (!updatedState.empty()) { addMaterialtoVector( @@ -1094,8 +1107,12 @@ Trk::GsfExtrapolator::extrapolateToIntermediateLayer( Material effects ------------------------------------- */ - Trk::MultiComponentState updatedState = m_materialUpdator->update( - cache.m_materialEffectsCaches, destinationState, layer, direction, particleHypothesis); + Trk::MultiComponentState updatedState = + m_materialUpdator->update(cache.m_materialEffectsCaches, + destinationState, + layer, + direction, + particleHypothesis); if (updatedState.empty()) { return destinationState; @@ -1170,11 +1187,14 @@ Trk::GsfExtrapolator::extrapolateToDestinationLayer( Trk::MultiComponentState updatedState{}; if (startLayer != &layer) { - updatedState = m_materialUpdator->preUpdate( - cache.m_materialEffectsCaches, destinationState, layer, direction, particleHypothesis); + updatedState = m_materialUpdator->preUpdate(cache.m_materialEffectsCaches, + destinationState, + layer, + direction, + particleHypothesis); } - ATH_MSG_DEBUG( "State size after preUpdate: " << updatedState.size() ); + ATH_MSG_DEBUG("State size after preUpdate: " << updatedState.size()); if (updatedState.empty()) { return destinationState; @@ -1208,8 +1228,9 @@ Trk::GsfExtrapolator::extrapolateSurfaceBasedMaterialEffects( // Check the multi-component state is populated if (multiComponentState.empty()) { - ATH_MSG_WARNING("Multi component state passed to extrapolateSurfaceBasedMaterialEffects " - "is not populated... returning 0"); + ATH_MSG_WARNING( + "Multi component state passed to extrapolateSurfaceBasedMaterialEffects " + "is not populated... returning 0"); return {}; } @@ -1359,7 +1380,7 @@ Trk::GsfExtrapolator::initialiseNavigation( Trk::PropDirection direction) const { - ATH_MSG_DEBUG("initialiseNavigation !!! : " << multiComponentState.size() ); + ATH_MSG_DEBUG("initialiseNavigation !!! : " << multiComponentState.size()); // Empty the garbage bin ATH_MSG_DEBUG("Destination to surface [r,z] [" << surface.center().perp() << ",\t" << surface.center().z() @@ -1389,7 +1410,7 @@ Trk::GsfExtrapolator::initialiseNavigation( else if (!currentVolume) { // If the recall method fails then the cashed information needs to be reset resetRecallInformation(cache); - currentVolume = m_navigator->volume(combinedState->position()); + currentVolume = m_navigator->volume(ctx, combinedState->position()); currentLayer = (currentVolume) ? currentVolume->associatedLayer(combinedState->position()) : nullptr; @@ -1462,12 +1483,14 @@ Trk::GsfExtrapolator::initialiseNavigation( } // Global search of tracking geometry to find the destination volume if (referenceParameters) { - destinationVolume = m_navigator->volume(referenceParameters->position()); + destinationVolume = + m_navigator->volume(ctx, referenceParameters->position()); } // If destination volume is still not found then global search based on // surface position else { - destinationVolume = m_navigator->volume(surface.globalReferencePoint()); + destinationVolume = + m_navigator->volume(ctx, surface.globalReferencePoint()); } } } @@ -1511,9 +1534,10 @@ Trk::GsfExtrapolator::addMaterialtoVector(Cache& cache, : nullptr; // Determine the pathCorrection if the material properties exist - pathcorr = materialProperties - ? 1. / std::abs(surface->normal().dot(nextPar->momentum().unit())) - : 0.; + pathcorr = + materialProperties + ? 1. / std::abs(surface->normal().dot(nextPar->momentum().unit())) + : 0.; } // Check that the material properties have been defined - if not define them diff --git a/Tracking/TrkFitter/TrkGlobalChi2Fitter/TrkGlobalChi2Fitter/GlobalChi2Fitter.h b/Tracking/TrkFitter/TrkGlobalChi2Fitter/TrkGlobalChi2Fitter/GlobalChi2Fitter.h index acc512b82540eb4835d42487d29c97fc66c92033..d7fb48e2adee86c870ce5c9e505f197fab84b955 100755 --- a/Tracking/TrkFitter/TrkGlobalChi2Fitter/TrkGlobalChi2Fitter/GlobalChi2Fitter.h +++ b/Tracking/TrkFitter/TrkGlobalChi2Fitter/TrkGlobalChi2Fitter/GlobalChi2Fitter.h @@ -10,7 +10,23 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" #include "GaudiKernel/EventContext.h" + +#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h" + +#include "TrkToolInterfaces/ITrkMaterialProviderTool.h" +#include "TrkToolInterfaces/IResidualPullCalculator.h" +#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" +#include "TrkToolInterfaces/IUpdator.h" + +#include "TrkExInterfaces/IExtrapolator.h" +#include "TrkExInterfaces/IPropagator.h" +#include "TrkExInterfaces/INavigator.h" +#include "TrkExInterfaces/IMultipleScatteringUpdator.h" +#include "TrkExInterfaces/IEnergyLossUpdator.h" +#include "TrkExInterfaces/IMaterialEffectsUpdator.h" + #include "TrkFitterInterfaces/IGlobalTrackFitter.h" + #include "TrkGlobalChi2Fitter/GXFTrajectory.h" #include "TrkMaterialOnTrack/MaterialEffectsOnTrack.h" #include "TrkFitterUtils/FitterStatusCode.h" @@ -27,16 +43,6 @@ class AtlasDetectorID; namespace Trk { class Track; class TransportJacobian; - class IRIO_OnTrackCreator; - class IUpdator; - class IEnergyLossUpdator; - class IMultipleScatteringUpdator; - class IMaterialEffectsUpdator; - class INavigator; - class IPropagator; - class IExtrapolator; - class IResidualPullCalculator; - class ITrackingGeometrySvc; class TrackFitInputPreparator; class IMagneticFieldTool; class MeasuredPerigee; @@ -50,10 +56,8 @@ namespace Trk { class TrackingGeometry; class TrackingVolume; class Volume; - class ITrkMaterialProviderTool; - - class GlobalChi2Fitter: virtual public IGlobalTrackFitter, public AthAlgTool { + class GlobalChi2Fitter: public extends<AthAlgTool, IGlobalTrackFitter> { struct Cache { /* * Currently the information about what type of fit is being passed by the @@ -560,21 +564,21 @@ namespace Trk { Cache & cache ) const; - ToolHandle < IRIO_OnTrackCreator > m_ROTcreator; - ToolHandle < IRIO_OnTrackCreator > m_broadROTcreator; - ToolHandle < IUpdator > m_updator; - ToolHandle < IExtrapolator > m_extrapolator; - ToolHandle < IMultipleScatteringUpdator > m_scattool; - ToolHandle < IEnergyLossUpdator > m_elosstool; - ToolHandle < IMaterialEffectsUpdator > m_matupdator; - ToolHandle < IPropagator > m_propagator; - ToolHandle < INavigator > m_navigator; - ToolHandle < IResidualPullCalculator > m_residualPullCalculator; //!< The residual and pull calculator tool - ToolHandle < Trk::ITrkMaterialProviderTool > m_caloMaterialProvider; - ToolHandle < IMaterialEffectsOnTrackProvider > m_calotool; - ToolHandle < IMaterialEffectsOnTrackProvider > m_calotoolparam; - - ServiceHandle < ITrackingGeometrySvc > m_trackingGeometrySvc; + ToolHandle<IRIO_OnTrackCreator> m_ROTcreator {this, "RotCreatorTool", "", ""}; + ToolHandle<IRIO_OnTrackCreator> m_broadROTcreator {this, "BroadRotCreatorTool", "", ""}; + ToolHandle<IUpdator> m_updator {this, "MeasurementUpdateTool", "", ""}; + ToolHandle<IExtrapolator> m_extrapolator {this, "ExtrapolationTool", "Trk::Extrapolator/CosmicsExtrapolator", ""}; + ToolHandle<IMultipleScatteringUpdator> m_scattool {this, "MultipleScatteringTool", "Trk::MultipleScatteringUpdator/AtlasMultipleScatteringUpdator", ""}; + ToolHandle<IEnergyLossUpdator> m_elosstool {this, "EnergyLossTool", "Trk::EnergyLossUpdator/AtlasEnergyLossUpdator", ""}; + ToolHandle<IMaterialEffectsUpdator> m_matupdator {this, "MaterialUpdateTool", "", ""}; + ToolHandle<IPropagator> m_propagator {this, "PropagatorTool", "Trk::StraightLinePropagator/CosmicsPropagator", ""}; + ToolHandle<INavigator> m_navigator {this, "NavigatorTool", "Trk::Navigator/CosmicsNavigator", ""}; + ToolHandle<IResidualPullCalculator> m_residualPullCalculator {this, "ResidualPullCalculatorTool", "Trk::ResidualPullCalculator/ResidualPullCalculator", ""}; + ToolHandle<Trk::ITrkMaterialProviderTool> m_caloMaterialProvider {this, "CaloMaterialProvider", "Trk::TrkMaterialProviderTool/TrkMaterialProviderTool", ""}; + ToolHandle<IMaterialEffectsOnTrackProvider> m_calotool {this, "MuidTool", "Rec::MuidMaterialEffectsOnTrackProvider/MuidMaterialEffectsOnTrackProvider", ""}; + ToolHandle<IMaterialEffectsOnTrackProvider> m_calotoolparam {this, "MuidToolParam", "", ""}; + + ServiceHandle<ITrackingGeometrySvc> m_trackingGeometrySvc; SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_field_cache_key{ this, @@ -583,36 +587,40 @@ namespace Trk { "Trk::GlobalChi2Fitter field conditions object key" }; - bool m_signedradius; - bool m_calomat, m_extmat; - bool m_fillderivmatrix; - double m_outlcut; - double m_maxoutliers; - bool m_printderivs; - double m_p; // momentum (for estimating multiple scattering) - bool m_straightlineprop; - bool m_extensioncuts; - bool m_sirecal; - bool m_trtrecal; - bool m_kinkfinding; const AtlasDetectorID *m_DetID = nullptr; - bool m_decomposesegments; - bool m_getmaterialfromtrack; - bool m_domeastrackpar; - bool m_storemat; - double m_chi2cut; - double m_scalefactor; - bool m_redoderivs; - bool m_reintoutl; - int m_maxit; - bool m_acceleration; - bool m_numderiv; - int m_miniter; - bool m_fiteloss; - bool m_asymeloss; - int m_fixbrem; - bool m_useCaloTG = false; - bool m_rejectLargeNScat = false; + + Gaudi::Property<bool> m_signedradius {this, "SignedDriftRadius", true}; + Gaudi::Property<bool> m_calomat {this, "MuidMat", false}; + Gaudi::Property<bool> m_extmat {this, "ExtrapolatorMaterial", true}; + Gaudi::Property<bool> m_fillderivmatrix {this, "FillDerivativeMatrix", false}; + Gaudi::Property<bool> m_printderivs {this, "PrintDerivatives", false}; + Gaudi::Property<bool> m_straightlineprop {this, "StraightLine", true}; + Gaudi::Property<bool> m_extensioncuts {this, "TRTExtensionCuts", true}; + Gaudi::Property<bool> m_sirecal {this, "RecalibrateSilicon", false}; + Gaudi::Property<bool> m_trtrecal {this, "RecalibrateTRT", false}; + Gaudi::Property<bool> m_kinkfinding {this, "KinkFinding", false}; + Gaudi::Property<bool> m_decomposesegments {this, "DecomposeSegments", true}; + Gaudi::Property<bool> m_getmaterialfromtrack {this, "GetMaterialFromTrack", true}; + Gaudi::Property<bool> m_domeastrackpar {this, "MeasuredTrackParameters", true}; + Gaudi::Property<bool> m_storemat {this, "StoreMaterialOnTrack", true}; + Gaudi::Property<bool> m_redoderivs {this, "RecalculateDerivatives", false}; + Gaudi::Property<bool> m_reintoutl {this, "ReintegrateOutliers", false}; + Gaudi::Property<bool> m_acceleration {this, "Acceleration", false}; + Gaudi::Property<bool> m_numderiv {this, "NumericalDerivs", false}; + Gaudi::Property<bool> m_fiteloss {this, "FitEnergyLoss", false}; + Gaudi::Property<bool> m_asymeloss {this, "AsymmetricEnergyLoss", true}; + Gaudi::Property<bool> m_useCaloTG {this, "UseCaloTG", false}; + Gaudi::Property<bool> m_rejectLargeNScat {this, "RejectLargeNScat", false}; + + Gaudi::Property<double> m_outlcut {this, "OutlierCut", 5.0}; + Gaudi::Property<double> m_p {this, "Momentum", 0.0}; + Gaudi::Property<double> m_chi2cut {this, "TrackChi2PerNDFCut", 1.e15}; + Gaudi::Property<double> m_scalefactor {this, "TRTTubeHitCut", 2.5}; + + Gaudi::Property<int> m_maxoutliers {this, "MaxOutliers", 10}; + Gaudi::Property<int> m_maxit {this, "MaxIterations", 30}; + Gaudi::Property<int> m_miniter {this, "MinimumIterations", 1}; + Gaudi::Property<int> m_fixbrem {this, "FixBrem", -1}; ParticleMasses m_particleMasses; diff --git a/Tracking/TrkFitter/TrkGlobalChi2Fitter/src/GlobalChi2Fitter.cxx b/Tracking/TrkFitter/TrkGlobalChi2Fitter/src/GlobalChi2Fitter.cxx index f8172519a74522820ec1896a28d4e724510c49d7..24415d469d460b3823d42934377ca3c2e434eb68 100644 --- a/Tracking/TrkFitter/TrkGlobalChi2Fitter/src/GlobalChi2Fitter.cxx +++ b/Tracking/TrkFitter/TrkGlobalChi2Fitter/src/GlobalChi2Fitter.cxx @@ -23,14 +23,11 @@ #include "TrkGeometry/TrackingVolume.h" #include "TrkGeometry/TrackingGeometry.h" -#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h" - #include "TrkExUtils/TransportJacobian.h" #include "TrkMaterialOnTrack/EnergyLoss.h" #include "TrkMaterialOnTrack/ScatteringAngles.h" #include "TrkMaterialOnTrack/EstimatedBremOnTrack.h" -#include "TrkToolInterfaces/ITrkMaterialProviderTool.h" #include "TrkGeometry/HomogeneousLayerMaterial.h" #include "TrkGeometry/MaterialProperties.h" @@ -45,16 +42,7 @@ #include "TrkVertexOnTrack/VertexOnTrack.h" #include "TrkSegment/TrackSegment.h" -#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" -#include "TrkToolInterfaces/IUpdator.h" -#include "TrkToolInterfaces/IResidualPullCalculator.h" - -#include "TrkExInterfaces/IExtrapolator.h" #include "TrkExInterfaces/IPropagator.h" -#include "TrkExInterfaces/INavigator.h" -#include "TrkExInterfaces/IMultipleScatteringUpdator.h" -#include "TrkExInterfaces/IEnergyLossUpdator.h" -#include "TrkExInterfaces/IMaterialEffectsUpdator.h" #include "MagFieldConditions/AtlasFieldCacheCondObj.h" #include "MagFieldElements/AtlasFieldCache.h" @@ -130,70 +118,10 @@ namespace Trk { const std::string & n, const IInterface * p ): - AthAlgTool(t, n, p), - m_ROTcreator(""), - m_broadROTcreator(""), - m_updator(""), - m_extrapolator("Trk::Extrapolator/CosmicsExtrapolator"), - m_scattool("Trk::MultipleScatteringUpdator/AtlasMultipleScatteringUpdator"), - m_elosstool("Trk::EnergyLossUpdator/AtlasEnergyLossUpdator"), - m_matupdator(""), - m_propagator("Trk::StraightLinePropagator/CosmicsPropagator"), - m_navigator("Trk::Navigator/CosmicsNavigator"), - m_residualPullCalculator("Trk::ResidualPullCalculator/ResidualPullCalculator"), - m_caloMaterialProvider("Trk::TrkMaterialProviderTool/TrkMaterialProviderTool"), - m_calotool("Rec::MuidMaterialEffectsOnTrackProvider/MuidMaterialEffectsOnTrackProvider"), - m_calotoolparam(""), - m_trackingGeometrySvc("", n), - m_DetID(nullptr) + base_class(t, n, p), + m_trackingGeometrySvc("", n) { - declareProperty("ExtrapolationTool", m_extrapolator); - declareProperty("MeasurementUpdateTool", m_updator); - declareProperty("RotCreatorTool", m_ROTcreator); - declareProperty("BroadRotCreatorTool", m_broadROTcreator); - declareProperty("MultipleScatteringTool", m_scattool); - declareProperty("EnergyLossTool", m_elosstool); - declareProperty("MaterialUpdateTool", m_matupdator); - declareProperty("PropagatorTool", m_propagator); - declareProperty("NavigatorTool", m_navigator); - declareProperty("ResidualPullCalculatorTool", m_residualPullCalculator); declareProperty("TrackingGeometrySvc", m_trackingGeometrySvc); - declareProperty("CaloMaterialProvider", m_caloMaterialProvider); - declareProperty("MuidTool", m_calotool); - declareProperty("MuidToolParam", m_calotoolparam); - - declareProperty("DecomposeSegments", m_decomposesegments = true); - declareProperty("StraightLine", m_straightlineprop = true); - declareProperty("OutlierCut", m_outlcut = 5.); - declareProperty("MaxOutliers", m_maxoutliers = 10); - declareProperty("SignedDriftRadius", m_signedradius = true); - declareProperty("Momentum", m_p = 0.); - declareProperty("ExtrapolatorMaterial", m_extmat = true); - declareProperty("MuidMat", m_calomat = false); - declareProperty("FillDerivativeMatrix", m_fillderivmatrix = false); - declareProperty("RecalibrateSilicon", m_sirecal = false); - declareProperty("RecalibrateTRT", m_trtrecal = false); - declareProperty("MaxIterations", m_maxit = 30); - declareProperty("GetMaterialFromTrack", m_getmaterialfromtrack = true); - declareProperty("MeasuredTrackParameters", m_domeastrackpar = true); - declareProperty("StoreMaterialOnTrack", m_storemat = true); - declareProperty("ReintegrateOutliers", m_reintoutl = false); - declareProperty("TrackChi2PerNDFCut", m_chi2cut = 1.e15); - declareProperty("RecalculateDerivatives", m_redoderivs = false); - declareProperty("TRTExtensionCuts", m_extensioncuts = true); - declareProperty("TRTTubeHitCut", m_scalefactor = 2.5); - declareProperty("PrintDerivatives", m_printderivs = false); - declareProperty("Acceleration", m_acceleration = false); - declareProperty("KinkFinding", m_kinkfinding = false); - declareProperty("NumericalDerivs", m_numderiv = false); - declareProperty("FitEnergyLoss", m_fiteloss = false); - declareProperty("AsymmetricEnergyLoss", m_asymeloss = true); - declareProperty("MinimumIterations", m_miniter = 1); - declareProperty("UseCaloTG", m_useCaloTG = false); - declareProperty("FixBrem", m_fixbrem = -1); - declareProperty("RejectLargeNScat", m_rejectLargeNScat = false); - - declareInterface<IGlobalTrackFitter>(this); } StatusCode GlobalChi2Fitter::initialize() { @@ -5509,7 +5437,7 @@ namespace Trk { cache.m_fittercode = FitterStatusCode::OutlierLogicFailure; } - double cut = (finaltrajectory->numberOfSiliconHits() == finaltrajectory->numberOfHits())? 999 : m_chi2cut; + double cut = (finaltrajectory->numberOfSiliconHits() == finaltrajectory->numberOfHits())? 999.0 : m_chi2cut.value(); if ( runOutlier && diff --git a/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingCondAlg.h b/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingCondAlg.h index 3900549600efe18e0ed4e77eb5c7a048882f242e..fd4c86c764d3a105a8421d79709cc3d9f67fbacc 100644 --- a/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingCondAlg.h +++ b/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingCondAlg.h @@ -13,7 +13,7 @@ #include "StoreGate/CondHandleKeyArray.h" #include "TrkRIO_OnTrack/RIO_OnTrackErrorScaling.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <iostream> class RIO_OnTrackErrorScalingKit; diff --git a/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingDbOverrideCondAlg.h b/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingDbOverrideCondAlg.h index 1bf64c0d7fffa3c695fc3d18bf93d2cfc6bf3bd2..f2d21b137ba634d2b714309c3aa003da527171d9 100644 --- a/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingDbOverrideCondAlg.h +++ b/Tracking/TrkTools/TrkRIO_OnTrackCreator/src/RIO_OnTrackErrorScalingDbOverrideCondAlg.h @@ -12,7 +12,7 @@ #include "StoreGate/WriteCondHandleKey.h" #include "TrkRIO_OnTrack/RIO_OnTrackErrorScaling.h" #include "GaudiKernel/ICondSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <iostream> class RIO_OnTrackErrorScalingKit; diff --git a/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/GaussianDensityTestAlg.cxx b/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/GaussianDensityTestAlg.cxx index e20760d1ce3da2b2fe8f93903f68f09416626f75..acde5ef4f23b4213b60fc5346405849f8af563d1 100644 --- a/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/GaussianDensityTestAlg.cxx +++ b/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/GaussianDensityTestAlg.cxx @@ -13,7 +13,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTracking/Vertex.h" #include "TrkLinks/LinkToXAODTrackParticle.h" diff --git a/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/ImagingSeedTuningAlg.cxx b/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/ImagingSeedTuningAlg.cxx index 475120b0317f657c6375dd5cb5af5fc0a03ae43a..c5582c8d102010cba204ecfc005227724e609671 100644 --- a/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/ImagingSeedTuningAlg.cxx +++ b/Tracking/TrkVertexFitter/TrkVertexSeedFinderUtils/src/ImagingSeedTuningAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "InDetTrackSelectionTool/IInDetTrackSelectionTool.h" diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCell2ClusterMapper.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCell2ClusterMapper.cxx index 79eea27e7b991791a6ba64ecc6887d1313a5eb0e..193eeceb981f46a90a644c6ad0d708e9e334ce38 100755 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCell2ClusterMapper.cxx +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCell2ClusterMapper.cxx @@ -42,7 +42,7 @@ #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ListItem.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //############################################################################### // CONSTRUCTOR: diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTopoTowerAlgorithm.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTopoTowerAlgorithm.cxx index c9b031816b8176a4d011d4661faa502c7731ae11..295ec5287447d3ff84405ef36aa51a4a9b590b0d 100644 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTopoTowerAlgorithm.cxx +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTopoTowerAlgorithm.cxx @@ -17,7 +17,7 @@ #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ListItem.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // #include "EventKernel/INavigable4Momentum.h" diff --git a/Trigger/TrigAlgorithms/TrigEFMissingET/src/FexBase.h b/Trigger/TrigAlgorithms/TrigEFMissingET/src/FexBase.h index debb6771b4c16bb49dd305871edce6db08d9cd8d..b334a25abbc8cffa59f582cb89c553203dfd3362 100644 --- a/Trigger/TrigAlgorithms/TrigEFMissingET/src/FexBase.h +++ b/Trigger/TrigAlgorithms/TrigEFMissingET/src/FexBase.h @@ -15,7 +15,7 @@ #include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "AthenaMonitoringKernel/GenericMonitoringTool.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTrigMissingET/TrigMissingETContainer.h" #include "GaudiKernel/SystemOfUnits.h" #include "MonGroupBuilder.h" diff --git a/Trigger/TrigAlgorithms/TrigEgammaRec/src/TrigEgammaRec.cxx b/Trigger/TrigAlgorithms/TrigEgammaRec/src/TrigEgammaRec.cxx index 9c4201c7399ed6ba88d3d7a612ab4bd552ac2d3b..d982a3d6f8e3c93ed9910eae5e2b7834ed7a2515 100755 --- a/Trigger/TrigAlgorithms/TrigEgammaRec/src/TrigEgammaRec.cxx +++ b/Trigger/TrigAlgorithms/TrigEgammaRec/src/TrigEgammaRec.cxx @@ -73,7 +73,7 @@ PURPOSE: Algorithm is an adaptation for the trigger of the egammaBuilder.cxx // INCLUDE GAUDI HEADER FILES: -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" #include <algorithm> diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/DetectorTimingAlgo.h b/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/DetectorTimingAlgo.h index e1102d79b411dcdbe98b8d33a8d07514f152dce0..65d426f3d39af314a1580de3da70603e6535e52b 100644 --- a/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/DetectorTimingAlgo.h +++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/DetectorTimingAlgo.h @@ -16,7 +16,7 @@ #include "TrigInterfaces/AllTEAlgo.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include <vector> @@ -54,7 +54,7 @@ public: /// Run once per event HLT::ErrorCode hltExecute(std::vector<HLT::TEVec>&, unsigned int output); - void updateHandler(Property& p); + void updateHandler(Gaudi::Details::PropertyBase& p); // TrigL2MuonSA::RecMuonRoIUtils m_recMuonRoIUtils; // ToolHandle<TrigL2MuonSA::MuFastDataPreparator> m_dataPreparator; ToolHandle<TrigL2MuonSA::RpcDataPreparator>m_rpcDataPreparator; diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/L1CorrelationAlgo.h b/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/L1CorrelationAlgo.h index bc7f108cce1929276ed5812781a8c9a91f81a1b3..9f15867d33a3a777c79cbe97725f1ab2605b8276 100644 --- a/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/L1CorrelationAlgo.h +++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/L1CorrelationAlgo.h @@ -16,7 +16,7 @@ #include "TrigInterfaces/AllTEAlgo.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include <vector> @@ -67,7 +67,7 @@ public: /// Run once per event HLT::ErrorCode hltExecute(std::vector<HLT::TEVec>&, unsigned int output); - void updateHandler(Property& p); + void updateHandler(Gaudi::Details::PropertyBase& p); private: std::vector<uint32_t> m_bitmasks; diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/DetectorTimingAlgo.cxx b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/DetectorTimingAlgo.cxx index 573f83e8dfecb1455ed1eae19f4b3b1081c9441d..7936b31355e63ec30cc8059f65bb2b6fd5d4fa6d 100644 --- a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/DetectorTimingAlgo.cxx +++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/DetectorTimingAlgo.cxx @@ -12,7 +12,7 @@ #include "TrigGenericAlgs/DetectorTimingAlgo.h" #include "GaudiKernel/IJobOptionsSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <math.h> #include <sstream> @@ -145,7 +145,7 @@ HLT::ErrorCode DetectorTimingAlgo::hltInitialize() } -void DetectorTimingAlgo::updateHandler(Property&) +void DetectorTimingAlgo::updateHandler(Gaudi::Details::PropertyBase&) { // parseROBRequest(); } diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/L1CorrelationAlgo.cxx b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/L1CorrelationAlgo.cxx index 6be24bcf5e1d53f6d34c83a1732ec6fb6a734914..3061287b5d902a4b97675d5151ed9a9da7a7b3bd 100644 --- a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/L1CorrelationAlgo.cxx +++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/L1CorrelationAlgo.cxx @@ -12,7 +12,7 @@ #include "TrigGenericAlgs/L1CorrelationAlgo.h" #include "GaudiKernel/IJobOptionsSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "ByteStreamCnvSvcBase/IROBDataProviderSvc.h" #include <math.h> @@ -285,7 +285,7 @@ HLT::ErrorCode L1CorrelationAlgo::hltInitialize() } -void L1CorrelationAlgo::updateHandler(Property&) +void L1CorrelationAlgo::updateHandler(Gaudi::Details::PropertyBase&) { // parseROBRequest(); } diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.cxx b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.cxx index 20a2562075cf77906150a093dfa8f2f84c17e71d..b9360ee106f01109713f91e7edc3eccfddfdcdd1 100644 --- a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.cxx +++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.cxx @@ -12,7 +12,7 @@ #include "ROBRequestAlgo.h" #include "GaudiKernel/IJobOptionsSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "ByteStreamCnvSvcBase/IROBDataProviderSvc.h" #include <math.h> @@ -43,7 +43,7 @@ HLT::ErrorCode ROBRequestAlgo::hltInitialize() ServiceHandle<IJobOptionsSvc> jobOptSvc("JobOptionsSvc", name()); // get the list of enabled ROBs - const Property* p = Gaudi::Utils::getProperty(jobOptSvc->getProperties("DataFlowConfig"), + const Gaudi::Details::PropertyBase* p = Gaudi::Utils::getProperty(jobOptSvc->getProperties("DataFlowConfig"), "DF_Enabled_ROB_IDs"); if (p) m_enabledROBs.assign(*p); else ATH_MSG_DEBUG("Could not find property DataFlowConfig.DF_Enabled_ROB_IDs"); @@ -70,7 +70,7 @@ HLT::ErrorCode ROBRequestAlgo::hltInitialize() } -void ROBRequestAlgo::updateHandler(Property&) +void ROBRequestAlgo::updateHandler(Gaudi::Details::PropertyBase&) { parseROBRequest(); } diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.h b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.h index 0d3c4318a2345530f8653bea0d20f41e9affad4c..9361a82a211f963d9c12199fd3cb61012fd86b5a 100644 --- a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.h +++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/ROBRequestAlgo.h @@ -16,7 +16,7 @@ #include "TrigInterfaces/AllTEAlgo.h" #include "GaudiKernel/ServiceHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include <string> #include <vector> @@ -68,7 +68,7 @@ public: /// Run once per event HLT::ErrorCode hltExecute(std::vector<HLT::TEVec>&, unsigned int); - void updateHandler(Property& p); + void updateHandler(Gaudi::Details::PropertyBase& p); private: void parseROBRequest(); diff --git a/Trigger/TrigAlgorithms/TrigHIRec/src/TrigHIClusterMaker.cxx b/Trigger/TrigAlgorithms/TrigHIRec/src/TrigHIClusterMaker.cxx index e4298fa465f5bec805aff516581e981903e55398..434e8e1aad0bc24dc0abd99f151a11cbd7940998 100644 --- a/Trigger/TrigAlgorithms/TrigHIRec/src/TrigHIClusterMaker.cxx +++ b/Trigger/TrigAlgorithms/TrigHIRec/src/TrigHIClusterMaker.cxx @@ -14,7 +14,7 @@ #include "CaloUtils/CaloCollectionHelper.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ListItem.h" //#include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/StatusCode.h" diff --git a/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoAlgMT.h b/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoAlgMT.h index 3ee2812855c5fdf7763ff2209adf95835d28753a..715c4de3e6556d5003215022b705bd5466135dfa 100644 --- a/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoAlgMT.h +++ b/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoAlgMT.h @@ -12,7 +12,7 @@ Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration #include "xAODTracking/TrackParticleContainer.h" #include "AthenaMonitoringKernel/Monitored.h" #include <map> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthViews/View.h" // STL includes diff --git a/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoTool.h b/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoTool.h index 6fadfe9373bc09479cd2cd021f7b36d340c6636d..4c0347dca06f5abc52efc47254a12f2ec324d12c 100644 --- a/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoTool.h +++ b/Trigger/TrigAlgorithms/TrigMinBias/src/TrackCountHypoTool.h @@ -4,7 +4,7 @@ Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration #ifndef TRIGT2MINBIAS_TRACKCOUNTHYPOTOOL_H #define TRIGT2MINBIAS_TRACKCOUNTHYPOTOOL_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgTool.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigAlgorithms/TrigMuonEF/src/MuonFilterAlg.cxx b/Trigger/TrigAlgorithms/TrigMuonEF/src/MuonFilterAlg.cxx index f11b334d1bcba44b9f367e0c042a7c2de0102671..0693873aa6e7f6a556a3c33322c7aa292ee0e2ff 100644 --- a/Trigger/TrigAlgorithms/TrigMuonEF/src/MuonFilterAlg.cxx +++ b/Trigger/TrigAlgorithms/TrigMuonEF/src/MuonFilterAlg.cxx @@ -45,7 +45,7 @@ StatusCode MuonFilterAlg::execute(const EventContext& ctx) const } if(nCBmuons==0) pass = true; - ATH_MSG_DEBUG("Found: "<<muons->size()<<" muons; pass="<<pass); + ATH_MSG_DEBUG("Found: "<<nCBmuons<<" muons; pass="<<pass); setFilterPassed(pass, ctx); return StatusCode::SUCCESS; diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TestCaloDataAccess.cxx b/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TestCaloDataAccess.cxx index ea095c06df22d69e8246a42513089ed4a0a25d3a..16f838d58e9ca6aee3c1441d7ade0d486124e046 100644 --- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TestCaloDataAccess.cxx +++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TestCaloDataAccess.cxx @@ -7,7 +7,7 @@ #include "tbb/blocked_range.h" #include "TestTools/expect.h" #include "TestTools/ParallelCallTest.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigT2CaloCommon/LArCellCont.h" #include "TrigSteeringEvent/TrigRoiDescriptor.h" #include "CaloEvent/CaloConstCellContainer.h" diff --git a/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoAlgMT.h b/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoAlgMT.h index d3a6f5e6e6399a92f5c3fe418fc899f5cee967cc..e59d4c8cd239fa36297237b13037650d56e0f86b 100644 --- a/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoAlgMT.h +++ b/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoAlgMT.h @@ -11,7 +11,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration #include "DecisionHandling/TrigCompositeUtils.h" #include "AthenaBaseComps/AthReentrantAlgorithm.h" #include <map> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthViews/View.h" // STL includes diff --git a/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoTool.h b/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoTool.h index 49c852fc05d35eb28991cc34e77acab5168dcdab..73e860784673b862b5ea453e970dc8aab219c27b 100644 --- a/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoTool.h +++ b/Trigger/TrigAlgorithms/TrigT2MinBias/src/SPCountHypoTool.h @@ -4,7 +4,7 @@ Copyright! (C) 2002-2019 CERN for the benefit of the ATLAS collaboration #ifndef TRIGT2MINBIAS_SPCOUNTHYPOTOOL_H #define TRIGT2MINBIAS_SPCOUNTHYPOTOOL_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthAlgTool.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMerged.cxx b/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMerged.cxx index 9dcb15f6f22668740533952ce5dccb4446e42306..2fe0baa8aaa6d3ea09709ed3766878229e33cf51 100755 --- a/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMerged.cxx +++ b/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMerged.cxx @@ -17,7 +17,7 @@ //#include "GaudiKernel/IToolSvc.h" //#include "GaudiKernel/ListItem.h" //#include "GaudiKernel/StatusCode.h" -//#include "GaudiKernel/Property.h" +//#include "Gaudi/Property.h" #include "TrigT1Interfaces/TrigT1Interfaces_ClassDEF.h" #include "TrigSteeringEvent/TrigRoiDescriptor.h" diff --git a/Trigger/TrigAnalysis/TrigDecisionTool/Root/TrigDecisionTool.cxx b/Trigger/TrigAnalysis/TrigDecisionTool/Root/TrigDecisionTool.cxx index fbf0c1d35716c16d063a0e954ef458ab17a4b244..d1b00685ed246b74dc73c0ebf2d503214d723930 100644 --- a/Trigger/TrigAnalysis/TrigDecisionTool/Root/TrigDecisionTool.cxx +++ b/Trigger/TrigAnalysis/TrigDecisionTool/Root/TrigDecisionTool.cxx @@ -59,7 +59,7 @@ Trig::TrigDecisionTool::TrigDecisionTool(const std::string& name) : #ifndef XAOD_STANDALONE //just for Athena/AthAnalysisBase auto props = getProperties(); - for( Property* prop : props ) { + for( Gaudi::Details::PropertyBase* prop : props ) { if( prop->name() != "OutputLevel" ) { continue; } @@ -72,7 +72,7 @@ Trig::TrigDecisionTool::TrigDecisionTool(const std::string& name) : } #ifndef XAOD_STANDALONE -void Trig::TrigDecisionTool::outputlevelupdateHandler(Property& /*p*/) { +void Trig::TrigDecisionTool::outputlevelupdateHandler(Gaudi::Details::PropertyBase& /*p*/) { //call the original update handler Logger::msg().setLevel(AthMessaging::msg().level()); } diff --git a/Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/TrigDecisionTool.h b/Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/TrigDecisionTool.h index 7fd995200016669975644e934985b4d5764494bc..6316ea07216f1048cfa9027459ea9c312af2aea2 100755 --- a/Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/TrigDecisionTool.h +++ b/Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/TrigDecisionTool.h @@ -87,7 +87,7 @@ namespace Trig { StatusCode finalize(); #ifndef XAOD_STANDALONE - void outputlevelupdateHandler(Property& p); //propagates outputlevel changes to the Logger + void outputlevelupdateHandler(Gaudi::Details::PropertyBase& p); //propagates outputlevel changes to the Logger #endif diff --git a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/Root/TrigEgammaAnalysisBaseTool.cxx b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/Root/TrigEgammaAnalysisBaseTool.cxx index f7d0bb03f6cd4412c58c97abb7662c997c75785a..2d84ad00cf51de0a4cf527f824ec8ada18591a32 100644 --- a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/Root/TrigEgammaAnalysisBaseTool.cxx +++ b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/Root/TrigEgammaAnalysisBaseTool.cxx @@ -95,7 +95,7 @@ TrigEgammaAnalysisBaseTool( const std::string& myname ) m_forceTrigEmulation=false; } -void TrigEgammaAnalysisBaseTool::updateDetail(Property& /*p*/){ +void TrigEgammaAnalysisBaseTool::updateDetail(Gaudi::Details::PropertyBase& /*p*/){ plot()->setDetail(m_detailedHists); // Detail for tools needs to be reset for every call in Analysis for( auto& tool : m_tools) { @@ -103,18 +103,18 @@ void TrigEgammaAnalysisBaseTool::updateDetail(Property& /*p*/){ } } -void TrigEgammaAnalysisBaseTool::updateAltBinning(Property& /*p*/){ +void TrigEgammaAnalysisBaseTool::updateAltBinning(Gaudi::Details::PropertyBase& /*p*/){ plot()->setAltBinning(m_doJpsiee); } -void TrigEgammaAnalysisBaseTool::updateTP(Property& /*p*/){ +void TrigEgammaAnalysisBaseTool::updateTP(Gaudi::Details::PropertyBase& /*p*/){ plot()->setTP(m_tp); for( auto& tool : m_tools) { tool->setTP(m_tp); } } -void TrigEgammaAnalysisBaseTool::updateEmulation(Property& /*p*/){ +void TrigEgammaAnalysisBaseTool::updateEmulation(Gaudi::Details::PropertyBase& /*p*/){ // This may not be set yet if we're in the middle of initialization. if (!m_plot.typeAndName().empty()) { plot()->setEmulation(m_doEmulation); diff --git a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaAnalysisBaseTool.h b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaAnalysisBaseTool.h index 7b0ad509deff173e7852aea5b5a1a4e6c1c87658..c7101507a40c13c141de18831200f9b73ac55460 100644 --- a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaAnalysisBaseTool.h +++ b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaAnalysisBaseTool.h @@ -93,11 +93,11 @@ ASG_TOOL_CLASS(TrigEgammaAnalysisBaseTool, ITrigEgammaAnalysisBaseTool) private: /*! Property update handlers */ - void updateDetail(Property& p); - void updateAltBinning(Property& p); - void updateTP(Property& p); - void updateEmulation(Property& p); - void updateOutputLevel(Property& p); + void updateDetail(Gaudi::Details::PropertyBase& p); + void updateAltBinning(Gaudi::Details::PropertyBase& p); + void updateTP(Gaudi::Details::PropertyBase& p); + void updateEmulation(Gaudi::Details::PropertyBase& p); + void updateOutputLevel(Gaudi::Details::PropertyBase& p); std::string m_msg; /*! creates map of trigger name and TrigInfo struct */ diff --git a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaAnalysisAlg.cxx b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaAnalysisAlg.cxx index 5bfd6fa6889cae937e2fd9df067f7832522afad1..60316f519ebfcbb7c3f44e8af573bc9f25e9f46c 100644 --- a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaAnalysisAlg.cxx +++ b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaAnalysisAlg.cxx @@ -5,7 +5,7 @@ // TrigEgammaAnalysisAlg.cxx #include "TrigEgammaAnalysisAlg.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaAnalysisTools/ITrigEgammaAnalysisBaseTool.h" #include "AsgTools/AsgTool.h" diff --git a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaTDToolTest.cxx b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaTDToolTest.cxx index 238827bf56af669266ff168ede25f594f8876c3d..8408cf31a0e7fb658ffad63f4627a7df7c07b0dc 100644 --- a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaTDToolTest.cxx +++ b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/src/TrigEgammaTDToolTest.cxx @@ -5,7 +5,7 @@ // TrigEgammaTDToolTest.cxx #include "TrigEgammaTDToolTest.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODEgamma/ElectronContainer.h" #include "xAODEgamma/PhotonContainer.h" using std::string; diff --git a/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolAlg.cxx b/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolAlg.cxx index ae81fc078d2d2e979baf5f3097af126a6d8fed4d..7811bed28011b01eb252f3a950424c45ee387099 100644 --- a/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolAlg.cxx +++ b/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolAlg.cxx @@ -3,7 +3,7 @@ */ #include "TrigEgammaEmulationToolAlg.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTrigger/EmTauRoI.h" #include "xAODTrigCalo/TrigEMCluster.h" #include "xAODTrigRinger/TrigRingerRings.h" diff --git a/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolTest.cxx b/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolTest.cxx index 73f48b44219399952ce50bb2258ae0bbe6a02abb..f756e23e78cb4fad95ddc7551639c4df70760f0a 100644 --- a/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolTest.cxx +++ b/Trigger/TrigAnalysis/TrigEgammaEmulationTool/src/TrigEgammaEmulationToolTest.cxx @@ -5,7 +5,7 @@ // TrigEgammaMatchingToolTest.cxx #include "TrigEgammaEmulationToolTest.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTrigger/EmTauRoI.h" #include "xAODTrigCalo/TrigEMCluster.h" #include "xAODTrigRinger/TrigRingerRings.h" diff --git a/Trigger/TrigAnalysis/TrigEgammaMatchingTool/TrigEgammaMatchingTool/TrigEgammaMatchingToolMT.h b/Trigger/TrigAnalysis/TrigEgammaMatchingTool/TrigEgammaMatchingTool/TrigEgammaMatchingToolMT.h index 0d08ee8f4346b78755e2c50b76041bd37253b31e..4a8400b3578b11fef161cce9e0c5276cdb4fcdf9 100644 --- a/Trigger/TrigAnalysis/TrigEgammaMatchingTool/TrigEgammaMatchingTool/TrigEgammaMatchingToolMT.h +++ b/Trigger/TrigAnalysis/TrigEgammaMatchingTool/TrigEgammaMatchingTool/TrigEgammaMatchingToolMT.h @@ -5,7 +5,7 @@ #ifndef TrigEgammaMatchingToolMT_H #define TrigEgammaMatchingToolMT_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AsgTools/AsgTool.h" #include "AsgTools/ToolHandle.h" #include "TrigDecisionTool/TrigDecisionTool.h" diff --git a/Trigger/TrigAnalysis/TrigEgammaMatchingTool/src/TrigEgammaMatchingToolTest.cxx b/Trigger/TrigAnalysis/TrigEgammaMatchingTool/src/TrigEgammaMatchingToolTest.cxx index 139d2fcd2bcf4b2a89aeae48b72fe7d8cb980e1f..d70be807b1ed7fa8d05fb65a2ff38d90ab64c6f3 100644 --- a/Trigger/TrigAnalysis/TrigEgammaMatchingTool/src/TrigEgammaMatchingToolTest.cxx +++ b/Trigger/TrigAnalysis/TrigEgammaMatchingTool/src/TrigEgammaMatchingToolTest.cxx @@ -5,7 +5,7 @@ // TrigEgammaMatchingToolTest.cxx #include "TrigEgammaMatchingToolTest.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" using std::string; //********************************************************************** diff --git a/Trigger/TrigAnalysis/TrigRootAnalysis/src/TrigConfigSvcAthD3PD.cxx b/Trigger/TrigAnalysis/TrigRootAnalysis/src/TrigConfigSvcAthD3PD.cxx index 85001ae1c18faea6d7140e1092e25b7bb50a28f0..a28b7e08aab3254b829f1bd4719621b0aedf8d10 100644 --- a/Trigger/TrigAnalysis/TrigRootAnalysis/src/TrigConfigSvcAthD3PD.cxx +++ b/Trigger/TrigAnalysis/TrigRootAnalysis/src/TrigConfigSvcAthD3PD.cxx @@ -15,7 +15,7 @@ #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/Incident.h" #include "GaudiKernel/IJobOptionsSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/System.h" #include "AthenaKernel/errorcheck.h" @@ -79,15 +79,15 @@ namespace D3PD { m_tupleName = ""; ServiceHandle< IJobOptionsSvc > jobOSvc( "JobOptionsSvc", name() ); CHECK( jobOSvc.retrieve() ); - const std::vector< const Property* >* evSelProp = + const std::vector< const Gaudi::Details::PropertyBase* >* evSelProp = jobOSvc->getProperties( "EventSelector" ); if( ! evSelProp ) { REPORT_MESSAGE( MSG::FATAL ) << "Didn't find the input file list"; return StatusCode::FAILURE; } - std::vector< const Property* >::const_iterator itr = evSelProp->begin(); - std::vector< const Property* >::const_iterator end = evSelProp->end(); + std::vector< const Gaudi::Details::PropertyBase* >::const_iterator itr = evSelProp->begin(); + std::vector< const Gaudi::Details::PropertyBase* >::const_iterator end = evSelProp->end(); for( ; itr != end; ++itr ) { // Look for the "InputCollections" property: diff --git a/Trigger/TrigAnalysis/TriggerMatchingTool/Root/MatchingTool.cxx b/Trigger/TrigAnalysis/TriggerMatchingTool/Root/MatchingTool.cxx index 5c9a35b01c089b2281134481c084ebfdbd6faed1..3ebdf9ee50ecf0ce22a647c1ce04eb503298dc96 100644 --- a/Trigger/TrigAnalysis/TriggerMatchingTool/Root/MatchingTool.cxx +++ b/Trigger/TrigAnalysis/TriggerMatchingTool/Root/MatchingTool.cxx @@ -21,7 +21,7 @@ MatchingTool::MatchingTool(const std::string& name) : } #ifndef XAOD_STANDALONE -void MatchingTool::updateThreshold(Property& /*p*/) { +void MatchingTool::updateThreshold(Gaudi::Details::PropertyBase& /*p*/) { ATH_MSG_DEBUG("Matching Threshold is updated to:" << m_matchingThreshold); impl()->setThreshold( m_matchingThreshold ); } diff --git a/Trigger/TrigAnalysis/TriggerMatchingTool/TriggerMatchingTool/MatchingTool.h b/Trigger/TrigAnalysis/TriggerMatchingTool/TriggerMatchingTool/MatchingTool.h index 0f505b108e6219bffbd022c24be038cc83e1a8b5..6092aed6dde8fa452942785f41b173c43acb6d4c 100644 --- a/Trigger/TrigAnalysis/TriggerMatchingTool/TriggerMatchingTool/MatchingTool.h +++ b/Trigger/TrigAnalysis/TriggerMatchingTool/TriggerMatchingTool/MatchingTool.h @@ -41,7 +41,7 @@ protected: #ifndef XAOD_STANDALONE - void updateThreshold(Property& p); + void updateThreshold(Gaudi::Details::PropertyBase& p); #endif private: diff --git a/Trigger/TrigConfiguration/TrigConfData/TrigConfData/L1Board.h b/Trigger/TrigConfiguration/TrigConfData/TrigConfData/L1Board.h index d35573036e05488934f72b03fd51e5436b8eb53d..1426611bfb004b08af1e43107f61ffa84a1dbb53 100644 --- a/Trigger/TrigConfiguration/TrigConfData/TrigConfData/L1Board.h +++ b/Trigger/TrigConfiguration/TrigConfData/TrigConfData/L1Board.h @@ -45,7 +45,9 @@ namespace TrigConf { /** Accessor to the number of connectors */ std::size_t size() const; - BoardType type() const; + std::string type() const; + + BoardType boardType() const; /** Accessor to the connector type */ bool legacy() const; @@ -58,7 +60,7 @@ namespace TrigConf { /** Update the internal members */ virtual void update(); - BoardType m_type; + BoardType m_boardType; bool m_legacy; std::vector<std::string> m_connectorNames; }; diff --git a/Trigger/TrigConfiguration/TrigConfData/src/L1Board.cxx b/Trigger/TrigConfiguration/TrigConfData/src/L1Board.cxx index b8a97c0930c6dbb8cd0dfd5d151de5840be2029d..059497974f3a80a74e7837a2d06d99353b803f08 100644 --- a/Trigger/TrigConfiguration/TrigConfData/src/L1Board.cxx +++ b/Trigger/TrigConfiguration/TrigConfData/src/L1Board.cxx @@ -38,11 +38,11 @@ TrigConf::L1Board::update() std::string boardType(getAttribute("type")); if( boardType == "MUCTPI" ) { - m_type = BoardType::MUCTPI; + m_boardType = BoardType::MUCTPI; } else if( boardType == "CTPIN" ) { - m_type = BoardType::CTPIN; + m_boardType = BoardType::CTPIN; } else if( boardType == "TOPO" ) { - m_type = BoardType::TOPO; + m_boardType = BoardType::TOPO; } else { throw std::runtime_error("Unknown board type " + boardType); } @@ -60,6 +60,25 @@ TrigConf::L1Board::size() const return m_connectorNames.size(); } +TrigConf::L1Board::BoardType +TrigConf::L1Board::boardType() const +{ + return m_boardType; +} + +std::string +TrigConf::L1Board::type() const +{ + switch( boardType() ) { + case BoardType::CTPIN: + return "CTPIN"; + case BoardType::MUCTPI: + return "MUCTPI"; + case BoardType::TOPO: + return "TOPO"; + } + return ""; +} bool TrigConf::L1Board::legacy() const diff --git a/Trigger/TrigConfiguration/TrigConfIO/utils/TestTriggerMenuAccess.cxx b/Trigger/TrigConfiguration/TrigConfIO/utils/TestTriggerMenuAccess.cxx index 2bf7a03f116ce0f938c766af577f17261333de4b..547375efe06246e2bc312fd5f38a7f08c3ded9b9 100644 --- a/Trigger/TrigConfiguration/TrigConfIO/utils/TestTriggerMenuAccess.cxx +++ b/Trigger/TrigConfiguration/TrigConfIO/utils/TestTriggerMenuAccess.cxx @@ -95,7 +95,7 @@ testL1Menu_Boards(const TrigConf::L1Menu & l1menu) { cout << "L1 menu has " << l1menu.boardNames().size() << " boards configured" << endl; string boardName("Topo1"); auto & board = l1menu.board(boardName); - cout << "Board " << boardName << " has " << board.size() << " connectors configured: "; + cout << "Board " << boardName << " of type " << board.type() << " has " << board.size() << " connectors configured: "; for( auto & connName : board.connectorNames() ) { cout << connName << " "; } cout << endl; return true; diff --git a/Trigger/TrigConfiguration/TrigConfigSvc/src/DSConfigSvc.cxx b/Trigger/TrigConfiguration/TrigConfigSvc/src/DSConfigSvc.cxx index 621a1047ff1382750f1d01e8e2059772e64f880d..62efca7e710e6478339cb974d60558088351d838 100644 --- a/Trigger/TrigConfiguration/TrigConfigSvc/src/DSConfigSvc.cxx +++ b/Trigger/TrigConfiguration/TrigConfigSvc/src/DSConfigSvc.cxx @@ -109,7 +109,7 @@ TrigConf::DSConfigSvc::initialize() { if( jobOptionsSvc.retrieve().isFailure() ) { ATH_MSG_WARNING( "Cannot retrieve JobOptionsSvc" ); } else { - const Property* p = + const Gaudi::Details::PropertyBase* p = Gaudi::Utils::getProperty( jobOptionsSvc->getProperties( "IOVDbSvc" ), "Folders" ); if( p ) m_folders = p->toString(); ATH_MSG_DEBUG( "The string 'folders' is: " << m_folders ); diff --git a/Trigger/TrigConfiguration/TrigConfigSvc/src/HLTConfigSvc.cxx b/Trigger/TrigConfiguration/TrigConfigSvc/src/HLTConfigSvc.cxx index 6773a06ab9885d3a3504228fee159dcc84ebbd44..6613ef76b2fb3dde43b198959942f30ef82dd690 100644 --- a/Trigger/TrigConfiguration/TrigConfigSvc/src/HLTConfigSvc.cxx +++ b/Trigger/TrigConfiguration/TrigConfigSvc/src/HLTConfigSvc.cxx @@ -205,7 +205,7 @@ HLTConfigSvc::initialize() { if (jobOptionsSvc.retrieve().isFailure()) { ATH_MSG_WARNING("Cannot retrieve JobOptionsSvc"); } else { - const Property* p=Gaudi::Utils::getProperty( jobOptionsSvc->getProperties("DataFlowConfig"), "DF_PartitionName"); + const Gaudi::Details::PropertyBase* p=Gaudi::Utils::getProperty( jobOptionsSvc->getProperties("DataFlowConfig"), "DF_PartitionName"); if (p != 0) m_partition = p->toString(); } } diff --git a/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.cxx b/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.cxx index 58cbebc361e403ab0feb18ca273d1fc16580b826..c8e05bdd091ce426e82e6ee174f8526ce82daa74 100644 --- a/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.cxx +++ b/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.cxx @@ -7,7 +7,7 @@ #include <nlohmann/json.hpp> #include "GaudiKernel/IProperty.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigConfIO/TrigDBJobOptionsLoader.h" #include "TrigConfData/DataStructure.h" diff --git a/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.h b/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.h index 573b5af122f3e8bee35a73c1b680884fb16645ec..475c424208c972dac0260c11c66b809d52eb8ee0 100644 --- a/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.h +++ b/Trigger/TrigConfiguration/TrigConfigSvc/src/TrigConfJobOptionsSvc.h @@ -104,7 +104,7 @@ namespace TrigConf { return m_josvc->getProperties(client); } - virtual const Property* getClientProperty(const std::string& client, + virtual const Gaudi::Details::PropertyBase* getClientProperty(const std::string& client, const std::string& name) const override { return m_josvc->getClientProperty(client, name); diff --git a/Trigger/TrigConfiguration/TrigConfxAOD/CMakeLists.txt b/Trigger/TrigConfiguration/TrigConfxAOD/CMakeLists.txt index cc1b6dc01c6a830520acef3dc57142c2f87f1325..31390aa07cfd5871b1648fde13d68fd7a87cbfda 100644 --- a/Trigger/TrigConfiguration/TrigConfxAOD/CMakeLists.txt +++ b/Trigger/TrigConfiguration/TrigConfxAOD/CMakeLists.txt @@ -32,8 +32,9 @@ endif() # Test(s) in the package: if( XAOD_STANDALONE ) - atlas_add_test( xaodconfigtool_test - SCRIPT test/ut_trigconfxaod_xaodconfigtool_test.py ) + # FIX ME: temporarily disabled as it is failing + # atlas_add_test( xaodconfigtool_test + # SCRIPT test/ut_trigconfxaod_xaodconfigtool_test.py ) endif() # Install files from the package: diff --git a/Trigger/TrigFake/src/FakeLvl1MultipleRoIsatFixedEtaPhi.cxx b/Trigger/TrigFake/src/FakeLvl1MultipleRoIsatFixedEtaPhi.cxx index 2ecadae82256704452dd298dd8f62d6018f085c3..bda6b320806c441d0c870d85c711ee0388e27d7d 100644 --- a/Trigger/TrigFake/src/FakeLvl1MultipleRoIsatFixedEtaPhi.cxx +++ b/Trigger/TrigFake/src/FakeLvl1MultipleRoIsatFixedEtaPhi.cxx @@ -24,7 +24,7 @@ Modified : #include <utility> // INCLUDE GAUDI HEADER FILES: #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ISvcLocator.h" diff --git a/Trigger/TrigFake/src/FakeLvl1RoIfromKine.cxx b/Trigger/TrigFake/src/FakeLvl1RoIfromKine.cxx index 40d868dd86ddef2995514f2357cffa9001731716..ec18ce9258780bb9d623fc479348d9641efd4d29 100644 --- a/Trigger/TrigFake/src/FakeLvl1RoIfromKine.cxx +++ b/Trigger/TrigFake/src/FakeLvl1RoIfromKine.cxx @@ -23,7 +23,7 @@ Modified : #include <vector> #include <utility> // INCLUDE GAUDI HEADER FILES: -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/ISvcLocator.h" # include "CLHEP/Units/SystemOfUnits.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastCaloHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastCaloHypoAlgMT.cxx index e8358950217edbb0aae7fd81ef974dda67e68a06..adfa2745c0d70ebc5bef78809c50ffd0710dd811 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastCaloHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastCaloHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaFastCaloHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoAlgMT.cxx index 44a064fd9ee6066e073224e803d267dee89162b4..6572eac08f2795dab482b2e6fc7ac4364b189265 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ #include <map> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaFastElectronHypoAlgMT.h" #include "AthViews/ViewHelper.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoTool.h b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoTool.h index d44c13333af7634945b2d778adba35a9d919c962..93b2a681a8748f9df9eca5e64d5936b35a95fc52 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoTool.h +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastElectronHypoTool.h @@ -4,7 +4,7 @@ #ifndef TRIGEGAMMAHYPO_TRIGEGAMMAFASTELECTRONHYPOTOOL_H #define TRIGEGAMMAHYPO_TRIGEGAMMAFASTELECTRONHYPOTOOL_H 1 -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "xAODTrigCalo/TrigEMCluster.h" #include "xAODTrigEgamma/TrigElectronContainer.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoAlgMT.cxx index a57e30b492740a2158f2aabb996e9db308fd5b79..b20937136fba9e15e1bf44bc8aa34d4232a35f02 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaFastPhotonHypoAlgMT.h" #include "AthViews/ViewHelper.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoTool.h b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoTool.h index 1803c1e56cc10a9d8f300f603085f0b9aa0d48ae..a2f3a7a313131a13cb2c116ccb0b850800607585 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoTool.h +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaFastPhotonHypoTool.h @@ -4,7 +4,7 @@ #ifndef TRIGEGAMMAHYPO_TRIGEGAMMAFASTPHOTONHYPOTOOL_H #define TRIGEGAMMAHYPO_TRIGEGAMMAFASTPHOTONHYPOTOOL_H 1 -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "CLHEP/Units/SystemOfUnits.h" #include "xAODTrigCalo/TrigEMCluster.h" #include "xAODTrigEgamma/TrigPhotonContainer.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionCaloHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionCaloHypoAlgMT.cxx index 60b07defc376c1c1a4abc53a6b9fcf8934ee5069..55fc86417b115a99f5c634bcecf0e44c7130f4a8 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionCaloHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionCaloHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaPrecisionCaloHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionElectronHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionElectronHypoAlgMT.cxx index 8c90e35cbd80304bb2ef58b696e0946ba83632c5..9dbb604bce4556c243291e954cc5bf4929d428ff 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionElectronHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionElectronHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaPrecisionElectronHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionPhotonHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionPhotonHypoAlgMT.cxx index de8a4a689b5cd47ba86962fe58b1c2227a5d5ab5..6d59b33f34d26405d000e79ec5bac50a7f776865 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionPhotonHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEgammaPrecisionPhotonHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEgammaPrecisionPhotonHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigHLTJetHypo/src/TrigJetHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigHLTJetHypo/src/TrigJetHypoAlgMT.cxx index a7bddb80d573e2048e57189ead7ae51b4465e49a..f7f95d76a10aea8259b1af4c9ecb4049b001d43a 100644 --- a/Trigger/TrigHypothesis/TrigHLTJetHypo/src/TrigJetHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigHLTJetHypo/src/TrigJetHypoAlgMT.cxx @@ -3,7 +3,7 @@ */ #include <algorithm> -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigJetHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserAlg.h b/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserAlg.h index 50d276dd285a3af5775430db9eb3bb62cb8b783a..c69dea03f8dbfa83e9813c439b1244636109cd18 100644 --- a/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserAlg.h +++ b/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserAlg.h @@ -11,7 +11,7 @@ #include "TrigHLTJetHypoUnitTests/IHypoJetVectorGenerator.h" #include "GaudiKernel/ToolHandle.h" #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class JetHypoExerciserAlg : public AthAlgorithm { diff --git a/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserCompareAlg.h b/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserCompareAlg.h index 370a429bde57dd08e757007e02c36cf6e6047041..1da74dbe1090da21662415425ed48f5c563be00e 100644 --- a/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserCompareAlg.h +++ b/Trigger/TrigHypothesis/TrigHLTJetHypoUnitTests/TrigHLTJetHypoUnitTests/JetHypoExerciserCompareAlg.h @@ -11,7 +11,7 @@ #include "TrigHLTJetHypoUnitTests/IHypoJetVectorGenerator.h" #include "GaudiKernel/ToolHandle.h" #include "AthenaBaseComps/AthAlgorithm.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" class JetHypoExerciserCompareAlg : public AthAlgorithm { diff --git a/Trigger/TrigHypothesis/TrigMissingETHypo/src/TrigMissingETHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigMissingETHypo/src/TrigMissingETHypoAlgMT.cxx index 36e0b2cf7411b17d1286fe7b7c1c6f3f13195dfd..e979887b4abd59e99b8831444e1b3756d996b51b 100644 --- a/Trigger/TrigHypothesis/TrigMissingETHypo/src/TrigMissingETHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigMissingETHypo/src/TrigMissingETHypoAlgMT.cxx @@ -3,7 +3,7 @@ */ #include "TrigMissingETHypoAlgMT.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py index 63b946b06ea934fcb32020b7e8887b4f00374511..b9b828cecc8e399fcda815ea6f84cc13d2aa9a3f 100755 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py @@ -8,7 +8,6 @@ from TrigMuonHypoMT.TrigMuonHypoMTConf import ( # noqa: F401 (algs not used her TrigMuisoHypoAlg, TrigMuisoHypoTool, TrigMuonEFHypoAlg, TrigMuonEFHypoTool, TrigMuonEFTrackIsolationHypoAlg, TrigMuonEFTrackIsolationHypoTool, - TrigL2MuonOverlapRemoverMufastAlg, TrigL2MuonOverlapRemoverMucombAlg, TrigL2MuonOverlapRemoverTool, TrigMuonEFInvMassHypoTool, TrigMuonLateMuRoIHypoAlg, TrigMuonLateMuRoIHypoTool ) @@ -251,6 +250,33 @@ def TrigMufastHypoToolFromDict( chainDict ): return tool +def TrigMufastHypoToolwORFromDict( chainDict ): + + thresholds = getThresholdsFromDict( chainDict ) + config = TrigMufastHypoConfig() + tool = config.ConfigurationHypoTool( chainDict['chainName'], thresholds ) + # Setup MonTool for monitored variables in AthenaMonitoring package + + # Overlap Removal + tool.ApplyOR = True + # cut defintion + tool.RequireDR = True + tool.RequireMass = True + tool.RequireSameSign = True + # BB + tool.DRThresBB = 0.05 + tool.MassThresBB = 0.20 + # BE + tool.DRThresBE = 0.05 + tool.MassThresBE = 0.20 + # EE + tool.EtaBinsEC = [0, 1.9, 2.1, 9.9] + tool.DRThresEC = [0.06, 0.05, 0.05] + tool.MassThresEC = [0.20, 0.15, 0.10] + addMonitoring( tool, TrigL2MuonOverlapRemoverMonitoringMufast, 'TrigMufastHypoTool', chainDict['chainName'] ) + + return tool + class TrigMufastHypoConfig(object): @@ -322,75 +348,30 @@ class TrigMufastHypoConfig(object): return tool -### for TrigL2MuonOverlapRemoverMufast -def TrigL2MuonOverlapRemoverMufastToolFromDict( chainDict ): - thresholds = getThresholdsFromDict( chainDict ) - config = TrigL2MuonOverlapRemoverMufastConfig() - tool=config.ConfigurationHypoTool( chainDict['chainName'], thresholds) - # # Setup MonTool for monitored variables in AthenaMonitoring package - addMonitoring( tool, TrigL2MuonOverlapRemoverMonitoringMufast, 'TrigL2MuonOverlapRemoverMufastTool', chainDict['chainName'] ) - - return tool +def TrigmuCombHypoToolFromDict( chainDict ): + if 'idperf' in chainDict['chainParts'][0]['chainPartName']: + thresholds = ['passthrough'] + else: + thresholds = getThresholdsFromDict( chainDict ) -class TrigL2MuonOverlapRemoverMufastConfig(object): - - def ConfigurationHypoTool( self, toolName, thresholds): - tool = CompFactory.TrigL2MuonOverlapRemoverTool( toolName ) - tool.Multiplicity = len(thresholds) - tool.DoMufastBasedRemoval = True - - # cut defintion - tool.MufastRequireDR = True - tool.MufastRequireMass = True - tool.MufastRequireSameSign = True - # BB - tool.MufastDRThresBB = 0.05 - tool.MufastMassThresBB = 0.20 - # BE - tool.MufastDRThresBE = 0.05 - tool.MufastMassThresBE = 0.20 - # EE - tool.MufastEtaBinsEC = [0, 1.9, 2.1, 9.9] - tool.MufastDRThresEC = [0.06, 0.05, 0.05] - tool.MufastMassThresEC = [0.20, 0.15, 0.10] + config = TrigmuCombHypoConfig() - return tool + tight = False # can be probably decoded from some of the proprties of the chain, expert work + acceptAll = False + if chainDict['chainParts'][0]['signature'] == 'Bphysics': + acceptAll = True -### for TrigL2MuonOverlapRemoverMucomb -def TrigL2MuonOverlapRemoverMucombToolFromDict( chainDict ): + tool=config.ConfigurationHypoTool( chainDict['chainName'], thresholds, tight, acceptAll ) - thresholds = getThresholdsFromDict( chainDict ) - config = TrigL2MuonOverlapRemoverMucombConfig() - tool=config.ConfigurationHypoTool( chainDict['chainName'], thresholds) - # # Setup MonTool for monitored variables in AthenaMonitoring package - addMonitoring( tool, TrigL2MuonOverlapRemoverMonitoringMucomb, 'TrigL2MuonOverlapRemoverMucombTool', chainDict['chainName'] ) + addMonitoring( tool, TrigmuCombHypoMonitoring, "TrigmuCombHypoTool", chainDict['chainName'] ) return tool -class TrigL2MuonOverlapRemoverMucombConfig(object): - - def ConfigurationHypoTool( self, toolName, thresholds): - tool = CompFactory.TrigL2MuonOverlapRemoverTool( toolName ) - tool.Multiplicity = len(thresholds) - tool.DoMucombBasedRemoval = True - # cut defintion - tool.MucombRequireDR = True - tool.MucombRequireMufastDR = True - tool.MucombRequireMass = True - tool.MucombRequireSameSign = True - tool.MucombEtaBins = [0, 0.9, 1.1, 1.9, 2.1, 9.9] - tool.MucombDRThres = [0.002, 0.001, 0.002, 0.002, 0.002] - tool.MucombMufastDRThres = [0.4, 0.4, 0.4, 0.4, 0.4] - tool.MucombMassThres = [0.004, 0.002, 0.006, 0.006, 0.006] - - return tool - - -def TrigmuCombHypoToolFromDict( chainDict ): +def TrigmuCombHypoToolwORFromDict( chainDict ): if 'idperf' in chainDict['chainParts'][0]['chainPartName']: thresholds = ['passthrough'] @@ -402,15 +383,25 @@ def TrigmuCombHypoToolFromDict( chainDict ): tight = False # can be probably decoded from some of the proprties of the chain, expert work acceptAll = False - if chainDict['chainParts'][0]['signature'] == 'Bphysics': - acceptAll = True tool=config.ConfigurationHypoTool( chainDict['chainName'], thresholds, tight, acceptAll ) - addMonitoring( tool, TrigmuCombHypoMonitoring, "TrigmuCombHypoTool", chainDict['chainName'] ) + # Overlap Removal + tool.ApplyOR = True + tool.RequireDR = True + tool.RequireMufastDR = True + tool.RequireMass = True + tool.RequireSameSign = True + tool.EtaBins = [0, 0.9, 1.1, 1.9, 2.1, 9.9] + tool.DRThres = [0.002, 0.001, 0.002, 0.002, 0.002] + tool.MufastDRThres = [0.4, 0.4, 0.4, 0.4, 0.4] + tool.MassThres = [0.004, 0.002, 0.006, 0.006, 0.006] + + addMonitoring( tool, TrigL2MuonOverlapRemoverMonitoringMucomb, "TrigmuCombHypoTool", chainDict['chainName'] ) return tool + class TrigmuCombHypoConfig(object): log = logging.getLogger('TrigmuCombHypoConfig') diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py index 0e34e9f388ffabb7eab90040922e29ce42deb567..7224c2e0d167f96681812f137ac5b48ad612b91a 100755 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py @@ -25,7 +25,7 @@ class TrigMufastHypoMonitoring(GenericMonitoringTool): self.defineHistogram('XatBe', type='TH1F', path='EXPERT', title="DCA along X; X (cm)", xbins=100, xmin=-1000, xmax=1000) -class TrigL2MuonOverlapRemoverMonitoringMufast(GenericMonitoringTool): +class TrigL2MuonOverlapRemoverMonitoringMufast(TrigMufastHypoMonitoring): def __init__ (self, name): super(TrigL2MuonOverlapRemoverMonitoringMufast, self).__init__(name) @@ -71,7 +71,7 @@ class TrigmuCombHypoMonitoring(GenericMonitoringTool): self.defineHistogram('A0', type='TH1F', path='EXPERT', title="PCA along x-y from ID track from #muComb; PCA(A0) (mm)", xbins=100, xmin=-0.6, xmax=0.6) -class TrigL2MuonOverlapRemoverMonitoringMucomb(GenericMonitoringTool): +class TrigL2MuonOverlapRemoverMonitoringMucomb(TrigmuCombHypoMonitoring): def __init__ (self, name): super(TrigL2MuonOverlapRemoverMonitoringMucomb, self).__init__(name) diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMucombAlg.cxx b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMucombAlg.cxx deleted file mode 100644 index 4e5a178b5e5b9834074280a747a7b36fec1049fa..0000000000000000000000000000000000000000 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMucombAlg.cxx +++ /dev/null @@ -1,117 +0,0 @@ -/* - Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration -*/ - -#include "TrigL2MuonOverlapRemoverMucombAlg.h" -#include "AthViews/ViewHelper.h" - -using namespace TrigCompositeUtils; - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -TrigL2MuonOverlapRemoverMucombAlg::TrigL2MuonOverlapRemoverMucombAlg( const std::string& name, - ISvcLocator* pSvcLocator ) : - ::HypoBase( name, pSvcLocator ) -{} - -TrigL2MuonOverlapRemoverMucombAlg::~TrigL2MuonOverlapRemoverMucombAlg() -{} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverMucombAlg::initialize() -{ - ATH_MSG_DEBUG( "Initializing " << name() << "..." ); - ATH_CHECK(m_OverlapRemoverTools.retrieve()); - - renounce(m_OverlapRemoverKey); - ATH_CHECK(m_OverlapRemoverKey.initialize()); - - ATH_MSG_DEBUG( "Initialization completed successfully" ); - return StatusCode::SUCCESS; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverMucombAlg::execute(const EventContext& context) const -{ - ATH_MSG_DEBUG("StatusCode TrigL2MuonOverlapRemoverMucomb::execute start"); - auto previousDecisionsHandle = SG::makeHandle( decisionInput(), context); - ATH_MSG_DEBUG("Runnung with " << previousDecisionsHandle->size() << " implicit ReadHandles for previous decision"); - - // new output decisions - SG::WriteHandle<DecisionContainer> outputHandle = createAndStore(decisionOutput(), context ); - auto decisions = outputHandle.ptr(); - // end of common - - - std::vector<TrigL2MuonOverlapRemoverTool::L2CBMuonOverlapInfo> toolInput; - // loop over previous decisions - size_t counter = 0; - - for ( const auto previousDecision: *previousDecisionsHandle ) { - //get RecRoI - auto RecRoIInfo = TrigCompositeUtils::findLink< DataVector< LVL1::RecMuonRoI > >( previousDecision, initialRecRoIString() ); - auto RecRoIEL = RecRoIInfo.link; - ATH_CHECK( RecRoIEL.isValid() ); - const LVL1::RecMuonRoI* RecRoI = *RecRoIEL; - - // get View - auto viewELInfo = TrigCompositeUtils::findLink< ViewContainer >( previousDecision, viewString(), /*suppressMultipleLinksWarning = */ true ); - ATH_CHECK( viewELInfo.isValid() ); - auto viewEL = viewELInfo.link; - - // get info - auto L2MuonOverlapRemoverHandle = ViewHelper::makeHandle( *viewEL, m_OverlapRemoverKey, context ); - ATH_CHECK( L2MuonOverlapRemoverHandle.isValid() ); - ATH_MSG_DEBUG( "Muinfo handle size: " << L2MuonOverlapRemoverHandle->size() << "..."); - - auto overlapEL = ViewHelper::makeLink( *viewEL, L2MuonOverlapRemoverHandle, 0 ); - ATH_CHECK( overlapEL.isValid() ); - const xAOD::L2CombinedMuon* overlap = *overlapEL; - - // create new decisions - auto newd = newDecisionIn( decisions ); - - if ( decisionIDs( previousDecision ).size() != 0 ) { - toolInput.emplace_back( TrigL2MuonOverlapRemoverTool::L2CBMuonOverlapInfo{ newd, RecRoI, overlap, previousDecision} ); - } - - // set objectLink - newd->setObjectLink( featureString(), overlapEL ); - TrigCompositeUtils::linkToPrevious( newd, previousDecision, context); - - // DEBUG - auto muFastInfo = (*overlapEL)->muSATrack(); - ATH_MSG_DEBUG("REGTEST: muSATrack pt in " << m_OverlapRemoverKey.key() << " = " << muFastInfo->pt() << " GeV"); - ATH_MSG_DEBUG("REGTEST: muSATrack eta/phi in " << m_OverlapRemoverKey.key() << " = " << muFastInfo->eta() << "/" << muFastInfo->phi()); - ATH_MSG_DEBUG("REGTEST: L2MuonCBTrack pt in " << m_OverlapRemoverKey.key() << " = " << (*overlapEL)->pt() << " GeV"); - ATH_MSG_DEBUG("REGTEST: L2MuonCBTrack eta/phi in " << m_OverlapRemoverKey.key() << " = " << (*overlapEL)->eta() << "/" << (*overlapEL)->phi()); - ATH_MSG_DEBUG("Added view, features, previous decision to new decision "<<counter <<" for view "<<(*viewEL)->name() ); - ATH_MSG_DEBUG("Number of positive previous hypo Decision::" << decisionIDs( previousDecision ).size() ); - - counter++; - } - - ATH_MSG_DEBUG("Found " << toolInput.size() << " input to tools"); - - // to TrigL2MuonOverlapRemoverTool - StatusCode sc = StatusCode::SUCCESS; - for ( auto& tool: m_OverlapRemoverTools ) { - ATH_MSG_DEBUG("Go to " << tool ); - sc = tool->decide(toolInput); - if (!sc.isSuccess()) { - ATH_MSG_ERROR("MuonHypoTool is failed"); - return StatusCode::FAILURE; - } - } // End of tool algorithms */ - - ATH_CHECK(hypoBaseOutputProcessing(outputHandle)); - - ATH_MSG_DEBUG("StatusCode TrigL2MuonOverlapRemoverMucombAlg::execute success"); - return StatusCode::SUCCESS; - -} diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMucombAlg.h b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMucombAlg.h deleted file mode 100644 index f52132ccce6d1d1223c911eff762ff1122184fd1..0000000000000000000000000000000000000000 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMucombAlg.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef TRIGL2MUONOVERLAPREMOVER_TRIGL2MUONOVERLAPREMOVERMUCOMBALG_H -#define TRIGL2MUONOVERLAPREMOVER_TRIGL2MUONOVERLAPREMOVERMUCOMBALG_H 1 - -#include "TrigL2MuonOverlapRemoverTool.h" -#include "DecisionHandling/HypoBase.h" - - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -class TrigL2MuonOverlapRemoverMucombAlg - : public ::HypoBase -{ - public: - - TrigL2MuonOverlapRemoverMucombAlg( const std::string& name, ISvcLocator* pSvcLocator ); - - virtual ~TrigL2MuonOverlapRemoverMucombAlg(); - - virtual StatusCode initialize() override; - virtual StatusCode execute( const EventContext& context ) const override; - - private: - - ToolHandleArray<TrigL2MuonOverlapRemoverTool> m_OverlapRemoverTools {this, "HypoTools", {}, "Tools to perform selection"}; - - SG::ReadHandleKey<xAOD::L2CombinedMuonContainer> m_OverlapRemoverKey { - this, "L2MuonOverlapInfoFromMuCombAlg", "MuonL2CBInfo", "Key for overlap removal from previousDecisions"}; - -}; - -#endif diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMufastAlg.cxx b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMufastAlg.cxx deleted file mode 100644 index aac9c75c3dc9ec67b8509d6acc70678f1073c38b..0000000000000000000000000000000000000000 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMufastAlg.cxx +++ /dev/null @@ -1,114 +0,0 @@ -/* - Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration -*/ - -#include "TrigL2MuonOverlapRemoverMufastAlg.h" -#include "AthViews/ViewHelper.h" - -using namespace TrigCompositeUtils; - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -TrigL2MuonOverlapRemoverMufastAlg::TrigL2MuonOverlapRemoverMufastAlg( const std::string& name, - ISvcLocator* pSvcLocator ) : - ::HypoBase( name, pSvcLocator ) -{} - -TrigL2MuonOverlapRemoverMufastAlg::~TrigL2MuonOverlapRemoverMufastAlg() -{} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverMufastAlg::initialize() -{ - ATH_MSG_DEBUG( "Initializing " << name() << "..." ); - ATH_CHECK(m_OverlapRemoverTools.retrieve()); - - renounce(m_OverlapRemoverKey); - ATH_CHECK(m_OverlapRemoverKey.initialize()); - - ATH_MSG_DEBUG( "Initialization completed successfully" ); - return StatusCode::SUCCESS; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverMufastAlg::execute(const EventContext& context) const -{ - ATH_MSG_DEBUG("StatusCode TrigL2MuonOverlapRemoverMufast::execute start"); - auto previousDecisionsHandle = SG::makeHandle( decisionInput(), context); - ATH_MSG_DEBUG("Runnung with " << previousDecisionsHandle->size() << " implicit ReadHandles for previous decision"); - - // new output decisions - SG::WriteHandle<DecisionContainer> outputHandle = createAndStore(decisionOutput(), context ); - auto decisions = outputHandle.ptr(); - // end of common - - - std::vector<TrigL2MuonOverlapRemoverTool::L2SAMuonOverlapInfo> toolInput; - // loop over previous decisions - size_t counter = 0; - - for ( const auto previousDecision: *previousDecisionsHandle ) { - //get RecRoI - auto RecRoIInfo = TrigCompositeUtils::findLink< DataVector< LVL1::RecMuonRoI > >( previousDecision, initialRecRoIString() ); - auto RecRoIEL = RecRoIInfo.link; - ATH_CHECK( RecRoIEL.isValid() ); - const LVL1::RecMuonRoI* RecRoI = *RecRoIEL; - - // get View - auto viewELInfo = TrigCompositeUtils::findLink< ViewContainer >( previousDecision, viewString(), /*suppressMultipleLinksWarning = */ true ); - ATH_CHECK( viewELInfo.isValid() ); - auto viewEL = viewELInfo.link; - - // get info - auto L2MuonOverlapRemoverHandle = ViewHelper::makeHandle( *viewEL, m_OverlapRemoverKey, context ); - ATH_CHECK( L2MuonOverlapRemoverHandle.isValid() ); - ATH_MSG_DEBUG( "Muinfo handle size: " << L2MuonOverlapRemoverHandle->size() << "..."); - - auto overlapEL = ViewHelper::makeLink( *viewEL, L2MuonOverlapRemoverHandle, 0 ); - ATH_CHECK( overlapEL.isValid() ); - const xAOD::L2StandAloneMuon* overlap = *overlapEL; - - // create new decisions - auto newd = newDecisionIn( decisions ); - - if ( decisionIDs( previousDecision ).size() != 0 ) { - toolInput.emplace_back( TrigL2MuonOverlapRemoverTool::L2SAMuonOverlapInfo{ newd, RecRoI, overlap, previousDecision} ); - } - - // set objectLink - newd->setObjectLink( featureString(), overlapEL ); - TrigCompositeUtils::linkToPrevious( newd, previousDecision, context); - - // DEBUG - ATH_MSG_DEBUG("REGTEST: L2MuonSATrack pt in " << m_OverlapRemoverKey.key() << " = " << (*overlapEL)->pt() << " GeV"); - ATH_MSG_DEBUG("REGTEST: L2MuonSATrack eta/phi in " << m_OverlapRemoverKey.key() << " = " << (*overlapEL)->eta() << "/" << (*overlapEL)->phi()); - ATH_MSG_DEBUG("Added view, features, previous decision to new decision "<<counter <<" for view "<<(*viewEL)->name() ); - ATH_MSG_DEBUG("Number of positive previous hypo Decision::" << decisionIDs( previousDecision ).size() ); - - counter++; - } - - ATH_MSG_DEBUG("Found " << toolInput.size() << " input to tools"); - - // to TrigL2MuonOverlapRemoverTool - StatusCode sc = StatusCode::SUCCESS; - for ( auto& tool: m_OverlapRemoverTools ) { - ATH_MSG_DEBUG("Go to " << tool ); - sc = tool->decide(toolInput); - if (!sc.isSuccess()) { - ATH_MSG_ERROR("MuonHypoTool is failed"); - return StatusCode::FAILURE; - } - } // End of tool algorithms */ - - ATH_CHECK(hypoBaseOutputProcessing(outputHandle)); - - ATH_MSG_DEBUG("StatusCode TrigL2MuonOverlapRemoverAlg::execute success"); - return StatusCode::SUCCESS; - -} diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMufastAlg.h b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMufastAlg.h deleted file mode 100644 index c7e0eb83837dedc8b7406c531a18f33cac6897b8..0000000000000000000000000000000000000000 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverMufastAlg.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef TRIGL2MUONOVERLAPREMOVER_TRIGL2MUONOVERLAPREMOVERMUFASTALG_H -#define TRIGL2MUONOVERLAPREMOVER_TRIGL2MUONOVERLAPREMOVERMUFASTALG_H 1 - -#include "TrigL2MuonOverlapRemoverTool.h" -#include "DecisionHandling/HypoBase.h" - - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -class TrigL2MuonOverlapRemoverMufastAlg - : public ::HypoBase -{ - public: - - TrigL2MuonOverlapRemoverMufastAlg( const std::string& name, ISvcLocator* pSvcLocator ); - - virtual ~TrigL2MuonOverlapRemoverMufastAlg(); - - virtual StatusCode initialize() override; - virtual StatusCode execute( const EventContext& context ) const override; - - private: - - TrigL2MuonOverlapRemoverMufastAlg(); - ToolHandleArray<TrigL2MuonOverlapRemoverTool> m_OverlapRemoverTools {this, "HypoTools", {}, "Tools to perform selection"}; - - SG::ReadHandleKey<xAOD::L2StandAloneMuonContainer> m_OverlapRemoverKey { - this, "L2MuonOverlapInfoFromMuFastAlg", "MuonL2SAInfo", "Key for overlap removal from previousDecisions"}; - -}; - -#endif diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverTool.cxx deleted file mode 100644 index 4ec3e3bfef20b00b6ac778bf0fc66c19b7642b71..0000000000000000000000000000000000000000 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverTool.cxx +++ /dev/null @@ -1,858 +0,0 @@ -/* -Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration -*/ - -#include "GaudiKernel/SystemOfUnits.h" -#include "AthenaMonitoringKernel/Monitored.h" -#include "CxxUtils/phihelper.h" - -#include "TrigL2MuonOverlapRemoverTool.h" - -#include <cmath> - -using namespace TrigCompositeUtils; -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -TrigL2MuonOverlapRemoverTool::TrigL2MuonOverlapRemoverTool(const std::string& type, - const std::string & name, - const IInterface* parent ) - : AthAlgTool( type, name, parent ), - m_decisionId( HLT::Identifier::fromToolName( name ) ) -{ -} - -TrigL2MuonOverlapRemoverTool::~TrigL2MuonOverlapRemoverTool(){ -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverTool::initialize() -{ - ATH_MSG_DEBUG("Initializing " << name() ); - - ATH_MSG_DEBUG( "Tool configured for chain/id: " << m_decisionId ); - - // MufastOverlapRemoval - if( m_doMufastBasedRemoval ) { - ATH_MSG_DEBUG( "--- muFast based overlap removal as: ---" ); - if( m_muFastRequireDR ) { - ATH_MSG_DEBUG( "+ dR cut:" ); - if( (m_muFastEtaBinsEC.size()-1) != m_muFastDRThresEC.size() ) { - ATH_MSG_DEBUG( "bad thresholds setup .... exiting!" ); - return StatusCode::FAILURE; - } - ATH_MSG_DEBUG( " B-B : dR < " << m_muFastDRThresBB ); - ATH_MSG_DEBUG( " B-E : dR < " << m_muFastDRThresBE ); - ATH_MSG_DEBUG( " E-E : " ); - for(unsigned int i=0; i<m_muFastDRThresEC.size(); i++) { - ATH_MSG_DEBUG( " EtaBin " << m_muFastEtaBinsEC[i] << " - " << m_muFastEtaBinsEC[i+1] - << " : dR < " << m_muFastDRThresEC[i] ); - } - } - if( m_muFastRequireMass ) { - ATH_MSG_DEBUG( "+ Mass cut:" ); - if( (m_muFastEtaBinsEC.size()-1) != m_muFastMassThresEC.size() ) { - ATH_MSG_DEBUG( "bad thresholds setup .... exiting!" ); - return StatusCode::FAILURE; - } - ATH_MSG_DEBUG( " B-B : Mass < " << m_muFastMassThresBB ); - ATH_MSG_DEBUG( " B-E : Mass < " << m_muFastMassThresBE ); - ATH_MSG_DEBUG( " E-E : " ); - for(unsigned int i=0; i<m_muFastMassThresEC.size(); i++) { - ATH_MSG_DEBUG( " EtaBin " << m_muFastEtaBinsEC[i] << " - " << m_muFastEtaBinsEC[i+1] - << " : Mass < " << m_muFastMassThresEC[i] ); - } - } - if( m_muFastRequireSameSign ) ATH_MSG_DEBUG( "+ Same charge sign" ); - } - - // MucombOverlapRemoval - if( m_doMucombBasedRemoval ) { - ATH_MSG_DEBUG( "--- muComb based overlap removal as: ---" ); - if( m_muCombRequireDR ) { - ATH_MSG_DEBUG( "+ dR cut:" ); - if( (m_muCombEtaBins.size()-1) != m_muCombDRThres.size() ) { - ATH_MSG_DEBUG( "bad thresholds setup .... exiting!" ); - return StatusCode::FAILURE; - } - for(unsigned int i=0; i<m_muCombDRThres.size(); i++) { - ATH_MSG_DEBUG( " EtaBin " << m_muCombEtaBins[i] << " - " << m_muCombEtaBins[i+1] - << " : dR < " << m_muCombDRThres[i] ); - } - } - if( m_muCombRequireMufastDR ) { - ATH_MSG_DEBUG( "+ dr(by mF) cut:" ); - if( (m_muCombEtaBins.size()-1) != m_muCombMufastDRThres.size() ) { - ATH_MSG_DEBUG( "bad thresholds setup .... exiting!" ); - return StatusCode::FAILURE; - } - for(unsigned int i=0; i<m_muCombMufastDRThres.size(); i++) { - ATH_MSG_DEBUG( " EtaBin " << m_muCombEtaBins[i] << " - " << m_muCombEtaBins[i+1] - << " : dR(mF) < " << m_muCombMufastDRThres[i] ); - } - } - if( m_muCombRequireMass ) { - ATH_MSG_DEBUG( "+ Mass cut:" ); - if( (m_muCombEtaBins.size()-1) != m_muCombMassThres.size() ) { - ATH_MSG_DEBUG( "bad thresholds setup .... exiting!" ); - return StatusCode::FAILURE; - } - for(unsigned int i=0; i<m_muCombMassThres.size(); i++) { - ATH_MSG_DEBUG( " EtaBin " << m_muCombEtaBins[i] << " - " << m_muCombEtaBins[i+1] - << " : Mass < " << m_muCombMassThres[i] ); - } - } - if( m_muCombRequireSameSign ) ATH_MSG_DEBUG( "+ Same charge sign" ); - } - - if ( not m_monTool.name().empty() ) { - ATH_CHECK( m_monTool.retrieve() ); - ATH_MSG_DEBUG("MonTool name: " << m_monTool); - } - - ATH_MSG_DEBUG("Initializing" << name() << "successfully"); - - return StatusCode::SUCCESS; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverTool::decide(std::vector<L2SAMuonOverlapInfo>& toolInput) const { - - ATH_MSG_DEBUG("Retrieved from TrigL2MuonOverlapRemoverMufastAlg and Running TrigL2MuonOverlapRemoverTool for selections."); - - std::vector<TrigL2MuonOverlapRemoverTool::L2SAMuonOverlapInfo> input; - - for( unsigned int i=0; i<toolInput.size(); ++i ) { - if ( TrigCompositeUtils::passed( m_decisionId.numeric(), toolInput[i].previousDecisionIDs) ){ - input.emplace_back(toolInput[i]); - } - } - - size_t numMuon = input.size(); - - if ( numMuon == 0) { - ATH_MSG_DEBUG( "No positive previous hypo decision. Not need overlap removal." ); - auto mufastNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); - auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastNrAllEVs, mufastNrActiveEVs); - mufastNrActiveEVs = numMuon; - mufastNrAllEVs = numMuon; - return StatusCode::SUCCESS; - } - else if ( numMuon == 1 ) { - ATH_MSG_DEBUG("Number of muon event = " << numMuon ); - ATH_MSG_DEBUG("no overlap Removal necessary. exitting with all EventViews active." ); - auto mufastNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); - auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastNrAllEVs, mufastNrActiveEVs); - mufastNrActiveEVs = numMuon; - mufastNrAllEVs = numMuon; - TrigCompositeUtils::addDecisionID(m_decisionId, input[0].decision); - return StatusCode::SUCCESS; - } else { - ATH_MSG_DEBUG("Number of muon event = " << numMuon ); - auto mufastNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastNrAllEVs); - mufastNrAllEVs = numMuon; - ATH_CHECK(checkOverlap(input)); - return StatusCode::SUCCESS; - } - return StatusCode::SUCCESS; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverTool::checkOverlap(std::vector<L2SAMuonOverlapInfo>& toolInput) const { - - size_t numMuon = toolInput.size(); - unsigned int i,j; - std::vector<unsigned int> mufastResult; - std::vector<TrigL2MuonOverlapRemoverTool::L2SAMuonOverlapInfo> uniqueMuon; - - bool errorWhenIdentifyingOverlap = false; - - for(i=0; i<numMuon; i++) {mufastResult.emplace_back(i); } - for(i=0; i<numMuon-1; i++){ - for(j=i+1; j<numMuon; j++){ - ATH_MSG_DEBUG("++ i=" << i << " vs j=" << j); - bool overlapped = isOverlap(toolInput[i].overlap, toolInput[j].overlap); - if( ! overlapped ){ // judged as different - ATH_MSG_DEBUG(" judged as: different objects"); - if( mufastResult[i] == mufastResult[j] ) { // but marked as same by someone - ATH_MSG_DEBUG( "inconsistentency in muFast based overlap removal for more than two objects" ); - ATH_MSG_DEBUG( "two objects are judged as different but both were already marked as identical by someone else as: " ); - ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mufastResult[i] << " / " << mufastResult[j] ); - auto mufastError = Monitored::Scalar("MufastError", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastError); - mufastError = TrigL2MuonOverlapRemoverToolConsts::errorCode_inconsistent_overlap1; - errorWhenIdentifyingOverlap = true; - } - } - else{ // judged as overlap - if( (mufastResult[j] != j && mufastResult[i] != mufastResult[j]) || (mufastResult[j] == j && mufastResult[i] != i) ){ - ATH_MSG_DEBUG( "inconsistentency in muFast based overlap removal for more than two objects" ); - ATH_MSG_DEBUG( "two objects are judged as overlap but only either was already marked as overlap to someone else: " ); - ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mufastResult[i] << " / " << mufastResult[j] ); - auto mufastError = Monitored::Scalar("MufastError", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastError); - mufastError = TrigL2MuonOverlapRemoverToolConsts::errorCode_inconsistent_overlap2; - errorWhenIdentifyingOverlap = true; - } - ATH_MSG_DEBUG(" judged as: overlapped objects"); - if( mufastResult[i] == i ) { - ATH_MSG_DEBUG( " i is not yet marked as overlap. so, it is a newly found overlap" ); - ATH_MSG_DEBUG( " -> marking mufastResult[j] as i..." ); - mufastResult[j] = i; - } else { - ATH_MSG_DEBUG( " both i/j already marked as overlap by: mufastResult[i]=" << mufastResult[i] ); - ATH_MSG_DEBUG( " -> do nothing..." ); - } - } - } - } - - if( errorWhenIdentifyingOverlap ) { - ATH_MSG_WARNING( "error when resolving overlap. exitting with all EVs active..." ); - auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastNrActiveEVs); - mufastNrActiveEVs = numMuon; - for(i=0; i<numMuon; i++) TrigCompositeUtils::addDecisionID( m_decisionId, toolInput[i].decision ); - return StatusCode::SUCCESS; - } - - unsigned int n_uniqueMuon = 0; - for(i=0; i<numMuon; i++) { - ATH_MSG_DEBUG( "muFast based results: i=" << i << ": "); - if( mufastResult[i] != i ) { ATH_MSG_DEBUG( " overlap to j=" << mufastResult[i] ); } - else { - n_uniqueMuon++; - ATH_MSG_DEBUG( " unique" ); - } - } - - ATH_MSG_DEBUG( "nr of unique Muons after muFast-based removal=" << n_uniqueMuon ); - - if( numMuon != n_uniqueMuon ){ - chooseBestMuon(toolInput, uniqueMuon, mufastResult); - } else { - ATH_MSG_DEBUG( "no overlap identified. exitting with all EventViews active" ); - auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mufastNrActiveEVs); - mufastNrActiveEVs = n_uniqueMuon; - for(i=0; i<numMuon; i++) uniqueMuon.emplace_back(toolInput[i]); - } - - if(n_uniqueMuon >= m_multiplicity){ - for(i=0; i<n_uniqueMuon; i++){ - ATH_MSG_DEBUG("Muon event pass through Chain/ID " << m_decisionId ); - TrigCompositeUtils::addDecisionID( m_decisionId, uniqueMuon[i].decision ); - } - } - else ATH_MSG_DEBUG("No muon event passed through selection " << m_decisionId << " because not meet the required number of muons"); - - return StatusCode::SUCCESS; -} - - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -bool TrigL2MuonOverlapRemoverTool::isOverlap(const xAOD::L2StandAloneMuon *mf1, - const xAOD::L2StandAloneMuon *mf2) const -{ - - auto mufastDR = Monitored::Scalar("DR", -9999.); - auto mufastMass = Monitored::Scalar("Mass", -9999.); - auto mufastDRLog10 = Monitored::Scalar("DRLog10", -9999.); - auto mufastMassLog10 = Monitored::Scalar("MassLog10", -9999.); - - auto monitorIt = Monitored::Group(m_monTool, mufastDR, mufastMass, mufastDRLog10, mufastMassLog10); - - - ATH_MSG_DEBUG( " ...mF1: pt/eta/phi=" << mf1->pt() << " / " << mf1->etaMS() << " / " << mf1->phiMS() ); - ATH_MSG_DEBUG( " ...mF2: pt/eta/phi=" << mf2->pt() << " / " << mf2->etaMS() << " / " << mf2->phiMS() ); - - // if dR or invMass is necessary but (eta,phi) info is not avaiable - // (i.e. eta,phi=0,0; rec failed) - const double ZERO_LIMIT_FOR_ETAPHI = 1e-4; - if( (fabs(mf1->etaMS()) <ZERO_LIMIT_FOR_ETAPHI && fabs(mf1->phiMS()) < ZERO_LIMIT_FOR_ETAPHI) || - (fabs(mf2->etaMS()) <ZERO_LIMIT_FOR_ETAPHI && fabs(mf2->phiMS()) < ZERO_LIMIT_FOR_ETAPHI) ) { - ATH_MSG_DEBUG( " ...-> (eta,phi) info not available (rec at (eta,phi)=(0,0))" ); - ATH_MSG_DEBUG( " ...-> but dR of invMass check is required. cannot judge overlap -> return with false" ); - return false; - } - - // if charge or invMass is necessary but charge(=pT) info is not avaiable - const double ZERO_LIMIT_FOR_PT = 1e-4; - if( (fabs(mf1->pt()) <ZERO_LIMIT_FOR_PT) || (fabs(mf2->pt()) < ZERO_LIMIT_FOR_PT) ) { - ATH_MSG_DEBUG( " ...-> pT info not available (rec at pT=0)" ); - ATH_MSG_DEBUG( " ...-> but same sign or invMass check is required. cannot judge overlap -> return with false" ); - return false; - } - - - // determine dR, mass threshold separately for: BB, BE, EE - double dRThres = 9999; - double massThres = 9999; - - const int SADDRESS_EC = -1; - bool isBarrel1 = (mf1->sAddress() != SADDRESS_EC ) ? true : false; - bool isBarrel2 = (mf2->sAddress() != SADDRESS_EC ) ? true : false; - - if( isBarrel1 && isBarrel2 ) { // BB - ATH_MSG_DEBUG( " ...B-B" ); - dRThres =m_muFastDRThresBB; - massThres=m_muFastMassThresBB; - } - else if( (isBarrel1 && ! isBarrel2) || (!isBarrel1 && isBarrel2) ) { // BE - ATH_MSG_DEBUG( " ...B-E" ); - dRThres =m_muFastDRThresBE; - massThres=m_muFastMassThresBE; - } - else { // EE - ATH_MSG_DEBUG( " ...E-E" ); - double absEta = (fabs(mf1->pt()) > fabs(mf2->pt())) ? fabs(mf1->etaMS()) : fabs(mf2->etaMS()); - unsigned int iThres=0; - for(unsigned int i=0; i<(m_muFastEtaBinsEC.size()-1); i++) { - if ( m_muFastEtaBinsEC[i] <= absEta && absEta < m_muFastEtaBinsEC[i+1] ) iThres = i; - } - ATH_MSG_DEBUG( " ...iThres=" << iThres ); - dRThres = m_muFastDRThresEC[iThres]; - massThres = m_muFastMassThresEC[iThres]; - } - ATH_MSG_DEBUG( " ...dR threshold=" << dRThres ); - ATH_MSG_DEBUG( " ...mass threshold=" << massThres ); - - - // same sign cut - bool sameSign = false; - if( m_muFastRequireSameSign ) { - sameSign = ((mf1->pt()*mf2->pt()) > 0) ? true : false; - ATH_MSG_DEBUG( " ...-> sameSign=" << sameSign ); - } - - // dR cut - bool dRisClose = false; - double dr = dR(mf1->etaMS(),mf1->phiMS(),mf2->etaMS(),mf2->phiMS()); - - // for monitoring - mufastDR = dr; - const double monitor_limit = 1e-4; - double dr_mon = (dr>=monitor_limit) ? dr : monitor_limit; - mufastDRLog10 = log10(dr_mon); - - if( m_muFastRequireDR ) { - if( dr < dRThres ) dRisClose = true; - ATH_MSG_DEBUG( " ...-> dR=" << dr << " : dRisClose=" << dRisClose ); - } - - // mass cut - const double TRACK_MASS = 0; // just assume zero mass - bool massIsClose = false; - double mass = invMass(TRACK_MASS,mf1->pt(),mf1->etaMS(),mf1->phiMS(),TRACK_MASS,mf2->pt(),mf2->etaMS(),mf2->phiMS()); - - // for monitoring - mufastMass = mass; - double mass_mon = (mass>=monitor_limit) ? mass : monitor_limit; - mufastMassLog10 = log10(mass_mon); - - if( m_muFastRequireMass ) { - if( mass < massThres ) massIsClose = true; - ATH_MSG_DEBUG( " ...-> mass=" << mass << " : massIsClose=" << massIsClose ); - } - - // total judge - bool overlap = false; - if( ((m_muFastRequireSameSign && sameSign) || (! m_muFastRequireSameSign)) && - ((m_muFastRequireDR && dRisClose) || (! m_muFastRequireDR)) && - ((m_muFastRequireMass && massIsClose) || (! m_muFastRequireMass)) ) { - overlap = true; - } - - ATH_MSG_DEBUG( " ...=> isOverlap=" << overlap ); - - return overlap; - -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -double TrigL2MuonOverlapRemoverTool::dR(double eta1, double phi1, double eta2, double phi2) const -{ - const double deta = eta1 - eta2; - const double dphi = CxxUtils::deltaPhi(phi1, phi2); - return std::sqrt(deta*deta + dphi*dphi); -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -double TrigL2MuonOverlapRemoverTool::invMass(double m1, double pt1, double eta1, double phi1, - double m2, double pt2, double eta2, double phi2) const -{ - const double ZERO_LIMIT = 1e-12; - - double theta1 = 2*atan2((double)exp(-eta1),1.); - double theta2 = 2*atan2((double)exp(-eta2),1.); - - double fpt1 = fabs(pt1); - double fpt2 = fabs(pt2); - - double px1 = fpt1*cos(phi1); - double py1 = fpt1*sin(phi1); - double pz1 = fpt1/tan(theta1); - double e1 = sqrt(px1*px1+py1*py1+pz1*pz1+m1*m1); - - double px2 = fpt2*cos(phi2); - double py2 = fpt2*sin(phi2); - double pz2 = fpt2/tan(theta2); - double e2 = sqrt(px2*px2+py2*py2+pz2*pz2+m2*m2); - - double pxsum = px1 + px2; - double pysum = py1 + py2; - double pzsum = pz1 + pz2; - double esum = e1 + e2; - - double mass = 0; - double mass2 = esum*esum - pxsum*pxsum - pysum*pysum - pzsum*pzsum; - if( mass2 > ZERO_LIMIT ) mass = sqrt(mass2); - - return mass; -} - - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - - -void TrigL2MuonOverlapRemoverTool::chooseBestMuon(std::vector<L2SAMuonOverlapInfo>& toolInput, std::vector<L2SAMuonOverlapInfo>& uniqueMuon, std::vector<unsigned int> mufastResult) const -{ - size_t numMuon = toolInput.size(); - unsigned int i,j,k; - - auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto mufastNrOverlapped = Monitored::Scalar("NrOverlapped", 0); - auto mufastOverlappedEta = Monitored::Scalar("OverlappedEta", -9999.); - auto mufastOverlappedPhi = Monitored::Scalar("OverlappedPhi", -9999.); - auto mufastOverlappedPt = Monitored::Scalar("OverlappedPt", -9999.); - - auto monitorIt = Monitored::Group(m_monTool, mufastNrActiveEVs, mufastNrOverlapped, - mufastOverlappedPt, mufastOverlappedEta, mufastOverlappedPhi); - - if( m_doMufastBasedRemoval ) { - ATH_MSG_DEBUG( "--- choose best among overlaps & disable EVs (muFast based) ---" ); - for(i=0; i<numMuon; i++) { - ATH_MSG_DEBUG( "++ i=" << i << ": result=" << mufastResult[i] ); - if( mufastResult[i] != i ) { - ATH_MSG_DEBUG( " overlap to some one. skip." ); - continue; - } - std::vector<unsigned int> others; - for(j=0; j<numMuon; j++) { - if( mufastResult[j] == mufastResult[i] ) others.emplace_back(j); - } - if( others.size() == 1 ) { - ATH_MSG_DEBUG( " unique object. keep it active." ); - uniqueMuon.emplace_back(toolInput[i]); - continue; - } - else { - // must choose one best - ATH_MSG_DEBUG( " overlapped objects among: " << others ); - unsigned int best_ev = 0; - float maxPtMf = 0; - float maxPtRoI = 0; - for(k=0; k<others.size(); k++) { - j=others[k]; - const LVL1::RecMuonRoI* muonRoI = toolInput[j].RecRoI; - float ptRoI = muonRoI->getThresholdValue(); - const xAOD::L2StandAloneMuon* mf = toolInput[j].overlap; - float ptMf = fabs(mf->pt()); - ATH_MSG_DEBUG(" ev/PtRoI/ptMf="<< j << "/" << ptRoI << "/" << ptMf); - if( (ptRoI-maxPtRoI) > 0.1 ) { - maxPtRoI = ptRoI; - maxPtMf = ptMf; - best_ev = j; - } - else if( fabs(ptRoI-maxPtRoI) < 0.1 ) { - if( ptMf > maxPtMf ) { - maxPtRoI = ptRoI; - maxPtMf = ptMf; - best_ev = j; - } - } - } - ATH_MSG_DEBUG( " best is: best_ev/maxPtRoI/maxPtMf=" << best_ev << " / " << maxPtRoI << " / " << maxPtMf ); - - for(k=0; k<others.size(); k++) { - j=others[k]; - if( j != best_ev ) { - ATH_MSG_DEBUG( " EventView( j=" << j << " ) is not active" ); - - // monitoring - const xAOD::L2StandAloneMuon* mf = toolInput[j].overlap; - mufastNrOverlapped++; - mufastOverlappedPt = mf->pt(); - mufastOverlappedEta = mf->etaMS(); - mufastOverlappedPhi = mf->phiMS(); - } - if( j == best_ev ){ - ATH_MSG_DEBUG( " EventView( j=" << j << " ) is best one" ); - uniqueMuon.emplace_back(toolInput[i]); - } - } - } - } - mufastNrActiveEVs = numMuon - mufastNrOverlapped; - } -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverTool::decide(std::vector<L2CBMuonOverlapInfo>& toolInput) const { - - ATH_MSG_DEBUG("Retrieved from TrigL2MuonOverlapRemoverMucombAlg and Running TrigL2MuonOverlapRemoverTool for selections."); - - std::vector<TrigL2MuonOverlapRemoverTool::L2CBMuonOverlapInfo> input; - - for( unsigned int i=0; i<toolInput.size(); ++i ) { - if ( TrigCompositeUtils::passed( m_decisionId.numeric(), toolInput[i].previousDecisionIDs) ){ - input.emplace_back(toolInput[i]); - } - } - - size_t numMuon = input.size(); - - if ( numMuon == 0) { - ATH_MSG_DEBUG( "No positive previous hypo decision. Not need overlap removal." ); - auto mucombNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); - auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombNrAllEVs, mucombNrActiveEVs); - mucombNrActiveEVs = numMuon; - mucombNrAllEVs = numMuon; - return StatusCode::SUCCESS; - } - else if ( numMuon == 1 ) { - ATH_MSG_DEBUG("Number of muon event = " << numMuon ); - ATH_MSG_DEBUG("no overlap Removal necessary. exitting with all EventViews active." ); - auto mucombNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); - auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombNrAllEVs, mucombNrActiveEVs); - mucombNrActiveEVs = numMuon; - mucombNrAllEVs = numMuon; - TrigCompositeUtils::addDecisionID(m_decisionId, input[0].decision); - return StatusCode::SUCCESS; - } else { - ATH_MSG_DEBUG("Number of muon event = " << numMuon ); - auto mucombNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombNrAllEVs); - mucombNrAllEVs = numMuon; - ATH_CHECK(checkOverlap(input)); - return StatusCode::SUCCESS; - } - - return StatusCode::SUCCESS; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -StatusCode TrigL2MuonOverlapRemoverTool::checkOverlap(std::vector<L2CBMuonOverlapInfo>& toolInput) const { - - size_t numMuon = toolInput.size(); - unsigned int i,j; - std::vector<unsigned int> mucombResult; - std::vector<TrigL2MuonOverlapRemoverTool::L2CBMuonOverlapInfo> uniqueMuon; - - bool errorWhenIdentifyingOverlap = false; - - for(i=0; i<numMuon; i++) {mucombResult.emplace_back(i); } - for(i=0; i<numMuon-1; i++){ - for(j=i+1; j<numMuon; j++){ - ATH_MSG_DEBUG("++ i=" << i << " vs j=" << j); - bool overlapped = isOverlap(toolInput[i].overlap, toolInput[j].overlap); - if( ! overlapped ){ // judged as different - ATH_MSG_DEBUG(" judged as: differenr objects"); - if( mucombResult[i] == mucombResult[j] ) { // but marked as same by someone - ATH_MSG_DEBUG( "inconsistentency in muComb based overlap removal for more than two objects" ); - ATH_MSG_DEBUG( "two objects are judged as different but both were already marked as identical by someone else as: " ); - ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mucombResult[i] << " / " << mucombResult[j] ); - auto mucombError = Monitored::Scalar("MucombError", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombError); - mucombError = TrigL2MuonOverlapRemoverToolConsts::errorCode_inconsistent_overlap1; - errorWhenIdentifyingOverlap = true; - } - } - else{ // judged as overlap - if( (mucombResult[j] != j && mucombResult[i] != mucombResult[j]) || (mucombResult[j] == j && mucombResult[i] != i) ){ - ATH_MSG_DEBUG( "inconsistentency in muComb based overlap removal for more than two objects" ); - ATH_MSG_DEBUG( "two objects are judged as overlap but only either was already marked as overlap to someone else: " ); - ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mucombResult[i] << " / " << mucombResult[j] ); - auto mucombError = Monitored::Scalar("MucombError", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombError); - mucombError = TrigL2MuonOverlapRemoverToolConsts::errorCode_inconsistent_overlap2; - errorWhenIdentifyingOverlap = true; - } - ATH_MSG_DEBUG(" judged as: overlapped objects"); - if( mucombResult[i] == i ) { - ATH_MSG_DEBUG( " i is not yet marked as overlap. so, it is a newly found overlap" ); - ATH_MSG_DEBUG( " -> marking mucombResult[j] as i..." ); - mucombResult[j] = i; - } else { - ATH_MSG_DEBUG( " both i/j already marked as overlap by: mucombResult[i]=" << mucombResult[i] ); - ATH_MSG_DEBUG( " -> do nothing..." ); - } - } - } - } - - if( errorWhenIdentifyingOverlap ) { - ATH_MSG_WARNING( "error when resolving overlap. exitting with all EVs active..." ); - auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombNrActiveEVs); - mucombNrActiveEVs = numMuon; - for(i=0; i<numMuon; i++) TrigCompositeUtils::addDecisionID( m_decisionId, toolInput[i].decision ); - return StatusCode::SUCCESS; - } - - unsigned int n_uniqueMuon = 0; - for(i=0; i<numMuon; i++) { - ATH_MSG_DEBUG( "muComb based results: i=" << i << ": "); - if( mucombResult[i] != i ) { ATH_MSG_DEBUG( " overlap to j=" << mucombResult[i] ); } - else { - n_uniqueMuon++; - ATH_MSG_DEBUG( " unique" ); - } - } - - ATH_MSG_DEBUG( "nr of unique Muons after muComb-based removal=" << n_uniqueMuon ); - - if( numMuon != n_uniqueMuon ){ - chooseBestMuon(toolInput, uniqueMuon, mucombResult); - } else { - ATH_MSG_DEBUG( "no overlap identified. exitting with all EventViews active" ); - auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto monitorIt = Monitored::Group(m_monTool, mucombNrActiveEVs); - mucombNrActiveEVs = n_uniqueMuon; - for(i=0; i<numMuon; i++) uniqueMuon.emplace_back(toolInput[i]); - } - - if(n_uniqueMuon >= m_multiplicity){ - for(i=0; i<n_uniqueMuon; i++){ - ATH_MSG_DEBUG("Muon event pass through Chain/ID " << m_decisionId ); - TrigCompositeUtils::addDecisionID( m_decisionId, uniqueMuon[i].decision ); - } - } - else ATH_MSG_DEBUG("No muon event passed through selection " << m_decisionId << " because not meet the required number of muons"); - - return StatusCode::SUCCESS; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -bool TrigL2MuonOverlapRemoverTool::isOverlap(const xAOD::L2CombinedMuon *combMf1, - const xAOD::L2CombinedMuon *combMf2) const -{ - - auto mucombDR = Monitored::Scalar("DR", -9999.); - auto mucombMass = Monitored::Scalar("Mass", -9999.); - auto mucombDRLog10 = Monitored::Scalar("DRLog10", -9999.); - auto mucombMassLog10 = Monitored::Scalar("MassLog10", -9999.); - - auto monitorIt = Monitored::Group(m_monTool, mucombDR, mucombMass, mucombDRLog10, mucombMassLog10); - - - ATH_MSG_DEBUG( " ...mF1: pt/eta/phi=" << combMf1->pt()/Gaudi::Units::GeV << " / " << combMf1->eta() << " / " << combMf1->phi() ); - ATH_MSG_DEBUG( " ...mF2: pt/eta/phi=" << combMf2->pt()/Gaudi::Units::GeV << " / " << combMf2->eta() << " / " << combMf2->phi() ); - - // if dR or invMass is necessary but (eta,phi) info is not avaiable - // (i.e. eta,phi=0,0; rec failed) - const double ZERO_LIMIT_FOR_ETAPHI = 1e-4; - if( (fabs(combMf1->eta()) <ZERO_LIMIT_FOR_ETAPHI && fabs(combMf1->phi()) < ZERO_LIMIT_FOR_ETAPHI) || - (fabs(combMf2->eta()) <ZERO_LIMIT_FOR_ETAPHI && fabs(combMf2->phi()) < ZERO_LIMIT_FOR_ETAPHI) ) { - ATH_MSG_DEBUG( " ...-> (eta,phi) info not available (rec at (eta,phi)=(0,0))" ); - if( m_muCombRequireDR || m_muCombRequireMass ) { - ATH_MSG_DEBUG( " ...-> but dR of invMass check is required. cannot judge overlap -> return with false" ); - return false; - } - } - - // if charge or invMass is necessary but charge(=pT) info is not avaiable - const double ZERO_LIMIT_FOR_PT = 1e-4; - if( (fabs(combMf1->pt()) <ZERO_LIMIT_FOR_PT) || (fabs(combMf2->pt()) < ZERO_LIMIT_FOR_PT) ) { - ATH_MSG_DEBUG( " ...-> pT info not available (rec at pT=0)" ); - if( m_muCombRequireSameSign || m_muCombRequireMass ) { - ATH_MSG_DEBUG( " ...-> but same sign or invMass check is required. cannot judge overlap -> return with false" ); - return false; - } - } - - // determine etabin and thresholds - double absEta = (fabs(combMf1->pt()) > fabs(combMf2->pt())) ? fabs(combMf1->eta()) : fabs(combMf2->eta()); - unsigned int iThres = 0; - for(unsigned int i=0; i<(m_muCombEtaBins.size()-1); i++) { - if ( m_muCombEtaBins[i] <= absEta && absEta < m_muCombEtaBins[i+1] ) iThres = i; - } - double dRThres = m_muCombDRThres[iThres]; - double dRbyMFThres = m_muCombMufastDRThres[iThres]; - double massThres = m_muCombMassThres[iThres]; - ATH_MSG_DEBUG( " ...iThres=" << iThres ); - if(m_muCombRequireDR) ATH_MSG_DEBUG( " ...dR threshold=" << dRThres ); - if(m_muCombRequireMufastDR) ATH_MSG_DEBUG( " ...dR(byMF) threshold=" << dRbyMFThres ); - if(m_muCombRequireMass) ATH_MSG_DEBUG( " ...mass threshold=" << massThres ); - - // same sign cut - bool sameSign = false; - if( m_muCombRequireSameSign ) { - sameSign = ((combMf1->pt()*combMf2->pt()) > 0) ? true : false; - ATH_MSG_DEBUG( " ...-> sameSign=" << sameSign ); - } - - // dR cut - bool dRisClose = false; - double dr = dR(combMf1->eta(),combMf1->phi(),combMf2->eta(),combMf2->phi()); - - mucombDR = dr; - const double monitor_limit = 1e-4; - double dr_mon = (dr>=monitor_limit) ? dr : monitor_limit; - mucombDRLog10 = log10(dr_mon); - - if( m_muCombRequireDR ) { - if( dr < dRThres ) dRisClose = true; - ATH_MSG_DEBUG( " ...-> dR=" << dr << " : dRisClose=" << dRisClose ); - } - - // dR(by MF) cut - bool dRbyMFisClose = false; - if( m_muCombRequireMufastDR ) { - const xAOD::L2StandAloneMuon* mf1 = combMf1->muSATrack(); - const xAOD::L2StandAloneMuon* mf2 = combMf2->muSATrack(); - if( mf1 == 0 || mf2 == 0 ) { - ATH_MSG_DEBUG( "mF link from combinedMF broken" ); - ATH_MSG_DEBUG( " ...-> mF dR is required but mF link broken. cannot judge overlap -> return with false" ); - return false; - } - else { - // here, we do not check (eta,phi) of mF is not (0,0) - // (i.e. we apply muComb based cut even if muFast rec is failed) - double dRByMF = dR(mf1->etaMS(),mf1->phiMS(),mf2->etaMS(),mf2->phiMS()); - if( dRByMF < dRbyMFThres ) dRbyMFisClose = true; - ATH_MSG_DEBUG( " ...-> dR(by MF)=" << dRByMF << " : dRbyMFisClose=" << dRbyMFisClose ); - } - } - - // mass cut - const double TRACK_MASS = 0; // just assume zero mass - bool massIsClose = false; - double mass = invMass(TRACK_MASS,combMf1->pt()/Gaudi::Units::GeV,combMf1->eta(),combMf1->phi(),TRACK_MASS,combMf2->pt()/Gaudi::Units::GeV,combMf2->eta(),combMf2->phi()); - - mucombMass = mass; - double mass_mon = (mass>=monitor_limit) ? mass : monitor_limit; - mucombMassLog10 = log10(mass_mon); - - if( m_muCombRequireMass ) { - if( mass < massThres ) massIsClose = true; - ATH_MSG_DEBUG( " ...-> mass=" << mass << " : massIsClose=" << massIsClose ); - } - - // total judge - bool overlap = false; - if( ((m_muCombRequireSameSign && sameSign) || (! m_muCombRequireSameSign)) && - ((m_muCombRequireDR && dRisClose) || (! m_muCombRequireDR)) && - ((m_muCombRequireMufastDR && dRbyMFisClose) || (! m_muCombRequireMufastDR)) && - ((m_muCombRequireMass && massIsClose) || (! m_muCombRequireMass)) ) { - overlap = true; - } - - ATH_MSG_DEBUG( " ...=> isOverlap=" << overlap ); - - return overlap; - -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -void TrigL2MuonOverlapRemoverTool::chooseBestMuon(std::vector<L2CBMuonOverlapInfo>& toolInput, std::vector<L2CBMuonOverlapInfo>& uniqueMuon, std::vector<unsigned int> mucombResult) const -{ - size_t numMuon = toolInput.size(); - unsigned int i,j,k; - - auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); - auto mucombNrOverlapped = Monitored::Scalar("NrOverlapped", 0); - auto mucombOverlappedEta = Monitored::Scalar("OverlappedEta", -9999.); - auto mucombOverlappedPhi = Monitored::Scalar("OverlappedPhi", -9999.); - auto mucombOverlappedPt = Monitored::Scalar("OverlappedPt", -9999.); - - auto monitorIt = Monitored::Group(m_monTool, mucombNrActiveEVs, mucombNrOverlapped, - mucombOverlappedPt, mucombOverlappedEta, mucombOverlappedPhi); - - if( m_doMucombBasedRemoval ) { - ATH_MSG_DEBUG( "--- choose best among overlaps & disable EVs (muComb based) ---" ); - for(i=0; i<numMuon; i++) { - ATH_MSG_DEBUG( "++ i=" << i << ": result=" << mucombResult[i] ); - if( mucombResult[i] != i ) { - ATH_MSG_DEBUG( " overlap to some one. skip." ); - continue; - } - std::vector<unsigned int> others; - for(j=0; j<numMuon; j++) { - if( mucombResult[j] == mucombResult[i] ) others.emplace_back(j); - } - if( others.size() == 1 ) { - ATH_MSG_DEBUG( " unique object. keep it active." ); - uniqueMuon.emplace_back(toolInput[i]); - continue; - } - else {// must choose one best - ATH_MSG_DEBUG( " overlapped objects among: " << others ); - unsigned int best_ev = 0; - float maxPtCombMf = 0; - for(k=0; k<others.size(); k++) { - j=others[k]; - - float ptCombMf = 0.; - const xAOD::L2CombinedMuon* combMf = toolInput[j].overlap; - ptCombMf = fabs(combMf->pt()/Gaudi::Units::GeV); - ATH_MSG_DEBUG(" j="<< j << " , ptCombMf=" << ptCombMf); - if( ptCombMf > maxPtCombMf ) { - maxPtCombMf = ptCombMf; - best_ev = j; - } - } - ATH_MSG_DEBUG( " best is: best_ev/maxPtCombMf=" << best_ev << " / " << maxPtCombMf ); - - for(k=0; k<others.size(); k++) { - j=others[k]; - if( j != best_ev ) { - ATH_MSG_DEBUG( " EventView( j=" << j << " ) is not active" ); - - // monitoring - const xAOD::L2CombinedMuon* CombMf = toolInput[j].overlap; - mucombNrOverlapped++; - mucombOverlappedPt = CombMf->pt()* CombMf->charge() /Gaudi::Units::GeV; - mucombOverlappedEta = CombMf->eta(); - mucombOverlappedPhi = CombMf->phi(); - } - if( j == best_ev ){ - ATH_MSG_DEBUG( " EventView( j=" << j << " ) is best one" ); - uniqueMuon.emplace_back(toolInput[i]); - } - } - } - } - mucombNrActiveEVs = numMuon - mucombNrOverlapped; - } -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverTool.h b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverTool.h deleted file mode 100644 index 6fbfd152419e4bd7382fe849a4c4f94a202b3168..0000000000000000000000000000000000000000 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigL2MuonOverlapRemoverTool.h +++ /dev/null @@ -1,178 +0,0 @@ -/* -Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef TRIGL2MUONOVERLAPREMOVER_TRIGL2MUONOVERLAPREMOVERTOOL_H -#define TRIGL2MUONOVERLAPREMOVER_TRIGL2MUONOVERLAPREMOVERTOOL_H 1 - -#include "TrigCompositeUtils/HLTIdentifier.h" - -#include "xAODTrigMuon/L2CombinedMuonContainer.h" -#include "TrigT1Interfaces/RecMuonRoI.h" -#include "TrigCompositeUtils/TrigCompositeUtils.h" -#include "AthenaMonitoringKernel/GenericMonitoringTool.h" - -class StoreGateSvc; - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -namespace TrigL2MuonOverlapRemoverToolConsts { -const int errorCode_cannot_get_EL = 1; -const int errorCode_EL_not_valid = 2; -const int errorCode_inconsistent_overlap1 = 3; -const int errorCode_inconsistent_overlap2 = 4; -const int errorCode_cannot_get_RoI = 5; -} - -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - -class TrigL2MuonOverlapRemoverTool: public ::AthAlgTool { - - public: - - TrigL2MuonOverlapRemoverTool(const std::string& type, - const std::string & name, - const IInterface* parent ); - - virtual ~TrigL2MuonOverlapRemoverTool(); - - struct L2SAMuonOverlapInfo { - L2SAMuonOverlapInfo( TrigCompositeUtils::Decision* d, - const LVL1::RecMuonRoI* r, - const xAOD::L2StandAloneMuon* o, - const TrigCompositeUtils::Decision* previousDecision ) - : decision( d ), - RecRoI( r ), - overlap( o ), - previousDecisionIDs( TrigCompositeUtils::decisionIDs( previousDecision ).begin(), - TrigCompositeUtils::decisionIDs( previousDecision ).end() ) - {} - - - TrigCompositeUtils::Decision* decision; - const LVL1::RecMuonRoI* RecRoI; - const xAOD::L2StandAloneMuon* overlap; - const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs; - }; - - struct L2CBMuonOverlapInfo { - L2CBMuonOverlapInfo( TrigCompositeUtils::Decision* d, - const LVL1::RecMuonRoI* r, - const xAOD::L2CombinedMuon* o, - const TrigCompositeUtils::Decision* previousDecision ) - : decision( d ), - RecRoI( r ), - overlap( o ), - previousDecisionIDs( TrigCompositeUtils::decisionIDs( previousDecision ).begin(), - TrigCompositeUtils::decisionIDs( previousDecision ).end() ) - {} - - - TrigCompositeUtils::Decision* decision; - const LVL1::RecMuonRoI* RecRoI; - const xAOD::L2CombinedMuon* overlap; - const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs; - }; - - - virtual StatusCode initialize() override; - - virtual StatusCode decide(std::vector<TrigL2MuonOverlapRemoverTool::L2SAMuonOverlapInfo>& toolInput) const; - virtual StatusCode decide(std::vector<TrigL2MuonOverlapRemoverTool::L2CBMuonOverlapInfo>& toolInput) const; - - virtual StatusCode checkOverlap(std::vector<L2SAMuonOverlapInfo>& toolInput) const; - virtual StatusCode checkOverlap(std::vector<L2CBMuonOverlapInfo>& toolInput) const; - - bool isOverlap(const xAOD::L2StandAloneMuon *mf1, const xAOD::L2StandAloneMuon *mf2) const; - bool isOverlap(const xAOD::L2CombinedMuon *mf1, const xAOD::L2CombinedMuon *mf2) const; - - double dR(double eta1, double phi1, double eta2, double phi2) const; - - double invMass(double m1, double pt1, double eta1, double phi1, - double m2, double pt2, double eta2, double phi2) const; - - virtual void chooseBestMuon(std::vector<L2SAMuonOverlapInfo>& toolInput, std::vector<L2SAMuonOverlapInfo>& uniqueMuon, std::vector<unsigned int> mufastResult) const; - virtual void chooseBestMuon(std::vector<L2CBMuonOverlapInfo>& toolInput, std::vector<L2CBMuonOverlapInfo>& uniqueMuon, std::vector<unsigned int> mucombResult) const; - - - private: - - HLT::Identifier m_decisionId; - - Gaudi::Property< unsigned int > m_multiplicity { - this, "Multiplicity", 1, "multiplicity" }; - - // Mufast based cuts - Gaudi::Property<bool> m_doMufastBasedRemoval { - this, "DoMufastBasedRemoval", false, "execute or not mufast overlap removal"}; - - Gaudi::Property<bool> m_muFastRequireDR{ - this, "MufastRequireDR", true, "require or not DR cut for mufast overlap removal"}; - - Gaudi::Property<bool> m_muFastRequireMass{ - this, "MufastRequireMass", true, "require or not mass cut for mufast overlap removal"}; - - Gaudi::Property<bool> m_muFastRequireSameSign{ - this, "MufastRequireSameSign", true, "require or not charge cut for mufast overlap removal"}; - - Gaudi::Property< float > m_muFastDRThresBB { - this, "MufastDRThresBB", 0.05, "DR threshold for mufast in barel and barel region"}; - - Gaudi::Property< float > m_muFastMassThresBB { - this, "MufastMassThresBB", 0.20, "mass threshold for mufast in barel and barel region"}; - - Gaudi::Property< float > m_muFastDRThresBE { - this, "MufastDRThresBE", 0.05, "DR threshold for mufast in barel and barel region"}; - - Gaudi::Property< float > m_muFastMassThresBE { - this, "MufastMassThresBE", 0.20, "mass threshold for mufast in barel and endcap region"}; - - Gaudi::Property< std::vector<float> > m_muFastEtaBinsEC { - this, "MufastEtaBinsEC", {0, 1.9, 2.1, 9.9}, "eta bins of DR and mass thresholds for mufast in endcap and barel region"}; - - Gaudi::Property< std::vector<float> > m_muFastDRThresEC { - this, "MufastDRThresEC", {0.06, 0.05, 0.05}, "DR threshold for mufast in endcap and barel region"}; - - Gaudi::Property< std::vector<float> > m_muFastMassThresEC { - this, "MufastMassThresEC", {0.20, 0.15, 0.10}, "mass threshold for mufast in endcap and endcap region"}; - - - // Mucomb based cuts - Gaudi::Property<bool> m_doMucombBasedRemoval { - this, "DoMucombBasedRemoval", false, "execute or not mucomb overlap removal"}; - - Gaudi::Property<bool> m_muCombRequireDR{ - this, "MucombRequireDR", true, "require or not DR cut for mucomb overlap removal"}; - - Gaudi::Property<bool> m_muCombRequireMufastDR{ - this, "MucombRequireMufastDR", true, "require or not mufast DR cut for mucomb overlap removal"}; - - Gaudi::Property<bool> m_muCombRequireMass{ - this, "MucombRequireMass", true, "require or not mass cut for mucomb overlap removal"}; - - Gaudi::Property<bool> m_muCombRequireSameSign{ - this, "MucombRequireSameSign", true, "require or not charge cut for mucomb overlap removal"}; - - Gaudi::Property< std::vector<float> > m_muCombEtaBins { - this, "MucombEtaBins", {0, 1.9, 2.1, 9.9}, "eta bins of DR and mass thresholds for mucomb"}; - - Gaudi::Property< std::vector<float> > m_muCombDRThres { - this, "MucombDRThres", {0.06, 0.05, 0.05}, "DR threshold for mucomb"}; - - Gaudi::Property< std::vector<float> > m_muCombMufastDRThres { - this, "MucombMufastDRThres", {0.06, 0.05, 0.05}, "mufast DR threshold for mucomb"}; - - Gaudi::Property< std::vector<float> > m_muCombMassThres { - this, "MucombMassThres", {0.20, 0.15, 0.10}, "mass threshold for mucomb"}; - - - // Other members: - std::vector<size_t> m_bins = {0}; - - ToolHandle< GenericMonitoringTool > m_monTool { this, "MonTool", "", "Monitoring tool" }; - -}; - -#endif diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.cxx index f34f21fd7ec24c1fc8ef0a42a7b1a82e10b1fa93..284912df04cb7676d359ea4c17b1927fa1ed4343 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.cxx @@ -2,12 +2,16 @@ Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ +#include "GaudiKernel/SystemOfUnits.h" #include "AthenaMonitoringKernel/Monitored.h" #include "TrigCompositeUtils/Combinators.h" #include "TrigMufastHypoTool.h" +#include "CxxUtils/phihelper.h" #include "xAODTrigMuon/TrigMuonDefs.h" +#include <cmath> + using namespace TrigCompositeUtils; // -------------------------------------------------------------------------------- // -------------------------------------------------------------------------------- @@ -69,6 +73,42 @@ StatusCode TrigMufastHypoTool::initialize() ATH_MSG_DEBUG("MonTool name: " << m_monTool); } + + // Overlap Removal + if( m_applyOR ) { + ATH_MSG_DEBUG( "--- overlap removal as: ---" ); + if( m_requireDR ) { + ATH_MSG_DEBUG( "+ dR cut:" ); + if( (m_etaBinsEC.size()-1) != m_dRThresEC.size() ) { + ATH_MSG_ERROR( "bad thresholds setup .... exiting!" ); + return StatusCode::FAILURE; + } + ATH_MSG_DEBUG( " B-B : dR < " << m_dRThresBB ); + ATH_MSG_DEBUG( " B-E : dR < " << m_dRThresBE ); + ATH_MSG_DEBUG( " E-E : " ); + for(unsigned int i=0; i<m_dRThresEC.size(); i++) { + ATH_MSG_DEBUG( " EtaBin " << m_etaBinsEC[i] << " - " << m_etaBinsEC[i+1] + << " : dR < " << m_dRThresEC[i] ); + } + } + if( m_requireMass ) { + ATH_MSG_DEBUG( "+ Mass cut:" ); + if( (m_etaBinsEC.size()-1) != m_massThresEC.size() ) { + ATH_MSG_ERROR( "bad thresholds setup .... exiting!" ); + return StatusCode::FAILURE; + } + ATH_MSG_DEBUG( " B-B : Mass < " << m_massThresBB ); + ATH_MSG_DEBUG( " B-E : Mass < " << m_massThresBE ); + ATH_MSG_DEBUG( " E-E : " ); + for(unsigned int i=0; i<m_massThresEC.size(); i++) { + ATH_MSG_DEBUG( " EtaBin " << m_etaBinsEC[i] << " - " << m_etaBinsEC[i+1] + << " : Mass < " << m_massThresEC[i] ); + } + } + if( m_requireSameSign ) ATH_MSG_DEBUG( "+ Same charge sign" ); + } + + ATH_MSG_DEBUG("Initialization completed successfully"); return StatusCode::SUCCESS; @@ -248,7 +288,11 @@ StatusCode TrigMufastHypoTool::decide(std::vector<MuonClusterInfo>& toolInput) c } else { // in case of HLT_2mu6 and so on. ATH_MSG_DEBUG("Number of muon event = " << numMuon ); ATH_MSG_DEBUG("Applying selection of multiplicity << " << m_decisionId ); - return multiplicitySelection(toolInput); + + if(m_applyOR) + ATH_CHECK(applyOverlapRemoval(toolInput)); + + return multiplicitySelection(toolInput); } return StatusCode::SUCCESS; @@ -258,7 +302,7 @@ StatusCode TrigMufastHypoTool::decide(std::vector<MuonClusterInfo>& toolInput) c StatusCode TrigMufastHypoTool::inclusiveSelection(std::vector<TrigMufastHypoTool::MuonClusterInfo>& toolInput) const{ for ( auto& i: toolInput ) { - // If muon event has defference DecisionID, it shouldn't apply. + // If muon event has difference DecisionID, it shouldn't apply. if ( TrigCompositeUtils::passed( m_decisionId.numeric(), i.previousDecisionIDs ) ) { if ( decideOnSingleObject( i, 0 )==true ) { ATH_MSG_DEBUG("Pass through selection " << m_decisionId ); @@ -282,7 +326,13 @@ StatusCode TrigMufastHypoTool::multiplicitySelection(std::vector<TrigMufastHypoT for ( size_t cutIndex=0; cutIndex < m_ptBins.size(); ++cutIndex ) { size_t elementIndex{ 0 }; for ( auto& i: toolInput ) { - // If muon event has defference DecisionID, it shouldn't apply. + + if(!m_acceptAll && m_applyOR && !i.passOR) { + ATH_MSG_DEBUG("skip due to overap, DecisionID " << m_decisionId ); + continue; + } + + // If muon event has difference DecisionID, it shouldn't apply. if ( TrigCompositeUtils::passed( m_decisionId.numeric(), i.previousDecisionIDs ) ) { if ( decideOnSingleObject( i, cutIndex ) == true ) { ATH_MSG_DEBUG("Pass through selection " << m_decisionId << " : Event[" << elementIndex << "]" ); @@ -332,3 +382,386 @@ StatusCode TrigMufastHypoTool::multiplicitySelection(std::vector<TrigMufastHypoT return StatusCode::SUCCESS; } + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +StatusCode TrigMufastHypoTool::applyOverlapRemoval(std::vector<TrigMufastHypoTool::MuonClusterInfo>& toolInput) const{ + + ATH_MSG_DEBUG("Running Overlap Removal for muFast"); + + std::vector<TrigMufastHypoTool::MuonClusterInfo*> input; + + for ( auto& i: toolInput ) { + // If muon event has difference DecisionID, it shouldn't apply. + if ( TrigCompositeUtils::passed( m_decisionId.numeric(), i.previousDecisionIDs ) ) { + input.emplace_back(&i); + } + } + + size_t numMuon = input.size(); + + auto mufastNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); + auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mufastNrAllEVs, mufastNrActiveEVs); + if ( numMuon == 0) { + ATH_MSG_DEBUG( "No positive previous hypo decision. Not need overlap removal." ); + mufastNrActiveEVs = numMuon; + mufastNrAllEVs = numMuon; + return StatusCode::SUCCESS; + } + else if ( numMuon == 1 ) { + ATH_MSG_DEBUG("Number of muon event = " << numMuon ); + ATH_MSG_DEBUG("no overlap Removal necessary. exitting with all EventViews active." ); + mufastNrActiveEVs = numMuon; + mufastNrAllEVs = numMuon; + return StatusCode::SUCCESS; + } else { + ATH_MSG_DEBUG("Number of muon event = " << numMuon ); + mufastNrAllEVs = numMuon; + ATH_CHECK(checkOverlap(input)); + return StatusCode::SUCCESS; + } + + + return StatusCode::SUCCESS; +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +StatusCode TrigMufastHypoTool::checkOverlap(std::vector<TrigMufastHypoTool::MuonClusterInfo*>& input) const { + + size_t numMuon = input.size(); + unsigned int i,j; + std::vector<unsigned int> mufastResult; + + bool errorWhenIdentifyingOverlap = false; + + for(i=0; i<numMuon; i++) {mufastResult.emplace_back(i); } + for(i=0; i<numMuon-1; i++){ + for(j=i+1; j<numMuon; j++){ + ATH_MSG_DEBUG("++ i=" << i << " vs j=" << j); + bool overlapped = isOverlap((*input[i]).muFast, (*input[j]).muFast); + if( ! overlapped ){ // judged as different + ATH_MSG_DEBUG(" judged as: different objects"); + if( mufastResult[i] == mufastResult[j] ) { // but marked as same by someone + ATH_MSG_DEBUG( "inconsistentency in muFast overlap removal for more than two objects" ); + ATH_MSG_DEBUG( "two objects are judged as different but both were already marked as identical by someone else as: " ); + ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mufastResult[i] << " / " << mufastResult[j] ); + auto mufastError = Monitored::Scalar("MufastError", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mufastError); + mufastError = TrigMufastHypoToolConsts::errorCode_inconsistent_overlap1; + errorWhenIdentifyingOverlap = true; + } + } + else{ // judged as overlap + if( (mufastResult[j] != j && mufastResult[i] != mufastResult[j]) || (mufastResult[j] == j && mufastResult[i] != i) ){ + ATH_MSG_DEBUG( "inconsistentency in muFast overlap removal for more than two objects" ); + ATH_MSG_DEBUG( "two objects are judged as overlap but only either was already marked as overlap to someone else: " ); + ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mufastResult[i] << " / " << mufastResult[j] ); + auto mufastError = Monitored::Scalar("MufastError", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mufastError); + mufastError = TrigMufastHypoToolConsts::errorCode_inconsistent_overlap2; + errorWhenIdentifyingOverlap = true; + } + ATH_MSG_DEBUG(" judged as: overlapped objects"); + if( mufastResult[i] == i ) { + ATH_MSG_DEBUG( " i is not yet marked as overlap. so, it is a newly found overlap" ); + ATH_MSG_DEBUG( " -> marking mufastResult[j] as i..." ); + mufastResult[j] = i; + } else { + ATH_MSG_DEBUG( " both i/j already marked as overlap by: mufastResult[i]=" << mufastResult[i] ); + ATH_MSG_DEBUG( " -> do nothing..." ); + } + } + } + } + + if( errorWhenIdentifyingOverlap ) { + ATH_MSG_WARNING( "error when resolving overlap. exitting with all EVs active..." ); + auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mufastNrActiveEVs); + mufastNrActiveEVs = numMuon; + // for(i=0; i<numMuon; i++) TrigCompositeUtils::addDecisionID( m_decisionId, toolInput[i].decision ); + return StatusCode::SUCCESS; + } + + unsigned int n_uniqueMuon = 0; + for(i=0; i<numMuon; i++) { + ATH_MSG_DEBUG( "muFast results: i=" << i << ": "); + if( mufastResult[i] != i ) { ATH_MSG_DEBUG( " overlap to j=" << mufastResult[i] ); } + else { + n_uniqueMuon++; + ATH_MSG_DEBUG( " unique" ); + } + } + + ATH_MSG_DEBUG( "nr of unique Muons after muFast overlap removal=" << n_uniqueMuon ); + + if( numMuon != n_uniqueMuon ){ + ATH_CHECK(chooseBestMuon(input, mufastResult)); + } else { + ATH_MSG_DEBUG( "no overlap identified. exitting with all EventViews active" ); + auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mufastNrActiveEVs); + mufastNrActiveEVs = n_uniqueMuon; + } + + return StatusCode::SUCCESS; +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +bool TrigMufastHypoTool::isOverlap(const xAOD::L2StandAloneMuon *mf1, + const xAOD::L2StandAloneMuon *mf2) const +{ + + auto mufastDR = Monitored::Scalar("DR", -9999.); + auto mufastMass = Monitored::Scalar("Mass", -9999.); + auto mufastDRLog10 = Monitored::Scalar("DRLog10", -9999.); + auto mufastMassLog10 = Monitored::Scalar("MassLog10", -9999.); + + auto monitorIt = Monitored::Group(m_monTool, mufastDR, mufastMass, mufastDRLog10, mufastMassLog10); + + ATH_MSG_DEBUG( " ...mF1: pt/eta/phi=" << mf1->pt() << " / " << mf1->etaMS() << " / " << mf1->phiMS() ); + ATH_MSG_DEBUG( " ...mF2: pt/eta/phi=" << mf2->pt() << " / " << mf2->etaMS() << " / " << mf2->phiMS() ); + + // if dR or invMass is necessary but (eta,phi) info is not avaiable + // (i.e. eta,phi=0,0; rec failed) + const double ZERO_LIMIT_FOR_ETAPHI = 1e-4; + if( (fabs(mf1->etaMS()) <ZERO_LIMIT_FOR_ETAPHI && fabs(mf1->phiMS()) < ZERO_LIMIT_FOR_ETAPHI) || + (fabs(mf2->etaMS()) <ZERO_LIMIT_FOR_ETAPHI && fabs(mf2->phiMS()) < ZERO_LIMIT_FOR_ETAPHI) ) { + ATH_MSG_DEBUG( " ...-> (eta,phi) info not available (rec at (eta,phi)=(0,0))" ); + ATH_MSG_DEBUG( " ...-> but dR of invMass check is required. cannot judge overlap -> return with false" ); + return false; + } + + // if charge or invMass is necessary but charge(=pT) info is not avaiable + const double ZERO_LIMIT_FOR_PT = 1e-4; + if( (fabs(mf1->pt()) <ZERO_LIMIT_FOR_PT) || (fabs(mf2->pt()) < ZERO_LIMIT_FOR_PT) ) { + ATH_MSG_DEBUG( " ...-> pT info not available (rec at pT=0)" ); + ATH_MSG_DEBUG( " ...-> but same sign or invMass check is required. cannot judge overlap -> return with false" ); + return false; + } + + + // determine dR, mass threshold separately for: BB, BE, EE + double dRThres = 9999; + double massThres = 9999; + + const int SADDRESS_EC = -1; + bool isBarrel1 = (mf1->sAddress() != SADDRESS_EC ) ? true : false; + bool isBarrel2 = (mf2->sAddress() != SADDRESS_EC ) ? true : false; + + if( isBarrel1 && isBarrel2 ) { // BB + ATH_MSG_DEBUG( " ...B-B" ); + dRThres =m_dRThresBB; + massThres=m_massThresBB; + } + else if( (isBarrel1 && ! isBarrel2) || (!isBarrel1 && isBarrel2) ) { // BE + ATH_MSG_DEBUG( " ...B-E" ); + dRThres =m_dRThresBE; + massThres=m_massThresBE; + } + else { // EE + ATH_MSG_DEBUG( " ...E-E" ); + double absEta = (fabs(mf1->pt()) > fabs(mf2->pt())) ? fabs(mf1->etaMS()) : fabs(mf2->etaMS()); + unsigned int iThres=0; + for(unsigned int i=0; i<(m_etaBinsEC.size()-1); i++) { + if ( m_etaBinsEC[i] <= absEta && absEta < m_etaBinsEC[i+1] ) iThres = i; + } + ATH_MSG_DEBUG( " ...iThres=" << iThres ); + dRThres = m_dRThresEC[iThres]; + massThres = m_massThresEC[iThres]; + } + ATH_MSG_DEBUG( " ...dR threshold=" << dRThres ); + ATH_MSG_DEBUG( " ...mass threshold=" << massThres ); + + + // same sign cut + bool sameSign = false; + if( m_requireSameSign ) { + sameSign = ((mf1->pt()*mf2->pt()) > 0) ? true : false; + ATH_MSG_DEBUG( " ...-> sameSign=" << sameSign ); + } + + // dR cut + bool dRisClose = false; + double dr = dR(mf1->etaMS(),mf1->phiMS(),mf2->etaMS(),mf2->phiMS()); + + // for monitoring + mufastDR = dr; + const double monitor_limit = 1e-4; + double dr_mon = (dr>=monitor_limit) ? dr : monitor_limit; + mufastDRLog10 = log10(dr_mon); + + if( m_requireDR ) { + if( dr < dRThres ) dRisClose = true; + ATH_MSG_DEBUG( " ...-> dR=" << dr << " : dRisClose=" << dRisClose ); + } + + // mass cut + const double TRACK_MASS = 0; // just assume zero mass + bool massIsClose = false; + double mass = invMass(TRACK_MASS,mf1->pt(),mf1->etaMS(),mf1->phiMS(),TRACK_MASS,mf2->pt(),mf2->etaMS(),mf2->phiMS()); + + // for monitoring + mufastMass = mass; + double mass_mon = (mass>=monitor_limit) ? mass : monitor_limit; + mufastMassLog10 = log10(mass_mon); + + if( m_requireMass ) { + if( mass < massThres ) massIsClose = true; + ATH_MSG_DEBUG( " ...-> mass=" << mass << " : massIsClose=" << massIsClose ); + } + + // total judge + bool overlap = false; + if( ((m_requireSameSign && sameSign) || (! m_requireSameSign)) && + ((m_requireDR && dRisClose) || (! m_requireDR)) && + ((m_requireMass && massIsClose) || (! m_requireMass)) ) { + overlap = true; + } + + ATH_MSG_DEBUG( " ...=> isOverlap=" << overlap ); + + return overlap; + +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +double TrigMufastHypoTool::dR(double eta1, double phi1, double eta2, double phi2) const +{ + const double deta = eta1 - eta2; + const double dphi = CxxUtils::deltaPhi(phi1, phi2); + return std::sqrt(deta*deta + dphi*dphi); +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +double TrigMufastHypoTool::invMass(double m1, double pt1, double eta1, double phi1, + double m2, double pt2, double eta2, double phi2) const +{ + const double ZERO_LIMIT = 1e-12; + + double theta1 = 2*atan2((double)exp(-eta1),1.); + double theta2 = 2*atan2((double)exp(-eta2),1.); + + double fpt1 = fabs(pt1); + double fpt2 = fabs(pt2); + + double px1 = fpt1*cos(phi1); + double py1 = fpt1*sin(phi1); + double pz1 = fpt1/tan(theta1); + double e1 = sqrt(px1*px1+py1*py1+pz1*pz1+m1*m1); + + double px2 = fpt2*cos(phi2); + double py2 = fpt2*sin(phi2); + double pz2 = fpt2/tan(theta2); + double e2 = sqrt(px2*px2+py2*py2+pz2*pz2+m2*m2); + + double pxsum = px1 + px2; + double pysum = py1 + py2; + double pzsum = pz1 + pz2; + double esum = e1 + e2; + + double mass = 0; + double mass2 = esum*esum - pxsum*pxsum - pysum*pysum - pzsum*pzsum; + if( mass2 > ZERO_LIMIT ) mass = sqrt(mass2); + + return mass; +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +StatusCode TrigMufastHypoTool::chooseBestMuon(std::vector<TrigMufastHypoTool::MuonClusterInfo*>& input, std::vector<unsigned int> mufastResult) const +{ + size_t numMuon = input.size(); + unsigned int i,j,k; + + auto mufastNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto mufastNrOverlapped = Monitored::Scalar("NrOverlapped", 0); + auto mufastOverlappedEta = Monitored::Scalar("OverlappedEta", -9999.); + auto mufastOverlappedPhi = Monitored::Scalar("OverlappedPhi", -9999.); + auto mufastOverlappedPt = Monitored::Scalar("OverlappedPt", -9999.); + + auto monitorIt = Monitored::Group(m_monTool, mufastNrActiveEVs, mufastNrOverlapped, + mufastOverlappedPt, mufastOverlappedEta, mufastOverlappedPhi); + + ATH_MSG_DEBUG( "--- choose best among overlaps & disable EVs (muFast based) ---" ); + for(i=0; i<numMuon; i++) { + ATH_MSG_DEBUG( "++ i=" << i << ": result=" << mufastResult[i] ); + if( mufastResult[i] != i ) { + ATH_MSG_DEBUG( " overlap to some one. skip." ); + + (*input[i]).passOR = false; + + continue; + } + std::vector<unsigned int> others; + for(j=0; j<numMuon; j++) { + if( mufastResult[j] == mufastResult[i] ) others.emplace_back(j); + } + if( others.size() == 1 ) { + ATH_MSG_DEBUG( " unique object. keep it active." ); + continue; + } + else { + // must choose one best + ATH_MSG_DEBUG( " overlapped objects among: " << others ); + unsigned int best_ev = 0; + float maxPtMf = 0; + float maxPtRoI = 0; + for(k=0; k<others.size(); k++) { + j=others[k]; + // const LVL1::RecMuonRoI* muonRoI = input[j].RecRoI; + // float ptRoI = muonRoI->getThresholdValue(); + const xAOD::L2StandAloneMuon* mf = (*input[j]).muFast; + float ptMf = fabs(mf->pt()); + float ptRoI = mf->roiThreshold(); + ATH_MSG_DEBUG(" ev/PtRoI/ptMf="<< j << "/" << ptRoI << "/" << ptMf); + if( (ptRoI-maxPtRoI) > 0.1 ) { + maxPtRoI = ptRoI; + maxPtMf = ptMf; + best_ev = j; + } + else if( fabs(ptRoI-maxPtRoI) < 0.1 ) { + if( ptMf > maxPtMf ) { + maxPtRoI = ptRoI; + maxPtMf = ptMf; + best_ev = j; + } + } + } + ATH_MSG_DEBUG( " best is: best_ev/maxPtRoI/maxPtMf=" << best_ev << " / " << maxPtRoI << " / " << maxPtMf ); + + for(k=0; k<others.size(); k++) { + j=others[k]; + if( j != best_ev ) { + ATH_MSG_DEBUG( " EventView( j=" << j << " ) is not active" ); + + (*input[j]).passOR = false; + + // monitoring + const xAOD::L2StandAloneMuon* mf = (*input[j]).muFast; + mufastNrOverlapped++; + mufastOverlappedPt = mf->pt(); + mufastOverlappedEta = mf->etaMS(); + mufastOverlappedPhi = mf->phiMS(); + } + if( j == best_ev ){ + ATH_MSG_DEBUG( " EventView( j=" << j << " ) is best one" ); + } + } + } + } + mufastNrActiveEVs = numMuon - mufastNrOverlapped; + + return StatusCode::SUCCESS; +} diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.h b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.h index d99a7edc518859030bc72a92e3d4342e7f5dca8d..cd950b6da07e6a81765a9871d37e7f790cbc04f2 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.h +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigMufastHypoTool.h @@ -20,6 +20,11 @@ class StoreGateSvc; namespace TrigMufastHypoToolConsts { enum ECRegions{ Bulk, WeakBFieldA, WeakBFieldB }; +const int errorCode_cannot_get_EL = 1; +const int errorCode_EL_not_valid = 2; +const int errorCode_inconsistent_overlap1 = 3; +const int errorCode_inconsistent_overlap2 = 4; +const int errorCode_cannot_get_RoI = 5; } // -------------------------------------------------------------------------------- @@ -44,13 +49,15 @@ class TrigMufastHypoTool: public ::AthAlgTool { roi( r ), muFast( f ), previousDecisionIDs( TrigCompositeUtils::decisionIDs( previousDecision ).begin(), - TrigCompositeUtils::decisionIDs( previousDecision ).end() ) + TrigCompositeUtils::decisionIDs( previousDecision ).end() ), + passOR( true ) {} TrigCompositeUtils::Decision* decision; const TrigRoiDescriptor* roi; const xAOD::L2StandAloneMuon* muFast; const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs; + bool passOR; }; virtual StatusCode initialize() override; @@ -69,6 +76,14 @@ class TrigMufastHypoTool: public ::AthAlgTool { // for multipul muon event StatusCode multiplicitySelection(std::vector<TrigMufastHypoTool::MuonClusterInfo>& toolInput) const; + StatusCode applyOverlapRemoval(std::vector<TrigMufastHypoTool::MuonClusterInfo>& toolInput) const; + StatusCode checkOverlap(std::vector<TrigMufastHypoTool::MuonClusterInfo*>& input) const; + bool isOverlap(const xAOD::L2StandAloneMuon *mf1, const xAOD::L2StandAloneMuon *mf2) const; + double dR(double eta1, double phi1, double eta2, double phi2) const; + double invMass(double m1, double pt1, double eta1, double phi1, + double m2, double pt2, double eta2, double phi2) const; + StatusCode chooseBestMuon(std::vector<TrigMufastHypoTool::MuonClusterInfo*>& input, std::vector<unsigned int> mufastResult) const; + float getLocalPhi(float, float, float) const; // Properties: @@ -102,6 +117,40 @@ class TrigMufastHypoTool: public ::AthAlgTool { Gaudi::Property< bool > m_doCalib { this, "DoCalib", false, "muoncalib chain" }; + // Members for overlap removal + Gaudi::Property< bool > m_applyOR { + this, "ApplyOR", false, "apply overlap removal for mufast" }; + + Gaudi::Property<bool> m_requireDR{ + this, "RequireDR", true, "require or not DR cut for overlap removal"}; + + Gaudi::Property<bool> m_requireMass{ + this, "RequireMass", true, "require or not mass cut for overlap removal"}; + + Gaudi::Property<bool> m_requireSameSign{ + this, "RequireSameSign", true, "require or not charge cut for overlap removal"}; + + Gaudi::Property< float > m_dRThresBB { + this, "DRThresBB", 0.05, "DR threshold in barel and barel region"}; + + Gaudi::Property< float > m_massThresBB { + this, "MassThresBB", 0.20, "mass threshold in barel and barel region"}; + + Gaudi::Property< float > m_dRThresBE { + this, "DRThresBE", 0.05, "DR threshold in barel and barel region"}; + + Gaudi::Property< float > m_massThresBE { + this, "MassThresBE", 0.20, "mass threshold in barel and endcap region"}; + + Gaudi::Property< std::vector<float> > m_etaBinsEC { + this, "EtaBinsEC", {0, 1.9, 2.1, 9.9}, "eta bins of DR and mass thresholds in endcap and barel region"}; + + Gaudi::Property< std::vector<float> > m_dRThresEC { + this, "DRThresEC", {0.06, 0.05, 0.05}, "DR threshold in endcap and barel region"}; + + Gaudi::Property< std::vector<float> > m_massThresEC { + this, "MassThresEC", {0.20, 0.15, 0.10}, "mass threshold in endcap and endcap region"}; + // Other members: std::vector<size_t> m_bins = {0}; diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.cxx index b5ae07ca846df9d0d5680638e6244e67a259e0e9..68d5e2bf4f8e0b2e5f513844538449c7614318ea 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.cxx @@ -2,10 +2,14 @@ Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ +#include "GaudiKernel/SystemOfUnits.h" #include "AthenaMonitoringKernel/Monitored.h" #include "TrigCompositeUtils/Combinators.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" #include "TrigmuCombHypoTool.h" +#include "CxxUtils/phihelper.h" + +#include <cmath> using namespace TrigCompositeUtils; // -------------------------------------------------------------------------------- @@ -53,7 +57,46 @@ StatusCode TrigmuCombHypoTool::initialize() ATH_CHECK( m_monTool.retrieve() ); ATH_MSG_DEBUG("MonTool name: " << m_monTool); } - + + // Overlap Removal + if( m_applyOR ) { + ATH_MSG_DEBUG( "--- overlap removal as: ---" ); + if( m_requireDR ) { + ATH_MSG_DEBUG( "+ dR cut:" ); + if( (m_etaBins.size()-1) != m_dRThres.size() ) { + ATH_MSG_ERROR( "bad thresholds setup .... exiting!" ); + return StatusCode::FAILURE; + } + for(unsigned int i=0; i<m_dRThres.size(); i++) { + ATH_MSG_DEBUG( " EtaBin " << m_etaBins[i] << " - " << m_etaBins[i+1] + << " : dR < " << m_dRThres[i] ); + } + } + if( m_requireMufastDR ) { + ATH_MSG_DEBUG( "+ dr(by mF) cut:" ); + if( (m_etaBins.size()-1) != m_mufastDRThres.size() ) { + ATH_MSG_ERROR( "bad thresholds setup .... exiting!" ); + return StatusCode::FAILURE; + } + for(unsigned int i=0; i<m_mufastDRThres.size(); i++) { + ATH_MSG_DEBUG( " EtaBin " << m_etaBins[i] << " - " << m_etaBins[i+1] + << " : dR(mF) < " << m_mufastDRThres[i] ); + } + } + if( m_requireMass ) { + ATH_MSG_DEBUG( "+ Mass cut:" ); + if( (m_etaBins.size()-1) != m_massThres.size() ) { + ATH_MSG_ERROR( "bad thresholds setup .... exiting!" ); + return StatusCode::FAILURE; + } + for(unsigned int i=0; i<m_massThres.size(); i++) { + ATH_MSG_DEBUG( " EtaBin " << m_etaBins[i] << " - " << m_etaBins[i+1] + << " : Mass < " << m_massThres[i] ); + } + } + if( m_requireSameSign ) ATH_MSG_DEBUG( "+ Same charge sign" ); + } + return StatusCode::SUCCESS; } @@ -181,7 +224,6 @@ bool TrigmuCombHypoTool::decideOnSingleObject(TrigmuCombHypoTool::CombinedMuonIn return result; } - // -------------------------------------------------------------------------------- // -------------------------------------------------------------------------------- @@ -199,6 +241,10 @@ StatusCode TrigmuCombHypoTool::decide(std::vector<TrigmuCombHypoTool::CombinedMu } else { // in case of HLT_2mu6 and so on. ATH_MSG_DEBUG("Number of muon event = " << numMuon ); ATH_MSG_DEBUG("Applying selection of multiplicity << " << m_decisionId ); + + if(m_applyOR) + ATH_CHECK(applyOverlapRemoval(toolInput)); + return multiplicitySelection(toolInput); } @@ -209,7 +255,7 @@ StatusCode TrigmuCombHypoTool::decide(std::vector<TrigmuCombHypoTool::CombinedMu StatusCode TrigmuCombHypoTool::inclusiveSelection(std::vector<TrigmuCombHypoTool::CombinedMuonInfo>& input) const { for ( auto& i: input) { - // If muon event has defference DecisionID, it shouldn't apply. + // If muon event has difference DecisionID, it shouldn't apply. if (TrigCompositeUtils::passed(m_decisionId.numeric(), i.previousDecisionIDs)) { if ( decideOnSingleObject(i, 0)==true ) { ATH_MSG_DEBUG("Pass through selection " << m_decisionId ); @@ -233,7 +279,13 @@ StatusCode TrigmuCombHypoTool::multiplicitySelection(std::vector<TrigmuCombHypoT for ( size_t cutIndex=0; cutIndex < m_ptBins.size(); ++cutIndex ) { size_t elementIndex{ 0 }; for ( auto& i: input ) { - // If muon event has defference DecisionID, it shouldn't apply. + + if(!m_acceptAll && m_applyOR && !i.passOR) { + ATH_MSG_DEBUG("skip due to overap, DecisionID " << m_decisionId ); + continue; + } + + // If muon event has difference DecisionID, it shouldn't apply. if ( TrigCompositeUtils::passed( m_decisionId.numeric(), i.previousDecisionIDs ) ) { if ( decideOnSingleObject( i, cutIndex ) == true ) { ATH_MSG_DEBUG("Pass through selection " << m_decisionId << " : Event[" << elementIndex << "]" ); @@ -284,3 +336,376 @@ StatusCode TrigmuCombHypoTool::multiplicitySelection(std::vector<TrigmuCombHypoT return StatusCode::SUCCESS; } + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +StatusCode TrigmuCombHypoTool::applyOverlapRemoval(std::vector<TrigmuCombHypoTool::CombinedMuonInfo>& toolInput) const { + + ATH_MSG_DEBUG("Running Overlap Removal for muComb"); + + std::vector<TrigmuCombHypoTool::CombinedMuonInfo*> input; + + for ( auto& i: toolInput ) { + if ( TrigCompositeUtils::passed( m_decisionId.numeric(), i.previousDecisionIDs) ){ + input.emplace_back(&i); + } + } + + size_t numMuon = input.size(); + + auto mucombNrAllEVs = Monitored::Scalar("NrAllEVs", -9999.); + auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mucombNrAllEVs, mucombNrActiveEVs); + if ( numMuon == 0) { + ATH_MSG_DEBUG( "No positive previous hypo decision. Not need overlap removal." ); + mucombNrActiveEVs = numMuon; + mucombNrAllEVs = numMuon; + return StatusCode::SUCCESS; + } + else if ( numMuon == 1 ) { + ATH_MSG_DEBUG("Number of muon event = " << numMuon ); + ATH_MSG_DEBUG("no overlap Removal necessary. exitting with all EventViews active." ); + mucombNrActiveEVs = numMuon; + mucombNrAllEVs = numMuon; + return StatusCode::SUCCESS; + } else { + ATH_MSG_DEBUG("Number of muon event = " << numMuon ); + mucombNrAllEVs = numMuon; + ATH_CHECK(checkOverlap(input)); + return StatusCode::SUCCESS; + } + + return StatusCode::SUCCESS; +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +StatusCode TrigmuCombHypoTool::checkOverlap(std::vector<TrigmuCombHypoTool::CombinedMuonInfo*>& input) const { + + size_t numMuon = input.size(); + unsigned int i,j; + std::vector<unsigned int> mucombResult; + + bool errorWhenIdentifyingOverlap = false; + + for(i=0; i<numMuon; i++) {mucombResult.emplace_back(i); } + for(i=0; i<numMuon-1; i++){ + for(j=i+1; j<numMuon; j++){ + ATH_MSG_DEBUG("++ i=" << i << " vs j=" << j); + bool overlapped = isOverlap((*input[i]).muComb, (*input[j]).muComb); + if( ! overlapped ){ // judged as different + ATH_MSG_DEBUG(" judged as: differenr objects"); + if( mucombResult[i] == mucombResult[j] ) { // but marked as same by someone + ATH_MSG_DEBUG( "inconsistentency in muComb overlap removal for more than two objects" ); + ATH_MSG_DEBUG( "two objects are judged as different but both were already marked as identical by someone else as: " ); + ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mucombResult[i] << " / " << mucombResult[j] ); + auto mucombError = Monitored::Scalar("MucombError", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mucombError); + mucombError = TrigmuCombHypoToolConsts::errorCode_inconsistent_overlap1; + errorWhenIdentifyingOverlap = true; + } + } + else{ // judged as overlap + if( (mucombResult[j] != j && mucombResult[i] != mucombResult[j]) || (mucombResult[j] == j && mucombResult[i] != i) ){ + ATH_MSG_DEBUG( "inconsistentency in muComb based overlap removal for more than two objects" ); + ATH_MSG_DEBUG( "two objects are judged as overlap but only either was already marked as overlap to someone else: " ); + ATH_MSG_DEBUG( "i/j/result[i]/result[j]=" << i << " / " << j << " / " << mucombResult[i] << " / " << mucombResult[j] ); + auto mucombError = Monitored::Scalar("MucombError", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mucombError); + mucombError = TrigmuCombHypoToolConsts::errorCode_inconsistent_overlap2; + errorWhenIdentifyingOverlap = true; + } + ATH_MSG_DEBUG(" judged as: overlapped objects"); + if( mucombResult[i] == i ) { + ATH_MSG_DEBUG( " i is not yet marked as overlap. so, it is a newly found overlap" ); + ATH_MSG_DEBUG( " -> marking mucombResult[j] as i..." ); + mucombResult[j] = i; + } else { + ATH_MSG_DEBUG( " both i/j already marked as overlap by: mucombResult[i]=" << mucombResult[i] ); + ATH_MSG_DEBUG( " -> do nothing..." ); + } + } + } + } + + if( errorWhenIdentifyingOverlap ) { + ATH_MSG_WARNING( "error when resolving overlap. exitting with all EVs active..." ); + auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mucombNrActiveEVs); + mucombNrActiveEVs = numMuon; + // for(i=0; i<numMuon; i++) TrigCompositeUtils::addDecisionID( m_decisionId, toolInput[i].decision ); + return StatusCode::SUCCESS; + } + + unsigned int n_uniqueMuon = 0; + for(i=0; i<numMuon; i++) { + ATH_MSG_DEBUG( "muComb based results: i=" << i << ": "); + if( mucombResult[i] != i ) { ATH_MSG_DEBUG( " overlap to j=" << mucombResult[i] ); } + else { + n_uniqueMuon++; + ATH_MSG_DEBUG( " unique" ); + } + } + + ATH_MSG_DEBUG( "nr of unique Muons after muComb-based removal=" << n_uniqueMuon ); + + if( numMuon != n_uniqueMuon ){ + ATH_CHECK(chooseBestMuon(input, mucombResult)); + } else { + ATH_MSG_DEBUG( "no overlap identified. exitting with all EventViews active" ); + auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto monitorIt = Monitored::Group(m_monTool, mucombNrActiveEVs); + mucombNrActiveEVs = n_uniqueMuon; + } + + return StatusCode::SUCCESS; +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +bool TrigmuCombHypoTool::isOverlap(const xAOD::L2CombinedMuon *combMf1, + const xAOD::L2CombinedMuon *combMf2) const +{ + + auto mucombDR = Monitored::Scalar("DR", -9999.); + auto mucombMass = Monitored::Scalar("Mass", -9999.); + auto mucombDRLog10 = Monitored::Scalar("DRLog10", -9999.); + auto mucombMassLog10 = Monitored::Scalar("MassLog10", -9999.); + + auto monitorIt = Monitored::Group(m_monTool, mucombDR, mucombMass, mucombDRLog10, mucombMassLog10); + + + ATH_MSG_DEBUG( " ...mF1: pt/eta/phi=" << combMf1->pt()/Gaudi::Units::GeV << " / " << combMf1->eta() << " / " << combMf1->phi() ); + ATH_MSG_DEBUG( " ...mF2: pt/eta/phi=" << combMf2->pt()/Gaudi::Units::GeV << " / " << combMf2->eta() << " / " << combMf2->phi() ); + + // if dR or invMass is necessary but (eta,phi) info is not avaiable + // (i.e. eta,phi=0,0; rec failed) + const double ZERO_LIMIT_FOR_ETAPHI = 1e-4; + if( (fabs(combMf1->eta()) <ZERO_LIMIT_FOR_ETAPHI && fabs(combMf1->phi()) < ZERO_LIMIT_FOR_ETAPHI) || + (fabs(combMf2->eta()) <ZERO_LIMIT_FOR_ETAPHI && fabs(combMf2->phi()) < ZERO_LIMIT_FOR_ETAPHI) ) { + ATH_MSG_DEBUG( " ...-> (eta,phi) info not available (rec at (eta,phi)=(0,0))" ); + if( m_requireDR || m_requireMass ) { + ATH_MSG_DEBUG( " ...-> but dR of invMass check is required. cannot judge overlap -> return with false" ); + return false; + } + } + + // if charge or invMass is necessary but charge(=pT) info is not avaiable + const double ZERO_LIMIT_FOR_PT = 1e-4; + if( (fabs(combMf1->pt()) <ZERO_LIMIT_FOR_PT) || (fabs(combMf2->pt()) < ZERO_LIMIT_FOR_PT) ) { + ATH_MSG_DEBUG( " ...-> pT info not available (rec at pT=0)" ); + if( m_requireSameSign || m_requireMass ) { + ATH_MSG_DEBUG( " ...-> but same sign or invMass check is required. cannot judge overlap -> return with false" ); + return false; + } + } + + // determine etabin and thresholds + double absEta = (fabs(combMf1->pt()) > fabs(combMf2->pt())) ? fabs(combMf1->eta()) : fabs(combMf2->eta()); + unsigned int iThres = 0; + for(unsigned int i=0; i<(m_etaBins.size()-1); i++) { + if ( m_etaBins[i] <= absEta && absEta < m_etaBins[i+1] ) iThres = i; + } + double dRThres = m_dRThres[iThres]; + double dRbyMFThres = m_mufastDRThres[iThres]; + double massThres = m_massThres[iThres]; + ATH_MSG_DEBUG( " ...iThres=" << iThres ); + if(m_requireDR) ATH_MSG_DEBUG( " ...dR threshold=" << dRThres ); + if(m_requireMufastDR) ATH_MSG_DEBUG( " ...dR(byMF) threshold=" << dRbyMFThres ); + if(m_requireMass) ATH_MSG_DEBUG( " ...mass threshold=" << massThres ); + + // same sign cut + bool sameSign = false; + if( m_requireSameSign ) { + sameSign = ((combMf1->pt()*combMf2->pt()) > 0) ? true : false; + ATH_MSG_DEBUG( " ...-> sameSign=" << sameSign ); + } + + // dR cut + bool dRisClose = false; + double dr = dR(combMf1->eta(),combMf1->phi(),combMf2->eta(),combMf2->phi()); + + mucombDR = dr; + const double monitor_limit = 1e-4; + double dr_mon = (dr>=monitor_limit) ? dr : monitor_limit; + mucombDRLog10 = log10(dr_mon); + + if( m_requireDR ) { + if( dr < dRThres ) dRisClose = true; + ATH_MSG_DEBUG( " ...-> dR=" << dr << " : dRisClose=" << dRisClose ); + } + + // dR(by MF) cut + bool dRbyMFisClose = false; + if( m_requireMufastDR ) { + const xAOD::L2StandAloneMuon* mf1 = combMf1->muSATrack(); + const xAOD::L2StandAloneMuon* mf2 = combMf2->muSATrack(); + if( mf1 == 0 || mf2 == 0 ) { + ATH_MSG_DEBUG( "mF link from combinedMF broken" ); + ATH_MSG_DEBUG( " ...-> mF dR is required but mF link broken. cannot judge overlap -> return with false" ); + return false; + } + else { + // here, we do not check (eta,phi) of mF is not (0,0) + // (i.e. we apply muComb based cut even if muFast rec is failed) + double dRByMF = dR(mf1->etaMS(),mf1->phiMS(),mf2->etaMS(),mf2->phiMS()); + if( dRByMF < dRbyMFThres ) dRbyMFisClose = true; + ATH_MSG_DEBUG( " ...-> dR(by MF)=" << dRByMF << " : dRbyMFisClose=" << dRbyMFisClose ); + } + } + + // mass cut + const double TRACK_MASS = 0; // just assume zero mass + bool massIsClose = false; + double mass = invMass(TRACK_MASS,combMf1->pt()/Gaudi::Units::GeV,combMf1->eta(),combMf1->phi(),TRACK_MASS,combMf2->pt()/Gaudi::Units::GeV,combMf2->eta(),combMf2->phi()); + + mucombMass = mass; + double mass_mon = (mass>=monitor_limit) ? mass : monitor_limit; + mucombMassLog10 = log10(mass_mon); + + if( m_requireMass ) { + if( mass < massThres ) massIsClose = true; + ATH_MSG_DEBUG( " ...-> mass=" << mass << " : massIsClose=" << massIsClose ); + } + + // total judge + bool overlap = false; + if( ((m_requireSameSign && sameSign) || (! m_requireSameSign)) && + ((m_requireDR && dRisClose) || (! m_requireDR)) && + ((m_requireMufastDR && dRbyMFisClose) || (! m_requireMufastDR)) && + ((m_requireMass && massIsClose) || (! m_requireMass)) ) { + overlap = true; + } + + ATH_MSG_DEBUG( " ...=> isOverlap=" << overlap ); + + return overlap; + +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +double TrigmuCombHypoTool::dR(double eta1, double phi1, double eta2, double phi2) const +{ + const double deta = eta1 - eta2; + const double dphi = CxxUtils::deltaPhi(phi1, phi2); + return std::sqrt(deta*deta + dphi*dphi); +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +double TrigmuCombHypoTool::invMass(double m1, double pt1, double eta1, double phi1, + double m2, double pt2, double eta2, double phi2) const +{ + const double ZERO_LIMIT = 1e-12; + + double theta1 = 2*atan2((double)exp(-eta1),1.); + double theta2 = 2*atan2((double)exp(-eta2),1.); + + double fpt1 = fabs(pt1); + double fpt2 = fabs(pt2); + + double px1 = fpt1*cos(phi1); + double py1 = fpt1*sin(phi1); + double pz1 = fpt1/tan(theta1); + double e1 = sqrt(px1*px1+py1*py1+pz1*pz1+m1*m1); + + double px2 = fpt2*cos(phi2); + double py2 = fpt2*sin(phi2); + double pz2 = fpt2/tan(theta2); + double e2 = sqrt(px2*px2+py2*py2+pz2*pz2+m2*m2); + + double pxsum = px1 + px2; + double pysum = py1 + py2; + double pzsum = pz1 + pz2; + double esum = e1 + e2; + + double mass = 0; + double mass2 = esum*esum - pxsum*pxsum - pysum*pysum - pzsum*pzsum; + if( mass2 > ZERO_LIMIT ) mass = sqrt(mass2); + + return mass; +} + +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + +StatusCode TrigmuCombHypoTool::chooseBestMuon(std::vector<TrigmuCombHypoTool::CombinedMuonInfo*>& input, std::vector<unsigned int> mucombResult) const +{ + size_t numMuon = input.size(); + unsigned int i,j,k; + + auto mucombNrActiveEVs = Monitored::Scalar("NrActiveEVs", -9999.); + auto mucombNrOverlapped = Monitored::Scalar("NrOverlapped", 0); + auto mucombOverlappedEta = Monitored::Scalar("OverlappedEta", -9999.); + auto mucombOverlappedPhi = Monitored::Scalar("OverlappedPhi", -9999.); + auto mucombOverlappedPt = Monitored::Scalar("OverlappedPt", -9999.); + + auto monitorIt = Monitored::Group(m_monTool, mucombNrActiveEVs, mucombNrOverlapped, + mucombOverlappedPt, mucombOverlappedEta, mucombOverlappedPhi); + + ATH_MSG_DEBUG( "--- choose best among overlaps & disable EVs (muComb based) ---" ); + for(i=0; i<numMuon; i++) { + ATH_MSG_DEBUG( "++ i=" << i << ": result=" << mucombResult[i] ); + if( mucombResult[i] != i ) { + ATH_MSG_DEBUG( " overlap to some one. skip." ); + + (*input[i]).passOR = false; + + continue; + } + std::vector<unsigned int> others; + for(j=0; j<numMuon; j++) { + if( mucombResult[j] == mucombResult[i] ) others.emplace_back(j); + } + if( others.size() == 1 ) { + ATH_MSG_DEBUG( " unique object. keep it active." ); + continue; + } + else {// must choose one best + ATH_MSG_DEBUG( " overlapped objects among: " << others ); + unsigned int best_ev = 0; + float maxPtCombMf = 0; + for(k=0; k<others.size(); k++) { + j=others[k]; + + float ptCombMf = 0.; + const xAOD::L2CombinedMuon* combMf = (*input[j]).muComb; + ptCombMf = fabs(combMf->pt()/Gaudi::Units::GeV); + ATH_MSG_DEBUG(" j="<< j << " , ptCombMf=" << ptCombMf); + if( ptCombMf > maxPtCombMf ) { + maxPtCombMf = ptCombMf; + best_ev = j; + } + } + ATH_MSG_DEBUG( " best is: best_ev/maxPtCombMf=" << best_ev << " / " << maxPtCombMf ); + + for(k=0; k<others.size(); k++) { + j=others[k]; + if( j != best_ev ) { + ATH_MSG_DEBUG( " EventView( j=" << j << " ) is not active" ); + + (*input[j]).passOR = false; + + // monitoring + const xAOD::L2CombinedMuon* CombMf = (*input[j]).muComb; + mucombNrOverlapped++; + mucombOverlappedPt = CombMf->pt()* CombMf->charge() /Gaudi::Units::GeV; + mucombOverlappedEta = CombMf->eta(); + mucombOverlappedPhi = CombMf->phi(); + } + if( j == best_ev ){ + ATH_MSG_DEBUG( " EventView( j=" << j << " ) is best one" ); + } + } + } + } + mucombNrActiveEVs = numMuon - mucombNrOverlapped; + + return StatusCode::SUCCESS; +} diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.h b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.h index 10ea1ae595bc4c48e1c62658c931046a0edf4c12..7ed8a0ae554da0f892489bcc2355fd81c12cc383 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.h +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/TrigmuCombHypoTool.h @@ -18,6 +18,11 @@ class StoreGateSvc; // -------------------------------------------------------------------------------- namespace TrigmuCombHypoToolConsts { +const int errorCode_cannot_get_EL = 1; +const int errorCode_EL_not_valid = 2; +const int errorCode_inconsistent_overlap1 = 3; +const int errorCode_inconsistent_overlap2 = 4; +const int errorCode_cannot_get_RoI = 5; } // -------------------------------------------------------------------------------- @@ -40,13 +45,15 @@ class TrigmuCombHypoTool: public ::AthAlgTool { muComb( c ), muFast( f ), previousDecisionIDs( TrigCompositeUtils::decisionIDs( previousDecision ).begin(), - TrigCompositeUtils::decisionIDs( previousDecision ).end() ) + TrigCompositeUtils::decisionIDs( previousDecision ).end() ), + passOR( true ) {} TrigCompositeUtils::Decision* decision; const xAOD::L2CombinedMuon* muComb; const xAOD::L2StandAloneMuon* muFast; const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs; + bool passOR; }; virtual ~TrigmuCombHypoTool(); @@ -63,6 +70,14 @@ class TrigmuCombHypoTool: public ::AthAlgTool { StatusCode multiplicitySelection(std::vector<TrigmuCombHypoTool::CombinedMuonInfo>& input) const; + StatusCode applyOverlapRemoval(std::vector<TrigmuCombHypoTool::CombinedMuonInfo>& toolInput) const; + StatusCode checkOverlap(std::vector<TrigmuCombHypoTool::CombinedMuonInfo*>& input) const; + bool isOverlap(const xAOD::L2CombinedMuon *mf1, const xAOD::L2CombinedMuon *mf2) const; + double dR(double eta1, double phi1, double eta2, double phi2) const; + double invMass(double m1, double pt1, double eta1, double phi1, + double m2, double pt2, double eta2, double phi2) const; + StatusCode chooseBestMuon(std::vector<TrigmuCombHypoTool::CombinedMuonInfo*>& input, std::vector<unsigned int> mucombResult) const; + HLT::Identifier m_decisionId; ToolHandle< GenericMonitoringTool > m_monTool { this, "MonTool", "", "Monitoring tool" }; @@ -107,6 +122,35 @@ class TrigmuCombHypoTool: public ::AthAlgTool { this, "DecisionPerCluster", true, "Is multiplicity requirement refering to muons ( false ) or RoIs/clusters with muons ( false ), relevant only in when multiplicity > 1" }; + // Members for overlap removal + Gaudi::Property< bool > m_applyOR { + this, "ApplyOR", false, "apply overlap removal for mucomb" }; + + Gaudi::Property<bool> m_requireDR{ + this, "RequireDR", true, "require or not DR cut for overlap removal"}; + + Gaudi::Property<bool> m_requireMufastDR{ + this, "RequireMufastDR", true, "require or not mufast DR cut for overlap removal"}; + + Gaudi::Property<bool> m_requireMass{ + this, "RequireMass", true, "require or not mass cut for overlap removal"}; + + Gaudi::Property<bool> m_requireSameSign{ + this, "RequireSameSign", true, "require or not charge cut for overlap removal"}; + + Gaudi::Property< std::vector<float> > m_etaBins { + this, "EtaBins", {0, 1.9, 2.1, 9.9}, "eta bins of DR and mass thresholds"}; + + Gaudi::Property< std::vector<float> > m_dRThres { + this, "DRThres", {0.06, 0.05, 0.05}, "DR threshold"}; + + Gaudi::Property< std::vector<float> > m_mufastDRThres { + this, "MufastDRThres", {0.06, 0.05, 0.05}, "mufast DR threshold"}; + + Gaudi::Property< std::vector<float> > m_massThres { + this, "MassThres", {0.20, 0.15, 0.10}, "mass threshold"}; + + // Other members: std::vector<size_t> m_bins = {0}; }; diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/components/TrigMuonHypo_entries.cxx b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/components/TrigMuonHypo_entries.cxx index 4c29433bd70f04cdf78e6cf6d1bad96416ad497b..78618c53f35da8507b9f43da5ef19ae8dec12969 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypoMT/src/components/TrigMuonHypo_entries.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/src/components/TrigMuonHypo_entries.cxx @@ -8,9 +8,6 @@ #include "src/TrigMuonEFHypoAlg.h" #include "src/TrigMuonEFHypoTool.h" #include "src/TrigMuonEFInvMassHypoTool.h" -#include "src/TrigL2MuonOverlapRemoverMufastAlg.h" -#include "src/TrigL2MuonOverlapRemoverMucombAlg.h" -#include "src/TrigL2MuonOverlapRemoverTool.h" #include "src/TrigMuonLateMuRoIHypoAlg.h" #include "src/TrigMuonLateMuRoIHypoTool.h" @@ -26,8 +23,5 @@ DECLARE_COMPONENT( TrigMuonEFTrackIsolationHypoTool ) DECLARE_COMPONENT( TrigMuonEFHypoAlg ) DECLARE_COMPONENT( TrigMuonEFHypoTool ) DECLARE_COMPONENT( TrigMuonEFInvMassHypoTool ) -DECLARE_COMPONENT( TrigL2MuonOverlapRemoverMufastAlg ) -DECLARE_COMPONENT( TrigL2MuonOverlapRemoverMucombAlg ) -DECLARE_COMPONENT( TrigL2MuonOverlapRemoverTool ) DECLARE_COMPONENT( TrigMuonLateMuRoIHypoAlg ) DECLARE_COMPONENT( TrigMuonLateMuRoIHypoTool ) diff --git a/Trigger/TrigHypothesis/TrigStreamerHypo/src/TrigStreamerHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigStreamerHypo/src/TrigStreamerHypoAlgMT.cxx index 066a02dccff666cfd6f17633068238ad14da9b74..a488662a22abf7c778ad16641c951fd7030d14b7 100644 --- a/Trigger/TrigHypothesis/TrigStreamerHypo/src/TrigStreamerHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigStreamerHypo/src/TrigStreamerHypoAlgMT.cxx @@ -3,7 +3,7 @@ */ #include "TrigStreamerHypoAlgMT.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigEFTauMVHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigEFTauMVHypoAlgMT.cxx index c760b82a96e7386d56822ffe62880e7d0e8eed07..864a7f045d081228767c4fe94e6cd6cab9642d97 100644 --- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigEFTauMVHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigEFTauMVHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigEFTauMVHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloHypoAlgMT.cxx index 78428c69df0c4887b5d9844bad469832855df148..edfff434ebfc98d28e7a7c36ce365abe3ab81968 100644 --- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigTauCaloHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.h b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.h index fa7ae61a432a7cb7154e899397fb7fa3481ab00a..942c5dd33cfc460f7ecf784e58c5c5e3d5ce9efb 100755 --- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.h +++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.h @@ -24,7 +24,7 @@ //#include "TrigInterfaces/HypoAlgo.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTau/TauJet.h" #include "xAODTau/TauJetContainer.h" #include "TrigSteeringEvent/TrigRoiDescriptor.h" diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoAlgMT.cxx b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoAlgMT.cxx index 69a6f1419e22991d42375fcec51fb711bed5467a..93e4ed74e7735eba2e580b51f3ed938be26787d4 100644 --- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoAlgMT.cxx +++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoAlgMT.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigTrackPreSelHypoAlgMT.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoTool.h b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoTool.h index edceb95e28006bf228a68f49e0d9face661a9185..a821cf101fab4b19a953320edace2b447c7066fb 100755 --- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoTool.h +++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTrackPreSelHypoTool.h @@ -5,7 +5,7 @@ #ifndef TrigTrackPreSelHypoTool_H #define TrigTrackPreSelHypoTool_H -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "xAODTau/TauJet.h" #include "xAODTau/TauJetContainer.h" #include "TrigSteeringEvent/TrigRoiDescriptor.h" diff --git a/Trigger/TrigMonitoring/TrigBphysMonitoring/src/BphysTrigDecoratorAlg.cxx b/Trigger/TrigMonitoring/TrigBphysMonitoring/src/BphysTrigDecoratorAlg.cxx index 3d0b7c212fd8a70330a48a3c1b44c75bc7163373..6d7a3a365bbf66847fbdcdfefc4b60ebe1bfa9a3 100644 --- a/Trigger/TrigMonitoring/TrigBphysMonitoring/src/BphysTrigDecoratorAlg.cxx +++ b/Trigger/TrigMonitoring/TrigBphysMonitoring/src/BphysTrigDecoratorAlg.cxx @@ -15,7 +15,7 @@ // STL includes // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaBaseComps/AthCheckMacros.h" #include "xAODTracking/Vertex.h" diff --git a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigCorMoni.cxx b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigCorMoni.cxx index e16ae118aa668d76284f156c028344b025a2025d..4390ac3cc89ebdd882eaef38ed45cbd67b222375 100644 --- a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigCorMoni.cxx +++ b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigCorMoni.cxx @@ -12,7 +12,7 @@ #include "TH2I.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigConfInterfaces/ITrigConfigSvc.h" diff --git a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigRateMoni.cxx b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigRateMoni.cxx index 4bbffb836d5192f641595a56c14525c08937b80c..ca057d9b5d0835768c858a1d092d4efb04d76990 100644 --- a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigRateMoni.cxx +++ b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigRateMoni.cxx @@ -19,7 +19,7 @@ #include "GaudiKernel/AlgTool.h" #include "GaudiKernel/Service.h" #include "GaudiKernel/IJobOptionsSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigInterfaces/AlgoConfig.h" diff --git a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoni.cxx b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoni.cxx index 783b82b9df3a9d62e4abee1f2c5f14bd967ea1ac..531bcad231d090353094bd3f7169b93d704222c4 100644 --- a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoni.cxx +++ b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoni.cxx @@ -3,7 +3,7 @@ */ #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigSignatureMoni.h" diff --git a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx index affd288ed12d2f32cb9881a15b176294779c819b..1c31a75dea4e8f18dcc9fbce4574dca44b276417 100644 --- a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx +++ b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx @@ -7,7 +7,7 @@ #include<boost/algorithm/string.hpp> #include "GaudiKernel/IIncidentSvc.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "AthenaInterprocess/Incidents.h" #include "TrigCompositeUtils/HLTIdentifier.h" #include "TrigSignatureMoniMT.h" diff --git a/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitCategory.py b/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitCategory.py index 22f240f03dc21aab1b97fb726031e832e56fee41..532cd77119c09657053c083b43baf2b7e45dd2fc 100644 --- a/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitCategory.py +++ b/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitCategory.py @@ -43,60 +43,49 @@ monitoring_tau = [ monitoring_tau_pp = [ 'tau0_perf_ptonly_L1TAU12', 'tau0_perf_ptonly_L1TAU60', - 'tau25_idperf_track', - 'tau25_idperf_tracktwo', - 'tau25_perf_tracktwo', - 'tau25_medium1_tracktwo', - 'tau25_medium1_tracktwoEF', - 'tau25_mediumRNN_tracktwoMVA', + 'tau0_perf_ptonly_L1TAU100', 'tau35_mediumRNN_tracktwoMVA_L1TAU12IM', - 'tau35_medium1_tracktwo_tau25_medium1_tracktwo_L1TAU20IM_2TAU12IM', #keep this as reference for the L1Topo plots - 'mu14_iloose_tau25_perf_tracktwo', # need to move to the ivarloose chain - 'tau160_idperf_track', - 'tau160_idperf_tracktwo', - 'tau160_perf_tracktwo', - 'tau160_medium1_tracktwo', 'tau25_idperf_track_L1TAU12IM', 'tau25_idperf_tracktwo_L1TAU12IM', 'tau25_perf_tracktwo_L1TAU12IM', 'tau25_medium1_tracktwo_L1TAU12IM', - 'tau25_idperf_tracktwoMVA_L1TAU12IM', #new - 'tau25_perf_tracktwoMVA_L1TAU12IM', #new - 'tau25_medium1_tracktwoMVA_L1TAU12IM', #new - 'tau25_verylooseRNN_tracktwoMVA_L1TAU12IM', #new - 'tau25_looseRNN_tracktwoMVA_L1TAU12IM', #new + 'tau25_idperf_tracktwoMVA_L1TAU12IM', + 'tau25_perf_tracktwoMVA_L1TAU12IM', + 'tau25_medium1_tracktwoMVA_L1TAU12IM', + 'tau25_verylooseRNN_tracktwoMVA_L1TAU12IM', + 'tau25_looseRNN_tracktwoMVA_L1TAU12IM', 'tau25_mediumRNN_tracktwoMVA_L1TAU12IM', - 'tau25_tightRNN_tracktwoMVA_L1TAU12IM', #new - 'tau25_verylooseRNN_tracktwo_L1TAU12IM', #new - 'tau25_looseRNN_tracktwo_L1TAU12IM', #new - 'tau25_mediumRNN_tracktwo_L1TAU12IM', #new - 'tau25_tightRNN_tracktwo_L1TAU12IM', #new + 'tau25_tightRNN_tracktwoMVA_L1TAU12IM', + 'tau25_verylooseRNN_tracktwo_L1TAU12IM', + 'tau25_looseRNN_tracktwo_L1TAU12IM', + 'tau25_mediumRNN_tracktwo_L1TAU12IM', + 'tau25_tightRNN_tracktwo_L1TAU12IM', 'tau25_medium1_tracktwoEF_L1TAU12IM', 'tau160_idperf_track_L1TAU100', - 'tau0_perf_ptonly_L1TAU100', #new 'tau160_idperf_tracktwo_L1TAU100', 'tau160_perf_tracktwo_L1TAU100', - 'tau160_idperf_tracktwoMVA_L1TAU100', #new - 'tau160_perf_tracktwoMVA_L1TAU100' #new + 'tau160_idperf_tracktwoMVA_L1TAU100', + 'tau160_perf_tracktwoMVA_L1TAU100', + 'tau160_mediumRNN_tracktwoMVA_L1TAU100' ] monitoring_tau_validation = [ 'tau0_perf_ptonly_L1TAU12', 'tau0_perf_ptonly_L1TAU60', - 'tau25_idperf_track', - 'tau25_idperf_tracktwo', - 'tau25_perf_ptonly', - 'tau25_perf_tracktwo', - 'tau25_medium1_tracktwo', - 'tau25_loose1_tracktwo', - 'tau25_tight1_tracktwo', + 'tau25_idperf_track_L1TAU12IM', + 'tau25_idperf_tracktwo_L1TAU12IM', + 'tau25_perf_ptonly_L1TAU12IM', + 'tau25_perf_tracktwo_L1TAU12IM', + 'tau25_medium1_tracktwo_L1TAU12IM', + 'tau25_loose1_tracktwo_L1TAU12IM', + 'tau25_tight1_tracktwo_L1TAU12IM', 'tau25_medium1_tracktwo_L1TAU12', 'tau25_medium1_tracktwo_L1TAU12IL', 'tau25_medium1_tracktwo_L1TAU12IT', - 'tau25_loose1_ptonly', - 'tau25_medium1_ptonly', - 'tau25_tight1_ptonly', + 'tau25_loose1_ptonly_L1TAU12IM', + 'tau25_medium1_ptonly_L1TAU12IM', + 'tau25_tight1_ptonly_L1TAU12IM', 'mu14_iloose_tau25_perf_tracktwo', 'tau35_perf_tracktwo', 'tau35_perf_ptonly', diff --git a/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitoringConfig.py b/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitoringConfig.py index 41b89565859bac661f109e4a6b37213c5de7e445..b2f003c7a9daf36bfe71b43a88d6df1526ea207e 100644 --- a/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitoringConfig.py +++ b/Trigger/TrigMonitoring/TrigTauMonitoring/python/TrigTauMonitoringConfig.py @@ -61,7 +61,8 @@ def TrigTauMonitoringTool(): 'tau25_looseRNN_tracktwoMVA_L1TAU12IM', 'tau25_mediumRNN_tracktwoMVA_L1TAU12IM', 'tau25_tightRNN_tracktwoMVA_L1TAU12IM', - 'tau35_mediumRNN_tracktwoMVA_L1TAU12IM' + 'tau35_mediumRNN_tracktwoMVA_L1TAU12IM', + 'tau160_mediumRNN_tracktwoMVA_L1TAU100' ] BDTRNN_chains = [ diff --git a/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool.cxx b/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool.cxx index 96ff5acb675efcaf060342b57fb541b055c7ac00..28c5a1d905c0a2f01acbb073589f3fff3c9759fb 100644 --- a/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool.cxx +++ b/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool.cxx @@ -413,7 +413,7 @@ StatusCode HLTTauMonTool::fill() { bool good_tau_BDT = (*offlinetau)->isTau(xAOD::TauJetParameters::JetBDTSigMedium); bool good_tau_RNN = (*offlinetau)->isTau(xAOD::TauJetParameters::JetRNNSigMedium); if(!Selection(*offlinetau)) continue; - if( !(good_tau_BDT || good_tau_BDT) ) continue; + if( !(good_tau_BDT || good_tau_RNN) ) continue; if (good_tau_BDT) m_taus_BDT.push_back( *offlinetau ); if (good_tau_RNN) m_taus_RNN.push_back( *offlinetau ); } @@ -1155,15 +1155,12 @@ StatusCode HLTTauMonTool::fillL1Tau(const xAOD::EmTauRoI * aL1Tau){ return StatusCode::FAILURE; } - ATH_MSG_DEBUG("Check01"); + hist("hL1RoIEta")->Fill(aL1Tau->eta()); - ATH_MSG_DEBUG("Check02"); hist("hL1RoIPhi")->Fill(aL1Tau->phi()); - ATH_MSG_DEBUG("Check03"); hist2("hL1EtaVsPhi")->Fill(aL1Tau->eta(),aL1Tau->phi()); - ATH_MSG_DEBUG("Check04"); hist("hL1RoIeT")->Fill(aL1Tau->eT()/GeV); - ATH_MSG_DEBUG("Check05"); + ATH_MSG_DEBUG("L1Et: " << aL1Tau->eT()/GeV); uint8_t isoBit = aL1Tau->isol(); if(isoBit/128) hist("hL1RoIisol")->Fill(8); @@ -1174,22 +1171,15 @@ StatusCode HLTTauMonTool::fillL1Tau(const xAOD::EmTauRoI * aL1Tau){ if((isoBit/4)%2) hist("hL1RoIisol")->Fill(3); if((isoBit/2)%2) hist("hL1RoIisol")->Fill(2); if((isoBit/1)%2) hist("hL1RoIisol")->Fill(1); - ATH_MSG_DEBUG("Check06"); + hist("hL1RoITauClus")->Fill(aL1Tau->tauClus()/GeV); - ATH_MSG_DEBUG("Check07"); //hist("hL1RoITauClus2")->Fill(aL1Tau->tauClus()/GeV); hist("hL1RoIEMIso")->Fill(aL1Tau->emIsol()/GeV); - ATH_MSG_DEBUG("Check08"); hist("hL1RoIHadCore")->Fill(aL1Tau->hadCore()/GeV); - ATH_MSG_DEBUG("Check09"); hist("hL1RoIHadIsol")->Fill(aL1Tau->hadIsol()/GeV); - ATH_MSG_DEBUG("Check10"); hist2("hL1RoITauClusEMIso")->Fill(aL1Tau->tauClus()/GeV,aL1Tau->emIsol()/GeV); - ATH_MSG_DEBUG("Check11"); hist2("hL1EtVsPhi")->Fill(aL1Tau->tauClus()/CLHEP::GeV,aL1Tau->phi()); - ATH_MSG_DEBUG("Check12"); hist2("hL1EtVsEta")->Fill(aL1Tau->tauClus()/CLHEP::GeV,aL1Tau->eta()); - ATH_MSG_DEBUG("Check13"); const xAOD::JetRoIContainer *l1jets = 0; if ( !evtStore()->retrieve( l1jets, "LVL1JetRoIs").isSuccess() ){ @@ -1205,12 +1195,10 @@ StatusCode HLTTauMonTool::fillL1Tau(const xAOD::EmTauRoI * aL1Tau){ float dPhi = deltaPhi(aL1Tau->phi(),(*itL1Jet)->phi()); if(deltaR(aL1Tau->eta(), (*itL1Jet)->eta(), aL1Tau->phi(), (*itL1Jet)->phi()) > 0.3) continue; hist2("hL1RoITauVsJet")->Fill(aL1Tau->eT()/CLHEP::GeV,(*itL1Jet)->etLarge()/CLHEP::GeV); - ATH_MSG_DEBUG("Check014"); + ATH_MSG_DEBUG("L1 Jet etLarge" << (*itL1Jet)->etLarge()/CLHEP::GeV); if(aL1Tau->eT()>(*itL1Jet)->etLarge()) { hist2("hL1RoITauVsJetMismatch")->Fill(dEta,dPhi); - ATH_MSG_DEBUG("Check015"); hist2("hL1RoITauVsJetDEt")->Fill(aL1Tau->eT()/CLHEP::GeV,aL1Tau->eT()/CLHEP::GeV-(*itL1Jet)->etLarge()/CLHEP::GeV); - ATH_MSG_DEBUG("Check016"); } } @@ -1436,6 +1424,7 @@ StatusCode HLTTauMonTool::fillEFTau(const xAOD::TauJet *aEFTau, const std::strin } if(aEFTau->detail(xAOD::TauJetParameters::centFrac, centFrac)) { + ATH_MSG_DEBUG("centFrac: " << centFrac << " " << trigItem); hist("hEFcentFrac1PNCorr")->Fill(centFrac); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) profile("hEFcentFrac1PNCmu")->Fill(mu, centFrac); } diff --git a/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool_bookHistograms.cxx b/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool_bookHistograms.cxx index 71b897f1783399bb472a146cc71f53f3a92ee7bb..4f886ea39faccbdb87bdc9e5ea6f1ce13a4573e5 100644 --- a/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool_bookHistograms.cxx +++ b/Trigger/TrigMonitoring/TrigTauMonitoring/src/HLTTauMonTool_bookHistograms.cxx @@ -9,6 +9,8 @@ using namespace std; /////////////////////////////////////////////////////////////////// void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ + + ATH_MSG_DEBUG("Now booking histograms for chain: " << trigItem); bool monRNN (false); for (unsigned int j=0; j<m_trigRNN_chains.size(); j++) { @@ -28,53 +30,69 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ if ( (!monBDT) && (!monRNN) ) monBDT=true; // if the chain is not listed in BDTRNN, but it is also not in RNN, then it is BDT std::string trigItemShort=trigItem; - if(trigItem.find("tau25")!=string::npos && trigItem.find("L1TAU")!=string::npos){ - size_t posit=trigItem.rfind("_"); - if(posit<31)trigItemShort=trigItem.substr(0,posit); - } + if(trigItem.find("tau25")!=string::npos && trigItem.find("L1TAU")!=string::npos) + { + size_t posit=trigItem.rfind("_"); + if(posit<31)trigItemShort=trigItem.substr(0,posit); + } - const int nbin_pt = 13; - double bins_pt[nbin_pt] = {20.,25.,30.,35.,40.,45.,50.,55.,60.,70.,100.,150.,200.}; + size_t e=trigItem.find("_"); + std::string thresh = trigItem.substr(3,e-3); + ATH_MSG_DEBUG("This is the chain threshold" << thresh << " e" << e); + size_t l=trigItem.length(); + size_t last=trigItem.rfind("_"); + std::string L1thresh = trigItem.substr(last+6,l); + if(L1thresh.find("IM")!=std::string::npos) {L1thresh.pop_back();L1thresh.pop_back();} -// const int nbin_leppt = 32; -// double bins_leppt[nbin_leppt] = {10.,11.,12.,13.,14.,15.,16.,17.,18.,19.,20.,21.,22.,23.,24.,25.,26.,27.,28.,29.,30.,32.,34.,36.,38.,40.,45.,50.,60.,70.,80.,100.}; - const int nbin_eta = 9; - double bins_eta[nbin_eta] = {-2.47,-1.52,-1.37,-0.69,0.,0.69,1.37,1.52,2.47}; - const int nbin_nvtx = 6; - double bins_nvtx[nbin_nvtx] = {0.,5.,10.,15.,20.,25.}; + ATH_MSG_DEBUG("This is the L1 threshold" << L1thresh ); + + const int nbin_pt = 13; + double bins_pt[nbin_pt] = {20.,25.,30.,35.,40.,45.,50.,55.,60.,70.,100.,150.,200.}; + + + // const int nbin_leppt = 32; + // double bins_leppt[nbin_leppt] = {10.,11.,12.,13.,14.,15.,16.,17.,18.,19.,20.,21.,22.,23.,24.,25.,26.,27.,28.,29.,30.,32.,34.,36.,38.,40.,45.,50.,60.,70.,80.,100.}; + const int nbin_eta = 9; + double bins_eta[nbin_eta] = {-2.47,-1.52,-1.37,-0.69,0.,0.69,1.37,1.52,2.47}; + const int nbin_nvtx = 6; + double bins_nvtx[nbin_nvtx] = {0.,5.,10.,15.,20.,25.}; for(int i=0;i<nbin_nvtx;i++) bins_nvtx[i] = i*5.; - const int nbin_mu = 34; - float bins_mu[nbin_mu] = {0.,2.,4.,6.,8.,10.,12.,14.,16.,18.,20.,22.,24.,26.,28.,30.,32.,34.,36.,38.,40., 42., 44., 44., 46., 48., 50., 52., 54., 56., 58., 60., 62., 72}; + const int nbin_mu = 34; + float bins_mu[nbin_mu] = {0.,2.,4.,6.,8.,10.,12.,14.,16.,18.,20.,22.,24.,26.,28.,30.,32.,34.,36.,38.,40., 42., 44., 44., 46., 48., 50., 52., 54., 56., 58., 60., 62., 72}; for(int i=0;i<nbin_mu;i++) bins_mu[i] = i*2.; -// const int nbin_met = 14; -// double bins_met[nbin_met] = {0.,5.,10.,20.,25.,30.,35.,40.,45.,50.,60.,70.,100.,150.}; -// const int nbin_dr = 18; -// double bins_dr[nbin_dr] = {0.,0.5,1.,1.5,1.8,2.,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9,3.0,3.1,3.2,3.4}; + // const int nbin_met = 14; + // double bins_met[nbin_met] = {0.,5.,10.,20.,25.,30.,35.,40.,45.,50.,60.,70.,100.,150.}; + // const int nbin_dr = 18; + // double bins_dr[nbin_dr] = {0.,0.5,1.,1.5,1.8,2.,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9,3.0,3.1,3.2,3.4}; - // define here all histograms - //L1 Roi - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/L1RoI",run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/L1RoI"); - ATH_MSG_DEBUG("After setting CurrentMonGroup" << "HLT/TauMon/Expert/"+trigItemShort+"/L1RoI"); - addHistogram(new TH1F("hL1RoIEta","L1 RoI Eta ; #eta; N RoI",100,-2.6,2.6)); - addHistogram(new TH1F("hL1RoIPhi","L1 RoI Phi ; #phi; N RoI",100,-3.2,3.2)); + // define here all histograms + //L1 Roi + float uL1limit = 4*std::stof(L1thresh); + float bL1limit = std::stof(L1thresh)-10.; + float uEFlimit = 2*std::stof(thresh); + + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/L1RoI",run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/L1RoI"); + ATH_MSG_DEBUG("After setting CurrentMonGroup" << "HLT/TauMon/Expert/"+trigItemShort+"/L1RoI"); + addHistogram(new TH1F("hL1RoIEta","L1 RoI Eta ; #eta; N RoI",100,-2.6,2.6)); + addHistogram(new TH1F("hL1RoIPhi","L1 RoI Phi ; #phi; N RoI",100,-3.2,3.2)); addHistogram(new TH2F("hL1EtaVsPhi","L1 RoI Eta vs Phi; #eta; #phi",100,-2.6,2.6,100,-3.2,3.2)); addHistogram(new TH1F("hL1RoIisol","L1 RoI Isolation; RoI Isolation Bit; N RoI",10,0.5,9.5)); - addHistogram(new TH1F("hL1RoIeT","L1 RoI Tau Clust Energy; E_{T}[GeV]; N RoI",260,0.,130.)); - addHistogram(new TH1F("hL1RoITauClus","L1 RoI Tau Clust Energy; E_{T}[GeV]; N RoI",260,0.,130.)); - //addHistogram(new TH1F("hL1RoITauClus2","L1 RoI Tau Clust Energy; E_{T}[GeV]; N RoI",200,0.,1000.)); - addHistogram(new TH1F("hL1RoIEMIso","L1 RoI EM Isol ; E_{T}^{EM Isol}[GeV]; N RoI",16,-2,30)); - addHistogram(new TH1F("hL1RoIHadCore","L1 RoI HAD Core ; E_{T}^{HAD}[GeV]; N RoI",16,-2,30)); - addHistogram(new TH1F("hL1RoIHadIsol","L1 RoI HAD Isol ; E_{T}^{HAD Isol}[GeV]; N RoI",16,-2,30)); - addHistogram(new TH2F("hL1RoITauClusEMIso","L1 RoI TauClus vs EMiso ; E_{T}[GeV]; E_{T}^{EM Isol}[GeV]",140.,10.,80.,42,-1.,20.)); - addHistogram(new TH2F("hL1RoITauVsJet","L1 RoI Tau Et vs Jet Et ; Tau E_{T} [GeV]; Jet E_{T} [GeV]",200,0.,100.,200,0.,100)); - addHistogram(new TH2F("hL1RoITauVsJetMismatch","L1 RoI Tau-Jet deta-dphi if Jet Et< Tau Et ; d#eta; d#phi",50,-0.3,0.3,50,-0.3,0.3)); - addHistogram(new TH2F("hL1RoITauVsJetDEt","L1 RoI Tau-Jet dEt if Jet Et< Tau Et ; Tau E_{t}; dE_{T}",200,0.,100.,50,0.,25.)); - addHistogram(new TH2F("hL1EtVsPhi","L1 RoI Et vs Phi; E_{T}[GeV]; #phi",100,0.,100.,100,-3.2,3.2)); - addHistogram(new TH2F("hL1EtVsEta","L1 RoI Et vs Eta; E_{T}[GeV]; #eta",100,0.,100.,100,-2.6,2.6)); + addHistogram(new TH1F("hL1RoIeT","L1 RoI Tau Clust Energy; E_{T}[GeV]; N RoI",100,bL1limit,uL1limit)); + addHistogram(new TH1F("hL1RoITauClus","L1 RoI Tau Clust Energy; E_{T}[GeV]; N RoI",100,bL1limit,uL1limit)); + //addHistogram(new TH1F("hL1RoITauClus2","L1 RoI Tau Clust Energy; E_{T}[GeV]; N RoI",200,0.,1000.)); + addHistogram(new TH1F("hL1RoIEMIso","L1 RoI EM Isol ; E_{T}^{EM Isol}[GeV]; N RoI",16,-2,30)); + addHistogram(new TH1F("hL1RoIHadCore","L1 RoI HAD Core ; E_{T}^{HAD}[GeV]; N RoI",16,-2,30)); + addHistogram(new TH1F("hL1RoIHadIsol","L1 RoI HAD Isol ; E_{T}^{HAD Isol}[GeV]; N RoI",16,-2,30)); + addHistogram(new TH2F("hL1RoITauClusEMIso","L1 RoI TauClus vs EMiso ; E_{T}[GeV]; E_{T}^{EM Isol}[GeV]",100,bL1limit,uL1limit,42,-1.,20.)); + addHistogram(new TH2F("hL1EtVsPhi","L1 RoI Et vs Phi; E_{T}[GeV]; #phi",100,bL1limit,uL1limit,100,-3.2,3.2)); + addHistogram(new TH2F("hL1EtVsEta","L1 RoI Et vs Eta; E_{T}[GeV]; #eta",100,bL1limit,uL1limit,100,-2.6,2.6)); + addHistogram(new TH2F("hL1RoITauVsJet","L1 RoI Tau Et vs Jet Et ; Tau E_{T} [GeV]; Jet E_{T} [GeV]",100,bL1limit,uL1limit,100,bL1limit,6*std::stof(L1thresh))); + addHistogram(new TH2F("hL1RoITauVsJetMismatch","L1 RoI Tau-Jet deta-dphi if Jet Et< Tau Et ; d#eta; d#phi",50,-0.3,0.3,50,-0.3,0.3)); + addHistogram(new TH2F("hL1RoITauVsJetDEt","L1 RoI Tau-Jet dEt if Jet Et< Tau Et ; Tau E_{t}; dE_{T}",100,bL1limit,uL1limit,100,0.,200.)); if (m_doL1JetPlots) { @@ -83,21 +101,21 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH2F("hL1RoITauVsJetDEt","L1 RoI Tau-Jet dEt if Jet Et< Tau Et ; Tau E_{t}; dE_{T}",200,0.,100.,50,0.,25.)); addHistogram(new TH1F("hL1JetRoIEta","L1 Jet RoI Eta ; #eta; N RoI",100,-3.2,3.2)); - addHistogram(new TH1F("hL1JetRoIPhi","L1 Jet RoI Phi ; #phi; N RoI",100,-3.2,3.2)); - addHistogram(new TH2F("hL1JetEtaVsPhi","L1 Jet RoI Eta vs Phi; #eta; #phi",100,-3.2,3.2,100,-3.2,3.2)); - addHistogram(new TH1F("hL1JetRoIeT","L1 Jet RoI Energy; E_{T}[GeV]; N RoI",200,0.,100.)); - addHistogram(new TH2F("hL1JetEtVsPhi","L1 Jet RoI Et vs Phi; E_{T}[GeV]; #phi",100,0.,100.,100,-3.2,3.2)); - addHistogram(new TH2F("hL1JetEtVsEta","L1 Jet RoI Et vs Eta; E_{T}[GeV]; #eta",100,0.,100.,100,-3.2,3.2)); + addHistogram(new TH1F("hL1JetRoIPhi","L1 Jet RoI Phi ; #phi; N RoI",100,-3.2,3.2)); + addHistogram(new TH2F("hL1JetEtaVsPhi","L1 Jet RoI Eta vs Phi; #eta; #phi",100,-3.2,3.2,100,-3.2,3.2)); + addHistogram(new TH1F("hL1JetRoIeT","L1 Jet RoI Energy; E_{T}[GeV]; N RoI",200,0.,100.)); + addHistogram(new TH2F("hL1JetEtVsPhi","L1 Jet RoI Et vs Phi; E_{T}[GeV]; #phi",100,0.,100.,100,-3.2,3.2)); + addHistogram(new TH2F("hL1JetEtVsEta","L1 Jet RoI Et vs Eta; E_{T}[GeV]; #eta",100,0.,100.,100,-3.2,3.2)); } - //-------------------- - //Pre-selection Tau - //-------------------- + //-------------------- + //Pre-selection Tau + //-------------------- // no preselection taus for some chains // tracktwoEFmvaTES catched with tracktwoEF if(trigItem.find("tracktwoMVA")==string::npos && trigItem.find("tracktwoEF")==string::npos && trigItem.find("ptonly")==string::npos) { addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/PreselectionTau",run)); setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/PreselectionTau"); - addHistogram(new TH1F("hEFEt","EF Et;E_{T}[GeV];Nevents",40,0.0,100.0)); + addHistogram(new TH1F("hEFEt","EF Et;E_{T}[GeV];Nevents",100,bL1limit,uEFlimit)); addHistogram(new TH1F("hEFEt2","EF Et;E_{T}[GeV];Nevents",100,0.0,1000.0)); addHistogram(new TH1F("hFTFnTrack","EF number of tracks;number of tracks;Nevents",10,0,10)); addHistogram(new TH1F("hEta","EF TrigCaloCluster Eta; #eta ; Nevents",26,-2.6,2.6)); @@ -106,36 +124,36 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH2F("hEFEtaVsPhi","EF TrigCaloCluster Eta vs Phi; #eta ; #phi ; Nevents", 26,-2.6,2.6,32,-3.2,3.2)); addHistogram(new TH2F("hEtVsEta","Et from tau Jet vs #eta; #eta^{EF}; Raw E_{T}[GeV]", - 26,-2.6,2.6,40,0.0,100.0)); + 26,-2.6,2.6,100,bL1limit,uEFlimit)); addHistogram(new TH2F("hEtVsPhi","Et from tau Jet vs #phi; #phi^{EF}; Raw E_{T} [GeV]", - 32,-3.2,3.2,40,0.0,100.0)); + 32,-3.2,3.2,100,bL1limit,uEFlimit)); addHistogram(new TH1F("hFTFnWideTrack","EF number of wide tracks;number of tracks;Nevents",10,0,10)); } - //-------------------- - // EF - //-------------------- - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFTau",run)); - ATH_MSG_DEBUG("After adding MonGroup Check21 "<< trigItemShort); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFTau"); - //Basic kinematic variables - addHistogram(new TH1F("hEFEt","EF Et;E_{T}[GeV];Nevents",50,0.0,100.0)); - addHistogram(new TH1F("hEFEta","EF TrigCaloCluster Eta; #eta ; Nevents",26,-2.6,2.6)); - addHistogram(new TH1F("hEFNUM","Online mu; Online #mu ; Nevents",100,0,100)); - addHistogram(new TH2F("hEFNUMvsmu","Online vs offline mu; Online #mu ; Offline #mu", 100,0,100,100,0,100)); - addHistogram(new TH1F("hEFPhi","EF TrigCaloCluster Phi; #phi ; Nevents",16,-3.2,3.2)); - addHistogram(new TH1F("hEFnTrack","EF number of tracks;number of tracks;Nevents",10,0,10)); - addHistogram(new TH2F("hEFEtaVsPhi","EF TrigCaloCluster Eta vs Phi; #eta ; #phi ; Nevents",26,-2.6,2.6,16,-3.2,3.2)); - addHistogram(new TH2F("hEFEtVsPhi","Et from tau Jet vs #phi; #phi^{EF}; Raw E_{T} [GeV]",16,-3.2,3.2,50,0.0,100.0)); - addHistogram(new TH2F("hEFEtVsEta","Et from tau Jet vs #eta; #eta^{EF}; Raw E_{T}[GeV]",26,-2.6,2.6,50,0.0,100.0)); - addHistogram(new TH1F("hEFEtRaw","EF Et Raw;Uncalibrated E_{T}[GeV];Nevents",50,0.,100.)); - addHistogram(new TH1F("hEFnWideTrack","EF number of wide tracks;number of tracks;Nevents",10,0,10)); - //other variables not used in BDT - //addHistogram(new TH1F("hEFEMRadius","EF EMRadius;EM Radius;Clusters",50,-0.1,0.5)); - //addHistogram(new TH1F("hEFHADRadius","EF HADRadius;HAD Radius;Clusters",50,-0.1,0.5)); - addHistogram(new TH1F("hEFIsoFrac", "Iso Fraction at EF; isoFrac at EF; Candidates",50,-0.1,1.1)); - //addHistogram(new TH1F("hEFPSSFraction", "PSS Fraction at EF; PSS at EF; Candidates",50,-0.05,1.1)); - addHistogram(new TH1F("hEFEMFraction", "Em Fraction at EF; EM Fraction at EF; Candidates",50,-0.05,1.1)); + //-------------------- + // EF + //-------------------- + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFTau",run)); + ATH_MSG_DEBUG("After adding MonGroup Check21 "<< trigItemShort); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFTau"); + //Basic kinematic variables + addHistogram(new TH1F("hEFEt","EF Et;E_{T}[GeV];Nevents",100,bL1limit,uEFlimit)); + addHistogram(new TH1F("hEFEta","EF TrigCaloCluster Eta; #eta ; Nevents",26,-2.6,2.6)); + addHistogram(new TH1F("hEFNUM","Online mu; Online #mu ; Nevents",100,0,100)); + addHistogram(new TH2F("hEFNUMvsmu","Online vs offline mu; Online #mu ; Offline #mu", 100,0,100,100,0,100)); + addHistogram(new TH1F("hEFPhi","EF TrigCaloCluster Phi; #phi ; Nevents",16,-3.2,3.2)); + addHistogram(new TH1F("hEFnTrack","EF number of tracks;number of tracks;Nevents",10,0,10)); + addHistogram(new TH2F("hEFEtaVsPhi","EF TrigCaloCluster Eta vs Phi; #eta ; #phi ; Nevents",26,-2.6,2.6,16,-3.2,3.2)); + addHistogram(new TH2F("hEFEtVsPhi","Et from tau Jet vs #phi; #phi^{EF}; Raw E_{T} [GeV]",16,-3.2,3.2,100,bL1limit,uEFlimit)); + addHistogram(new TH2F("hEFEtVsEta","Et from tau Jet vs #eta; #eta^{EF}; Raw E_{T}[GeV]",26,-2.6,2.6,100,bL1limit,uEFlimit)); + addHistogram(new TH1F("hEFEtRaw","EF Et Raw;Uncalibrated E_{T}[GeV];Nevents",100,bL1limit,uEFlimit)); + addHistogram(new TH1F("hEFnWideTrack","EF number of wide tracks;number of tracks;Nevents",10,0,10)); + //other variables not used in BDT + //addHistogram(new TH1F("hEFEMRadius","EF EMRadius;EM Radius;Clusters",50,-0.1,0.5)); + //addHistogram(new TH1F("hEFHADRadius","EF HADRadius;HAD Radius;Clusters",50,-0.1,0.5)); + addHistogram(new TH1F("hEFIsoFrac", "Iso Fraction at EF; isoFrac at EF; Candidates",50,-0.1,1.1)); + //addHistogram(new TH1F("hEFPSSFraction", "PSS Fraction at EF; PSS at EF; Candidates",50,-0.05,1.1)); + addHistogram(new TH1F("hEFEMFraction", "Em Fraction at EF; EM Fraction at EF; Candidates",50,-0.05,1.1)); if (monBDT) { addHistogram(new TH1F("hScore1p", "1p BDT Score; HLT BDT Score; Candidates",50,0.,1.)); addHistogram(new TH1F("hScoremp", "mp BDT Score; HLT BDT Score; Candidates",50,0.,1.)); @@ -154,14 +172,14 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH1F("hEFptRatioEflowApprox1PNCorr", "ptRatioEflowApprox at EF 1-prong non-corrected; ptRatioEflowApprox at EF; Candidates",50,0.0,2.0)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains { - addProfile(new TProfile("hEFinnerTrkAvgDist1PNCmu", "InnerTrkAvgDist at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFetOverPtLeadTrk1PNCmu", "EtOverPtLeadTrk at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFipSigLeadTrk1PNCmu", "IpSigLeadTrk at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFSumPtTrkFrac1PNCmu", "SumPtTrkFrac at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFChPiEMEOverCaloEME1PNCmu", "ChPiEMEOverCaloEME at EF vs mu 1p non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFEMPOverTrkSysP1PNCmu", "EMPOverTrkSysP at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFcentFrac1PNCmu", "Centrality Fraction at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFptRatioEflowApprox1PNCmu", "ptRatioEflowApprox at EF vs mu 1p non-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFinnerTrkAvgDist1PNCmu", "InnerTrkAvgDist at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFetOverPtLeadTrk1PNCmu", "EtOverPtLeadTrk at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFipSigLeadTrk1PNCmu", "IpSigLeadTrk at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFSumPtTrkFrac1PNCmu", "SumPtTrkFrac at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFChPiEMEOverCaloEME1PNCmu", "ChPiEMEOverCaloEME at EF vs mu 1p non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFEMPOverTrkSysP1PNCmu", "EMPOverTrkSysP at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFcentFrac1PNCmu", "Centrality Fraction at EF vs mu 1-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFptRatioEflowApprox1PNCmu", "ptRatioEflowApprox at EF vs mu 1p non-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); } //BDT inputs for 3-prong Non-Corrected addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFTau/BDT/mp_nonCorrected",run)); @@ -178,16 +196,16 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH1F("hEFmEflowApproxMPNCorr", "mEflowApprox at EF m-prong non-corrected; mEflowApprox at EF ; Candidates",61,-0.2,60.2)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains { - addProfile(new TProfile("hEFinnerTrkAvgDistMPNCmu", "InnerTrkAvgDist at EF vs mu m-prong non-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFetOverPtLeadTrkMPNCmu", "EtOverPtLeadTrk at EF vs mu m-prong non-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFChPiEMEOverCaloEMEMPNCmu", "ChPiEMEOverCaloEME at EF vs mu mp non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFEMPOverTrkSysPMPNCmu", "EMPOverTrkSysP at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFcentFracMPNCmu", "Centrality Fraction at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFptRatioEflowApproxMPNCmu", "ptRatioEflowApprox at EF vs mu mp non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFdRmaxMPNCmu", "Max dR of associated tracks at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFtrFlightPathSigMPNCmu", "TrFlightPathSig at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFmassTrkSysMPNCmu", "MassTrkSys at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFmEflowApproxMPNCmu", "mEflowApprox at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFinnerTrkAvgDistMPNCmu", "InnerTrkAvgDist at EF vs mu m-prong non-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFetOverPtLeadTrkMPNCmu", "EtOverPtLeadTrk at EF vs mu m-prong non-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFChPiEMEOverCaloEMEMPNCmu", "ChPiEMEOverCaloEME at EF vs mu mp non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFEMPOverTrkSysPMPNCmu", "EMPOverTrkSysP at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFcentFracMPNCmu", "Centrality Fraction at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFptRatioEflowApproxMPNCmu", "ptRatioEflowApprox at EF vs mu mp non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFdRmaxMPNCmu", "Max dR of associated tracks at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFtrFlightPathSigMPNCmu", "TrFlightPathSig at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFmassTrkSysMPNCmu", "MassTrkSys at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFmEflowApproxMPNCmu", "mEflowApprox at EF vs mu m-prong non-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); } //BDT inputs for 1-prong mu-Corrected @@ -202,16 +220,16 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH1F("hEFcentFrac1PCorr", "Centrality Fraction at EF 1-prong mu-corrected; centFrac at EF; Candidates",50,-0.05,1.2)); addHistogram(new TH1F("hEFptRatioEflowApprox1PCorr", "ptRatioEflowApprox at EF 1-prong mu-corrected; ptRatioEflowApprox at EF; Candidates",50,0.0,2.0)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains - { - addProfile(new TProfile("hEFinnerTrkAvgDist1PCmu", "InnerTrkAvgDist at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFetOverPtLeadTrk1PCmu", "EtOverPtLeadTrk at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFipSigLeadTrk1PCmu", "IpSigLeadTrk at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFSumPtTrkFrac1PCmu", "SumPtTrkFrac at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFChPiEMEOverCaloEME1PCmu", "ChPiEMEOverCaloEME at EF vs mu 1p mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFEMPOverTrkSysP1PCmu", "EMPOverTrkSysP at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFcentFrac1PCmu", "Centrality Fraction at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFptRatioEflowApprox1PCmu", "ptRatioEflowApprox at EF vs mu 1p mu-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); - } + { + addProfile(new TProfile("hEFinnerTrkAvgDist1PCmu", "InnerTrkAvgDist at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFetOverPtLeadTrk1PCmu", "EtOverPtLeadTrk at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFipSigLeadTrk1PCmu", "IpSigLeadTrk at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFSumPtTrkFrac1PCmu", "SumPtTrkFrac at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFChPiEMEOverCaloEME1PCmu", "ChPiEMEOverCaloEME at EF vs mu 1p mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFEMPOverTrkSysP1PCmu", "EMPOverTrkSysP at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFcentFrac1PCmu", "Centrality Fraction at EF vs mu 1-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFptRatioEflowApprox1PCmu", "ptRatioEflowApprox at EF vs mu 1p mu-corrected;Average interactions per bunch crossing ;",nbin_mu-1,bins_mu)); + } //BDT inputs for 3-prong mu-Corrected addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFTau/BDT/mp_Corrected",run)); setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFTau/BDT/mp_Corrected"); @@ -226,18 +244,18 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH1F("hEFmassTrkSysMPCorr", "MassTrkSys at EF m-prong mu-corrected; massTrkSys at EF [GeV]; Candidates",50,-0.1,15.0)); addHistogram(new TH1F("hEFmEflowApproxMPCorr", "mEflowApprox at EF m-prong mu-corrected; mEflowApprox at EF ; Candidates",61,-0.2,60.2)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains - { - addProfile(new TProfile("hEFinnerTrkAvgDistMPCmu", "InnerTrkAvgDist at EF vs mu m-prong mu-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFetOverPtLeadTrkMPCmu", "EtOverPtLeadTrk at EF vs mu m-prong mu-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFChPiEMEOverCaloEMEMPCmu", "ChPiEMEOverCaloEME at EF vs mu mp mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFEMPOverTrkSysPMPCmu", "EMPOverTrkSysP at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFcentFracMPCmu", "Centrality Fraction at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFptRatioEflowApproxMPCmu", "ptRatioEflowApprox at EF vs mu mp mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFdRmaxMPCmu", "Max dR of associated tracks at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFtrFlightPathSigMPCmu", "TrFlightPathSig at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFmassTrkSysMPCmu", "MassTrkSys at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEFmEflowApproxMPCmu", "mEflowApprox at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - } + { + addProfile(new TProfile("hEFinnerTrkAvgDistMPCmu", "InnerTrkAvgDist at EF vs mu m-prong mu-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFetOverPtLeadTrkMPCmu", "EtOverPtLeadTrk at EF vs mu m-prong mu-corrected; Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFChPiEMEOverCaloEMEMPCmu", "ChPiEMEOverCaloEME at EF vs mu mp mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFEMPOverTrkSysPMPCmu", "EMPOverTrkSysP at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFcentFracMPCmu", "Centrality Fraction at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFptRatioEflowApproxMPCmu", "ptRatioEflowApprox at EF vs mu mp mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFdRmaxMPCmu", "Max dR of associated tracks at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFtrFlightPathSigMPCmu", "TrFlightPathSig at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFmassTrkSysMPCmu", "MassTrkSys at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEFmEflowApproxMPCmu", "mEflowApprox at EF vs mu m-prong mu-corrected;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + } } // end of if(monBDT) // RNN variables if (monRNN) @@ -308,20 +326,20 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ } - //-------------------- - // L1 vs Offline - //-------------------- + //-------------------- + // L1 vs Offline + //-------------------- - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/L1VsOffline",run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/L1VsOffline"); - addHistogram(new TH1F("hL1EtRatio","L1 Et Relative difference; Et relative diff; Et relative diff",50,-0.8,0.8)); + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/L1VsOffline",run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/L1VsOffline"); + addHistogram(new TH1F("hL1EtRatio","L1 Et Relative difference; Et relative diff; Et relative diff",50,-0.8,0.8)); - //-------------------- - //Pre selection vs Offline - //-------------------- + //-------------------- + //Pre selection vs Offline + //-------------------- - if(trigItem.find("tracktwoMVA")==string::npos && trigItem.find("tracktwoEF")==string::npos && trigItem.find("ptonly")==string::npos) { + if(trigItem.find("tracktwoMVA")==string::npos && trigItem.find("tracktwoEF")==string::npos && trigItem.find("ptonly")==string::npos) { addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/PreselectionVsOffline",run)); setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/PreselectionVsOffline"); addHistogram(new TH2F("hPreselvsOffnTrks","nTrks at FTF vs Off; nTrks off; nTrks FTF",10,0,10,10,0,10)); @@ -331,275 +349,275 @@ void HLTTauMonTool::bookHistogramsForItem(const std::string & trigItem){ addHistogram(new TH1F("hPhiRatio","FTF-Offline Phi Relative difference; Phi relative diff; Phi relative diff",50,-0.05,0.05)); } - if(m_truth){ - //---------------- - // EF vs Truth - //---------------- - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsTruth",run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsTruth"); - addProfile(new TProfile("hEtRatiovspt","Relative difference in Et (EF-Truth)/Truth vs Truth Tau pT;Truth Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEtRatiovseta","Relative difference in Et (EF-Truth)/Truth vs Truth Tau eta;Truth Tau #eta;",nbin_eta-1,bins_eta)); - addProfile(new TProfile("hEtRatiovsphi","Relative difference in Et (EF-Truth)/Truth vs Truth Tau phi;Truth Tau #phi;",40,-3.2,3.2)); - addProfile(new TProfile("hEtRatiovsmu","Relative difference in Et (EF-Truth)/Truth vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - } - //------------------- + if(m_truth){ + //---------------- + // EF vs Truth + //---------------- + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsTruth",run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsTruth"); + addProfile(new TProfile("hEtRatiovspt","Relative difference in Et (EF-Truth)/Truth vs Truth Tau pT;Truth Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEtRatiovseta","Relative difference in Et (EF-Truth)/Truth vs Truth Tau eta;Truth Tau #eta;",nbin_eta-1,bins_eta)); + addProfile(new TProfile("hEtRatiovsphi","Relative difference in Et (EF-Truth)/Truth vs Truth Tau phi;Truth Tau #phi;",40,-3.2,3.2)); + addProfile(new TProfile("hEtRatiovsmu","Relative difference in Et (EF-Truth)/Truth vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + } + //------------------- -//EF vs Offline - //------------------- - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline",run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline"); - //Basic Kinematic Vars - addHistogram(new TH1F("hptRatio","Relative difference in pt (EF-Offline)/Offline; pt relative diff;", 100,-0.3,0.3)); - addHistogram(new TH1F("hetaRatio","Relative difference in eta (EF-Offline)/Offline; eta relative diff;", 100,-0.3,0.3)); - addHistogram(new TH1F("hphiRatio","Relative difference in phi (EF-Offline)/Offline; phi relative diff;", 100,-0.2,0.2)); - addHistogram(new TH2F("hEFvsOffnTrks","nTrks at EF vs Off; nTrks off; nTrks EF",10,0,10,10,0,10)); - addHistogram(new TH2F("hEFvsOffnWideTrks","nWideTrks at EF vs Off; nWideTrks off; nWideTrks EF",10,0,10,10,0,10)); - //Other Vars - //addHistogram(new TH1F("hEMRadiusRatio","Relative difference in EMRadius ;EMRadius relative diff;",50,-0.3,0.3)); - //addHistogram(new TH1F("hHadRadiusRatio","Relative difference in HadRadius ;HadRadius relative diff;",50,-0.3,0.3)); - addHistogram(new TH1F("hIsoFracRatio","Relative difference in IsoFrac;IsoFrac relative diff;",50,-0.3,0.3)); - //addHistogram(new TH1F("hPSSFracRatio","Relative difference in PSSFrac;PSSFrac relative diff;",50,-0.3,0.3)); - addHistogram(new TH1F("hEMFracRatio","Relative difference in EMFrac;EMFrac relative diff;",50,-0.3,0.3)); - addHistogram(new TH1F("hEtRawRatio","Relative difference in EtRaw;EtRaw relative diff;",50,-0.3,0.3)); - addHistogram(new TH1F("hOffEFEMDiff","Relative difference in EM energy (EF-Offline)/Offline; EM energy relative diff;", 50,-0.1,0.1)); - addHistogram(new TH1F("hOffEFHADDiff","Relative difference in HAD energy (EF-Offline)/Offline; HAD energy relative diff;", 50,-0.1,0.1)); + //EF vs Offline + //------------------- + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline",run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline"); + //Basic Kinematic Vars + addHistogram(new TH1F("hptRatio","Relative difference in pt (EF-Offline)/Offline; pt relative diff;", 100,-0.3,0.3)); + addHistogram(new TH1F("hetaRatio","Relative difference in eta (EF-Offline)/Offline; eta relative diff;", 100,-0.3,0.3)); + addHistogram(new TH1F("hphiRatio","Relative difference in phi (EF-Offline)/Offline; phi relative diff;", 100,-0.2,0.2)); + addHistogram(new TH2F("hEFvsOffnTrks","nTrks at EF vs Off; nTrks off; nTrks EF",10,0,10,10,0,10)); + addHistogram(new TH2F("hEFvsOffnWideTrks","nWideTrks at EF vs Off; nWideTrks off; nWideTrks EF",10,0,10,10,0,10)); + //Other Vars + //addHistogram(new TH1F("hEMRadiusRatio","Relative difference in EMRadius ;EMRadius relative diff;",50,-0.3,0.3)); + //addHistogram(new TH1F("hHadRadiusRatio","Relative difference in HadRadius ;HadRadius relative diff;",50,-0.3,0.3)); + addHistogram(new TH1F("hIsoFracRatio","Relative difference in IsoFrac;IsoFrac relative diff;",50,-0.3,0.3)); + //addHistogram(new TH1F("hPSSFracRatio","Relative difference in PSSFrac;PSSFrac relative diff;",50,-0.3,0.3)); + addHistogram(new TH1F("hEMFracRatio","Relative difference in EMFrac;EMFrac relative diff;",50,-0.3,0.3)); + addHistogram(new TH1F("hEtRawRatio","Relative difference in EtRaw;EtRaw relative diff;",50,-0.3,0.3)); + addHistogram(new TH1F("hOffEFEMDiff","Relative difference in EM energy (EF-Offline)/Offline; EM energy relative diff;", 50,-0.1,0.1)); + addHistogram(new TH1F("hOffEFHADDiff","Relative difference in HAD energy (EF-Offline)/Offline; HAD energy relative diff;", 50,-0.1,0.1)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains { - //TProfile - addProfile(new TProfile("hEtRawRatiovspt","Relative difference in EtRaw (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEtRawRatiovseta","Relative difference in EtRaw (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - addProfile(new TProfile("hEtRawRatiovsphi","Relative difference in EtRaw (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - addProfile(new TProfile("hEtRawRatiovsmu","Relative difference in EtRaw (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + //TProfile + addProfile(new TProfile("hEtRawRatiovspt","Relative difference in EtRaw (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEtRawRatiovseta","Relative difference in EtRaw (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + addProfile(new TProfile("hEtRawRatiovsphi","Relative difference in EtRaw (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + addProfile(new TProfile("hEtRawRatiovsmu","Relative difference in EtRaw (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEtRatiovspt","Relative difference in Et (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEtRatiovseta","Relative difference in Et (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - addProfile(new TProfile("hEtRatiovsphi","Relative difference in Et (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - addProfile(new TProfile("hEtRatiovsmu","Relative difference in Et (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEtRatiovspt","Relative difference in Et (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEtRatiovseta","Relative difference in Et (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + addProfile(new TProfile("hEtRatiovsphi","Relative difference in Et (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + addProfile(new TProfile("hEtRatiovsmu","Relative difference in Et (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - //addProfile(new TProfile("hEMRadiusRatiovspt","Relative difference in EMRadius (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - //addProfile(new TProfile("hEMRadiusRatiovseta","Relative difference in EMRadius (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); -//addProfile(new TProfile("hEMRadiusRatiovsphi","Relative difference in EMRadius (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - //addProfile(new TProfile("hEMRadiusRatiovsmu","Relative difference in EMRadius (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + //addProfile(new TProfile("hEMRadiusRatiovspt","Relative difference in EMRadius (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + //addProfile(new TProfile("hEMRadiusRatiovseta","Relative difference in EMRadius (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + //addProfile(new TProfile("hEMRadiusRatiovsphi","Relative difference in EMRadius (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + //addProfile(new TProfile("hEMRadiusRatiovsmu","Relative difference in EMRadius (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - //addProfile(new TProfile("hHADRadiusRatiovspt","Relative difference in HADRadius (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - //addProfile(new TProfile("hHADRadiusRatiovseta","Relative difference in HADRadius (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - //addProfile(new TProfile("hHADRadiusRatiovsphi","Relative difference in HADRadius (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - //addProfile(new TProfile("hHADRadiusRatiovsmu","Relative difference in HADRadius (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + //addProfile(new TProfile("hHADRadiusRatiovspt","Relative difference in HADRadius (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + //addProfile(new TProfile("hHADRadiusRatiovseta","Relative difference in HADRadius (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + //addProfile(new TProfile("hHADRadiusRatiovsphi","Relative difference in HADRadius (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + //addProfile(new TProfile("hHADRadiusRatiovsmu","Relative difference in HADRadius (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hIsoFracRatiovspt","Relative difference in IsoFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hIsoFracRatiovseta","Relative difference in IsoFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - addProfile(new TProfile("hIsoFracRatiovsphi","Relative difference in IsoFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - addProfile(new TProfile("hIsoFracRatiovsmu","Relative difference in IsoFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hIsoFracRatiovspt","Relative difference in IsoFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hIsoFracRatiovseta","Relative difference in IsoFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + addProfile(new TProfile("hIsoFracRatiovsphi","Relative difference in IsoFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + addProfile(new TProfile("hIsoFracRatiovsmu","Relative difference in IsoFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hCentFracRatiovspt","Relative difference in CentFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hCentFracRatiovseta","Relative difference in CentFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - addProfile(new TProfile("hCentFracRatiovsphi","Relative difference in CentFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - addProfile(new TProfile("hCentFracRatiovsmu","Relative difference in CentFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hCentFracRatiovspt","Relative difference in CentFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hCentFracRatiovseta","Relative difference in CentFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + addProfile(new TProfile("hCentFracRatiovsphi","Relative difference in CentFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + addProfile(new TProfile("hCentFracRatiovsmu","Relative difference in CentFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEMFracRatiovspt","Relative difference in EMFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEMFracRatiovseta","Relative difference in EMFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - addProfile(new TProfile("hEMFracRatiovsphi","Relative difference in EMFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - addProfile(new TProfile("hEMFracRatiovsmu","Relative difference in EMFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEMFracRatiovspt","Relative difference in EMFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEMFracRatiovseta","Relative difference in EMFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + addProfile(new TProfile("hEMFracRatiovsphi","Relative difference in EMFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + addProfile(new TProfile("hEMFracRatiovsmu","Relative difference in EMFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - //addProfile(new TProfile("hPSSFracRatiovspt","Relative difference in PSSFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); - //addProfile(new TProfile("hPSSFracRatiovseta","Relative difference in PSSFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); - //addProfile(new TProfile("hPSSFracRatiovsphi","Relative difference in PSSFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); - //addProfile(new TProfile("hPSSFracRatiovsmu","Relative difference in PSSFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + //addProfile(new TProfile("hPSSFracRatiovspt","Relative difference in PSSFrac (EF-Offline)/Offline vs Offline Tau pT;Offline Tau pT;",nbin_pt-1,bins_pt)); + //addProfile(new TProfile("hPSSFracRatiovseta","Relative difference in PSSFrac (EF-Offline)/Offline vs Offline Tau eta;Offline Tau #eta;",nbin_eta-1,bins_eta)); + //addProfile(new TProfile("hPSSFracRatiovsphi","Relative difference in PSSFrac (EF-Offline)/Offline vs Offline Tau phi;Offline Tau #phi;",40,-3.2,3.2)); + //addProfile(new TProfile("hPSSFracRatiovsmu","Relative difference in PSSFrac (EF-Offline)/Offline vs mu;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); } - //BDT inputs 1p non corrected - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/1p_nonCorrected",run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/1p_nonCorrected"); - addHistogram(new TH1F("hInnerTrkAvgDistRatio1P","Relative diff in innertrkAvgDist (EF-Offline)/Offline; InnerTrkAvgDist 1-prong relative diff;",40,-2.0,2.0)); - addHistogram(new TH1F("hEtOverPtLeadTrkRatio1P","Relative diff in EtOverPtLeadTrk ;EtOverPtLeadTrack 1-prong relative diff;",40,-0.2,0.2)); - addHistogram(new TH1F("hIpSigLeadTrkRatio1P","Relative diff in IpSigLeadTrk (EF-Offline)/Offline; IpSigLeadTrk 1-prong relative diff;",40,-2.0,2.0)); - addHistogram(new TH1F("hSumPtTrkFracRatio1P","Relative diff in SumPtTrkFrac (EF-Offline)/Offline; SumPtTrkFrac 1-prong relative diff;",40,-2.0,2.0)); - addHistogram(new TH1F("hChPiEMEOverCaloEMERatio1P","Relative diff in ChPiEMEOverCaloEME (EF-Offline)/Offline; ChPiEMEOverCaloEME 1-prong relative diff;",40,-1,1)); - addHistogram(new TH1F("hEMPOverTrkSysPRatio1P","Relative diff in EMPOverTrkSysP (EF-Offline)/Offline; EMPOverTrkSysP 1-prong relative diff;",40,-0.2,0.2)); - addHistogram(new TH1F("hCentFracRatio1P","Relative diff in Centrality Fraction (EF-Offline)/Offline; CentFrac 1-prong relative diff;",40,-0.1,0.1)); - addHistogram(new TH1F("hPtRatioEflowApproxRatio1P","Relative diff in ptRatioEflowApprox (EF-Offline)/Offline; ptRatioEflowApprox 1-prong rel diff;", 40,-0.2,0.2)); - addHistogram(new TH1F("hDRmaxRatio1P","Relative diff in DRmax (EF-Offline)/Offline; DRmax 1-prong relative diff;", 40,-2.0,2.0)); - addHistogram(new TH1F("hTopoInvMassRatio1P","Relative diff in TopoInvMass (EF-Offline)/Offline; TopoInvMass 1-prong relative diff;", 40,-1.0,1.0)); + //BDT inputs 1p non corrected + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/1p_nonCorrected",run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/1p_nonCorrected"); + addHistogram(new TH1F("hInnerTrkAvgDistRatio1P","Relative diff in innertrkAvgDist (EF-Offline)/Offline; InnerTrkAvgDist 1-prong relative diff;",40,-2.0,2.0)); + addHistogram(new TH1F("hEtOverPtLeadTrkRatio1P","Relative diff in EtOverPtLeadTrk ;EtOverPtLeadTrack 1-prong relative diff;",40,-0.2,0.2)); + addHistogram(new TH1F("hIpSigLeadTrkRatio1P","Relative diff in IpSigLeadTrk (EF-Offline)/Offline; IpSigLeadTrk 1-prong relative diff;",40,-2.0,2.0)); + addHistogram(new TH1F("hSumPtTrkFracRatio1P","Relative diff in SumPtTrkFrac (EF-Offline)/Offline; SumPtTrkFrac 1-prong relative diff;",40,-2.0,2.0)); + addHistogram(new TH1F("hChPiEMEOverCaloEMERatio1P","Relative diff in ChPiEMEOverCaloEME (EF-Offline)/Offline; ChPiEMEOverCaloEME 1-prong relative diff;",40,-1,1)); + addHistogram(new TH1F("hEMPOverTrkSysPRatio1P","Relative diff in EMPOverTrkSysP (EF-Offline)/Offline; EMPOverTrkSysP 1-prong relative diff;",40,-0.2,0.2)); + addHistogram(new TH1F("hCentFracRatio1P","Relative diff in Centrality Fraction (EF-Offline)/Offline; CentFrac 1-prong relative diff;",40,-0.1,0.1)); + addHistogram(new TH1F("hPtRatioEflowApproxRatio1P","Relative diff in ptRatioEflowApprox (EF-Offline)/Offline; ptRatioEflowApprox 1-prong rel diff;", 40,-0.2,0.2)); + addHistogram(new TH1F("hDRmaxRatio1P","Relative diff in DRmax (EF-Offline)/Offline; DRmax 1-prong relative diff;", 40,-2.0,2.0)); + addHistogram(new TH1F("hTopoInvMassRatio1P","Relative diff in TopoInvMass (EF-Offline)/Offline; TopoInvMass 1-prong relative diff;", 40,-1.0,1.0)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains { - addProfile(new TProfile("hInnerTrkAvgDistVspt1P","Relative diff in innertrkAvgDist (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hInnerTrkAvgDistVsmu1P","Rel diff in innertrkAvgDist (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEtOverPtLeadTrkVspt1P","Relative diff in EtOverPtLeadTrk (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEtOverPtLeadTrkVsmu1P","Rel diff in EtOverPtLeadTrk (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hIpSigLeadTrkVspt1P","Relative diff in IpSigLeadTrk (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hIpSigLeadTrkVsmu1P","Relative diff in IpSigLeadTrk (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hSumPtTrkFracVspt1P","Relative diff in SumPtTrkFrac (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hSumPtTrkFracVsmu1P","Relative diff in SumPtTrkFrac (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hChPiEMEOvCaloEMEVspt1P","Relative diff in ChPiEMEOverCaloEME (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hChPiEMEOvCaloEMEVsmu1P","Rel diff in ChPiEMEOvCaloEME(EF-Off)/Off vs mu 1p;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEMPOverTrkSysPVspt1P","Relative diff in EMPOverTrkSysP (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEMPOverTrkSysPVsmu1P","Rel diff in EMPOverTrkSysP (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hCentFracVspt1P","Relative diff in CentFrac (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hCentFracVsmu1P","Relative diff in CentFrac (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hPtRatioEflowApproxVspt1P","Relative diff in PtRatioEflowApprox (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hPtRatioEflowApproxVsmu1P","Rel diff in PtRatioEflowApprox(EF-Off)/Off vs mu 1p;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hDRmaxVspt1P","Relative diff in DRmax (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hDRmaxVsmu1P","Relative diff in DRmax (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hTopoInvMassVspt1P","Relative diff in TopoInvMass (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hTopoInvMassVsmu1P","Relative diff in TopoInvMass (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hInnerTrkAvgDistVspt1P","Relative diff in innertrkAvgDist (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hInnerTrkAvgDistVsmu1P","Rel diff in innertrkAvgDist (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEtOverPtLeadTrkVspt1P","Relative diff in EtOverPtLeadTrk (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEtOverPtLeadTrkVsmu1P","Rel diff in EtOverPtLeadTrk (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hIpSigLeadTrkVspt1P","Relative diff in IpSigLeadTrk (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hIpSigLeadTrkVsmu1P","Relative diff in IpSigLeadTrk (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hSumPtTrkFracVspt1P","Relative diff in SumPtTrkFrac (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hSumPtTrkFracVsmu1P","Relative diff in SumPtTrkFrac (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hChPiEMEOvCaloEMEVspt1P","Relative diff in ChPiEMEOverCaloEME (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hChPiEMEOvCaloEMEVsmu1P","Rel diff in ChPiEMEOvCaloEME(EF-Off)/Off vs mu 1p;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEMPOverTrkSysPVspt1P","Relative diff in EMPOverTrkSysP (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEMPOverTrkSysPVsmu1P","Rel diff in EMPOverTrkSysP (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hCentFracVspt1P","Relative diff in CentFrac (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hCentFracVsmu1P","Relative diff in CentFrac (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hPtRatioEflowApproxVspt1P","Relative diff in PtRatioEflowApprox (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hPtRatioEflowApproxVsmu1P","Rel diff in PtRatioEflowApprox(EF-Off)/Off vs mu 1p;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hDRmaxVspt1P","Relative diff in DRmax (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hDRmaxVsmu1P","Relative diff in DRmax (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hTopoInvMassVspt1P","Relative diff in TopoInvMass (EF-Off)/Off vs Off Tau pT 1-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hTopoInvMassVsmu1P","Relative diff in TopoInvMass (EF-Off)/Off vs mu 1-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); } - //BDT inputs mp non corrected - addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/mp_nonCorrected",run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/mp_nonCorrected"); - addHistogram(new TH1F("hInnerTrkAvgDistRatioMP","Relative diff in innertrkAvgDist (EF-Offline)/Offline; InnerTrkAvgDist m-prong relative diff;",40,-2.0,2.0)); - addHistogram(new TH1F("hEtOverPtLeadTrkRatioMP","Relative diff in etOverPtLeadTrk (EF-Offline)/Offline; etOverPtLeadTrk m-prong relative diff;",40,-0.2,0.2)); - addHistogram(new TH1F("hChPiEMEOverCaloEMERatioMP","Relative diff in ChPiEMEOverCaloEME (EF-Offline)/Offline; ChPiEMEOverCaloEME m-prong relative diff;",40,-1,1)); - addHistogram(new TH1F("hEMPOverTrkSysPRatioMP","Relative diff in EMPOverTrkSysP (EF-Offline)/Offline; EMPOverTrkSysP m-prong relative diff;",40,-0.2,0.2)); - addHistogram(new TH1F("hCentFracRatioMP","Relative diff in Centrality Fraction (EF-Offline)/Offline; centFrac m-prong relative diff;",40,-0.1,0.1)); - addHistogram(new TH1F("hPtRatioEflowApproxRatioMP","Relative diff in ptRatioEflowApprox (EF-Offline)/Offline; ptRatioEflowApprox m-prong rel diff;", 40,-0.2,0.2)); - addHistogram(new TH1F("hDRmaxRatioMP","Relative diff in DRmax (EF-Offline)/Offline; dRmax m-prong relative diff;", 40,-1.0,1.0)); - addHistogram(new TH1F("hTrFlightPathSigRatioMP","Relative diff in TrFlightPathSig (EF-Offline)/Offline; trFlightPathSig m-prong relative diff;", 40,-1.0,1.0)); - addHistogram(new TH1F("hMassTrkSysRatioMP","Relative diff in MassTrkSys (EF-Offline)/Offline; MassTrkSys m-prong relative diff;", 40,-0.5,0.5)); - addHistogram(new TH1F("hMEflowApproxRatioMP","Relative diff in mEflowApprox (EF-Offline)/Offline; mEflowApprox m-prong rel diff;", 40,-0.5,0.5)); + //BDT inputs mp non corrected + addMonGroup(new MonGroup(this,"HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/mp_nonCorrected",run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/EFVsOffline/BDT/mp_nonCorrected"); + addHistogram(new TH1F("hInnerTrkAvgDistRatioMP","Relative diff in innertrkAvgDist (EF-Offline)/Offline; InnerTrkAvgDist m-prong relative diff;",40,-2.0,2.0)); + addHistogram(new TH1F("hEtOverPtLeadTrkRatioMP","Relative diff in etOverPtLeadTrk (EF-Offline)/Offline; etOverPtLeadTrk m-prong relative diff;",40,-0.2,0.2)); + addHistogram(new TH1F("hChPiEMEOverCaloEMERatioMP","Relative diff in ChPiEMEOverCaloEME (EF-Offline)/Offline; ChPiEMEOverCaloEME m-prong relative diff;",40,-1,1)); + addHistogram(new TH1F("hEMPOverTrkSysPRatioMP","Relative diff in EMPOverTrkSysP (EF-Offline)/Offline; EMPOverTrkSysP m-prong relative diff;",40,-0.2,0.2)); + addHistogram(new TH1F("hCentFracRatioMP","Relative diff in Centrality Fraction (EF-Offline)/Offline; centFrac m-prong relative diff;",40,-0.1,0.1)); + addHistogram(new TH1F("hPtRatioEflowApproxRatioMP","Relative diff in ptRatioEflowApprox (EF-Offline)/Offline; ptRatioEflowApprox m-prong rel diff;", 40,-0.2,0.2)); + addHistogram(new TH1F("hDRmaxRatioMP","Relative diff in DRmax (EF-Offline)/Offline; dRmax m-prong relative diff;", 40,-1.0,1.0)); + addHistogram(new TH1F("hTrFlightPathSigRatioMP","Relative diff in TrFlightPathSig (EF-Offline)/Offline; trFlightPathSig m-prong relative diff;", 40,-1.0,1.0)); + addHistogram(new TH1F("hMassTrkSysRatioMP","Relative diff in MassTrkSys (EF-Offline)/Offline; MassTrkSys m-prong relative diff;", 40,-0.5,0.5)); + addHistogram(new TH1F("hMEflowApproxRatioMP","Relative diff in mEflowApprox (EF-Offline)/Offline; mEflowApprox m-prong rel diff;", 40,-0.5,0.5)); if ((trigItem == "tau25_medium1_tracktwo") || (m_doEFTProfiles)) // keep the EF TProfiles of lowest single tau or if flag is turned on for the rest of the chains { - addProfile(new TProfile("hInnerTrkAvgDistVsptMP","Relative diff in innertrkAvgDist (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hInnerTrkAvgDistVsmuMP","Rel diff in innertrkAvgDist (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEtOverPtLeadTrkVsptMP","Relative diff in EtOverPtLeadTrk (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEtOverPtLeadTrkVsmuMP","Rel diff in EtOverPtLeadTrk (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hChPiEMEOvCaloEMEVsptMP","Relative diff in ChPiEMEOverCaloEME (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hChPiEMEOvCaloEMEVsmuMP","Rel diff in ChPiEMEOvCaloEME(EF-Off)/Off vs mu mp;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hEMPOverTrkSysPVsptMP","Relative diff in EMPOverTrkSysP (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hEMPOverTrkSysPVsmuMP","Rel diff in EMPOverTrkSysP (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hCentFracVsptMP","Relative diff in CentFrac (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hCentFracVsmuMP","Relative diff in CentFrac (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hPtRatioEflowApproxVsptMP","Relative diff in PtRatioEflowApprox (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hPtRatioEflowApproxVsmuMP","Rel diff in PtRatioEflowApprox(EF-Off)/Off vs mu mp;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hDRmaxVsptMP","Relative diff in DRmax (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hDRmaxVsmuMP","Relative diff in DRmax (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hTrFlightPathSigVsptMP","Relative diff in TrFlightPathSig (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hTrFlightPathSigVsmuMP","Rel diff in TrFlightPathSig (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hMassTrkSysVsptMP","Relative diff in MassTrkSys (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hMassTrkSysVsmuMP","Relative diff in MassTrkSys (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); - addProfile(new TProfile("hMEflowApproxVsptMP","Relative diff in mEflowApprox (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); - addProfile(new TProfile("hMEflowApproxVsmuMP","Relative diff in mEflowApprox (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hInnerTrkAvgDistVsptMP","Relative diff in innertrkAvgDist (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hInnerTrkAvgDistVsmuMP","Rel diff in innertrkAvgDist (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEtOverPtLeadTrkVsptMP","Relative diff in EtOverPtLeadTrk (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEtOverPtLeadTrkVsmuMP","Rel diff in EtOverPtLeadTrk (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hChPiEMEOvCaloEMEVsptMP","Relative diff in ChPiEMEOverCaloEME (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hChPiEMEOvCaloEMEVsmuMP","Rel diff in ChPiEMEOvCaloEME(EF-Off)/Off vs mu mp;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hEMPOverTrkSysPVsptMP","Relative diff in EMPOverTrkSysP (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hEMPOverTrkSysPVsmuMP","Rel diff in EMPOverTrkSysP (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hCentFracVsptMP","Relative diff in CentFrac (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hCentFracVsmuMP","Relative diff in CentFrac (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hPtRatioEflowApproxVsptMP","Relative diff in PtRatioEflowApprox (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hPtRatioEflowApproxVsmuMP","Rel diff in PtRatioEflowApprox(EF-Off)/Off vs mu mp;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hDRmaxVsptMP","Relative diff in DRmax (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hDRmaxVsmuMP","Relative diff in DRmax (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hTrFlightPathSigVsptMP","Relative diff in TrFlightPathSig (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hTrFlightPathSigVsmuMP","Rel diff in TrFlightPathSig (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hMassTrkSysVsptMP","Relative diff in MassTrkSys (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hMassTrkSysVsmuMP","Relative diff in MassTrkSys (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); + addProfile(new TProfile("hMEflowApproxVsptMP","Relative diff in mEflowApprox (EF-Off)/Off vs Off Tau pT m-prong;Offline Tau pT;",nbin_pt-1,bins_pt)); + addProfile(new TProfile("hMEflowApproxVsmuMP","Relative diff in mEflowApprox (EF-Off)/Off vs mu m-prong;Average interactions per bunch crossing;",nbin_mu-1,bins_mu)); } - //-------------------- - //Turn On Curves - //-------------------- + //-------------------- + //Turn On Curves + //-------------------- - if(m_turnOnCurves) + if(m_turnOnCurves) { - if(m_truth){ - //Truth - addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/TruthEfficiency",run) ); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/TruthEfficiency"); + if(m_truth){ + //Truth + addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/TruthEfficiency",run) ); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/TruthEfficiency"); - addProfile(new TProfile("TProfTrueL1PtEfficiency","L1 vs Truth Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTrueL1Pt1PEfficiency","L1 vs Truth Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTrueL1Pt3PEfficiency","L1 vs Truth Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTrueL1EtaEfficiency","L1 vs Truth Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); - addProfile(new TProfile("TProfTrueL1PhiEfficiency","L1 vs Truth Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); - addProfile(new TProfile("TProfTrueL1NTrackEfficiency","L1 vs Truth Efficiency; Number of tracks; Efficiency",10,0,10)); - addProfile(new TProfile("TProfTrueL1NVtxEfficiency","L1 vs Truth Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); - addProfile(new TProfile("TProfTrueL1MuEfficiency","L1 vs Truth Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); + addProfile(new TProfile("TProfTrueL1PtEfficiency","L1 vs Truth Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTrueL1Pt1PEfficiency","L1 vs Truth Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTrueL1Pt3PEfficiency","L1 vs Truth Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTrueL1EtaEfficiency","L1 vs Truth Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); + addProfile(new TProfile("TProfTrueL1PhiEfficiency","L1 vs Truth Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); + addProfile(new TProfile("TProfTrueL1NTrackEfficiency","L1 vs Truth Efficiency; Number of tracks; Efficiency",10,0,10)); + addProfile(new TProfile("TProfTrueL1NVtxEfficiency","L1 vs Truth Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); + addProfile(new TProfile("TProfTrueL1MuEfficiency","L1 vs Truth Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); - addProfile(new TProfile("TProfTrueHLTPtEfficiency","HLT vs Truth Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTrueHLTPt1PEfficiency","HLT vs Truth Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTrueHLTPt3PEfficiency","HLT vs Truth Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTrueHLTEtaEfficiency","HLT vs Truth Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); - addProfile(new TProfile("TProfTrueHLTPhiEfficiency","HLT vs Truth Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); - addProfile(new TProfile("TProfTrueHLTNTrackEfficiency","HLT vs Truth Efficiency; Number of tracks; Efficiency",10,0,10)); - addProfile(new TProfile("TProfTrueHLTNVtxEfficiency","HLT vs Truth Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); - addProfile(new TProfile("TProfTrueHLTMuEfficiency","HLT vs Truth Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); + addProfile(new TProfile("TProfTrueHLTPtEfficiency","HLT vs Truth Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTrueHLTPt1PEfficiency","HLT vs Truth Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTrueHLTPt3PEfficiency","HLT vs Truth Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTrueHLTEtaEfficiency","HLT vs Truth Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); + addProfile(new TProfile("TProfTrueHLTPhiEfficiency","HLT vs Truth Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); + addProfile(new TProfile("TProfTrueHLTNTrackEfficiency","HLT vs Truth Efficiency; Number of tracks; Efficiency",10,0,10)); + addProfile(new TProfile("TProfTrueHLTNVtxEfficiency","HLT vs Truth Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); + addProfile(new TProfile("TProfTrueHLTMuEfficiency","HLT vs Truth Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); - //Truth+Reco - addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/Truth+RecoEfficiency",run) ); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/Truth+RecoEfficiency"); - - addProfile(new TProfile("TProfTruthRecoL1PtEfficiency","L1 vs Truth+Reco Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTruthRecoL1Pt1PEfficiency","L1 vs Truth+Reco Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTruthRecoL1Pt3PEfficiency","L1 vs Truth+Reco Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTruthRecoL1EtaEfficiency","L1 vs Truth+Reco Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); - addProfile(new TProfile("TProfTruthRecoL1PhiEfficiency","L1 vs Truth+Reco Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); - addProfile(new TProfile("TProfTruthRecoL1NTrackEfficiency","L1 vs Truth+Reco Efficiency; Number of tracks; Efficiency",10,0,10)); - addProfile(new TProfile("TProfTruthRecoL1NVtxEfficiency","L1 vs Truth+Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); - addProfile(new TProfile("TProfTruthRecoL1MuEfficiency","L1 vs Truth+Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); + //Truth+Reco + addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/Truth+RecoEfficiency",run) ); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/Truth+RecoEfficiency"); + + addProfile(new TProfile("TProfTruthRecoL1PtEfficiency","L1 vs Truth+Reco Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTruthRecoL1Pt1PEfficiency","L1 vs Truth+Reco Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTruthRecoL1Pt3PEfficiency","L1 vs Truth+Reco Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTruthRecoL1EtaEfficiency","L1 vs Truth+Reco Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); + addProfile(new TProfile("TProfTruthRecoL1PhiEfficiency","L1 vs Truth+Reco Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); + addProfile(new TProfile("TProfTruthRecoL1NTrackEfficiency","L1 vs Truth+Reco Efficiency; Number of tracks; Efficiency",10,0,10)); + addProfile(new TProfile("TProfTruthRecoL1NVtxEfficiency","L1 vs Truth+Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); + addProfile(new TProfile("TProfTruthRecoL1MuEfficiency","L1 vs Truth+Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); - addProfile(new TProfile("TProfTruthRecoHLTPtEfficiency","HLT vs Truth+Reco Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTruthRecoHLTPt1PEfficiency","HLT vs Truth+Reco Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTruthRecoHLTPt3PEfficiency","HLT vs Truth+Reco Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfTruthRecoHLTEtaEfficiency","HLT vs Truth+Reco Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); - addProfile(new TProfile("TProfTruthRecoHLTPhiEfficiency","HLT vs Truth+Reco Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); - addProfile(new TProfile("TProfTruthRecoHLTNTrackEfficiency","HLT vs Truth+Reco Efficiency; Number of tracks; Efficiency",10,0,10)); - addProfile(new TProfile("TProfTruthRecoHLTNVtxEfficiency","HLT vs Truth+Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); - addProfile(new TProfile("TProfTruthRecoHLTMuEfficiency","HLT vs Truth+Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); + addProfile(new TProfile("TProfTruthRecoHLTPtEfficiency","HLT vs Truth+Reco Efficiency; Truth p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTruthRecoHLTPt1PEfficiency","HLT vs Truth+Reco Efficiency; Truth 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTruthRecoHLTPt3PEfficiency","HLT vs Truth+Reco Efficiency; Truth 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfTruthRecoHLTEtaEfficiency","HLT vs Truth+Reco Efficiency; Truth #eta; Efficiency",nbin_eta-1,bins_eta)); + addProfile(new TProfile("TProfTruthRecoHLTPhiEfficiency","HLT vs Truth+Reco Efficiency; Truth #phi; Efficiency",16,-3.2,3.2)); + addProfile(new TProfile("TProfTruthRecoHLTNTrackEfficiency","HLT vs Truth+Reco Efficiency; Number of tracks; Efficiency",10,0,10)); + addProfile(new TProfile("TProfTruthRecoHLTNVtxEfficiency","HLT vs Truth+Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); + addProfile(new TProfile("TProfTruthRecoHLTMuEfficiency","HLT vs Truth+Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); - } + } - //Reco - addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/RecoEfficiency",run) ); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/RecoEfficiency"); - - addProfile(new TProfile("TProfRecoL1PtEfficiency", "L1 Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfRecoL1Pt1PEfficiency", "L1 Vs Reco Efficiency; Reco 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfRecoL1Pt3PEfficiency", "L1 Vs Reco Efficiency; Reco 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfRecoL1EtaEfficiency", "L1 Vs Reco Efficiency; Reco #eta; Efficiency",nbin_eta-1,bins_eta)); - addProfile(new TProfile("TProfRecoL1PhiEfficiency", "L1 Vs Reco Efficiency; Reco #phi; Efficiency",16,-3.2,3.2)); - addProfile(new TProfile("TProfRecoL1NTrackEfficiency", "L1 Vs Reco Efficiency; Number of tracks; Efficiency",10,0,10)); - addProfile(new TProfile("TProfRecoL1NVtxEfficiency", "L1 Vs Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); - addProfile(new TProfile("TProfRecoL1MuEfficiency", "L1 Vs Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); + //Reco + addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/RecoEfficiency",run) ); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/TurnOnCurves/RecoEfficiency"); + + addProfile(new TProfile("TProfRecoL1PtEfficiency", "L1 Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfRecoL1Pt1PEfficiency", "L1 Vs Reco Efficiency; Reco 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfRecoL1Pt3PEfficiency", "L1 Vs Reco Efficiency; Reco 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfRecoL1EtaEfficiency", "L1 Vs Reco Efficiency; Reco #eta; Efficiency",nbin_eta-1,bins_eta)); + addProfile(new TProfile("TProfRecoL1PhiEfficiency", "L1 Vs Reco Efficiency; Reco #phi; Efficiency",16,-3.2,3.2)); + addProfile(new TProfile("TProfRecoL1NTrackEfficiency", "L1 Vs Reco Efficiency; Number of tracks; Efficiency",10,0,10)); + addProfile(new TProfile("TProfRecoL1NVtxEfficiency", "L1 Vs Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); + addProfile(new TProfile("TProfRecoL1MuEfficiency", "L1 Vs Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); - double hbins_pt[nbin_pt] = {20.,30.,50.,70.,100.,150.,200., 250., 300., 350., 400., 500., 600.}; - addProfile(new TProfile("TProfRecoL1HighPtEfficiency", "L1 Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); - addProfile(new TProfile("TProfRecoL1HighPt1PEfficiency", "L1 Vs Reco Efficiency; Reco 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); - addProfile(new TProfile("TProfRecoL1HighPt3PEfficiency", "L1 Vs Reco Efficiency; Reco 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); + double hbins_pt[nbin_pt] = {20.,30.,50.,70.,100.,150.,200., 250., 300., 350., 400., 500., 600.}; + addProfile(new TProfile("TProfRecoL1HighPtEfficiency", "L1 Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); + addProfile(new TProfile("TProfRecoL1HighPt1PEfficiency", "L1 Vs Reco Efficiency; Reco 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); + addProfile(new TProfile("TProfRecoL1HighPt3PEfficiency", "L1 Vs Reco Efficiency; Reco 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); - addProfile(new TProfile("TProfRecoHLTPtEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfRecoHLTHighPtEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); - addProfile(new TProfile("TProfRecoHLTHighPt1pEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); - addProfile(new TProfile("TProfRecoHLTHighPt3pEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); - addProfile(new TProfile("TProfRecoHLTPt1PEfficiency", "HLT Vs Reco Efficiency; Reco 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfRecoHLTPt3PEfficiency", "HLT Vs Reco Efficiency; Reco 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); - addProfile(new TProfile("TProfRecoHLTEtaEfficiency", "HLT Vs Reco Efficiency; Reco #eta; Efficiency",nbin_eta-1,bins_eta)); - addProfile(new TProfile("TProfRecoHLTPhiEfficiency", "HLT Vs Reco Efficiency; Reco #phi; Efficiency",16,-3.2,3.2)); - addProfile(new TProfile("TProfRecoHLTNTrackEfficiency", "HLT Vs Reco Efficiency; Number of tracks; Efficiency",10,0,10)); - addProfile(new TProfile("TProfRecoHLTNVtxEfficiency", "HLT Vs Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); - addProfile(new TProfile("TProfRecoHLTMuEfficiency", "HLT Vs Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); + addProfile(new TProfile("TProfRecoHLTPtEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfRecoHLTHighPtEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); + addProfile(new TProfile("TProfRecoHLTHighPt1pEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); + addProfile(new TProfile("TProfRecoHLTHighPt3pEfficiency", "HLT Vs Reco Efficiency; Reco p_{T} [GeV]; Efficiency",nbin_pt-1,hbins_pt)); + addProfile(new TProfile("TProfRecoHLTPt1PEfficiency", "HLT Vs Reco Efficiency; Reco 1 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfRecoHLTPt3PEfficiency", "HLT Vs Reco Efficiency; Reco 3 prong p_{T} [GeV]; Efficiency",nbin_pt-1,bins_pt)); + addProfile(new TProfile("TProfRecoHLTEtaEfficiency", "HLT Vs Reco Efficiency; Reco #eta; Efficiency",nbin_eta-1,bins_eta)); + addProfile(new TProfile("TProfRecoHLTPhiEfficiency", "HLT Vs Reco Efficiency; Reco #phi; Efficiency",16,-3.2,3.2)); + addProfile(new TProfile("TProfRecoHLTNTrackEfficiency", "HLT Vs Reco Efficiency; Number of tracks; Efficiency",10,0,10)); + addProfile(new TProfile("TProfRecoHLTNVtxEfficiency", "HLT Vs Reco Efficiency; Number of primary vertices; Efficiency",nbin_nvtx-1,bins_nvtx)); + addProfile(new TProfile("TProfRecoHLTMuEfficiency", "HLT Vs Reco Efficiency; Average interactions per bunch crossing; Efficiency",nbin_mu-1,bins_mu)); } - if(m_doTrackCurves) - { - addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/trackCurves", run)); - setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/trackCurves"); - addHistogram(new TH2I("hreco_vs_pres_coreTracks","Reco vs preselection tau multiplicity;Number of core tracks of reco tau; Number of core tracks of preselection tau",10,0,10,10,0,10)); - addHistogram(new TH2I("hreco_vs_pres_isoTracks","Reco vs preselection tau multiplicity;Number of isolation tracks of reco tau; Number of isolation tracks of preselection tau",10,0,10,10,0,10)); - addHistogram(new TH1F("hpstau_trk_pt","Preselection tau matched to reco+truth; track p_{T} [GeV]; Nevents",20,0.,100.)); - addHistogram(new TH1F("hpstau_trk_eta","Preselection tau matched to reco+truth; track #eta; Nevents",26,-2.6,2.6)); - addHistogram(new TH1F("hpstau_trk_phi","Preselection tau matched to reco+truth; track #phi; Nevents",32,-3.2,3.2)); - addHistogram(new TH1F("hpstau_trk_d0","Preselection tau matched to reco+truth; track d0[mm]",20,-5.,5.)); - addHistogram(new TH1F("hpstau_trk_z0","Preselection tau matched to reco+truth; track z0[mm]",15,-200.,200.)); - addHistogram(new TH2F("hpstau_trk_etaphi","Preselection tau matched to reco+truth; #eta ; #phi",26,-2.6,2.6,32,-3.2,3.2)); + if(m_doTrackCurves) + { + addMonGroup( new MonGroup(this, "HLT/TauMon/Expert/"+trigItemShort+"/trackCurves", run)); + setCurrentMonGroup("HLT/TauMon/Expert/"+trigItemShort+"/trackCurves"); + addHistogram(new TH2I("hreco_vs_pres_coreTracks","Reco vs preselection tau multiplicity;Number of core tracks of reco tau; Number of core tracks of preselection tau",10,0,10,10,0,10)); + addHistogram(new TH2I("hreco_vs_pres_isoTracks","Reco vs preselection tau multiplicity;Number of isolation tracks of reco tau; Number of isolation tracks of preselection tau",10,0,10,10,0,10)); + addHistogram(new TH1F("hpstau_trk_pt","Preselection tau matched to reco+truth; track p_{T} [GeV]; Nevents",20,0.,100.)); + addHistogram(new TH1F("hpstau_trk_eta","Preselection tau matched to reco+truth; track #eta; Nevents",26,-2.6,2.6)); + addHistogram(new TH1F("hpstau_trk_phi","Preselection tau matched to reco+truth; track #phi; Nevents",32,-3.2,3.2)); + addHistogram(new TH1F("hpstau_trk_d0","Preselection tau matched to reco+truth; track d0[mm]",20,-5.,5.)); + addHistogram(new TH1F("hpstau_trk_z0","Preselection tau matched to reco+truth; track z0[mm]",15,-200.,200.)); + addHistogram(new TH2F("hpstau_trk_etaphi","Preselection tau matched to reco+truth; #eta ; #phi",26,-2.6,2.6,32,-3.2,3.2)); - addHistogram(new TH1F("hpstau_trkres_pt","Preselection track Resolution wrt reco;track pt resolution;Nevents",40,-0.4,0.4)); - addHistogram(new TH1F("hpstau_trkres_eta","Preselection track Resolution wrt reco;track #eta resolution;Nevents",40,-0.4,0.4)); - addHistogram(new TH1F("hpstau_trkres_phi","Preselection track Resolution wrt reco;track #phi resolution;Nevents",40,-0.4,0.4)); - addHistogram(new TH1F("hpstau_trkres_d0","Preselection track Resolution wrt reco;track d0 resolution;Nevents",40,-0.4,0.4)); - addHistogram(new TH1F("hpstau_trkres_z0","Preselection track Resolution wrt reco;track z0 resolution;Nevents",40,-0.4,0.4)); - - addHistogram(new TH2F("hpstautrk_vs_recotrk_pt","Preselection Vs Reco tracks; Preselection track p_{T} [GeV]; Reco track p_{T}",20,0.,100.,20,0.,100.)); - addHistogram(new TH2F("hpstautrk_vs_recotrk_eta","Preselection Vs Reco tracks; Preselection track #eta; Reco track #eta",26,-2.6,2.6,26,-2.6,2.6)); - addHistogram(new TH2F("hpstautrk_vs_recotrk_phi","Preselection Vs Reco tracks; Preselection track #phi; Reco track #phi",32,-3.2,3.2,26,-2.6,2.6)); - addHistogram(new TH2F("hpstautrk_vs_recotrk_d0","Preselection Vs Reco tracks; Preselection track d0[mm]; Reco track",20,-5.,5.,20,-5.,5.)); - addHistogram(new TH2F("hpstautrk_vs_recotrk_z0","Preselection Vs Reco tracks; Preselection track z0[mm]; Reco track",15,-200.,200.,15,-200.,200.)); - - addProfile(new TProfile("TProfPresVsRecoPtEfficiency","Preselection Vs Reco Track Efficiency; Reco track p_{T} [GeV]; Efficiency",20,0.,100.)); - addProfile(new TProfile("TProfPresVsRecoEtaEfficiency","Preselection Vs Reco Track Efficiency; Reco track #eta; Efficiency",26,-2.6,2.6)); - addProfile(new TProfile("TProfPresVsRecoPhiEfficiency","Preselection Vs Reco Track Efficiency; Reco track #phi; Efficiency",32,-3.2,3.2)); - addProfile(new TProfile("TProfPresVsRecod0Efficiency","Preselection Vs Reco Track Efficiency; Reco track d0[mm]; Efficiency",20,-5.,5.)); - addProfile(new TProfile("TProfPresVsRecoz0Efficiency","Preselection Vs Reco Track Efficiency; Reco track z0[mm]; Efficiency",15,-200.,200.)); - } + addHistogram(new TH1F("hpstau_trkres_pt","Preselection track Resolution wrt reco;track pt resolution;Nevents",40,-0.4,0.4)); + addHistogram(new TH1F("hpstau_trkres_eta","Preselection track Resolution wrt reco;track #eta resolution;Nevents",40,-0.4,0.4)); + addHistogram(new TH1F("hpstau_trkres_phi","Preselection track Resolution wrt reco;track #phi resolution;Nevents",40,-0.4,0.4)); + addHistogram(new TH1F("hpstau_trkres_d0","Preselection track Resolution wrt reco;track d0 resolution;Nevents",40,-0.4,0.4)); + addHistogram(new TH1F("hpstau_trkres_z0","Preselection track Resolution wrt reco;track z0 resolution;Nevents",40,-0.4,0.4)); + + addHistogram(new TH2F("hpstautrk_vs_recotrk_pt","Preselection Vs Reco tracks; Preselection track p_{T} [GeV]; Reco track p_{T}",20,0.,100.,20,0.,100.)); + addHistogram(new TH2F("hpstautrk_vs_recotrk_eta","Preselection Vs Reco tracks; Preselection track #eta; Reco track #eta",26,-2.6,2.6,26,-2.6,2.6)); + addHistogram(new TH2F("hpstautrk_vs_recotrk_phi","Preselection Vs Reco tracks; Preselection track #phi; Reco track #phi",32,-3.2,3.2,26,-2.6,2.6)); + addHistogram(new TH2F("hpstautrk_vs_recotrk_d0","Preselection Vs Reco tracks; Preselection track d0[mm]; Reco track",20,-5.,5.,20,-5.,5.)); + addHistogram(new TH2F("hpstautrk_vs_recotrk_z0","Preselection Vs Reco tracks; Preselection track z0[mm]; Reco track",15,-200.,200.,15,-200.,200.)); + + addProfile(new TProfile("TProfPresVsRecoPtEfficiency","Preselection Vs Reco Track Efficiency; Reco track p_{T} [GeV]; Efficiency",20,0.,100.)); + addProfile(new TProfile("TProfPresVsRecoEtaEfficiency","Preselection Vs Reco Track Efficiency; Reco track #eta; Efficiency",26,-2.6,2.6)); + addProfile(new TProfile("TProfPresVsRecoPhiEfficiency","Preselection Vs Reco Track Efficiency; Reco track #phi; Efficiency",32,-3.2,3.2)); + addProfile(new TProfile("TProfPresVsRecod0Efficiency","Preselection Vs Reco Track Efficiency; Reco track d0[mm]; Efficiency",20,-5.,5.)); + addProfile(new TProfile("TProfPresVsRecoz0Efficiency","Preselection Vs Reco Track Efficiency; Reco track z0[mm]; Efficiency",15,-200.,200.)); + } diff --git a/Trigger/TrigSteer/DecisionHandling/DecisionHandling/IViewCreatorROITool.h b/Trigger/TrigSteer/DecisionHandling/DecisionHandling/IViewCreatorROITool.h index af37a4e78322495ef3ce604da7def4c0ab3adf53..c4d5876bc78c7534079e1738d58149c7f0772773 100644 --- a/Trigger/TrigSteer/DecisionHandling/DecisionHandling/IViewCreatorROITool.h +++ b/Trigger/TrigSteer/DecisionHandling/DecisionHandling/IViewCreatorROITool.h @@ -7,7 +7,7 @@ #include "GaudiKernel/IAlgTool.h" #include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigCompositeUtils/TrigCompositeUtils.h" /** diff --git a/Trigger/TrigSteer/DecisionHandling/src/DumpDecisions.cxx b/Trigger/TrigSteer/DecisionHandling/src/DumpDecisions.cxx index 1b647936eec7f7c42622ae344dc84260bb350964..5909e49a88dce450a889fd853de10b26254859be 100644 --- a/Trigger/TrigSteer/DecisionHandling/src/DumpDecisions.cxx +++ b/Trigger/TrigSteer/DecisionHandling/src/DumpDecisions.cxx @@ -7,7 +7,7 @@ #include "TrigCompositeUtils/HLTIdentifier.h" // FrameWork includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "DumpDecisions.h" diff --git a/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx b/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx index ecb012901a29d84399e670888d8512770cb15304..aca57df6f9d01bd89db3876a7099adca6e964923 100644 --- a/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx +++ b/Trigger/TrigSteer/DecisionHandling/src/RoRSeqFilter.cxx @@ -5,7 +5,7 @@ // DecisionHandling includes #include "RoRSeqFilter.h" #include "AthenaMonitoringKernel/Monitored.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" using TrigCompositeUtils::DecisionContainer; using TrigCompositeUtils::Decision; diff --git a/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.cxx b/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.cxx index 176f7c02fa6823658a64971e16787a24c6df7ff8..e99d24220259f34e5fc7ade0700a42deed45f8ef 100644 --- a/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.cxx +++ b/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TriggerSummaryAlg.h" #include "AthenaMonitoringKernel/Monitored.h" diff --git a/Trigger/TrigSteer/TrigSteering/src/RandomScaler.cxx b/Trigger/TrigSteer/TrigSteering/src/RandomScaler.cxx index 698c9223a95805286d7cbcaed30fcdb9d4fee172..273023e802da59ecb3c9425c862e6790902c3911 100755 --- a/Trigger/TrigSteer/TrigSteering/src/RandomScaler.cxx +++ b/Trigger/TrigSteer/TrigSteering/src/RandomScaler.cxx @@ -130,7 +130,7 @@ void HLT::RandomScaler::setSeedFromDataflow() // Check if application-specific random seed is provided via DataFlowConfig ServiceHandle<IJobOptionsSvc> jobOptSvc("JobOptionsSvc", name()); if ( jobOptSvc.retrieve().isSuccess() ) { - const Property* p = Gaudi::Utils::getProperty( jobOptSvc->getProperties("DataFlowConfig"), "DF_RandomSeed"); + const Gaudi::Details::PropertyBase* p = Gaudi::Utils::getProperty( jobOptSvc->getProperties("DataFlowConfig"), "DF_RandomSeed"); if ( p!=0 ) { // Partition running IntegerProperty seed; if ( seed.assign(*p) ) { diff --git a/Trigger/TrigSteer/ViewAlgs/ViewAlgs/IDCCacheCreatorBase.h b/Trigger/TrigSteer/ViewAlgs/ViewAlgs/IDCCacheCreatorBase.h index 9398575b4398471868072c932fc229d817f65f68..7cef43d0057ec04b74d09242690438a94ba8f20d 100644 --- a/Trigger/TrigSteer/ViewAlgs/ViewAlgs/IDCCacheCreatorBase.h +++ b/Trigger/TrigSteer/ViewAlgs/ViewAlgs/IDCCacheCreatorBase.h @@ -26,7 +26,7 @@ protected: }; -template<bool checkKey = true, typename T> +template<bool checkKey, typename T> StatusCode IDCCacheCreatorBase::createContainer(const SG::WriteHandleKey<T>& containerKey, long unsigned int size, const EventContext& ctx) const{ static_assert(std::is_base_of<EventContainers::IdentifiableCacheBase, T>::value, "Expects a IdentifiableCache Class" ); if constexpr (checkKey){ @@ -41,7 +41,7 @@ StatusCode IDCCacheCreatorBase::createContainer(const SG::WriteHandleKey<T>& con return StatusCode::SUCCESS; } -template<bool checkKey = true, typename T, typename X> +template<bool checkKey, typename T, typename X> StatusCode IDCCacheCreatorBase::createValueContainer(const SG::WriteHandleKey<T>& containerKey, long unsigned int size, const EventContext& ctx, const X& defaultValue) const{ static_assert(std::is_base_of<IdentifiableValueCache<X>, T>::value, "Expects a IdentifiableValueCache Class" ); if constexpr (checkKey){ diff --git a/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/RoiB2TopoInputDataCnv.cxx b/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/RoiB2TopoInputDataCnv.cxx index f0572ac9b0e3dc735f7f9969ab7224ff1b7f1722..c124dd085837b1f73626276e89b891d4aebdc37a 100644 --- a/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/RoiB2TopoInputDataCnv.cxx +++ b/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/RoiB2TopoInputDataCnv.cxx @@ -12,7 +12,7 @@ #include "RoiB2TopoInputDataCnv.h" #include "TrigT1CaloUtils/L1TopoDataMaker.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigT1Interfaces/TrigT1CaloDefs.h" diff --git a/Trigger/TrigT1/TrigT1CTMonitoring/src/DeriveSimulationInputs.h b/Trigger/TrigT1/TrigT1CTMonitoring/src/DeriveSimulationInputs.h index 6f0e429d3e8cb35129244a217e7f141301532aca..f9bce9a15cf2bfaaef59c517c25d9216f1b28aed 100644 --- a/Trigger/TrigT1/TrigT1CTMonitoring/src/DeriveSimulationInputs.h +++ b/Trigger/TrigT1/TrigT1CTMonitoring/src/DeriveSimulationInputs.h @@ -10,7 +10,7 @@ #include "AthenaPoolUtilities/CondAttrListCollection.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "TrigConfInterfaces/ITrigConfigSvc.h" #include "TrigConfInterfaces/ILVL1ConfigSvc.h" diff --git a/Trigger/TrigT1/TrigT1CTP/src/CTPSimulation.h b/Trigger/TrigT1/TrigT1CTP/src/CTPSimulation.h index a99b28ab70b474de22889d79988bcc83cdfc2f2d..d6efae27b3bf51d375cc5c22e685f2c80e4434d5 100644 --- a/Trigger/TrigT1/TrigT1CTP/src/CTPSimulation.h +++ b/Trigger/TrigT1/TrigT1CTP/src/CTPSimulation.h @@ -9,7 +9,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "StoreGate/DataHandle.h" #include "TrigConfInterfaces/ILVL1ConfigSvc.h" #include "AthenaKernel/IAtRndmGenSvc.h" diff --git a/Trigger/TrigT1/TrigT1CaloSim/src/TriggerTowerMaker.h b/Trigger/TrigT1/TrigT1CaloSim/src/TriggerTowerMaker.h index 951b7bac2112e1fd2be863bc6c2ede25993bd1ea..32d94f98d5db8bfcd6ebead6ae552ec9acbb4b3f 100644 --- a/Trigger/TrigT1/TrigT1CaloSim/src/TriggerTowerMaker.h +++ b/Trigger/TrigT1/TrigT1CaloSim/src/TriggerTowerMaker.h @@ -33,7 +33,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/DataObject.h" #include "AthContainers/DataVector.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IToolSvc.h" #include "CLHEP/Random/RandomEngine.h" diff --git a/Trigger/TrigT1/TrigT1NSW/src/NSWL1Simulation.h b/Trigger/TrigT1/TrigT1NSW/src/NSWL1Simulation.h index 33cfef43f5f99080dbd79402697af7f34ab9863c..dad8506f69e581891f7c47a8d61eff0c75226406 100644 --- a/Trigger/TrigT1/TrigT1NSW/src/NSWL1Simulation.h +++ b/Trigger/TrigT1/TrigT1NSW/src/NSWL1Simulation.h @@ -10,7 +10,7 @@ #include "CxxUtils/checker_macros.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // monitoring from HLT #include "TrigInterfaces/IMonitoredAlgo.h" diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMFPGAOfflineTool.h b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMFPGAOfflineTool.h index 64b67218dd162d5cb38f830ab17b54a1f9dbc8fa..15d13f6b27b6d2b27a160c85406d5b1dc6da5727 100644 --- a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMFPGAOfflineTool.h +++ b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMFPGAOfflineTool.h @@ -10,7 +10,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IIncidentListener.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //local includes #include "TrigT1NSWSimTools/IMMFPGATool.h" diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMStripTdsOfflineTool.h b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMStripTdsOfflineTool.h index 79d38701fad5add17dfc1468c96d30d73a114dbd..edb468731a08bdbe1d130adb3255eb59458915b1 100644 --- a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMStripTdsOfflineTool.h +++ b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMStripTdsOfflineTool.h @@ -10,7 +10,7 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IIncidentListener.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" //local includes #include "TrigT1NSWSimTools/IMMStripTdsTool.h" diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/PadTdsOfflineTool.h b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/PadTdsOfflineTool.h index 9f9c20d7347d08cb3fc8dbdaaf38c1d3d5448e65..af4557fe10478fe327778ad3a9c0c1c8dc60a73d 100644 --- a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/PadTdsOfflineTool.h +++ b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/PadTdsOfflineTool.h @@ -8,7 +8,7 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IIncidentListener.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "MuonSimData/MuonSimData.h" // cannot fw declare typedef MuonSimData::Deposit #include "TrigT1NSWSimTools/IPadTdsTool.h" diff --git a/Trigger/TrigT1/TrigT1ResultByteStream/src/ExampleL1TriggerByteStreamTool.h b/Trigger/TrigT1/TrigT1ResultByteStream/src/ExampleL1TriggerByteStreamTool.h index 9bd03e9845465dbc09f7b8c42334658effc7b598..8d554179d03e13e83d64f344dad052f29dc3581d 100644 --- a/Trigger/TrigT1/TrigT1ResultByteStream/src/ExampleL1TriggerByteStreamTool.h +++ b/Trigger/TrigT1/TrigT1ResultByteStream/src/ExampleL1TriggerByteStreamTool.h @@ -13,7 +13,7 @@ #include "AthenaBaseComps/AthAlgTool.h" // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" /** @class ExampleL1TriggerByteStreamTool * @brief Example implementation of a tool for L1 RoI conversion from BS to xAOD and from xAOD to BS diff --git a/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h b/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h index 078f9ede41aaa0071cd87eae35b1f72690aa2d17..3d6c2c24c5034c4cb37cfce4a8f8938175e182a5 100644 --- a/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h +++ b/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h @@ -13,7 +13,7 @@ #include <map> // Gaudi includes -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" // Other stuff #include "TrigT1Interfaces/SlinkWord.h" diff --git a/Trigger/TrigValidation/TrigAnalysisTest/python/TrigAnalysisSteps.py b/Trigger/TrigValidation/TrigAnalysisTest/python/TrigAnalysisSteps.py index 247d9d51b9d9deeb8c1aa757418735a8cd186080..1d0eede3af941e6bb77083bd52eef70cc07d5055 100644 --- a/Trigger/TrigValidation/TrigAnalysisTest/python/TrigAnalysisSteps.py +++ b/Trigger/TrigValidation/TrigAnalysisTest/python/TrigAnalysisSteps.py @@ -7,8 +7,11 @@ Definitions of additional validation steps in Trigger ART tests relevant only fo The main common check steps are defined in the TrigValSteering.CheckSteps module. ''' +from TrigValTools.TrigValSteering.Step import Step from TrigValTools.TrigValSteering.ExecStep import ExecStep from TrigValTools.TrigValSteering.CheckSteps import CheckFileStep, InputDependentStep, LogMergeStep +import os +import re ################################################## # Additional exec steps @@ -66,6 +69,92 @@ class CheckFileTrigSizeStep(CheckFileStep): self.input_file = 'AOD.pool.root,ESD.pool.root,RDO_TRIG.pool.root' self.executable = 'checkFileTrigSize_RTT.py' +class PhysValWebStep(Step): + ''' + Execute physval_make_web_display.py to make PhysVal web display from NTUP_PHYSVAL.root + ''' + def __init__(self, name='PhysValWeb'): + super(PhysValWebStep, self).__init__(name) + self.input_file = 'NTUP_PHYSVAL.pool.root' + self.executable = 'physval_make_web_display.py' + self.refdir = None + self.sig = None + self.args = '--ratio --drawopt HISTPE --refdrawopt HIST --title Test ' + self.auto_report_result = True + self.timeout = 30*60 + self.required = True # whether the full test should fail if physval_make_web_display fails + self.required_no_red = False # whether the full test should fail if red histograms are found + + def configure(self, test): + assert self.sig, 'sig is a required parameter' + outargs = ' --outdir PHYSVAL_WEB/'+self.sig + dirargs = ' --startpath run_1/HLT/'+self.sig + self.args += ' '+outargs+' '+dirargs + super(PhysValWebStep, self).configure(test) + + def get_refdir(self): + if self.refdir: + return + for fname in os.listdir('.'): + if fname.startswith('ref-') and os.path.isdir(fname): + self.refdir = fname + + def run(self, dry_run=False): + if not dry_run and not os.path.exists(self.input_file): + self.log.error('Input file does not exist: %s', self.input_file) + self.result = 1 + if self.auto_report_result: + self.report_result() + return self.result, '# (internal) {} -> failed'.format(self.name) + + if not os.path.exists('PHYSVAL_WEB'): + os.mkdir('PHYSVAL_WEB') + + self.get_refdir() + if self.refdir: + ref_file = self.refdir+'/'+self.input_file + if not dry_run and not os.path.exists(ref_file): + self.log.warning('Reference file %s does not exist, running without reference', ref_file) + else: + self.args += ' --reffile Ref:'+ref_file + self.args += ' '+self.input_file + + do_report_result = self.auto_report_result + self.auto_report_result = False # don't report yet, only after further checks below + self.result, cmd = super(PhysValWebStep, self).run(dry_run) + cmd += ' # Plus internal post-exec checks' + if dry_run: + if do_report_result: + self.report_result() + return self.result, cmd + + fname = 'PHYSVAL_WEB/'+self.sig+'/index.html' + if not os.path.exists(fname): + self.log.error('Missing output file %s', fname) + self.result += 1000 + if do_report_result: + self.report_result() + return self.result, cmd + + nred_all = 0 + with open(fname, 'r') as f: + red_lines = re.findall('Red.*$', f.read(), re.MULTILINE) + nred = len(red_lines) + nred_all += nred + if nred > 0: + msg = 'Red histograms in display for slice %s: %d' + if self.required_no_red: + self.log.error(msg, self.sig, nred) + else: + self.log.info(msg, self.sig, nred) + + if do_report_result: + self.report_result(self.result + nred_all) + if self.required_no_red: + self.result += nred_all + + return self.result, cmd + ################################################## # Getter functions ################################################## @@ -86,13 +175,28 @@ def add_analysis_steps(test, input_file='AOD.pool.root'): test.check_steps.extend(trig_analysis_check_steps()) # Add the analysis exec step logs for merging - logmerge = None - for step in test.check_steps: - if type(step) == LogMergeStep: - logmerge = step - break + logmerge = test.get_step_by_type(LogMergeStep) if not logmerge: test.log.warning('LogMerge step not found, cannot add TrigAnalysisSteps exec step log files for merging') else: for step in analysis_exec_steps: logmerge.log_files.append(step.get_log_file_name()) + +def add_physvalweb_steps(test, slice_names, download_step=None): + # Collect the steps + steps = [download_step] if download_step else [] + for slice_name in slice_names: + sliceweb = PhysValWebStep('PhysValWeb'+slice_name) + sliceweb.sig = slice_name + steps.append(sliceweb) + + # Add the steps at the beginning of check_steps list + test.check_steps = steps + test.check_steps + + # Add the step logs for merging + logmerge = test.get_step_by_type(LogMergeStep) + if not logmerge: + test.log.warning('LogMerge step not found, cannot add PhysValWeb step log files for merging') + else: + for step in steps: + logmerge.log_files.append(step.get_log_file_name()) diff --git a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_mt1_build.ref b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_mt1_build.ref index c71a10e3d15445198325156f6b3cf1f6d9282a55..6ba1603979a8269f154e00f47909c6a0d2b5a183 100644 --- a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_mt1_build.ref +++ b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_mt1_build.ref @@ -1,5 +1,3 @@ -TrigSignatureMoniMT 0 INFO The L1 seed to multi-item-seeded chain HLT_noalg_L1Standby could not be completely resolved. This is currently OK. Exception from menu access: L1Item L1_2EM13VH does not exist in the menu -TrigSignatureMoniMT 0 INFO The L1 seed to multi-item-seeded chain HLT_noalg_L1Calo could not be completely resolved. This is currently OK. Exception from menu access: L1Item L1_2EM13VH does not exist in the menu TrigSignatureMoniMT INFO HLT_2e17_etcut_L12EM15VH #3136730292 TrigSignatureMoniMT INFO -- #3136730292 Events 2 2 2 2 2 - - - - - - - - - 2 TrigSignatureMoniMT INFO -- #3136730292 Features 12 296 14 - - - - - - - - - diff --git a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_BStoBStoESDAOD_mt1_build.py b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_BStoBStoESDAOD_mt1_build.py index f02fd4c7483dec70276bd47e9a7db5422aef16bf..33a7943e29a2d32dc87c91ce353ebd53d3f55295 100755 --- a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_BStoBStoESDAOD_mt1_build.py +++ b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_BStoBStoESDAOD_mt1_build.py @@ -51,9 +51,10 @@ recoPreExec = ' '.join([ "AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);", "AODFlags.AddEgammaMuonTracksInAOD.set_Value_and_Lock(False);", # Trigger flags + "from AthenaConfiguration.AllConfigFlags import ConfigFlags;", + "ConfigFlags.Trigger.triggerMenuSetup=\'{:s}\';".format(menu_name), "from TriggerJobOpts.TriggerFlags import TriggerFlags;", "TriggerFlags.configForStartup=\'HLToffline\';", - "TriggerFlags.triggerMenuSetup=\'{:s}\';".format(menu_name), "TriggerFlags.inputHLTconfigFile.set_Value_and_Lock(\'NONE\');", "TriggerFlags.AODEDMSet.set_Value_and_Lock(\'AODFULL\');"]) reco = ExecStep.ExecStep('Tier0Reco') diff --git a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_grid.py b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_grid.py index ad5e54d785513008a52f6d33eef553b206c31de0..70d873a2f3456063ee91ff8e8a329719c1ea2c09 100755 --- a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_grid.py +++ b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_grid.py @@ -23,6 +23,7 @@ # art-html: PHYSVAL_WEB from TrigValTools.TrigValSteering import Test, ExecStep, CheckSteps +from TrigAnalysisTest.TrigAnalysisSteps import add_physvalweb_steps import os # To run single-process transform on MCORE sites @@ -50,38 +51,13 @@ test.art_type = 'grid' test.exec_steps = [rdo2aod,physval] test.check_steps = CheckSteps.default_check_steps(test) +# Add web display steps +slice_names = [ + 'JetMon', 'TauMon', 'MuonMon', 'IDMon', + 'BphysMon', 'HLTCaloESD', 'ResultMon', 'BjetMon', + 'METMon', 'MinBiasMon', 'Egamma'] +download = CheckSteps.DownloadRefStep() +add_physvalweb_steps(test, slice_names, download) -download=CheckSteps.DownloadRefStep() -download.artpackage = 'TrigAnalysisTest' -download.artjobname = 'test_trigAna_PhysValWeb_grid.py' -download.required=True -test.check_steps.append(download) - - -if not os.path.exists('PHYSVAL_WEB'): - os.mkdir('PHYSVAL_WEB') - - -pv=[] -pv.append(['Jet','JetMon']) -pv.append(['Tau','TauMon']) -pv.append(['Muon','MuonMon']) -pv.append(['ID','IDMon']) -pv.append(['Bphys','BphysMon']) -pv.append(['HLTCalo','HLTCaloESD']) -pv.append(['Result','ResultMon']) -pv.append(['Bjet','BjetMon']) -pv.append(['MET','METMon']) -pv.append(['MinBias','MinBiasMon']) -pv.append(['Egamma','Egamma']) - -for slice in pv: - name='PhysValWeb'+slice[0] - sliceweb=CheckSteps.PhysValWebStep(name) - sliceweb.sig=slice[1] - sliceweb.required=True - test.check_steps.append(sliceweb) - import sys sys.exit(test.run()) - diff --git a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_compLegacy_grid.py b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_compLegacy_grid.py index c7314633b91bdde0d0f912f49e14adc7705731b8..2aa9c0cfd7c2311bb14ee76119c0f060acf45553 100755 --- a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_compLegacy_grid.py +++ b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_compLegacy_grid.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -# art-description: Test of transform RDO->RDO_TRIG->ESD->AOD with AthenaMT and AOD->NTUP_PHYSVAL with serial athena to produce webdisplay (comparing with legacy menu) +# art-description: Produce web display comparing Run-3 trigger to Run-2 (legacy) trigger using legacy monitoring NTUP_PHYSVAL from previous nightlies # art-type: grid # art-include: master/Athena # art-output: *.txt @@ -22,67 +22,29 @@ # art-output: PHYSVAL_WEB # art-html: PHYSVAL_WEB -from TrigValTools.TrigValSteering import Test, ExecStep, CheckSteps -import os +from TrigValTools.TrigValSteering import Test, CheckSteps +from TrigAnalysisTest.TrigAnalysisSteps import add_physvalweb_steps -# To run single-process transform on MCORE sites -if 'ATHENA_NPROC_NUM' in os.environ: - del os.environ['ATHENA_NPROC_NUM'] +downloadLegacyTrig = CheckSteps.DownloadRefStep('DownloadLegacyTriggerNTUP') +downloadLegacyTrig.artjobname = 'test_trigAna_PhysValWeb_grid.py' -rdo2aod = ExecStep.ExecStep('RDOtoAOD') -rdo2aod.type = 'Reco_tf' -rdo2aod.input = 'ttbar' -rdo2aod.threads = 1 -rdo2aod.max_events = 500 -rdo2aod.args = '--outputAODFile=AOD.pool.root --steering="doRDO_TRIG" --valid=True' -rdo2aod.args += ' --preExec="all:from TriggerJobOpts.TriggerFlags import TriggerFlags; TriggerFlags.AODEDMSet.set_Value_and_Lock(\\\"AODFULL\\\");"' - -physval = ExecStep.ExecStep('PhysVal') -physval.type = 'Reco_tf' -physval.input = '' -physval.explicit_input = True -physval.args = '--inputAODFile=AOD.pool.root --outputNTUP_PHYSVALFile=NTUP_PHYSVAL.pool.root --valid=True' - -validationFlags = 'doTrigEgamma,doTrigBphys,doTrigMET,doTrigJet,doTrigMuon,doTrigHLTResult,doTrigCalo,doTrigMinBias,doTrigTau,doTrigIDtrk,doTrigBjet' -physval.args += ' --validationFlags="{:s}"'.format(validationFlags) +downloadRun3Trig = CheckSteps.DownloadRefStep('DownloadRun3TriggerNTUP') +downloadRun3Trig.artjobname = 'test_trigAna_PhysValWeb_mt1_grid.py' +downloadRun3Trig.args += ' --dst="."' test = Test.Test() test.art_type = 'grid' -test.exec_steps = [rdo2aod,physval] -test.check_steps = CheckSteps.default_check_steps(test) - - -download=CheckSteps.DownloadRefStep() -download.artpackage = 'TrigAnalysisTest' -download.artjobname = 'test_trigAna_PhysValWeb_grid.py' -download.required=True -test.check_steps.append(download) - +test.exec_steps = [downloadLegacyTrig,downloadRun3Trig] +# Only keep relevant checks from the defaults +test.check_steps = [chk for chk in CheckSteps.default_check_steps(test) + if type(chk) in (CheckSteps.LogMergeStep, CheckSteps.CheckLogStep)] + +# Add web display steps +slice_names = [ + 'JetMon', 'TauMon', 'MuonMon', 'IDMon', + 'BphysMon', 'HLTCaloESD', 'ResultMon', 'BjetMon', + 'METMon', 'MinBiasMon', 'Egamma'] +add_physvalweb_steps(test, slice_names) -if not os.path.exists('PHYSVAL_WEB'): - os.mkdir('PHYSVAL_WEB') - - -pv=[] -pv.append(['Jet','JetMon']) -pv.append(['Tau','TauMon']) -pv.append(['Muon','MuonMon']) -pv.append(['ID','IDMon']) -pv.append(['Bphys','BphysMon']) -pv.append(['HLTCalo','HLTCaloESD']) -pv.append(['Result','ResultMon']) -pv.append(['Bjet','BjetMon']) -pv.append(['MET','METMon']) -pv.append(['MinBias','MinBiasMon']) -pv.append(['Egamma','Egamma']) - -for slice in pv: - name='PhysValWeb'+slice[0] - sliceweb=CheckSteps.PhysValWebStep(name) - sliceweb.sig=slice[1] - sliceweb.required=True - test.check_steps.append(sliceweb) - import sys sys.exit(test.run()) - diff --git a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_grid.py b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_grid.py index 4b6491272d040944e7949398babe8904747c772d..412ce230290ed8ad9c653765cf9135f6bf3ffefb 100755 --- a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_grid.py +++ b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_PhysValWeb_mt1_grid.py @@ -23,6 +23,7 @@ # art-html: PHYSVAL_WEB from TrigValTools.TrigValSteering import Test, ExecStep, CheckSteps +from TrigAnalysisTest.TrigAnalysisSteps import add_physvalweb_steps import os # To run single-process transform on MCORE sites @@ -51,38 +52,13 @@ test.art_type = 'grid' test.exec_steps = [rdo2aod,physval] test.check_steps = CheckSteps.default_check_steps(test) +# Add web display steps +slice_names = [ + 'JetMon', 'TauMon', 'MuonMon', 'IDMon', + 'BphysMon', 'HLTCaloESD', 'ResultMon', 'BjetMon', + 'METMon', 'MinBiasMon', 'Egamma'] +download = CheckSteps.DownloadRefStep() +add_physvalweb_steps(test, slice_names, download) -download=CheckSteps.DownloadRefStep() -download.artpackage = 'TrigAnalysisTest' -download.artjobname = 'test_trigAna_PhysValWeb_mt1_grid.py' -download.required=True -test.check_steps.append(download) - - -if not os.path.exists('PHYSVAL_WEB'): - os.mkdir('PHYSVAL_WEB') - - -pv=[] -pv.append(['Jet','JetMon']) -pv.append(['Tau','TauMon']) -pv.append(['Muon','MuonMon']) -pv.append(['ID','IDMon']) -pv.append(['Bphys','BphysMon']) -pv.append(['HLTCalo','HLTCaloESD']) -pv.append(['Result','ResultMon']) -pv.append(['Bjet','BjetMon']) -pv.append(['MET','METMon']) -pv.append(['MinBias','MinBiasMon']) -pv.append(['Egamma','Egamma']) - -for slice in pv: - name='PhysValWeb'+slice[0] - sliceweb=CheckSteps.PhysValWebStep(name) - sliceweb.sig=slice[1] - sliceweb.required=True - test.check_steps.append(sliceweb) - import sys sys.exit(test.run()) - diff --git a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_RDOtoRDOTrig_mt1_build.py b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_RDOtoRDOTrig_mt1_build.py index d757889b79a8e70beec21f41c3ba574d7448e356..36ff6edd29ffe1b593412b08e3b889a79023c56a 100755 --- a/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_RDOtoRDOTrig_mt1_build.py +++ b/Trigger/TrigValidation/TrigAnalysisTest/test/test_trigAna_RDOtoRDOTrig_mt1_build.py @@ -23,7 +23,7 @@ test.check_steps = CheckSteps.default_check_steps(test) # Add a step comparing counts in the log against reference refcomp = CheckSteps.RegTestStep("CountRefComp") refcomp.input_base_name = 'athena.merged' -refcomp.regex = 'TrigSignatureMoniMT.*HLT_.*|TrigSignatureMoniMT.*-- #[0-9]+ (Events|Features).*' +refcomp.regex = r'TrigSignatureMoniMT\s*INFO\sHLT_.*|TrigSignatureMoniMT\s*INFO\s-- #[0-9]+ (Events|Features).*' refcomp.reference = 'TrigAnalysisTest/ref_RDOtoRDOTrig_mt1_build.ref' refcomp.required = True # Final exit code depends on this step CheckSteps.add_step_after_type(test.check_steps, CheckSteps.LogMergeStep, refcomp) diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt.py index 1799887d009f9120d180380d7d08e51a877a9278..c405eab7dc6d28c479b4fd2d2b5d7d8bc71f8ddc 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt.py @@ -16,10 +16,8 @@ # art-output: *.json # art-output: *.root # art-output: *.check* -# art-output: HLTEF-plots -# art-output: HLTL2-plots -# art-output: times -# art-output: times-FTF +# art-output: HLT* +# art-output: times* # art-output: cost-perCall # art-output: cost-perEvent # art-output: cost-perCall-chain @@ -34,17 +32,24 @@ from TrigInDetValidation.TrigInDetArtSteps import TrigInDetReco, TrigInDetAna, T import sys,getopt try: - opts, args = getopt.getopt(sys.argv[1:],"l",["local"]) + opts, args = getopt.getopt(sys.argv[1:],"lxp",["local"]) except getopt.GetoptError: - print("Usage: -l(--local)") + print("Usage: ") + print("-l(--local) run locally with input file from art eos grid-input") + print("-x don't run athena or post post-processing, only plotting") + print("-p run post-processing, even if -x is set") local=False +exclude=False +postproc=False for opt,arg in opts: if opt in ("-l", "--local"): local=True - - + if opt=="-x": + exclude=True + if opt=="-p": + postproc=True rdo2aod = TrigInDetReco() @@ -59,14 +64,17 @@ rdo2aod.input = 'ttbar_pu80' # defined in TrigValTools/share/TrigValInputs.jso test = Test.Test() test.art_type = 'grid' -test.exec_steps = [rdo2aod] -test.check_steps = CheckSteps.default_check_steps(test) +if (not exclude): + test.exec_steps = [rdo2aod] + test.exec_steps.append(TrigInDetAna()) # Run analysis to produce TrkNtuple + test.check_steps = CheckSteps.default_check_steps(test) -# Run analysis to produce TrkNtuple -test.exec_steps.append(TrigInDetAna()) - # Run Tidardict -test.check_steps.append(TrigInDetdictStep()) +if ((not exclude) or postproc ): + rdict = TrigInDetdictStep() + rdict.args='TIDAdata-run3.dat -r Offline -f data-hists.root -b Test_bin.dat ' + test.check_steps.append(rdict) + # Now the comparitor steps comp=TrigInDetCompStep('Comp_L2muon') @@ -111,7 +119,6 @@ comp8.flag='EFele' comp8.test='ttbar' test.check_steps.append(comp8) - # CPU cost steps cpucost=TrigInDetCpuCostStep('CpuCostStep1') test.check_steps.append(cpucost) diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt2.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt2.py index 298f1d250f0614b8f41f87aae180fa9a6c440ffc..284d2f4d37406dba3d485a6dfb2c2ac25b6c772d 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt2.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80_mt2.py @@ -16,10 +16,8 @@ # art-output: *.json # art-output: *.root # art-output: *.check* -# art-output: HLTEF-plots -# art-output: HLTL2-plots -# art-output: times -# art-output: times-FTF +# art-output: HLT* +# art-output: times* # art-output: cost-perCall # art-output: cost-perEvent # art-output: cost-perCall-chain @@ -34,17 +32,24 @@ from TrigInDetValidation.TrigInDetArtSteps import TrigInDetReco, TrigInDetAna, T import sys,getopt try: - opts, args = getopt.getopt(sys.argv[1:],"l",["local"]) + opts, args = getopt.getopt(sys.argv[1:],"lxp",["local"]) except getopt.GetoptError: - print("Usage: -l(--local)") + print("Usage: ") + print("-l(--local) run locally with input file from art eos grid-input") + print("-x don't run athena or post post-processing, only plotting") + print("-p run post-processing, even if -x is set") local=False +exclude=False +postproc=False for opt,arg in opts: if opt in ("-l", "--local"): local=True - - + if opt=="-x": + exclude=True + if opt=="-p": + postproc=True rdo2aod = TrigInDetReco() @@ -59,14 +64,17 @@ rdo2aod.input = 'ttbar_pu80' # defined in TrigValTools/share/TrigValInputs.jso test = Test.Test() test.art_type = 'grid' -test.exec_steps = [rdo2aod] -test.check_steps = CheckSteps.default_check_steps(test) +if (not exclude): + test.exec_steps = [rdo2aod] + test.exec_steps.append(TrigInDetAna()) # Run analysis to produce TrkNtuple + test.check_steps = CheckSteps.default_check_steps(test) -# Run analysis to produce TrkNtuple -test.exec_steps.append(TrigInDetAna()) - # Run Tidardict -test.check_steps.append(TrigInDetdictStep()) +if ((not exclude) or postproc ): + rdict = TrigInDetdictStep() + rdict.args='TIDAdata-run3.dat -r Offline -f data-hists.root -b Test_bin.dat ' + test.check_steps.append(rdict) + # Now the comparitor steps comp=TrigInDetCompStep('Comp_L2muon') @@ -111,7 +119,6 @@ comp8.flag='EFele' comp8.test='ttbar' test.check_steps.append(comp8) - # CPU cost steps cpucost=TrigInDetCpuCostStep('CpuCostStep1') test.check_steps.append(cpucost) diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_olddata_pu40.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_olddata_pu40.py index 50cde7bc64f765bd3b3116826f239ae0686882bf..a69d5becc6e65b2ab3a26143a65eecf0fbda08be 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_olddata_pu40.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_olddata_pu40.py @@ -94,7 +94,7 @@ comp2.flag = 'EFbjet' test.check_steps.append(comp2) -#Â CPU cost steps +# CPU cost steps cpucost=TrigInDetCpuCostStep('CpuCostStep1') test.check_steps.append(cpucost) diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_pu40.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_pu40.py index 6d0063fc402974eb97bf969432a2354b1e753f83..2e60091c7f9ff5d0f4ab37c668a43d8f4b1bd55d 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_pu40.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_bjet_pu40.py @@ -87,7 +87,7 @@ comp2.flag = 'EFbjet' test.check_steps.append(comp2) -#Â CPU cost steps +# CPU cost steps cpucost=TrigInDetCpuCostStep('CpuCostStep1') test.check_steps.append(cpucost) diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80.py index 6c7fbf7612f2fcf9bcc75cd467fb75a814418158..8319488e7ac440ba44287f878c70b023506d1b4c 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['electron'] -rdo2aod.max_events = 20000 +rdo2aod.max_events = 5000 # TODO increase to 20k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0.py index f776615fc755f515edc35608d815ae246f6b8a0a..e7c65c39cb1ee04c06bf304294e63fa3f63d418b 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['electron'] -rdo2aod.max_events = 20000 +rdo2aod.max_events = 5000 # TODO change to 20k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0_pu.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0_pu.py index 8df478225d8b315a673ca2feaa6651d2b03ec152..034098a929eeed4023dd2e6000294d2126d9c20e 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0_pu.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_larged0_pu.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['electron'] -rdo2aod.max_events = 20000 +rdo2aod.max_events = 5000 # TODO increase to 20k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_pu40.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_pu40.py index 85b8d982d9a33e01dda646459ee4fbc1f70bd677..8d3959ddb7055558239bea1ad1191251ab489d05 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_pu40.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_singlee_7-80_pu40.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['electron'] -rdo2aod.max_events = 20000 +rdo2aod.max_events = 5000 # TODO increase to 20k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_zee_pu40.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_zee_pu40.py index 4ec84558e5762a8fe465eeac7d6b1a6278bc59e1..f63ba3a27c7ef0c28766feb7ab378cfb2fd89752 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_zee_pu40.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_el_zee_pu40.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['electron'] -rdo2aod.max_events = 16000 +rdo2aod.max_events = 5000 #Â TODO increase to 16k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0.py index 7300d2abd12e108b9879bfc0a60ec624b1d7d412..a3b851ef0d6a32b8747ba98dfcd8b0db271245e2 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['muon'] -rdo2aod.max_events = 20000 +rdo2aod.max_events = 5000 # TODO increase to 20k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0_pu.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0_pu.py index ac265c0fa2d42878d875a50aceaf1f6ac52c7d73..51f920136e34b10e0d87510a2e36a4595b42e628 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0_pu.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_singlemu_larged0_pu.py @@ -54,7 +54,7 @@ for opt,arg in opts: rdo2aod = TrigInDetReco() rdo2aod.slices = ['muon'] -rdo2aod.max_events = 20000 +rdo2aod.max_events = 5000 # TODO increase to 20k rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_zmumu_pu40_build.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_zmumu_pu40_build.py index 8c0308f2fec2629cf770d3e15e8242b7358a1dce..1c706c4fcfafc3170e5c802fae5a2ce967a5c23d 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_zmumu_pu40_build.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_mu_zmumu_pu40_build.py @@ -28,7 +28,7 @@ from TrigInDetValidation.TrigInDetArtSteps import TrigInDetReco, TrigInDetAna, T rdo2aod = TrigInDetReco() rdo2aod.slices = ['muon'] -rdo2aod.max_events = 2000 # TODO: 2000 events +rdo2aod.max_events = 100 # TODO: 2000 events rdo2aod.threads = 1 # TODO: change to 4 rdo2aod.concurrent_events = 1 # TODO: change to 4 rdo2aod.perfmon = False diff --git a/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py b/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py index d1fb5984fa7dc7da03a6f9e98d276adeded82b3d..646180b431bad4da4b4d37eed953d2fac0eac9e9 100644 --- a/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py +++ b/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py @@ -15,6 +15,7 @@ from TriggerMenuMT.HLTMenuConfig.CommonSequences import EventBuildingSequenceSet from TrigPartialEventBuilding.TrigPartialEventBuildingConfig import StaticPEBInfoWriterToolCfg, RoIPEBInfoWriterToolCfg from TriggerJobOpts.TriggerFlags import TriggerFlags from libpyeformat_helper import SubDetector +from AthenaConfiguration.AllConfigFlags import ConfigFlags from AthenaCommon.AlgSequence import dumpSequence from AthenaCommon.Logging import logging log = logging.getLogger('dataScoutingTest') @@ -142,7 +143,7 @@ myAllStreams = [ StreamInfo._all_streams = myAllStreams # Set trigger flags -TriggerFlags.triggerMenuSetup = 'LS2_v1' +ConfigFlags.Trigger.triggerMenuSetup = TriggerFlags.triggerMenuSetup = 'LS2_v1' TriggerFlags.Slices_all_setOff() TriggerFlags.EgammaSlice.setAll() TriggerFlags.MuonSlice.setAll() diff --git a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0MonTrf_build.py b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0MonTrf_build.py index a854bae5cc8e33dd618065737605d573d972aee8..1ca2db917dc4604f6b683bfccbd6c1ef1d469a4d 100755 --- a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0MonTrf_build.py +++ b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0MonTrf_build.py @@ -24,9 +24,10 @@ hlt.input = 'data' #==================================================================================================== # Tier-0 reco step BS->ESD->AOD tzrecoPreExec = ' '.join([ + "from AthenaConfiguration.AllConfigFlags import ConfigFlags;", + "ConfigFlags.Trigger.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\';", "from TriggerJobOpts.TriggerFlags import TriggerFlags;", "TriggerFlags.configForStartup=\'HLToffline\';", - "TriggerFlags.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\';", "TriggerFlags.inputHLTconfigFile.set_Value_and_Lock(\'NONE\');", "TriggerFlags.AODEDMSet.set_Value_and_Lock(\'AODFULL\')", ]) diff --git a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_build.py b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_build.py index 2e653ce39fa6933d25fe0cdc9761966727a94e4a..4d59af68a3b0720118b11208e3d27b03b03c1f7c 100755 --- a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_build.py +++ b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_build.py @@ -30,9 +30,10 @@ filter_bs.args = '-s Main ' + findFile('*_HLTMPPy_output.*.data') # Tier-0 reco step (BS->ESD->AOD) tzrecoPreExec = ' '.join([ + "from AthenaConfiguration.AllConfigFlags import ConfigFlags;", + "ConfigFlags.Trigger.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\';", "from TriggerJobOpts.TriggerFlags import TriggerFlags;", "TriggerFlags.configForStartup=\'HLToffline\';", - "TriggerFlags.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\';", "TriggerFlags.inputHLTconfigFile.set_Value_and_Lock(\'NONE\');", "TriggerFlags.AODEDMSet.set_Value_and_Lock(\'AODFULL\');" ]) diff --git a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_grid.py b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_grid.py index 515305747f9a1be58c32abd7a549a5422c180178..ce139aea52b4be4974d4af673d57611bb824ef1d 100755 --- a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_grid.py +++ b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0Mon_grid.py @@ -39,9 +39,10 @@ filter_bs.args = '-s Main ' + findFile('*_HLTMPPy_output.*.data') # Tier-0 reco step (BS->ESD->AOD) tzrecoPreExec = ' '.join([ + "from AthenaConfiguration.AllConfigFlags import ConfigFlags;", + "ConfigFlags.Trigger.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\';", "from TriggerJobOpts.TriggerFlags import TriggerFlags;", "TriggerFlags.configForStartup=\'HLToffline\';", - "TriggerFlags.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\';", "TriggerFlags.inputHLTconfigFile.set_Value_and_Lock(\'NONE\');", "TriggerFlags.AODEDMSet.set_Value_and_Lock(\'AODFULL\');" ]) diff --git a/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/CheckSteps.py b/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/CheckSteps.py index 563525ef541a6453e1d180c97271d2cf112170f7..624f35c396a4e0acb449bcbe5398d0c8c3dbd3c0 100644 --- a/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/CheckSteps.py +++ b/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/CheckSteps.py @@ -423,25 +423,29 @@ class TailStep(Step): self.args += ' >'+self.output_name super(TailStep, self).configure(test) + class DownloadRefStep(Step): - '''Execute art.py download to downlaod results from previous day ''' + '''Execute art.py download to get results from previous days''' - def __init__(self, name='DownloadRefWeb'): + def __init__(self, name='DownloadRef'): super(DownloadRefStep, self).__init__(name) self.executable = 'art.py' - self.artpackage = ' ' - self.artjobname = ' ' - self.args = 'download ' + self.args = 'download' + self.artpackage = None + self.artjobname = None self.timeout = 20*60 self.required = True self.auto_report_result = True def configure(self, test): + if not self.artpackage: + self.artpackage = test.package_name + if not self.artjobname: + self.artjobname = 'test_'+test.name+'.py' self.args += ' '+self.artpackage+' '+self.artjobname super(DownloadRefStep, self).configure(test) - class HistCountStep(InputDependentStep): '''Execute histSizes.py to count histograms in a ROOT file''' @@ -456,50 +460,6 @@ class HistCountStep(InputDependentStep): super(HistCountStep, self).configure(test) -class PhysValWebStep(InputDependentStep): - '''Execute physval_make_web_display.py to make PhysVal web display from NTUP_PHYSVAL.root''' - - def __init__(self, name='PhysValWeb'): - super(PhysValWebStep, self).__init__(name) - self.input_file = 'NTUP_PHYSVAL.pool.root' - self.executable = 'physval_make_web_display.py' - self.refdir = ' ' - self.sig=' ' - self.args = '--ratio --drawopt HISTPE --refdrawopt HIST --title Test ' - self.auto_report_result = True - self.timeout = 30*60 - self.required = True - - def configure(self, test): - outargs = ' --outdir PHYSVAL_WEB/'+self.sig - dirargs = ' --startpath run_1/HLT/'+self.sig - self.args += ' '+outargs+' '+dirargs - super(PhysValWebStep, self).configure(test) - - def run(self, dry_run=False): - for fname in os.listdir('.'): - if fname.startswith('ref-'): - self.refdir = fname - refargs = ' --reffile Ref:'+self.refdir+'/NTUP_PHYSVAL.pool.root ' - self.args += ' '+refargs+' '+self.input_file - retcode, cmd = super(PhysValWebStep, self).run(dry_run) - fname='PHYSVAL_WEB/'+self.sig+'/index.html' - if os.path.exists(fname): - f=open(fname,"r") - nred=0 - for line in f: - if (line.find('Red') != -1): - nred+=1 - if nred > 0: - self.log.debug("red histograms in display for slice %s %d",self.sig,nred) - retcode+=nred - else: - retcode+=1000 - self.log.debug("missing index.html file for slice: %s ",self.sig) - self.report_result(retcode,"CheckWeb"+self.sig) - return retcode, cmd - - class ChainDumpStep(InputDependentStep): ''' Execute chainDump.py to print trigger counts from histograms to text files diff --git a/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Step.py b/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Step.py index d8348957484ac6c7f5c69325d78ba842e9bab711..58bcaf906843d30d39bef4365ec1a50ee7984bb9 100644 --- a/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Step.py +++ b/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Step.py @@ -219,3 +219,14 @@ def get_step_from_list(step_name, step_list): if step.name is not None and step_name in step.name: return step return None + + +def get_step_type_from_list(step_type, step_list): + ''' + Retrieve the first test matching the type from the list. Returns None if + no match is found. + ''' + for step in step_list: + if isinstance(step, step_type): + return step + return None diff --git a/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Test.py b/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Test.py index 99127722069aaa181af6a0eb550710201482761f..9edb3268b47006bcdf479f4c21aeebd0e2e1f762 100644 --- a/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Test.py +++ b/Trigger/TrigValidation/TrigValTools/python/TrigValSteering/Test.py @@ -13,7 +13,7 @@ import subprocess from collections import OrderedDict from TrigValTools.TrigValSteering.Common import get_logger, art_result, clear_art_summary, package_prefix_dict -from TrigValTools.TrigValSteering.Step import get_step_from_list +from TrigValTools.TrigValSteering.Step import get_step_from_list, get_step_type_from_list class Test(object): @@ -196,6 +196,12 @@ class Test(object): step = get_step_from_list(step_name, self.check_steps) return step + def get_step_by_type(self, step_type): + step = get_step_type_from_list(step_type, self.exec_steps) + if step is None: + step = get_step_type_from_list(step_type, self.check_steps) + return step + def pre_exec(self): '''Extra pre-exec function executed just before the steps''' cmd_list = [] diff --git a/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref b/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref index 1cb25c9784238dc9591384791e8534bb8c5c77b8..bf68a61cfcc7993a5481e54a9a5ca9a059574f06 100644 --- a/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref +++ b/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref @@ -1,5 +1,3 @@ -TrigSignatureMoniMT 0 INFO The L1 seed to multi-item-seeded chain HLT_noalg_L1Standby could not be completely resolved. This is currently OK. Exception from menu access: L1Item L1_2EM13VH does not exist in the menu -TrigSignatureMoniMT 0 INFO The L1 seed to multi-item-seeded chain HLT_noalg_L1Calo could not be completely resolved. This is currently OK. Exception from menu access: L1Item L1_2EM13VH does not exist in the menu TrigSignatureMoniMT INFO HLT_2e17_etcut_L12EM15VH #3136730292 TrigSignatureMoniMT INFO -- #3136730292 Events 20 20 0 0 0 - - - - - - - - - 0 TrigSignatureMoniMT INFO -- #3136730292 Features 0 0 0 - - - - - - - - - diff --git a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_newJO_build.py b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_newJO_build.py index 4d36210cf52b17683ab12dc6f359d8cd2a2f4b19..2a84539455c6a0a93f605d9da65f190d131783a8 100755 --- a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_newJO_build.py +++ b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_newJO_build.py @@ -46,7 +46,7 @@ test.check_steps = [check_log] # Change RegTest pattern #regtest = test.get_step('RegTest') -#regtest.regex = 'TrigSignatureMoniMT.*HLT_.*|TrigSignatureMoniMT.*-- #[0-9]+ (Events|Features).*' +#regtest.regex = r'TrigSignatureMoniMT\s*INFO\sHLT_.*|TrigSignatureMoniMT\s*INFO\s-- #[0-9]+ (Events|Features).*' import sys sys.exit(test.run()) diff --git a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_MT_build.py b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_MT_build.py index 6eb24083fd91c9ff7a5acd4562bd188dec87cb2c..9e97298e354f41bbf184d2c0ab2d7323ec469191 100755 --- a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_MT_build.py +++ b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_MT_build.py @@ -31,7 +31,7 @@ test.check_steps = CheckSteps.default_check_steps(test) # Add a step comparing counts in the log against reference from test_trig_data_v1Dev_build refcomp = CheckSteps.RegTestStep("CountRefComp") -refcomp.regex = 'TrigSignatureMoniMT.*HLT_.*|TrigSignatureMoniMT.*-- #[0-9]+ (Events|Features).*' +refcomp.regex = r'TrigSignatureMoniMT\s*INFO\sHLT_.*|TrigSignatureMoniMT\s*INFO\s-- #[0-9]+ (Events|Features).*' refcomp.reference = 'TriggerTest/ref_data_v1Dev_build.ref' refcomp.required = True # Final exit code depends on this step CheckSteps.add_step_after_type(test.check_steps, CheckSteps.LogMergeStep, refcomp) diff --git a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_build.py b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_build.py index 04ba3739ca88c8bd104be6a124134530eda0dca6..606462a0cc42f12d9b4481801b52f89c5cfd67fd 100755 --- a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_build.py +++ b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_build.py @@ -42,7 +42,7 @@ msgcount.required = True # make the test exit code depend on this step # Add a step comparing counts in the log against reference refcomp = CheckSteps.RegTestStep("CountRefComp") -refcomp.regex = 'TrigSignatureMoniMT.*HLT_.*|TrigSignatureMoniMT.*-- #[0-9]+ (Events|Features).*' +refcomp.regex = r'TrigSignatureMoniMT\s*INFO\sHLT_.*|TrigSignatureMoniMT\s*INFO\s-- #[0-9]+ (Events|Features).*' refcomp.reference = 'TriggerTest/ref_data_v1Dev_build.ref' refcomp.required = True # Final exit code depends on this step CheckSteps.add_step_after_type(test.check_steps, CheckSteps.LogMergeStep, refcomp) diff --git a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_reverseViews_build.py b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_reverseViews_build.py index 5cb1502620d6ceb44966eb6c0301d3951d0af49e..55c710bd709a6f8da0079ddb2d5b05e15349a081 100755 --- a/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_reverseViews_build.py +++ b/Trigger/TrigValidation/TriggerTest/test/test_trig_data_v1Dev_reverseViews_build.py @@ -31,7 +31,7 @@ test.check_steps = CheckSteps.default_check_steps(test) # Add a step comparing counts in the log against reference from test_trig_data_v1Dev_build refcomp = CheckSteps.RegTestStep("CountRefComp") -refcomp.regex = 'TrigSignatureMoniMT.*HLT_.*|TrigSignatureMoniMT.*-- #[0-9]+ (Events|Features).*' +refcomp.regex = r'TrigSignatureMoniMT\s*INFO\sHLT_.*|TrigSignatureMoniMT\s*INFO\s-- #[0-9]+ (Events|Features).*' refcomp.reference = 'TriggerTest/ref_data_v1Dev_build.ref' refcomp.required = True # Final exit code depends on this step CheckSteps.add_step_after_type(test.check_steps, CheckSteps.LogMergeStep, refcomp) diff --git a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py index e3109c8979fe88a3eb762c062215cbc42a7b6661..c490b065d94eeabeb95a38f12877e6815c61257d 100644 --- a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py +++ b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py @@ -238,7 +238,8 @@ TriggerHLTListRun3 = [ ('xAOD::L2IsoMuonAuxContainer#HLT_MuonL2ISInfoAux.', 'BS ESD AODFULL', 'Muon'), ('TrigRoiDescriptorCollection#HLT_Roi_L2SAMuon', 'BS ESD AODFULL', 'Muon'), - ('TrigRoiDescriptorCollection#HLT_Roi_L2SAMuonForEF', 'BS ESD AODFULL', 'Muon'), + ('TrigRoiDescriptorCollection#HLT_Roi_L2SAMuonForEF', 'BS ESD AODFULL', 'Muon'), + ('TrigRoiDescriptorCollection#HLT_Roi_MuonIso', 'BS ESD AODFULL', 'Muon'), # Tau diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/Lvl1SimulationConfig.py b/Trigger/TriggerCommon/TriggerJobOpts/python/Lvl1SimulationConfig.py index d8193e398fed470a9c34a618eb849d6f9afc3164..5a4a05121083f370ec9b4e8b2dbbb64861890de5 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/python/Lvl1SimulationConfig.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/python/Lvl1SimulationConfig.py @@ -175,9 +175,9 @@ def Lvl1SimulationSequence( flags = None ): # Topo ################################################## + l1TopoSim = None if flags.Trigger.enableL1Phase1: - log.info("No phase1 configuration for L1Topo simulation is available, adding L1TopoSimPlaceholder") - l1TopoSim = AthSequencer("L1TopoSimPlaceholder") + log.info("No phase1 configuration for L1Topo simulation is available") else: from L1TopoSimulation.L1TopoSimulationConfig import L1TopoSimulation l1TopoSim = L1TopoSimulation() @@ -214,5 +214,9 @@ def Lvl1SimulationSequence( flags = None ): ctpSim += [roib] #l1Sim = seqAND("l1Sim", [caloTowerMaker] ) - l1Sim = seqAND("l1Sim", [l1CaloSim, l1MuonSim, l1TopoSim, ctpSim] ) + if l1TopoSim: + l1Sim = seqAND("l1Sim", [l1CaloSim, l1MuonSim, l1TopoSim, ctpSim] ) + else: + l1Sim = seqAND("l1Sim", [l1CaloSim, l1MuonSim, ctpSim] ) + return l1Sim diff --git a/Trigger/TriggerCommon/TriggerJobOpts/share/TriggerConfigCheckMetadata.py b/Trigger/TriggerCommon/TriggerJobOpts/share/TriggerConfigCheckMetadata.py index f3fefa918577da8f85c8156d2ccc95b6ad24118e..1496a80e29639d37c4acef6e94501d1f59cb4fde 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/share/TriggerConfigCheckMetadata.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/share/TriggerConfigCheckMetadata.py @@ -28,13 +28,11 @@ if len(athenaCommonFlags.PoolESDInput())>0 or len(athenaCommonFlags.PoolAODInput TriggerFlags.dataTakingConditions.set_Value_and_Lock('Lvl1Only') DQMonFlags.doHLTMon.set_Value_and_Lock(False) # now that some hltmon moved to ESDtoAOD DQMonFlags.useTrigger.set_Value_and_Lock(False) - TriggerFlags.NtupleProductionFlags.ProductionLocation.set_Value_and_Lock('') if hasHLT and not hasLVL1: log.error("This pool file does not contain LVL1 trigger information ") log.info("Disabling trigger ntuples and trigger aware DQMonitoring but not HLT monitoring.") TriggerFlags.dataTakingConditions.set_Value_and_Lock('HltOnly') - TriggerFlags.NtupleProductionFlags.ProductionLocation.set_Value_and_Lock('') DQMonFlags.useTrigger.set_Value_and_Lock(False) DQMonFlags.doLVL1CaloMon.set_Value_and_Lock(False) DQMonFlags.doCTPMon.set_Value_and_Lock(False) @@ -56,7 +54,6 @@ if len(athenaCommonFlags.PoolESDInput())>0 or len(athenaCommonFlags.PoolAODInput DQMonFlags.useTrigger.set_Value_and_Lock(False) DQMonFlags.doLVL1CaloMon.set_Value_and_Lock(False) DQMonFlags.doCTPMon.set_Value_and_Lock(False) - TriggerFlags.NtupleProductionFlags.ProductionLocation.set_Value_and_Lock('') try: from MuonDQAMonFlags.MuonDQAProperFlags import MuonDQADetFlags MuonDQADetFlags.doTGCL1Mon.set_Value_and_Lock(False) diff --git a/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py b/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py index 45e27aa217e3d48b5b51e36f92f2308fd0af166e..ca7855e39eff13a4123acf20c19dd559779b1f93 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py @@ -25,9 +25,9 @@ class opt: useCONDBR2 = True # if False, use run-1 conditions DB condOverride = {} # overwrite conditions folder tags e.g. '{"Folder1":"Tag1", "Folder2":"Tag2"}' doHLT = True # run HLT? - doID = True # TriggerFlags.doID - doCalo = True # TriggerFlags.doCalo - doMuon = True # TriggerFlags.doMuon + doID = True # ConfigFlags.Trigger.doID + doCalo = True # ConfigFlags.Trigger.doCalo + doMuon = True # ConfigFlags.Trigger.doMuon doDBConfig = None # dump trigger configuration trigBase = None # file name for trigger config dump enableCostD3PD = False # enable cost monitoring @@ -142,7 +142,7 @@ if len(athenaCommonFlags.FilesInput())>0: opt.setDetDescr = af.fileinfos.get('geometry',None) if opt.setGlobalTag is None: opt.setGlobalTag = af.fileinfos.get('conditions_tag',None) or \ - (TriggerFlags.OnlineCondTag() if opt.isOnline else 'CONDBR2-BLKPA-2018-13') + (ConfigFlags.Trigger.OnlineCondTag if opt.isOnline else 'CONDBR2-BLKPA-2018-13') TriggerJobOpts.Modifiers._run_number = af.fileinfos['run_number'][0] else: # athenaHLT @@ -165,14 +165,13 @@ ConfigFlags.Input.Format = 'BS' if globalflags.InputFormat=='bytestream' else 'P # Set final Cond/Geo tag based on input file, command line or default -globalflags.DetDescrVersion = opt.setDetDescr or TriggerFlags.OnlineGeoTag() +globalflags.DetDescrVersion = opt.setDetDescr or ConfigFlags.Trigger.OnlineGeoTag ConfigFlags.GeoModel.AtlasVersion = globalflags.DetDescrVersion() -globalflags.ConditionsTag = opt.setGlobalTag or TriggerFlags.OnlineCondTag() +globalflags.ConditionsTag = opt.setGlobalTag or ConfigFlags.Trigger.OnlineCondTag ConfigFlags.IOVDb.GlobalTag = globalflags.ConditionsTag() # Other defaults -jobproperties.Beam.beamType = 'collisions' -ConfigFlags.Beam.Type = jobproperties.Beam.beamType() +ConfigFlags.Beam.Type = jobproperties.Beam.beamType = 'collisions' jobproperties.Beam.bunchSpacing = 25 globalflags.DatabaseInstance='CONDBR2' if opt.useCONDBR2 else 'COMP200' ConfigFlags.IOVDb.DatabaseInstance=globalflags.DatabaseInstance() @@ -183,8 +182,8 @@ globalflags.print_JobProperties() # Set default doL1Sim option depending on input type (if not set explicitly) if 'doL1Sim' not in globals(): - opt.doL1Sim = globalflags.DataSource != 'data' - log.info('Setting default doL1Sim=%s because globalflags.DataSource=%s', opt.doL1Sim, globalflags.DataSource()) + opt.doL1Sim = ConfigFlags.Input.isMC + log.info('Setting default doL1Sim=%s because ConfigFlags.Input.isMC=%s', opt.doL1Sim, ConfigFlags.Input.isMC) # Translate opts to flags for LVL1 ConfigFlags.Trigger.doLVL1 = opt.doL1Sim @@ -275,23 +274,23 @@ include.block("RecExCond/RecExCommon_flags.py") #------------------------------------------------------------- # Setting DetFlags #------------------------------------------------------------- -if globalflags.InputFormat.is_bytestream(): - TriggerFlags.doLVL1 = False +if ConfigFlags.Input.Format == 'BS': + ConfigFlags.Trigger.doLVL1 = False from AthenaCommon.DetFlags import DetFlags -if TriggerFlags.doLVL1(): +if ConfigFlags.Trigger.doLVL1: DetFlags.detdescr.all_setOn() -if TriggerFlags.doID(): +if ConfigFlags.Trigger.doID: DetFlags.detdescr.ID_setOn() DetFlags.makeRIO.ID_setOn() else: DetFlags.ID_setOff() -if TriggerFlags.doMuon(): +if ConfigFlags.Trigger.doMuon: DetFlags.detdescr.Muon_setOn() DetFlags.makeRIO.all_setOn() else: DetFlags.Muon_setOff() -if TriggerFlags.doCalo(): +if ConfigFlags.Trigger.doCalo: DetFlags.detdescr.Calo_setOn() from LArConditionsCommon.LArCondFlags import larCondFlags larCondFlags.LoadElecCalib.set_Value_and_Lock(False) @@ -371,18 +370,18 @@ from AthenaCommon.DetFlags import DetFlags DetFlags.BField_setOn() include ("RecExCond/AllDet_detDescr.py") -if TriggerFlags.doID(): +if ConfigFlags.Trigger.doID: from InDetRecExample.InDetJobProperties import InDetFlags InDetFlags.doPrintConfigurables = log.getEffectiveLevel() <= logging.DEBUG include( "InDetRecExample/InDetRecCabling.py" ) -if TriggerFlags.doCalo(): +if ConfigFlags.Trigger.doCalo: from TrigT2CaloCommon.TrigT2CaloCommonConfig import TrigDataAccess svcMgr.ToolSvc += TrigDataAccess() - if globalflags.InputFormat.is_pool(): - TriggerFlags.doTransientByteStream = True # enable transient BS if TrigDataAccess is used with pool data + if ConfigFlags.Input.Format == 'POOL': + ConfigFlags.Trigger.doTransientByteStream = True # enable transient BS if TrigDataAccess is used with pool data -if TriggerFlags.doMuon(): +if ConfigFlags.Trigger.doMuon: TriggerFlags.MuonSlice.doTrigMuonConfig=True import MuonCnvExample.MuonCablingConfig # noqa: F401 import MuonRecExample.MuonReadCalib # noqa: F401 @@ -392,7 +391,7 @@ if TriggerFlags.doMuon(): # --------------------------------------------------------------- # ID conditions # --------------------------------------------------------------- -if TriggerFlags.doID: +if ConfigFlags.Trigger.doID: from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags InDetTrigFlags.doPixelClusterSplitting = False @@ -403,12 +402,12 @@ if TriggerFlags.doID: # ---------------------------------------------------------------- # Pool input # ---------------------------------------------------------------- -if globalflags.InputFormat.is_pool(): +if ConfigFlags.Input.Format == 'POOL': import AthenaPoolCnvSvc.ReadAthenaPool # noqa svcMgr.AthenaPoolCnvSvc.PoolAttributes = [ "DEFAULT_BUFFERSIZE = '2048'" ] svcMgr.PoolSvc.AttemptCatalogPatch=True # enable transient BS - if TriggerFlags.doTransientByteStream(): + if ConfigFlags.Trigger.doTransientByteStream: log.info("setting up transient BS") include( "TriggerJobOpts/jobOfragment_TransBS_standalone.py" ) @@ -451,7 +450,7 @@ hltTop += hltBeginSeq topSequence += hltTop if opt.doL1Unpacking: - if globalflags.InputFormat.is_bytestream() or opt.doL1Sim: + if ConfigFlags.Input.Format == 'BS' or opt.doL1Sim: ConfigFlags.Trigger.L1Decoder.forceEnableAllChains = opt.forceEnableAllChains from L1Decoder.L1DecoderConfig import L1DecoderCfg CAtoGlobalWrapper(L1DecoderCfg, ConfigFlags, seqName="HLTBeginSeq") diff --git a/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt b/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt index b8cbae98c2c1bf8cdcfceae2615d53a9ff6a79ab..dfbbd4dfb02bbf642437afd551bf8c258b93e345 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt +++ b/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt @@ -43,8 +43,8 @@ function( atlas_build_lvl1_trigger_menu menu ) COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_BINARY_DIR}/Menus/${menu}/ ${CMAKE_XML_OUTPUT_DIRECTORY}/TriggerMenuMT - COMMAND ${CMAKE_COMMAND} -E touch - ${CMAKE_CURRENT_BINARY_DIR}/${menu}.stamp + #COMMAND ${CMAKE_COMMAND} -E touch # do not create stamp file to force rebuild every time + #${CMAKE_CURRENT_BINARY_DIR}/${menu}.stamp DEPENDS "Package_$<JOIN:$<TARGET_PROPERTY:ATLAS_PACKAGES_TARGET,ATLAS_PACKAGES>,;Package_>" ) # Create custom target and add it to package dependencies diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/CFValidation.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/CFValidation.py index e280093f5ea84d2333d268072542c4f7ef656adc..b9afdb1b78c5353dbdef6f8d99eb46ae9d5b335d 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/CFValidation.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/CFValidation.py @@ -21,7 +21,7 @@ def findViewAlgs( inputNodes, viewNodes ): if isSequence( node ): # Empty nodes can cause Gaudi scheduler bug https://gitlab.cern.ch/gaudi/Gaudi/-/issues/135 - if len( node.getChildren() ) == 0 and node.ModeOR: + if len( node.getChildren() ) == 0 and ( hasattr( node, "ModeOR" ) and node.ModeOR ): raise RuntimeError( "Empty CF sequence in OR mode can cause Gaudi scheduler bug. Please remove " + node.getName() ) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/Cosmic_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/Cosmic_run3_v1.py index 7de45793b0915579365da11e30560581d57666b4..a8eba131f7f89ccf29b8721b6e8143a0d0e5d57a 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/Cosmic_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/Cosmic_run3_v1.py @@ -40,8 +40,9 @@ def setupMenu(): TriggerFlags.CosmicSlice.signatures = [] TriggerFlags.StreamingSlice.signatures = [ - ChainProp(name='HLT_noalg_idcosmic_L1TRT_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['IDCosmic','express'],groups=['RATE:SeededStreamers','BW:Other']), - ChainProp(name='HLT_noalg_idcosmic_L1TRT_FILLED', l1SeedThresholds=['FSNOSEED'], stream=['IDCosmic'],groups=['RATE:SeededStreamers','BW:Other']), + # Commented out due to ATR-21884 + # ChainProp(name='HLT_noalg_idcosmic_L1TRT_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['IDCosmic','express'],groups=['RATE:SeededStreamers','BW:Other']), + # ChainProp(name='HLT_noalg_idcosmic_L1TRT_FILLED', l1SeedThresholds=['FSNOSEED'], stream=['IDCosmic'],groups=['RATE:SeededStreamers','BW:Other']), ChainProp(name='HLT_noalg_cosmicmuons_L1MU4_EMPTY', stream=['CosmicMuons','express'],groups=['RATE:Cosmic_Muon','BW:Muon']), ChainProp(name='HLT_noalg_cosmiccalo_L1MU11_EMPTY', stream=['CosmicMuons','express'],groups=['RATE:Cosmic_Muon','BW:Muon']), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonDef.py index 92e9b57bb62f20b718e8413c68b2c14f76f68888..8b80aeabf3a7ab93dff16e687f22055141b5d973 100755 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonDef.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonDef.py @@ -135,12 +135,6 @@ class MuonChainConfiguration(ChainConfigurationBase): else: doOvlpRm = False - - - # tmp comment out OverlapRm /FP: - doOvlpRm= False - - if doOvlpRm: return self.getStep(1,"mufast", [muFastOvlpRmSequenceCfg] ) else: @@ -158,11 +152,6 @@ class MuonChainConfiguration(ChainConfigurationBase): else: doOvlpRm = False - - # tmp comment out OverlapRm /FP: - doOvlpRm= False - - if doOvlpRm: return self.getStep(2, 'muComb', [muCombOvlpRmSequenceCfg] ) else: diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonSequenceSetup.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonSequenceSetup.py index 2f9ff85be78fbcd13db9ed7dd95a7f5cc703005c..6e74f9bf4a14ab6d6a19bfc51ccd7ef9714a979f 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonSequenceSetup.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/MuonSequenceSetup.py @@ -86,19 +86,12 @@ def muFastOvlpRmSequence(): trigMufastHypo = TrigMufastHypoAlg("TrigL2MufastHypoAlg") trigMufastHypo.MuonL2SAInfoFromMuFastAlg = sequenceOut - from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigMufastHypoToolFromDict - - ### set up MuSAOverlapRemoval ### - from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigL2MuonOverlapRemoverMufastAlg - trigL2MuonOverlapRemover = TrigL2MuonOverlapRemoverMufastAlg("TrigL2MuonOverlapRemoverMufastAlg") - trigL2MuonOverlapRemover.L2MuonOverlapInfoFromMuFastAlg = sequenceOut + from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigMufastHypoToolwORFromDict - from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigL2MuonOverlapRemoverMufastToolFromDict - return MenuSequence( Sequence = l2muFastSequence, Maker = l2MuViewsMaker, - Hypo = [trigMufastHypo, trigL2MuonOverlapRemover], - HypoToolGen = [TrigMufastHypoToolFromDict, TrigL2MuonOverlapRemoverMufastToolFromDict] ) + Hypo = trigMufastHypo, + HypoToolGen = TrigMufastHypoToolwORFromDict ) #-----------------------------------------------------# @@ -185,20 +178,13 @@ def muCombOvlpRmSequence(): trigmuCombHypo = TrigmuCombHypoAlg("TrigL2MuCBHypoAlg") trigmuCombHypo.MuonL2CBInfoFromMuCombAlg = sequenceOut - from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigmuCombHypoToolFromDict - - ### set up MuSAOverlapRemoval ### - from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigL2MuonOverlapRemoverMucombAlg - trigL2MuonOverlapRemover = TrigL2MuonOverlapRemoverMucombAlg("TrigL2MuonOverlapRemoverMucombAlg") - trigL2MuonOverlapRemover.L2MuonOverlapInfoFromMuCombAlg = sequenceOut - - from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigL2MuonOverlapRemoverMucombToolFromDict + from TrigMuonHypoMT.TrigMuonHypoMTConfig import TrigmuCombHypoToolwORFromDict return MenuSequence( Sequence = l2muCombSequence, Maker = l2muCombViewsMaker, - Hypo = [trigmuCombHypo, trigL2MuonOverlapRemover], - HypoToolGen = [TrigmuCombHypoToolFromDict, TrigL2MuonOverlapRemoverMucombToolFromDict] ) - + Hypo = trigmuCombHypo, + HypoToolGen = TrigmuCombHypoToolwORFromDict ) + ###################### @@ -569,7 +555,7 @@ def muEFIsoAlgSequence(ConfigFlags): newRoITool = ViewCreatorCentredOnIParticleROITool() newRoITool.RoIEtaWidth=0.15 newRoITool.RoIPhiWidth=0.15 - newRoITool.RoisWriteHandleKey = "IsoMuRoIs" + newRoITool.RoisWriteHandleKey = recordable("HLT_Roi_MuonIso") # efmuIsoViewsMaker.mergeUsingFeature = True efmuIsoViewsMaker.RoITool = newRoITool diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Items.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Items.py index cca5145d6be95dbc4d794dee142ee1db48e2d8b4..4752255af54200376c797cb875febe4445a77cee 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Items.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Items.py @@ -183,3 +183,29 @@ class PrescaleHandler(object): for itemList in self.itemsByPartition.values(): itemList.sort(lambda x,y: cmp(x.ctpid,y.ctpid)) + +class meta_d(type): + def __getattr__(cls, attr): + import traceback + isTopo = any(filter(lambda x: attr.startswith(x), ["R2TOPO_", "TOPO_", "MUTOPO_", "MULTTOPO_"])) + fs = traceback.extract_stack()[-2] + expProdFile = "L1/Config/" + if isTopo: + if attr.startswith("R2TOPO_"): + expProdFile += "TopoAlgoDefLegacy.py" + elif attr.startswith("TOPO_"): + expProdFile += "TopoAlgoDef.py" + elif attr.startswith("MUTOPO_"): + expProdFile += "TopoAlgoDefMuctpi.py" + elif attr.startswith("MULTTOPO_"): + expProdFile += "TopoMultiplicityAlgoDef.py" + else: + isLegacyThr = any(filter(lambda x: attr.startswith(x), ["EM", "TAU", "J", "XE", "TE", "XS"])) + if isLegacyThr: + expProdFile += "ThresholdDefLegacy.py" + else: + expProdFile += "ThresholdDef.py" + + msg = "Item definition issue in file %s, line %i. Threshold %s has not been defined in %s" % ('/'.join(fs.filename.rsplit('/',4)[1:]),fs.lineno, attr, expProdFile) + log.error(msg) + raise RuntimeError(msg) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py index 645350d48005bd71e24c4a48d978dd70d4f4e160..d00b2c1d597586a84a3317ea985b237e2c48d645 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py @@ -68,7 +68,7 @@ class L1Menu(object): def addTopoAlgo(self, algo, category): - algo.setThresholds( self.thresholds ) + algo.setThresholds( self.thresholds ) # each algo gets a pointer to the full thresholds definition (for the extrainfo) self.topoAlgos.addAlgo(algo, category) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py index e2948d0dc93029cabc9da8984524c289ddf8e997..fb8a2a6f2d1dac158c027f7624cd8766a8c8fb58 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py @@ -65,7 +65,7 @@ class MenuThresholdsCollection( object ): def json(self): confObj = odict() - for ttype in (ThrType.Run3Types() + ThrType.NIMTypes() + [ThrType.TOPO, ThrType.MUTOPO, ThrType.MULTTOPO ]): + for ttype in (ThrType.Run3Types() + ThrType.NIMTypes() + [ThrType.TOPO, ThrType.MUTOPO ]): confObj[ttype.name] = odict() confObj[ttype.name]["type"] = ttype.name confObj[ttype.name]["thresholds"] = odict() diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/TopoAlgorithms.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/TopoAlgorithms.py index 2ee146042e8a1339ba7bf351d6f592f7054fe6a1..604ae7398dda7d086781921a30d3e8085a875726 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/TopoAlgorithms.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/TopoAlgorithms.py @@ -18,15 +18,16 @@ class AlgType(Enum): self.key = key class AlgCategory(Enum): - TOPO = (1, 'TOPO', 'new topo') - MUCTPI = (2, 'MUTOPO', 'muctpi topo') - LEGACY = (3, 'R2TOPO', 'legacy topo') - MULTI = (4, 'MULTTOPO', 'multiplicity topo') + TOPO = (1, 'TOPO', 'new topo', 'TopoAlgoDef') + MUCTPI = (2, 'MUTOPO', 'muctpi topo', 'TopoAlgoDefMuctpi') + LEGACY = (3, 'R2TOPO', 'legacy topo', 'TopoAlgoDefLegacy') + MULTI = (4, 'MULTTOPO', 'multiplicity topo', 'TopoAlgoDefMultiplicity') - def __init__(self, _, key, desc ): + def __init__(self, _, key, desc, defFile ): self.key = key self.prefix = key + '_' if key else '' self.desc = desc + self.defFile = defFile def __str__(self): return self.desc diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py index be4581032ca5195c64db46373b3b5994edc6453f..63cc987b224264e367606745b7a2c59d34fdfa79 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/ItemDef.py @@ -16,7 +16,7 @@ log = logging.getLogger('Menu.L1.Config.ItemDef') # The trigger types from ..Base.Limits import Limits from ..Base.Logic import Logic, Not -from ..Base.Items import MenuItem +from ..Base.Items import MenuItem, meta_d from ..Base.Thresholds import TopoThreshold from ..Base.CTPCondition import ThrCondition, InternalTrigger # noqa: F401 from .TriggerTypeDef import TT @@ -44,7 +44,7 @@ class ItemDef: isHIV5 = 'HI_v5' in menuName isPhaseII = '_PhaseII' in menuName - class d: pass + class d(metaclass=meta_d): pass # ... and make them accessible by their name for thr in tc.getDefinedThresholds(): diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoMultiplicityAlgoDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py similarity index 98% rename from Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoMultiplicityAlgoDef.py rename to Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py index 27a81314276ae4be253b15c26defe48b1e752314..9f405d85cbe91a89bafb2cb1fc42155f4b23e6d4 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoMultiplicityAlgoDef.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Config/TopoAlgoDefMultiplicity.py @@ -5,7 +5,7 @@ log = logging.getLogger('Menu.L1.Config.TopoMultiplicityAlgoDef') from ..Base.TopoAlgos import EMMultiplicityAlgo, TauMultiplicityAlgo, JetMultiplicityAlgo, XEMultiplicityAlgo -class TopoMultiplicityAlgoDef(object): +class TopoAlgoDefMultiplicity(object): """ Defines the TopoAlgorithms that calculate multiplicities for L1Calo thresholds The thresholds have to be explicitly defined here. diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/L1MenuConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/L1MenuConfig.py index 625318388241aa6a9e8575724a647c4318df9778..565e6c24858d8fe995ea16b64f392305360746e1 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/L1MenuConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/L1MenuConfig.py @@ -1,6 +1,7 @@ -6# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration import re +from importlib import import_module from collections import defaultdict as ddict from AthenaCommon.Logging import logging @@ -52,9 +53,9 @@ class L1MenuConfig(object): AlgCategory.TOPO : 0, AlgCategory.MUCTPI : 0, AlgCategory.LEGACY : 0 } # all registered topo algos - self._definedTopoAlgos = {} + self._registeredTopoAlgos = {} for cat in AlgCategory.getAllCategories(): - self._definedTopoAlgos[cat] = {} + self._registeredTopoAlgos[cat] = {} # menu L1MenuFlags.CTPVersion = 4 # this needs to be done here already, since L1Menu depends on it during init @@ -111,28 +112,11 @@ class L1MenuConfig(object): if self.currentAlgoDef == AlgCategory.MULTI: algo.name = "Mult_" + algo.name - if algo.name in self._definedTopoAlgos[AlgCategory.MULTI]: - raise RuntimeError('L1Topo multiplicity algo %s is already registered as such' % algo.name) - self._definedTopoAlgos[AlgCategory.MULTI][algo.name] = algo - log.debug("Added in the multiplicity topo algo list: {0}, ID:{1}" .format(algo.name,algo.algoId)) - - elif self.currentAlgoDef == AlgCategory.MUCTPI: - if algo.name in self._definedTopoAlgos[AlgCategory.MUCTPI]: - raise RuntimeError('L1Topo MuCTPi algo %s is already registered as such' % algo.name) - self._definedTopoAlgos[AlgCategory.MUCTPI][algo.name] = algo - log.debug("Added in the MuCTPi topo algo list: {0}, ID:{1}" .format(algo.name,algo.algoId)) - - elif self.currentAlgoDef == AlgCategory.TOPO: - if algo.name in self._definedTopoAlgos[AlgCategory.TOPO]: - raise RuntimeError('L1Topo algo %s is already registered as such' % algo.name) - self._definedTopoAlgos[AlgCategory.TOPO][algo.name] = algo - log.debug("Added in the topo algo list: {0}, ID:{1}" .format(algo.name,algo.algoId)) - - elif self.currentAlgoDef == AlgCategory.LEGACY: - if algo.name in self._definedTopoAlgos[AlgCategory.LEGACY]: - raise RuntimeError('L1Topo legacy algo %s is already registered as such' % algo.name) - self._definedTopoAlgos[AlgCategory.LEGACY][algo.name] = algo - log.debug("Added in the legacy topo algo list: {0}, ID:{1}" .format(algo.name,algo.algoId)) + + if algo.name in self._registeredTopoAlgos[self.currentAlgoDef]: + raise RuntimeError('%s algo %s is already registered as such' % (self.currentAlgoDef.desc, algo.name)) + self._registeredTopoAlgos[self.currentAlgoDef][algo.name] = algo + log.debug("Added in the %s algo list: {0}, ID:{1}" .format(self.currentAlgoDef.desc, algo.name,algo.algoId)) return algo @@ -183,7 +167,7 @@ class L1MenuConfig(object): # for all topo algorithm categories the outputs (sometimes multiple) are defined as thresholds for cat in AlgCategory.getAllCategories(): outputLines = [] - for algo in self._definedTopoAlgos[cat].values(): + for algo in self._registeredTopoAlgos[cat].values(): outputLines += algo.outputs if (type(algo.outputs) == list) else [ algo.outputs ] self._topoTriggers[cat] = sorted(outputLines) log.info("... found %i topo triggerlines (source: %s)", len(self._topoTriggers[cat]), cat ) @@ -306,30 +290,14 @@ class L1MenuConfig(object): MenuItem.setMenuConfig(self) # from now on all newly created MenuItems are automatically registered here from .Base.Thresholds import Threshold Threshold.setMenuConfig(self) # from now on all newly created Thresholds definitions are automatically registered here - - log.info("Reading TriggerMenuMT.Config.TopoAlgoDef") - self.currentAlgoDef = AlgCategory.TOPO - from .Config.TopoAlgoDef import TopoAlgoDef - TopoAlgoDef.registerTopoAlgos(self) - log.info("... registered %i defined topo algos for the new topo boards", len(self._definedTopoAlgos[AlgCategory.TOPO])) - - log.info("Reading TriggerMenuMT.Config.TopoAlgoDefMuctpi") - self.currentAlgoDef = AlgCategory.MUCTPI - from .Config.TopoAlgoDefMuctpi import TopoAlgoDefMuctpi - TopoAlgoDefMuctpi.registerTopoAlgos(self) - log.info("... registered %i defined topo algos for the MuCTPi", len(self._definedTopoAlgos[AlgCategory.MUCTPI])) - - log.info("Reading TriggerMenuMT.Config.TopoMultiplicityAlgoDef") - self.currentAlgoDef = AlgCategory.MULTI - from .Config.TopoMultiplicityAlgoDef import TopoMultiplicityAlgoDef - TopoMultiplicityAlgoDef.registerTopoAlgos(self) - log.info("... registered %i defined topo multiplicity algos for the new topo boards", len(self._definedTopoAlgos[AlgCategory.MULTI])) - - log.info("Reading TriggerMenuMT.Config.TopoAlgoDefLegacy") - self.currentAlgoDef = AlgCategory.LEGACY - from .Config.TopoAlgoDefLegacy import TopoAlgoDefLegacy - TopoAlgoDefLegacy.registerTopoAlgos(self) - log.info("... registered %i defined topo algos for the legacy topo boards", len(self._definedTopoAlgos[AlgCategory.LEGACY])) + + # register Topo algorithms + for algCat in [AlgCategory.TOPO, AlgCategory.MUCTPI, AlgCategory.MULTI, AlgCategory.LEGACY]: + self.currentAlgoDef = algCat + defFile = "TriggerMenuMT.L1.Config.%s" % self.currentAlgoDef.defFile + log.info("Reading %s", defFile) + import_module(defFile).__getattribute__(self.currentAlgoDef.defFile).registerTopoAlgos(self) + log.info("... registered %i defined topo algos for the %s board(s)", len(self._registeredTopoAlgos[self.currentAlgoDef]), self.currentAlgoDef.desc) log.info("Reading TriggerMenuMT.Config.ThreholdDef") from .Config.ThresholdDef import ThresholdDef @@ -356,9 +324,12 @@ class L1MenuConfig(object): def _getTopoAlgo(self, algoName, category): - if algoName in self._definedTopoAlgos[category]: - return self._definedTopoAlgos[category][algoName] - raise RuntimeError("Algorithm of name %s is not defined in category %s\nAvailable are %r" % (algoName, category,self._definedTopoAlgos[category].keys()) ) + if algoName in self._registeredTopoAlgos[category]: + return self._registeredTopoAlgos[category][algoName] + msg = "Algorithm of name %s in category %s is not registered. Please add the algorithm to L1/Config/%s.py" % (algoName, category, category.defFile) + log.error(msg) + log.info("Available algorithms in this category are %s", ",".join(self._registeredTopoAlgos[category].keys())) + raise RuntimeError(msg) def _getSortingAlgoThatProvides(self, input, topoAlgCategory): @@ -368,7 +339,7 @@ class L1MenuConfig(object): runtime exception """ sortingAlgs = [] - for name, alg in self._definedTopoAlgos[topoAlgCategory].items(): # TODO: extend to legacy topo + for name, alg in self._registeredTopoAlgos[topoAlgCategory].items(): if type(alg.outputs)==list: foundOutput = (input in alg.outputs) else: @@ -377,9 +348,11 @@ class L1MenuConfig(object): sortingAlgs += [alg] if len(sortingAlgs)==0: - raise RuntimeError("No sorting algorithm is providing this output: %s" % input) + msg = "No topo sorting algorithm is providing this output: %s. Please add the sorting algorithm to L1/Config/%s.py" % (input, topoAlgCategory.defFile) + raise RuntimeError(msg) if len(sortingAlgs)>1: - raise RuntimeError("More than one sorting algorithm is providing this output: %s. Here the list: %s" % (input, ', '.join(sortingAlgs))) + msg = "More than one sorting algorithm is providing this output: %s. Here the list: %s" % (input, ', '.join(sortingAlgs)) + raise RuntimeError(msg) return sortingAlgs[0] @@ -495,43 +468,6 @@ class L1MenuConfig(object): self.l1menu.ctp.bunchGroupSet = createDefaultBunchGroupSet() - # ------------------ - # Items - # ------------------ - - # build list of items for the menu from the list of requested names - itemsForMenu = [] - ctpIdMap = L1MenuFlags.CtpIdMap() - for itemName in L1MenuFlags.items(): - registeredItem = self.getRegisteredItem(itemName) - if registeredItem is None: - msg = "L1 item '%s' has not been defined in L1/Config/ItemDef.py" % itemName - log.error(msg) - raise RuntimeError(msg) - - if itemName in ctpIdMap: - newCTPID = ctpIdMap[itemName] - registeredItem.setCtpid(newCTPID) - - itemsForMenu += [ registeredItem ] - - - # CTP IDs available for assignment - assigned_ctpids = set([item.ctpid for item in itemsForMenu]) - available_ctpids = sorted( list( set(range(Limits.MaxTrigItems)) - assigned_ctpids ), reverse=True ) - - # add the items to the menu - for item in itemsForMenu: - # set the physics bit - if not item.name.startswith('L1_CALREQ'): - item.setTriggerType( item.trigger_type | TT.phys ) - # assign ctp IDs to items that don't have one - if item.ctpid == -1: - item.setCtpid( available_ctpids.pop() ) - # add the items into the menu - self.l1menu.addItem( item ) - - # ------------------ # Thresholds # ------------------ @@ -597,6 +533,51 @@ class L1MenuConfig(object): (self.l1menu.menuName, ', '.join(list_of_undefined_thresholds)) ) + # ------------------ + # Items + # ------------------ + + # build list of items for the menu from the list of requested names + itemsForMenu = [] + ctpIdMap = L1MenuFlags.CtpIdMap() + for itemName in L1MenuFlags.items(): + registeredItem = self.getRegisteredItem(itemName) + if registeredItem is None: + msg = "L1 item '%s' has not been defined in L1/Config/ItemDef.py" % itemName + log.error(msg) + raise RuntimeError(msg) + + if itemName in ctpIdMap: + newCTPID = ctpIdMap[itemName] + registeredItem.setCtpid(newCTPID) + + for thrName in registeredItem.thresholdNames(): + if thrName not in self.l1menu.thresholds: + isLegacyThr = any(filter(lambda x: thrName.startswith(x), ["R2TOPO_", "EM", "TAU", "J", "XE", "TE", "XS"])) + + msg = "L1 item {item} has been added to the menu L1/Menu/Menu_{menu}.py, but the required threshold {thr} is not listed as input in L1/Menu/Menu_{menu}_inputs{legacy}.py".format(item=itemName, thr=thrName, menu=self.menuToLoad(), legacy = "_legacy" if isLegacyThr else "") + log.error(msg) + raise RuntimeError(msg) + + itemsForMenu += [ registeredItem ] + + + + # CTP IDs available for assignment + assigned_ctpids = set([item.ctpid for item in itemsForMenu]) + available_ctpids = sorted( list( set(range(Limits.MaxTrigItems)) - assigned_ctpids ), reverse=True ) + + # add the items to the menu + for item in itemsForMenu: + # set the physics bit + if not item.name.startswith('L1_CALREQ'): + item.setTriggerType( item.trigger_type | TT.phys ) + # assign ctp IDs to items that don't have one + if item.ctpid == -1: + item.setCtpid( available_ctpids.pop() ) + # add the items into the menu + self.l1menu.addItem( item ) + # ------------------ # Connectors # ------------------ diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_v8_inputs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_v8_inputs.py index 33f6862e47a6a7c2bf3201dfea2bb3267c4c1c32..2f2ec498cbd67785b442c950793806e44c58b8f5 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_v8_inputs.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_v8_inputs.py @@ -59,7 +59,7 @@ def defineInputsMenu(): "type" : "ctpin", "legacy" : False, "thresholds" : [ - 'MBTS_C0', 'MBTS_C1', 'MBTS_C2', 'MBTS_C3', 'MBTS_C4' , 'MBTS_C5', 'MBTS_C6', 'MBTS_C7', 'MBTS_C8', 'MBTS_C10', 'MBTS_C12', 'MBTS_C14', + 'MBTS_C0', 'MBTS_C1', 'MBTS_C2', 'MBTS_C3', 'MBTS_C4', 'MBTS_C5', 'MBTS_C6', 'MBTS_C7', 'MBTS_C8', 'MBTS_C10', 'MBTS_C12', 'MBTS_C14', 'MBTS_C9', 'MBTS_C11', 'MBTS_C13', 'MBTS_C15', # 16x MBTSSI ('MBTS_C',3), # 1x MBTS_C 'NIMTGC', # TGC diff --git a/Trigger/TriggerSimulation/TrigSimTransforms/src/MergingEventLoopMgr.h b/Trigger/TriggerSimulation/TrigSimTransforms/src/MergingEventLoopMgr.h index 03a0033772496e9c9f4eee0074256c347f87b561..7fc85792445852c868910e13b83a89bd144fd79c 100644 --- a/Trigger/TriggerSimulation/TrigSimTransforms/src/MergingEventLoopMgr.h +++ b/Trigger/TriggerSimulation/TrigSimTransforms/src/MergingEventLoopMgr.h @@ -10,7 +10,7 @@ #include "GaudiKernel/MinimalEventLoopMgr.h" #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "Gaudi/Property.h" #include "GaudiKernel/IEvtSelector.h" #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/EventContext.h"