diff --git a/Trigger/TrigTools/IDScanHitFilter/ATLAS_CHECK_THREAD_SAFETY b/Trigger/TrigTools/IDScanHitFilter/ATLAS_CHECK_THREAD_SAFETY new file mode 100644 index 0000000000000000000000000000000000000000..61d96e367e6069905544cb36c5d86e1fdbbb4a16 --- /dev/null +++ b/Trigger/TrigTools/IDScanHitFilter/ATLAS_CHECK_THREAD_SAFETY @@ -0,0 +1 @@ +Trigger/TrigTools/IDScanHitFilter diff --git a/Trigger/TrigTools/IDScanHitFilter/CMakeLists.txt b/Trigger/TrigTools/IDScanHitFilter/CMakeLists.txt index 551e7242262b0809415f100f6c3d17f5357a37fe..3b7ddeae822c7153691b20cff4de40f2c6b01a45 100644 --- a/Trigger/TrigTools/IDScanHitFilter/CMakeLists.txt +++ b/Trigger/TrigTools/IDScanHitFilter/CMakeLists.txt @@ -6,23 +6,15 @@ atlas_subdir( IDScanHitFilter ) # Declare the package's dependencies: -atlas_depends_on_subdirs( PUBLIC +atlas_depends_on_subdirs( PRIVATE Control/AthenaBaseComps GaudiKernel Trigger/TrigEvent/TrigInDetEvent Trigger/TrigEvent/TrigSteeringEvent Trigger/TrigTools/TrigInDetToolInterfaces - PRIVATE DetectorDescription/IRegionSelector ) # Component(s) in the package: -atlas_add_library( IDScanHitFilterLib - src/*.cxx - PUBLIC_HEADERS IDScanHitFilter - LINK_LIBRARIES AthenaBaseComps GaudiKernel TrigInDetEvent TrigSteeringEvent - PRIVATE_LINK_LIBRARIES IRegionSelector ) - atlas_add_component( IDScanHitFilter - src/components/*.cxx - LINK_LIBRARIES AthenaBaseComps GaudiKernel TrigInDetEvent TrigSteeringEvent IRegionSelector IDScanHitFilterLib ) - + src/*.cxx src/components/*.cxx + LINK_LIBRARIES AthenaBaseComps GaudiKernel TrigInDetEvent TrigSteeringEvent IRegionSelector ) diff --git a/Trigger/TrigTools/IDScanHitFilter/src/FilterBin.cxx b/Trigger/TrigTools/IDScanHitFilter/src/FilterBin.cxx index 92b84b63934da32469a1a66f600b73e1817c600f..38784fc8a17aab7842f9ff1ef4c7ea7415208588 100644 --- a/Trigger/TrigTools/IDScanHitFilter/src/FilterBin.cxx +++ b/Trigger/TrigTools/IDScanHitFilter/src/FilterBin.cxx @@ -11,7 +11,7 @@ // $Id: FilyterBin.cxx, v0.0 Sun 17 Mar 2013 10:06:51 GMT sutt $ -#include "IDScanHitFilter/FilterBin.h" +#include "FilterBin.h" long FilterBin::m_maxLayers = 19; long FilterBin::m_maxBarrelLayer = 6; diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/FilterBin.h b/Trigger/TrigTools/IDScanHitFilter/src/FilterBin.h old mode 100755 new mode 100644 similarity index 85% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/FilterBin.h rename to Trigger/TrigTools/IDScanHitFilter/src/FilterBin.h index f401099cb9e29b4ff722facb746a673e062bf964..144e603b72f98ea5e1149e13505dc269442948c9 --- a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/FilterBin.h +++ b/Trigger/TrigTools/IDScanHitFilter/src/FilterBin.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ //////////////////////////////////////////////////////////////////////////////// @@ -21,8 +21,11 @@ #if ! defined( IDSCAN_FILTERBIN_H ) #define IDSCAN_FILTERBIN_H -#include "IDScanHitFilter/FixedBitSet.h" -#include "IDScanHitFilter/IdScanSpPoint.h" +#include "FixedBitSet.h" +#include "IdScanSpPoint.h" + +#include "CxxUtils/checker_macros.h" + #include <iostream> #include <list> #include <map> @@ -46,8 +49,8 @@ class FilterBin std::list<IdScanSpPoint* >& hitList(); const std::list<IdScanSpPoint* >& hitList() const; - static void setMaxLayers(long layer) { m_maxLayers = layer; } - static void setMaxBarrelLayer(long layer) { m_maxBarrelLayer = layer; } + static void setMaxLayers ATLAS_NOT_THREAD_SAFE (long layer) { m_maxLayers = layer; } + static void setMaxBarrelLayer ATLAS_NOT_THREAD_SAFE (long layer) { m_maxBarrelLayer = layer; } private: void neighborKeys( long key, long* np ) const; @@ -58,8 +61,9 @@ private: FixedBitSet m_Ldirect; // keeps direct layers FixedBitSet m_Ltotal; // keeps direct+indirect layers - static long m_maxLayers; - static long m_maxBarrelLayer; + // statics set once during initialize() via the above non-thread-safe methods: + static long m_maxLayers ATLAS_THREAD_SAFE; + static long m_maxBarrelLayer ATLAS_THREAD_SAFE; }; diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/FixedBitSet.h b/Trigger/TrigTools/IDScanHitFilter/src/FixedBitSet.h old mode 100755 new mode 100644 similarity index 100% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/FixedBitSet.h rename to Trigger/TrigTools/IDScanHitFilter/src/FixedBitSet.h diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/GC_Constants.h b/Trigger/TrigTools/IDScanHitFilter/src/GC_Constants.h old mode 100755 new mode 100644 similarity index 100% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/GC_Constants.h rename to Trigger/TrigTools/IDScanHitFilter/src/GC_Constants.h diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/Group.h b/Trigger/TrigTools/IDScanHitFilter/src/Group.h old mode 100755 new mode 100644 similarity index 98% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/Group.h rename to Trigger/TrigTools/IDScanHitFilter/src/Group.h index 3a4316e7768b1acb5cd0072cfb19fe4f9bd11efc..b7467307baf99e47eb586f433a808a1cce95ebfa --- a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/Group.h +++ b/Trigger/TrigTools/IDScanHitFilter/src/Group.h @@ -27,7 +27,7 @@ #include <iomanip> -#include "IDScanHitFilter/IdScanSpPoint.h" +#include "IdScanSpPoint.h" typedef std::vector<IdScanSpPoint*> hitVec; diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/HF_Constants.h b/Trigger/TrigTools/IDScanHitFilter/src/HF_Constants.h old mode 100755 new mode 100644 similarity index 100% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/HF_Constants.h rename to Trigger/TrigTools/IDScanHitFilter/src/HF_Constants.h diff --git a/Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.cxx b/Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.cxx index 859bd31c2717aa35be7bec1fca7a8fb7f495d49c..32296e9c71cb803f1342887a6513d4e099cf271a 100755 --- a/Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.cxx +++ b/Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ //////////////////////////////////////////////////////////////////////////////// @@ -12,6 +12,7 @@ #include <iostream> #include "GaudiKernel/MsgStream.h" +#include "CxxUtils/checker_macros.h" #include "TrigInDetEvent/TrigVertex.h" #include "TrigInDetEvent/TrigSiSpacePoint.h" @@ -19,9 +20,9 @@ #include "TrigInDetEvent/TrigInDetTrackCollection.h" #include "IRegionSelector/IRoiDescriptor.h" -#include "IDScanHitFilter/IDScanHitFilter.h" -#include "IDScanHitFilter/IdScanSpPoint.h" -#include "IDScanHitFilter/Group.h" +#include "IDScanHitFilter.h" +#include "IdScanSpPoint.h" +#include "Group.h" IDScanHitFilter::IDScanHitFilter(const std::string& t, @@ -65,10 +66,8 @@ IDScanHitFilter::IDScanHitFilter(const std::string& t, } -StatusCode IDScanHitFilter::initialize() +StatusCode IDScanHitFilter::initialize ATLAS_NOT_THREAD_SAFE() { - StatusCode sc = AthAlgTool::initialize(); - m_dPhidRCut = 0.3/m_pTcutInMeV; ATH_MSG_INFO( "IDScanHitFilter constructed " ); @@ -79,10 +78,7 @@ StatusCode IDScanHitFilter::initialize() ATH_MSG_INFO( "Clone removal set to " << m_cloneRemoval ); ATH_MSG_INFO( "dphidrcut set to " << m_dPhidRCut ); - if (m_numberingTool.retrieve().isFailure()){ - ATH_MSG_FATAL( "Tool " << m_numberingTool << " not found " ); - return StatusCode::FAILURE; - } + ATH_CHECK( m_numberingTool.retrieve() ); /// get first endcap layer, so we know how /// barrel layers there are @@ -109,14 +105,7 @@ StatusCode IDScanHitFilter::initialize() // // m_fullScan = (2*m_ROIphiHalfWidth > 6.28); - return sc; -} - - -StatusCode IDScanHitFilter::finalize() -{ - StatusCode sc = AthAlgTool::finalize(); - return sc; + return StatusCode::SUCCESS; } diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/IDScanHitFilter.h b/Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.h old mode 100755 new mode 100644 similarity index 94% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/IDScanHitFilter.h rename to Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.h index 85fa2e0c6314e2564a6fa68677239a92e30c3adc..765dff11eda9ba71089aeda3aafb6e023b1d5ffb --- a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/IDScanHitFilter.h +++ b/Trigger/TrigTools/IDScanHitFilter/src/IDScanHitFilter.h @@ -31,7 +31,7 @@ #include "AthenaBaseComps/AthAlgTool.h" -#include "IDScanHitFilter/iHitFilter.h" +#include "iHitFilter.h" #include "TrigInDetEvent/TrigInDetTrackCollection.h" #include "TrigInDetToolInterfaces/ITrigHitFilter.h" @@ -54,9 +54,8 @@ class IDScanHitFilter: public iHitFilter, public AthAlgTool, virtual public ITri IDScanHitFilter( const std::string&, const std::string&, const IInterface* ); virtual ~IDScanHitFilter(){ }; - virtual StatusCode initialize(); - virtual StatusCode finalize (); - + virtual StatusCode initialize() override; + void findTracks( std::vector<const TrigSiSpacePoint* >, TrigInDetTrackCollection&, const IRoiDescriptor*, double zvertex, diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/IdScanSpPoint.h b/Trigger/TrigTools/IDScanHitFilter/src/IdScanSpPoint.h old mode 100755 new mode 100644 similarity index 95% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/IdScanSpPoint.h rename to Trigger/TrigTools/IDScanHitFilter/src/IdScanSpPoint.h index f0e96190be4a51a8d48061bf929ca2f5a13e40b8..d9912c2b17d5e32f0b5b963cc7eafd6dd51d1047 --- a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/IdScanSpPoint.h +++ b/Trigger/TrigTools/IDScanHitFilter/src/IdScanSpPoint.h @@ -25,7 +25,7 @@ #include <vector> #include <iostream> -#include "IDScanHitFilter/tIdScanSpPoint.h" +#include "tIdScanSpPoint.h" #include "TrigInDetEvent/TrigSiSpacePoint.h" diff --git a/Trigger/TrigTools/IDScanHitFilter/src/components/IDScanHitFilter_entries.cxx b/Trigger/TrigTools/IDScanHitFilter/src/components/IDScanHitFilter_entries.cxx index df0d854f7c96664f0143e20ef90747b83aca6484..170355fa38f0bc80a8f6e8fe30844a72a4c94078 100644 --- a/Trigger/TrigTools/IDScanHitFilter/src/components/IDScanHitFilter_entries.cxx +++ b/Trigger/TrigTools/IDScanHitFilter/src/components/IDScanHitFilter_entries.cxx @@ -4,7 +4,7 @@ // ATLAS Collaboration //////////////////////////////////////////////////////////////////////////////// -#include "IDScanHitFilter/IDScanHitFilter.h" +#include "../IDScanHitFilter.h" DECLARE_COMPONENT( IDScanHitFilter ) diff --git a/Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.cxx b/Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.cxx index 3281165eed6fe213a7be6822577c9ec601faad40..8892d4dfc174714bf7d54d16518bd77d3eec0bfd 100755 --- a/Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.cxx +++ b/Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.cxx @@ -10,11 +10,11 @@ //////////////////////////////////////////////////////////////////////////////// // IdScan stuff -#include "IDScanHitFilter/GC_Constants.h" -#include "IDScanHitFilter/IdScanSpPoint.h" -#include "IDScanHitFilter/Group.h" -#include "IDScanHitFilter/FilterBin.h" -#include "IDScanHitFilter/iHitFilter.h" +#include "GC_Constants.h" +#include "IdScanSpPoint.h" +#include "Group.h" +#include "FilterBin.h" +#include "iHitFilter.h" #include <iostream> #include <algorithm> diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/iHitFilter.h b/Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.h old mode 100755 new mode 100644 similarity index 96% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/iHitFilter.h rename to Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.h index 1e5515e18df5d64d6f08fd01dda00933cb524369..18c7c969433195d0a2f25ef15c419ba445d68b87 --- a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/iHitFilter.h +++ b/Trigger/TrigTools/IDScanHitFilter/src/iHitFilter.h @@ -1,7 +1,7 @@ // emacs: this is -*- c++ -*- /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ //////////////////////////////////////////////////////////////////////////////// @@ -26,11 +26,11 @@ #include <vector> -#include "IDScanHitFilter/HF_Constants.h" +#include "HF_Constants.h" -#include "IDScanHitFilter/FilterBin.h" -#include "IDScanHitFilter/Group.h" -#include "IDScanHitFilter/IdScanSpPoint.h" +#include "FilterBin.h" +#include "Group.h" +#include "IdScanSpPoint.h" struct groupCleanerParams; struct GCP_loose; diff --git a/Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/tIdScanSpPoint.h b/Trigger/TrigTools/IDScanHitFilter/src/tIdScanSpPoint.h old mode 100755 new mode 100644 similarity index 100% rename from Trigger/TrigTools/IDScanHitFilter/IDScanHitFilter/tIdScanSpPoint.h rename to Trigger/TrigTools/IDScanHitFilter/src/tIdScanSpPoint.h