diff --git a/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker.h b/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker.h index 42ae171c4549634b446cd0706d6e0fcb2c42f24a..c1ff21c52496645be36edcc1b933b77081d6f0ed 100644 --- a/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker.h +++ b/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker.h @@ -22,10 +22,9 @@ class CaloDM_ID; class CaloDmDescrManager; class CaloDmEnergy; -#include "StoreGate/DataHandle.h" - #include "CaloRec/CaloClusterCollectionProcessor.h" -//#include "CaloEvent/CaloClusterMoment.h" +#include "CaloSimEvent/CaloCalibrationHitContainer.h" +#include "StoreGate/ReadHandleKeyArray.h" #include <string> #include <vector> #include <set> @@ -118,14 +117,14 @@ class CaloCalibClusterMomentsMaker: public AthAlgTool, virtual public CaloCluste * * The containers specified in this property should hold calibration * hits inside the calorimeter systems. */ - std::vector<std::string> m_CalibrationHitContainerNames; + SG::ReadHandleKeyArray<CaloCalibrationHitContainer> m_CalibrationHitContainerNames; /** * @brief vector of dead material calibration hit container names to use. * * The containers specified in this property should hold calibration * hits outside the calorimeter systems - i.e. dead material hits ... */ - std::vector<std::string> m_DMCalibrationHitContainerNames; + SG::ReadHandleKeyArray<CaloCalibrationHitContainer> m_DMCalibrationHitContainerNames; const CaloDetDescrManager* m_calo_dd_man; diff --git a/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker2.h b/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker2.h index 3265dca2712ef1816573e47cf71e6b292fddfa3a..b4f00ee844c355fc3876370af65cb00b03c559ca 100644 --- a/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker2.h +++ b/Calorimeter/CaloCalibHitRec/CaloCalibHitRec/CaloCalibClusterMomentsMaker2.h @@ -23,14 +23,14 @@ class CaloDmDescrManager; class McEventCollection; class TruthParticleContainer; -#include "StoreGate/DataHandle.h" #include "GaudiKernel/ToolHandle.h" #include "CaloRec/CaloClusterCollectionProcessor.h" -//#include "CaloEvent/CaloClusterMoment.h" #include "CaloGeoHelpers/CaloSampling.h" #include "CaloIdentifier/CaloCell_ID.h" #include "CaloDmDetDescr/CaloDmDescrManager.h" +#include "CaloSimEvent/CaloCalibrationHitContainer.h" +#include "StoreGate/ReadHandleKeyArray.h" #include <string> #include <vector> @@ -186,14 +186,14 @@ class CaloCalibClusterMomentsMaker2: public AthAlgTool, virtual public CaloClust * * The containers specified in this property should hold calibration * hits inside the calorimeter systems. */ - std::vector<std::string> m_CalibrationHitContainerNames; + SG::ReadHandleKeyArray<CaloCalibrationHitContainer> m_CalibrationHitContainerNames; /** * @brief vector of dead material calibration hit container names to use. * * The containers specified in this property should hold calibration * hits outside the calorimeter systems - i.e. dead material hits ... */ - std::vector<std::string> m_DMCalibrationHitContainerNames; + SG::ReadHandleKeyArray<CaloCalibrationHitContainer> m_DMCalibrationHitContainerNames; /** * @brief name of truth particle container diff --git a/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker.cxx b/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker.cxx index 4e24cf402c6f620effb53cc1206b11b544f08095..136701078dc13975e9d7163d0bfdb9c1794f724d 100644 --- a/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker.cxx +++ b/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker.cxx @@ -38,12 +38,8 @@ #include "CaloIdentifier/CaloCell_ID.h" #include "CaloIdentifier/CaloDM_ID.h" -#include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/ListItem.h" -#include "GaudiKernel/IToolSvc.h" - #include "StoreGate/StoreGateSvc.h" +#include "StoreGate/ReadHandle.h" #include "CLHEP/Units/SystemOfUnits.h" #include <math.h> @@ -280,58 +276,54 @@ StatusCode CaloCalibClusterMomentsMaker::initialize() } } + ATH_CHECK( m_CalibrationHitContainerNames.initialize() ); + ATH_CHECK( m_DMCalibrationHitContainerNames.initialize() ); + return StatusCode::SUCCESS; } //############################################################################### StatusCode -CaloCalibClusterMomentsMaker::execute(const EventContext& /*ctx*/, +CaloCalibClusterMomentsMaker::execute(const EventContext& ctx, xAOD::CaloClusterContainer *theClusColl) const { ATH_MSG_DEBUG( "Executing " << name() ); bool foundAllContainers (true); - const DataHandle<CaloCalibrationHitContainer> cchc; std::vector<const CaloCalibrationHitContainer *> v_cchc; - for (const std::string& cname : m_CalibrationHitContainerNames) { - if ( !m_storeGate->contains<CaloCalibrationHitContainer>(cname)) { + for (const SG::ReadHandleKey<CaloCalibrationHitContainer>& key : + m_CalibrationHitContainerNames) + { + SG::ReadHandle<CaloCalibrationHitContainer> cchc (key, ctx); + if ( !cchc.isValid() ) { if (m_foundAllContainers) { // print ERROR message only if there was at least one event with // all containers - ATH_MSG_ERROR( "SG does not contain calibration hit container " << cname ); + ATH_MSG_ERROR( "SG does not contain calibration hit container " << key.key() ); } foundAllContainers = false; } else { - StatusCode sc = m_storeGate->retrieve(cchc,cname); - if (sc.isFailure() ) { - ATH_MSG_ERROR( "Cannot retrieve calibration hit container " << cname ); - foundAllContainers = false; - } - else - v_cchc.push_back(cchc); + v_cchc.push_back(cchc.cptr()); } } std::vector<const CaloCalibrationHitContainer *> v_dmcchc; - for (const std::string& cname : m_DMCalibrationHitContainerNames) { - if ( !m_storeGate->contains<CaloCalibrationHitContainer>(cname)) { + for (const SG::ReadHandleKey<CaloCalibrationHitContainer>& key : + m_DMCalibrationHitContainerNames) + { + SG::ReadHandle<CaloCalibrationHitContainer> cchc (key, ctx); + if ( !cchc.isValid() ) { if (m_foundAllContainers) { // print ERROR message only if there was at least one event with // all containers - ATH_MSG_ERROR( "SG does not contain DM calibration hit container " << cname ); + ATH_MSG_ERROR( "SG does not contain DM calibration hit container " << key.key() ); } foundAllContainers = false; } else { - StatusCode sc = m_storeGate->retrieve(cchc,cname); - if (sc.isFailure() ) { - ATH_MSG_ERROR( "Cannot retrieve DM calibration hit container " << cname ); - foundAllContainers = false; - } - else - v_dmcchc.push_back(cchc); + v_dmcchc.push_back(cchc.cptr()); } } diff --git a/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker2.cxx b/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker2.cxx index 6dae113cab779c28e17b20e41d88b37a93b6e160..5329c6fab5fa138ce37f22c5cfc19a6c5b2e4cba 100644 --- a/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker2.cxx +++ b/Calorimeter/CaloCalibHitRec/src/CaloCalibClusterMomentsMaker2.cxx @@ -40,17 +40,12 @@ #include "McParticleEvent/TruthParticle.h" #include "McParticleEvent/TruthParticleContainer.h" -#include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/ListItem.h" -#include "GaudiKernel/IToolSvc.h" +#include "StoreGate/ReadHandle.h" #include "CLHEP/Units/SystemOfUnits.h" #include <math.h> -#include <CLHEP/Units/SystemOfUnits.h> #include <CLHEP/Vector/LorentzVector.h> -#include <CLHEP/Geometry/Vector3D.h> using CLHEP::HepLorentzVector; @@ -290,57 +285,53 @@ StatusCode CaloCalibClusterMomentsMaker2::initialize() } } + ATH_CHECK( m_CalibrationHitContainerNames.initialize() ); + ATH_CHECK( m_DMCalibrationHitContainerNames.initialize() ); + return StatusCode::SUCCESS; } //############################################################################### StatusCode -CaloCalibClusterMomentsMaker2::execute(const EventContext& /*ctx*/, +CaloCalibClusterMomentsMaker2::execute(const EventContext& ctx, xAOD::CaloClusterContainer *theClusColl) const { bool foundAllContainers (true); - const DataHandle<CaloCalibrationHitContainer> cchc; std::vector<const CaloCalibrationHitContainer *> v_cchc; - for (const std::string& cname : m_CalibrationHitContainerNames) { - if ( !evtStore()->contains<CaloCalibrationHitContainer>(cname)) { + for (const SG::ReadHandleKey<CaloCalibrationHitContainer>& key : + m_CalibrationHitContainerNames) + { + SG::ReadHandle<CaloCalibrationHitContainer> cchc (key, ctx); + if ( !cchc.isValid() ) { if (m_foundAllContainers) { // print ERROR message only if there was at least one event with // all containers - msg(MSG::ERROR) << "SG does not contain calibration hit container " << cname << endmsg; + msg(MSG::ERROR) << "SG does not contain calibration hit container " << key.key() << endmsg; } foundAllContainers = false; } else { - StatusCode sc = evtStore()->retrieve(cchc,cname); - if (sc.isFailure() ) { - msg(MSG::ERROR) << "Cannot retrieve calibration hit container " << cname << endmsg; - foundAllContainers = false; - } - else - v_cchc.push_back(cchc); + v_cchc.push_back(cchc.cptr()); } } std::vector<const CaloCalibrationHitContainer *> v_dmcchc; - for (const std::string& cname : m_DMCalibrationHitContainerNames) { - if ( !evtStore()->contains<CaloCalibrationHitContainer>(cname)) { + for (const SG::ReadHandleKey<CaloCalibrationHitContainer>& key : + m_DMCalibrationHitContainerNames) + { + SG::ReadHandle<CaloCalibrationHitContainer> cchc (key, ctx); + if ( !cchc.isValid() ) { if (m_foundAllContainers) { // print ERROR message only if there was at least one event with // all containers - msg(MSG::ERROR) << "SG does not contain DM calibration hit container " << cname << endmsg; + msg(MSG::ERROR) << "SG does not contain DM calibration hit container " << key.key() << endmsg; } foundAllContainers = false; } else { - StatusCode sc = evtStore()->retrieve(cchc,cname); - if (sc.isFailure() ) { - msg(MSG::ERROR) << "Cannot retrieve DM calibration hit container " << cname << endmsg; - foundAllContainers = false; - } - else - v_dmcchc.push_back(cchc); + v_dmcchc.push_back(cchc.cptr()); } } diff --git a/Calorimeter/CaloCalibHitRec/src/CaloDmEnergy.cxx b/Calorimeter/CaloCalibHitRec/src/CaloDmEnergy.cxx index 66fc7d3dd30863f677544a0c7f2a3c6d217d539f..5771cd77e188020581b2b4989acabee45f93c3d4 100644 --- a/Calorimeter/CaloCalibHitRec/src/CaloDmEnergy.cxx +++ b/Calorimeter/CaloCalibHitRec/src/CaloDmEnergy.cxx @@ -195,7 +195,7 @@ int CaloDmEnergy::assign2clusters(const std::string &clusterContainerName) // retreiving DM containers std::vector<const CaloCalibrationHitContainer *> v_dmcchc; for (std::vector<std::string>::iterator iter=m_CalibrationContainerNamesDM.begin();iter!=m_CalibrationContainerNamesDM.end();iter++) { - const DataHandle<CaloCalibrationHitContainer> dmcchc; + const CaloCalibrationHitContainer* dmcchc = nullptr; sc = m_storeGate->retrieve(dmcchc,*iter); if (sc.isFailure() ) { log << MSG::WARNING << "Cannot retrieve DM calibration hit container " << *iter << endmsg; @@ -206,7 +206,7 @@ int CaloDmEnergy::assign2clusters(const std::string &clusterContainerName) } // retreiving cluster container - const DataHandle<xAOD::CaloClusterContainer > theClusters; + const xAOD::CaloClusterContainer* theClusters = nullptr; sc = m_storeGate->retrieve(theClusters, clusterContainerName); if (sc.isFailure()) { log << MSG::WARNING << " Couldn't get cluster container '" << clusterContainerName << "'" << endmsg; diff --git a/Calorimeter/CaloMonitoring/src/CaloBaselineMon.cxx b/Calorimeter/CaloMonitoring/src/CaloBaselineMon.cxx index 5d26910d5bc9bc1fc0330e1666919a7f5e792ae3..bb368d53469ec974c83e4001e5a153af69ca0a65 100644 --- a/Calorimeter/CaloMonitoring/src/CaloBaselineMon.cxx +++ b/Calorimeter/CaloMonitoring/src/CaloBaselineMon.cxx @@ -246,7 +246,7 @@ StatusCode CaloBaselineMon::fillHistograms() { // Fill pedestalMon only when the bunch is empty and far away enough from the last train. if (m_bool_pedestalMon){ - if ((not m_bunchCrossingTool->isFilled(bcid)) and (m_bunchCrossingTool->gapAfterBunch(bcid) >= m_pedestalMon_BCIDmin*25.)) thisEvent_bool_pedestalMon = true; + if ((not m_bunchCrossingTool->isFilled(bcid)) and (m_bunchCrossingTool->gapAfterBunch(bcid) >= m_pedestalMon_BCIDmin*25.) and (m_bunchCrossingTool->gapBeforeBunch(bcid) >= m_pedestalMon_BCIDmin*25.)) thisEvent_bool_pedestalMon = true; } // Fill bcidtoolMon only when the bunch is in a bunch train and within accepted BCID range. if (m_bool_bcidtoolMon){ diff --git a/Calorimeter/CaloMonitoring/src/CaloMonToolBase.cxx b/Calorimeter/CaloMonitoring/src/CaloMonToolBase.cxx index 91db1fa12723a52e8abd0a6c35dea85c22fb5a35..cec93a4e2eccb8f689f69190de24f463b2d2e0fb 100644 --- a/Calorimeter/CaloMonitoring/src/CaloMonToolBase.cxx +++ b/Calorimeter/CaloMonitoring/src/CaloMonToolBase.cxx @@ -81,7 +81,7 @@ StatusCode CaloMonToolBase::bookBaseHists(MonGroup* group) { m_h_EvtRejSumm->GetXaxis()->SetBinLabel(3,"Good LAr LB-OFF"); } if (!m_useCollisionFilterTool){ - m_h_EvtRejSumm->GetXaxis()->SetBinLabel(3,"LAr collision-OFF"); + m_h_EvtRejSumm->GetXaxis()->SetBinLabel(4,"LAr collision-OFF"); } if (!m_useBeamBackgroundRemoval){ m_h_EvtRejSumm->GetXaxis()->SetBinLabel(5,"Beam backgr.-OFF"); diff --git a/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.cxx b/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.cxx index 749e3c41fd62ca757836efe94eb6e644f6d0707b..73391ac90394a97afb69ad598e7b9cf809cc8a5c 100644 --- a/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.cxx +++ b/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.cxx @@ -37,13 +37,9 @@ CaloCellContainerCheckerTool::CaloCellContainerCheckerTool( const std::string& type, const std::string& name, const IInterface* parent) - :AthAlgTool(type, name, parent) , - m_eventsToCheck(5),m_eventsLeftToCheck(5) + :base_class(type, name, parent) { - declareInterface<ICaloCellMakerTool>(this); - declareInterface<ICaloConstCellMakerTool>(this); - - declareProperty ("EventsToCheck",m_eventsToCheck) ; + declareProperty ("EventsToCheck",m_eventsToCheck = 5); } @@ -55,29 +51,31 @@ CaloCellContainerCheckerTool::CaloCellContainerCheckerTool( ///////////////////////////////////////////////////////////////////// StatusCode CaloCellContainerCheckerTool::initialize() { - m_eventsLeftToCheck = m_eventsToCheck; return StatusCode::SUCCESS; } StatusCode -CaloCellContainerCheckerTool::process(CaloCellContainer * theCont ) +CaloCellContainerCheckerTool::process (CaloCellContainer* theCont) { - return doProcess (theCont); + return doProcess (theCont, Gaudi::Hive::currentContext()); } StatusCode -CaloCellContainerCheckerTool::process(CaloConstCellContainer * theCont ) +CaloCellContainerCheckerTool::process (CaloConstCellContainer* theCont) { - return doProcess (theCont->asDataVector()); + return doProcess (theCont->asDataVector(), Gaudi::Hive::currentContext()); } StatusCode -CaloCellContainerCheckerTool::doProcess(const CaloCellContainer * theCont ) +CaloCellContainerCheckerTool::doProcess (const CaloCellContainer* theCont, + const EventContext& ctx) const { - if (m_eventsLeftToCheck<0) return StatusCode::SUCCESS; else m_eventsLeftToCheck--; + if (ctx.evt() >= m_eventsToCheck) { + return StatusCode::SUCCESS; + } StatusCode returnSc = StatusCode::SUCCESS ; diff --git a/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.h b/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.h index 925bd89187187adf9541f30cf89019331d45510c..3154b3e9ee58e2d31caeb9b3523d9c8bfff5d72f 100644 --- a/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.h +++ b/Calorimeter/CaloRec/src/CaloCellContainerCheckerTool.h @@ -10,10 +10,8 @@ #include "CaloInterface/ICaloCellMakerTool.h" #include "CaloInterface/ICaloConstCellMakerTool.h" -class CaloCellContainerCheckerTool: public AthAlgTool, - virtual public ICaloCellMakerTool, - virtual public ICaloConstCellMakerTool - +class CaloCellContainerCheckerTool + : public extends<AthAlgTool, ICaloCellMakerTool, ICaloConstCellMakerTool> { public: @@ -23,16 +21,16 @@ public: const IInterface* parent) ; - virtual StatusCode initialize() ; + virtual StatusCode initialize() override; - virtual StatusCode process( CaloCellContainer * theCellContainer) ; - virtual StatusCode process( CaloConstCellContainer * theCellContainer) ; + virtual StatusCode process (CaloCellContainer* theCellContainer) override; + virtual StatusCode process (CaloConstCellContainer* theCellContainer) override; private: - StatusCode doProcess( const CaloCellContainer * theCellContainer) ; + StatusCode doProcess (const CaloCellContainer* theCellContainer, + const EventContext& ctx) const; - int m_eventsToCheck; - int m_eventsLeftToCheck; + size_t m_eventsToCheck; }; #endif diff --git a/Control/AthViews/CMakeLists.txt b/Control/AthViews/CMakeLists.txt index 23898667338dfbca65f1b56cd359d12741887fdb..e17cda7bc55f3f2df18215f3c6959a8419f63af1 100644 --- a/Control/AthViews/CMakeLists.txt +++ b/Control/AthViews/CMakeLists.txt @@ -60,7 +60,8 @@ atlas_add_test( SimpleViews SCRIPT test/test_simple_view_example.sh atlas_add_test( ViewScheduling SCRIPT test/test_view_scheduling.sh ) atlas_add_test( ViewNestFail SCRIPT test/test_view_nest_fail.sh - PROPERTIES PASS_REGULAR_EXPRESSION "Execution of algorithm nest_alg failed" ) + PROPERTIES PASS_REGULAR_EXPRESSION "Execution of algorithm nest_alg failed" + TIMEOUT 300 ) # Install files from the package: atlas_install_headers( AthViews ) diff --git a/Control/AthenaExamples/AthAsgExUnittest/test/gt_AthExUnittest.cxx b/Control/AthenaExamples/AthAsgExUnittest/test/gt_AthExUnittest.cxx index 600db43fe9666808125a98ffb38520b63cf0de46..119bf817505f08ce80c97a0c603fe8e9db6ea30d 100644 --- a/Control/AthenaExamples/AthAsgExUnittest/test/gt_AthExUnittest.cxx +++ b/Control/AthenaExamples/AthAsgExUnittest/test/gt_AthExUnittest.cxx @@ -27,6 +27,7 @@ namespace Athena_test { MyPackageAlgTest() // : InitGaudiGoogleTest( MSG::INFO ) // get usual message blurb + : myAlg(nullptr) {} virtual void SetUp() override { diff --git a/Control/AthenaServices/src/AthenaOutputStreamTool.cxx b/Control/AthenaServices/src/AthenaOutputStreamTool.cxx index bf5b2e53229e39f32a03b2d6dfc274a7e4cf8db8..526308c8634aab52547d04a3d74e9a62a723d5dd 100644 --- a/Control/AthenaServices/src/AthenaOutputStreamTool.cxx +++ b/Control/AthenaServices/src/AthenaOutputStreamTool.cxx @@ -164,9 +164,9 @@ StatusCode AthenaOutputStreamTool::connectOutput(const std::string& outputName) // Remove DataHeader with same key if it exists if (m_store->contains<DataHeader>(m_dataHeaderKey)) { - const DataHandle<DataHeader> preDh; + const DataHeader* preDh = nullptr; if (m_store->retrieve(preDh, m_dataHeaderKey).isSuccess()) { - if (m_store->removeDataAndProxy(preDh.cptr()).isFailure()) { + if (m_store->removeDataAndProxy(preDh).isFailure()) { ATH_MSG_ERROR("Unable to get proxy for the DataHeader with key " << m_dataHeaderKey); return(StatusCode::FAILURE); } @@ -179,7 +179,7 @@ StatusCode AthenaOutputStreamTool::connectOutput(const std::string& outputName) m_dataHeader->setProcessTag(m_processTag); // Retrieve all existing DataHeaders from StroreGate - const DataHandle<DataHeader> dh; + const DataHeader* dh = nullptr; std::vector<std::string> dhKeys; m_store->keys<DataHeader>(dhKeys); for (std::vector<std::string>::const_iterator dhKey = dhKeys.begin(), dhKeyEnd = dhKeys.end(); @@ -205,7 +205,7 @@ StatusCode AthenaOutputStreamTool::connectOutput(const std::string& outputName) } } // Update dhTransAddr to handle fast merged files. - SG::DataProxy* dhProxy = m_store->proxy(dh.operator->()); + SG::DataProxy* dhProxy = m_store->proxy(dh); if (dhProxy != 0 && dhProxy->address() != 0) { delete dhTransAddr; dhTransAddr = 0; m_dataHeader->insertProvenance(DataHeaderElement(dhProxy, @@ -230,7 +230,7 @@ StatusCode AthenaOutputStreamTool::connectOutput(const std::string& outputName) attrListKey = outputConnectionString.substr(pos + 18, outputConnectionString.find("]", pos + 18) - pos - 18); } if (!attrListKey.empty()) { - const DataHandle<AthenaAttributeList> attrList; + const AthenaAttributeList* attrList = nullptr; if (m_store->retrieve(attrList, attrListKey).isFailure()) { ATH_MSG_WARNING("Unable to retrieve AttributeList with key " << attrListKey); } else { @@ -424,7 +424,8 @@ StatusCode AthenaOutputStreamTool::fillObjectRefs(const DataObjectVec& dataObjec //__________________________________________________________________________ StatusCode AthenaOutputStreamTool::getInputItemList(SG::IFolder* p2BWrittenFromTool) { const std::string hltKey = "HLTAutoKey"; - const DataHandle<DataHeader> beg, ending; + SG::ConstIterator<DataHeader> beg; + SG::ConstIterator<DataHeader> ending; if (m_store->retrieve(beg, ending).isFailure() || beg == ending) { ATH_MSG_DEBUG("No DataHeaders present in StoreGate"); } else { diff --git a/Control/DataModelTest/DataModelRunTests/share/ByteStreamTestRead.ref b/Control/DataModelTest/DataModelRunTests/share/ByteStreamTestRead.ref index e2767cc23e364cbecd00334ca7b26db7f44735de..c959ae6305bf99b7c0f8c138eba1194f5334d64f 100644 --- a/Control/DataModelTest/DataModelRunTests/share/ByteStreamTestRead.ref +++ b/Control/DataModelTest/DataModelRunTests/share/ByteStreamTestRead.ref @@ -1,12 +1,12 @@ -Thu Jun 14 19:44:00 CEST 2018 +Mon Jul 16 19:56:49 CEST 2018 Preloading tcmalloc_minimal.so Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-opt] [atlas-work3/5e04217fa06] -- built on [2018-06-14T1530] +Py:Athena INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/a36f862d8a5] -- built on [2018-07-16T1502] 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 "DataModelRunTests/ByteStreamTestRead_jo.py" -[?1034hPy:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +[?1034hPy:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Py:Athena INFO including file "AthenaCommon/runbatch.py" ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -14,7 +14,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 19:44:16 2018 + running on lxplus054.cern.ch on Mon Jul 16 19:57:10 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -22,8 +22,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 10029 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 10094 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) CoreDumpSvc INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 @@ -47,14 +46,14 @@ PoolSvc INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.x PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2059/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus054.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 POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.Byt... INFO Initializing MetaDataSvc.ByteStreamMetadataTool - package version ByteStreamCnvSvc-00-00-00 +ToolSvc.ByteStr... INFO Initializing ToolSvc.ByteStreamMetadataTool - package version ByteStreamCnvSvc-00-00-00 ClassIDSvc INFO getRegistryEntries: read 1907 CLIDRegistry entries for module ALL TrigSerializeCn... INFO initialize() HistogramPersis...WARNING Histograms saving not required. @@ -84,7 +83,7 @@ Warning in <TClass::Init>: no dictionary for class MdtTrackSegmentCollection_p2 ToolSvc.TrigSer... INFO Initializing - Package version: TrigSerializeTP-00-00-00 APR:DbReflex:fo...WARNING doing GUID scan on ALL types for Class ID=10DE610D-5634-4D42-80D4-80B0A8C16452 Warning in <TClass::Init>: no dictionary for class coral::AttributeList is available -ClassIDSvc INFO getRegistryEntries: read 13230 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 13246 CLIDRegistry entries for module ALL APR:DbReflex:fo...WARNING doing GUID scan on ALL types for Class ID=2577D84A-BC0F-4CD2-9539-9F0A4EFC64AA ClassIDSvc INFO getRegistryEntries: read 70 CLIDRegistry entries for module ALL APR:DbReflex:fo...WARNING doing GUID scan on ALL types for Class ID=740C4020-F0A3-40B3-88E1-B15A8055DB64 @@ -1604,7 +1603,7 @@ IncidentProcAlg2 INFO Finalize EventInfoByteSt... INFO finalize AthDictLoaderSvc INFO in finalize... ToolSvc INFO Removing all tools created by ToolSvc -MetaDataSvc.Byt... INFO in finalize() +ToolSvc.ByteStr... INFO in finalize() ToolSvc.TrigTSe... INFO ToolSvc.TrigTSerializer no problems encountered ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Filter.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Filter.ref index 4f34fca1014ed8e92628d973fe9c1fc55b2a9e95..736ed3f30f39d8d05c70ae80f8c271efc63b390e 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Filter.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Filter.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:33:11 CEST 2018 +Mon Jul 16 20:30:46 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_FilterJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:33:22 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:30:53 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,21 +21,22 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -43,11 +44,9 @@ PoolSvc DEBUG POOL ReadCatalog is file:Catalog.xml PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector.Q... DEBUG Property update for OutputLevel : new value = 2 EventSelector.Q... INFO in initialize() EventSelector INFO reinitialization... @@ -127,13 +126,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -193,9 +187,7 @@ ApplicationMgr INFO Application Manager Started successfully MetaDataSvc DEBUG handle() BeginInputFile for FID:???? MetaDataSvc DEBUG initInputMetaDataStore: file name FID:???? MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for FID:???? -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Stream1_ref = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000006]. @@ -806,7 +798,7 @@ Stream1 INFO Records written: 11 Stream1 DEBUG Leaving handle RegStream1 DEBUG handle() incident type: MetaDataStop RegStream1.TagTool INFO Collection Events output: 10 -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase CREATE [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain UPDATE [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -824,13 +816,13 @@ EventSelector.Q... INFO in finalize() *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -commitOutput INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 11 cRep_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 32 -cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 35 -cRepR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 43 +commitOutput INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.909(+- 2.87)/ 0/ 10 [ms] #= 11 fRep_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.312(+- 1.74)/ 0/ 10 [ms] #= 32 -cObj_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.909(+- 2.87)/ 0/ 10 [ms] #= 33 -ChronoStatSvc INFO Time User : Tot= 1.07 [s] #= 1 +cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 35 +cRepR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.233(+- 1.51)/ 0/ 10 [ms] #= 43 +cObj_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.606(+- 2.39)/ 0/ 10 [ms] #= 33 +ChronoStatSvc INFO Time User : Tot= 0.88 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RCond.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RCond.ref index 95ffaa71d44c11af8394190e94bc2cc2058f4049..c23f482c048c36ab54fc68d7ef6c880b007fb960 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RCond.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RCond.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:41:06 CEST 2018 +Mon Jul 16 20:52:18 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_RCondJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:41:17 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:52:26 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,8 +21,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadCond DEBUG Property update for OutputLevel : new value = 2 @@ -34,13 +33,15 @@ ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -49,11 +50,9 @@ PoolSvc DEBUG POOL ReadCatalog is file:Catalog1.xml PoolSvc INFO POOL WriteCatalog is file:Catalog2.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventSelector DEBUG Try item: "SimplePoolFile1.root" from the collection list. @@ -124,15 +123,11 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully CondProxyProvider DEBUG Property update for OutputLevel : new value = 2 CondProxyProvider INFO Initializing CondProxyProvider - package version EventSelectorAthenaPool-00-00-00 +CondProxyProvider DEBUG Service base class initialized successfully CondProxyProvider DEBUG Try item: "SimplePoolFile4.root" from the collection list. PersistencySvc:... DEBUG lookupPFN: SimplePoolFile4.root returned FID: '????' tech=ROOT_All Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] ???? @@ -240,9 +235,7 @@ MetaDataHdr(Dat... DEBUG attributes# = 1 MetaDataHdr(Dat... DEBUG Branch container 'DataHeader' MetaDataHdr(Dat... DEBUG Opened container MetaDataHdr(DataHeader) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 0 ClassIDSvc INFO getRegistryEntries: read 2687 CLIDRegistry entries for module ALL @@ -951,7 +944,7 @@ Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? MetaDataSvc DEBUG handle() EndInputFile for FID:???? MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize @@ -965,8 +958,8 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 70 -cObj_ALL INFO Time User : Tot= 40 [ms] Ave/Min/Max=0.615(+- 2.98)/ 0/ 20 [ms] #= 65 -ChronoStatSvc INFO Time User : Tot= 0.95 [s] #= 1 +cObj_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.462(+- 2.73)/ 0/ 20 [ms] #= 65 +ChronoStatSvc INFO Time User : Tot= 0.83 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RFilter.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RFilter.ref index 88767de34a13d768c370884804f6255ee1c52094..5ca6d2ff234d03ab13fbac570c8e0d5317c94bce 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RFilter.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RFilter.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:33:26 CEST 2018 +Mon Jul 16 20:30:56 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_RFilterJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:33:37 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:31:04 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,21 +21,22 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -44,16 +45,15 @@ PoolSvc DEBUG POOL ReadCatalog is file:Catalog1.xml PoolSvc INFO POOL WriteCatalog is file:Catalog2.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventNumber > 9 EventSelector DEBUG Try item: "SimplePoolCollection5.root" from the collection list. EventSelector INFO Using standard collection ref AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -320,7 +320,7 @@ AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 10 events Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize ReadData INFO in finalize() @@ -330,9 +330,9 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 90 [ms] Ave/Min/Max= 2.9(+- 15.9)/ 0/ 90 [ms] #= 31 -cObj_ALL INFO Time User : Tot= 130 [ms] Ave/Min/Max= 4.33(+- 18.2)/ 0/ 100 [ms] #= 30 -ChronoStatSvc INFO Time User : Tot= 1.06 [s] #= 1 +cObjR_ALL INFO Time User : Tot= 80 [ms] Ave/Min/Max= 2.58(+- 14.1)/ 0/ 80 [ms] #= 31 +cObj_ALL INFO Time User : Tot= 110 [ms] Ave/Min/Max= 3.67(+- 16.2)/ 0/ 90 [ms] #= 30 +ChronoStatSvc INFO Time User : Tot= 0.8 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RMeta.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RMeta.ref index a112a839ec7b930754d6a860f9c90bef737e9aac..60498c03d390df67061250aca18d3a0499748fac 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RMeta.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_RMeta.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:53:58 CEST 2018 +Mon Jul 16 20:52:39 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_RMetaJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:54:09 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:52:47 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,23 +21,24 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO io_register[PoolSvc](xmlcatalog_file:Catalog2.xml) [ok] 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 Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -45,13 +46,10 @@ PoolSvc DEBUG POOL ReadCatalog is xmlcatalog_file:Catalog2.xml PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders -MetaDataSvc.Ath... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.Ath... INFO in initialize() +ToolSvc.AthPool... INFO in initialize() EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventSelector DEBUG Try item: "SimplePoolFile5.root" from the collection list. @@ -124,13 +122,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -206,20 +199,15 @@ MetaDataHdr(Dat... DEBUG attributes# = 1 MetaDataHdr(Dat... DEBUG Branch container 'DataHeader' MetaDataHdr(Dat... DEBUG Opened container MetaDataHdr(DataHeader) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.AthPoolEx::ReadMeta -MetaDataSvc.Ath... DEBUG saw BeginInputFile incident. +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.AthPoolEx::ReadMeta SimplePoolFile5... DEBUG --> Access DbContainer READ [ROOT_Tree] MetaData(ExampleHitContainer_p1/PedestalWriteData) MetaData(Exampl... DEBUG Opening MetaData(Exampl... DEBUG attributes# = 1 MetaData(Exampl... DEBUG Branch container 'ExampleHitContainer_p1_PedestalWriteData' MetaData(Exampl... DEBUG Opened container MetaData(ExampleHitContainer_p1/PedestalWriteData) of type ROOT_Tree ClassIDSvc INFO getRegistryEntries: read 2697 CLIDRegistry entries for module ALL -MetaDataSvc.Ath... INFO Pedestal x = 193136 y = -5580.01 z = -175208 string = <..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o> -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile5.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData -MetaDataSvc.Ath... DEBUG handle() BeginInputFile -MetaDataSvc.Ath... DEBUG handle() BeginInputFile for SimplePoolFile5.root +ToolSvc.AthPool... INFO Pedestal x = 193136 y = -5580.01 z = -175208 string = <..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o> EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 0 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -869,21 +857,21 @@ Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] MetaDataSvc DEBUG handle() EndInputFile for FID:???? MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.AthPoolEx::ReadMeta +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.AthPoolEx::ReadMeta ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize ReadData INFO in finalize() IncidentProcAlg2 INFO Finalize AthDictLoaderSvc INFO in finalize... ToolSvc INFO Removing all tools created by ToolSvc -MetaDataSvc.Ath... INFO in finalize() +ToolSvc.AthPool... INFO in finalize() *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 67 -cObj_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.469(+- 2.76)/ 0/ 20 [ms] #= 64 -ChronoStatSvc INFO Time User : Tot= 1.04 [s] #= 1 +cObj_ALL INFO Time User : Tot= 50 [ms] Ave/Min/Max=0.781(+- 3.21)/ 0/ 20 [ms] #= 64 +ChronoStatSvc INFO Time User : Tot= 0.82 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWrite.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWrite.ref index 86dd3973051f80b42f3f74df2a4d5bc246aa00dc..37eb613f6e6ecfd082846eebfdb286e69a1ebf23 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWrite.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWrite.ref @@ -1,11 +1,11 @@ -Thu Jun 14 19:57:30 CEST 2018 +Mon Jul 16 20:06:34 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_RWJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 19:57:41 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:06:43 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,22 +21,23 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc DEBUG Property update for OutputLevel : new value = 2 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -44,11 +45,9 @@ PoolSvc DEBUG POOL ReadCatalog is file:Catalog.xml PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventSelector DEBUG Try item: "SimplePoolFile1.root" from the collection list. @@ -125,13 +124,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -197,9 +191,7 @@ ApplicationMgr INFO Application Manager Started successfully MetaDataSvc DEBUG handle() BeginInputFile for SimplePoolFile1.root MetaDataSvc DEBUG initInputMetaDataStore: file name SimplePoolFile1.root MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -1959,7 +1951,7 @@ Stream1 INFO Records written: 21 Stream1 DEBUG Leaving handle RegStream1 DEBUG handle() incident type: MetaDataStop RegStream1.TagTool INFO Collection Events output: 20 -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase CREATE [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain UPDATE [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -1979,13 +1971,13 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -commitOutput INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 21 cRep_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 62 cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 66 -fRep_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.323(+- 1.77)/ 0/ 10 [ms] #= 62 -cObj_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.476(+- 2.78)/ 0/ 20 [ms] #= 63 -cRepR_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.123(+- 1.1)/ 0/ 10 [ms] #=163 -ChronoStatSvc INFO Time User : Tot= 1.05 [s] #= 1 +commitOutput INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.476(+- 2.13)/ 0/ 10 [ms] #= 21 +fRep_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.161(+- 1.26)/ 0/ 10 [ms] #= 62 +cRepR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.0613(+-0.781)/ 0/ 10 [ms] #=163 +cObj_ALL INFO Time User : Tot= 40 [ms] Ave/Min/Max=0.635(+- 3.02)/ 0/ 20 [ms] #= 63 +ChronoStatSvc INFO Time User : Tot= 0.93 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteAgain.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteAgain.ref index fd10099b6d01ddb789e652f8d0a338b346871f62..f71b52126af0fec11759f064459bd950983a6818 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteAgain.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteAgain.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:32:41 CEST 2018 +Mon Jul 16 20:24:42 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReWriteAgainJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:32:53 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:24:49 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,22 +21,23 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc DEBUG Property update for OutputLevel : new value = 2 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -44,11 +45,9 @@ PoolSvc DEBUG POOL ReadCatalog is file:Catalog.xml PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventSelector DEBUG Try item: "SimplePoolReplica1.root" from the collection list. @@ -119,13 +118,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -253,9 +247,7 @@ MetaDataHdr(Dat... DEBUG attributes# = 1 MetaDataHdr(Dat... DEBUG Branch container 'DataHeader' MetaDataHdr(Dat... DEBUG Opened container MetaDataHdr(DataHeader) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolReplica1.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 0 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -2015,7 +2007,7 @@ Stream1 DEBUG Leaving handle RegStream1 DEBUG handle() incident type: MetaDataStop RegStream1.TagTool INFO Collection Events output: 20 RegStream1.TagTool INFO Unable to register collection: PFN 'RootCollection||PFN:SimplePoolCollection3.root' already registered ( POOL : "registerPFN" from "FileCatalog" ) -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase CREATE [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain UPDATE [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -2035,13 +2027,13 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -commitOutput INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 21 cRep_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 62 -cObjR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.154(+- 1.23)/ 0/ 10 [ms] #= 65 +cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 65 +commitOutput INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.952(+- 2.94)/ 0/ 10 [ms] #= 21 +fRep_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.161(+- 1.26)/ 0/ 10 [ms] #= 62 cRepR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.0613(+-0.781)/ 0/ 10 [ms] #=163 -fRep_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.484(+- 2.15)/ 0/ 10 [ms] #= 62 -cObj_ALL INFO Time User : Tot= 40 [ms] Ave/Min/Max=0.635(+- 3.51)/ 0/ 20 [ms] #= 63 -ChronoStatSvc INFO Time User : Tot= 1.05 [s] #= 1 +cObj_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.476(+- 2.78)/ 0/ 20 [ms] #= 63 +ChronoStatSvc INFO Time User : Tot= 0.88 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteNext.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteNext.ref index b6ad0fbfeecd4e8d522154da3552300b5e9ec245..b1ad6a656c57500c7859980d9e1f82636f1d407d 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteNext.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReWriteNext.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:32:57 CEST 2018 +Mon Jul 16 20:24:52 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReWriteNextJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:33:08 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:25:01 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,22 +21,23 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc DEBUG Property update for OutputLevel : new value = 2 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -44,11 +45,9 @@ PoolSvc DEBUG POOL ReadCatalog is file:Catalog.xml PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventSelector DEBUG Try item: "SimplePoolFile3.root" from the collection list. @@ -125,13 +124,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -197,9 +191,7 @@ ApplicationMgr INFO Application Manager Started successfully MetaDataSvc DEBUG handle() BeginInputFile for SimplePoolFile3.root MetaDataSvc DEBUG initInputMetaDataStore: file name SimplePoolFile3.root MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -1357,7 +1349,7 @@ Stream1 INFO Records written: 21 Stream1 DEBUG Leaving handle RegStream1 DEBUG handle() incident type: MetaDataStop RegStream1.TagTool INFO Collection Events output: 20 -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase CREATE [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain UPDATE [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -1379,11 +1371,11 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** commitOutput INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 21 cRep_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 62 -cObjR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.154(+- 1.23)/ 0/ 10 [ms] #= 65 +cRepR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #=163 fRep_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.161(+- 1.26)/ 0/ 10 [ms] #= 62 -cRepR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.0613(+-0.781)/ 0/ 10 [ms] #=163 -cObj_ALL INFO Time User : Tot= 40 [ms] Ave/Min/Max=0.635(+- 2.44)/ 0/ 10 [ms] #= 63 -ChronoStatSvc INFO Time User : Tot= 0.97 [s] #= 1 +cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 65 +cObj_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.317(+- 1.75)/ 0/ 10 [ms] #= 63 +ChronoStatSvc INFO Time User : Tot= 0.9 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Read.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Read.ref index bd5b67e75fe764963e0d023297486907049ae5d0..fb3630bee8d536283afaa125e2cc855288c3ab5f 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Read.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_Read.ref @@ -1,11 +1,11 @@ -Thu Jun 14 19:57:44 CEST 2018 +Mon Jul 16 20:19:44 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 19:57:54 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:19:53 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,32 +21,31 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully IoComponentMgr INFO IoComponent EventSelector has already had file EmptyPoolFile.root registered with i/o mode READ EventSelector INFO reinitialization... EventSelector INFO EventSelection with query @@ -168,13 +167,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -234,9 +228,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? EventSelector DEBUG Try item: "SimplePoolFile1.root" from the collection list. @@ -251,10 +243,7 @@ PoolSvc INFO Database (SimplePoolFile1.root) attribute [TREE_CACHE_ MetaDataSvc DEBUG handle() BeginInputFile for SimplePoolFile1.root MetaDataSvc DEBUG initInputMetaDataStore: file name SimplePoolFile1.root MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector INFO skipping event 1 EventSelector INFO skipping event 2 EventSelector INFO skipping event 3 @@ -326,7 +315,7 @@ ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = Dum ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector ClassIDSvc INFO getRegistryEntries: read 10 CLIDRegistry entries for module ALL -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 1 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -359,7 +348,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 2 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -392,7 +381,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 3 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -425,7 +414,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 4 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -458,7 +447,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 5 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -491,7 +480,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 6 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -524,7 +513,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 7 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -557,7 +546,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 8 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -590,7 +579,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 9 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -623,7 +612,7 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 10 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -684,10 +673,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -772,10 +758,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000005-00000000]. @@ -826,7 +809,7 @@ ReadData INFO EventInfo event: 0 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 11 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -854,7 +837,7 @@ ReadData INFO EventInfo event: 1 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 12 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -882,7 +865,7 @@ ReadData INFO EventInfo event: 2 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 13 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -910,7 +893,7 @@ ReadData INFO EventInfo event: 3 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 14 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -938,7 +921,7 @@ ReadData INFO EventInfo event: 4 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 15 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -966,7 +949,7 @@ ReadData INFO EventInfo event: 5 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 16 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -994,7 +977,7 @@ ReadData INFO EventInfo event: 6 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 17 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1022,7 +1005,7 @@ ReadData INFO EventInfo event: 7 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 18 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1050,7 +1033,7 @@ ReadData INFO EventInfo event: 8 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 19 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1078,7 +1061,7 @@ ReadData INFO EventInfo event: 9 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 20 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1106,7 +1089,7 @@ ReadData INFO EventInfo event: 10 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 21 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1134,7 +1117,7 @@ ReadData INFO EventInfo event: 11 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 22 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1162,7 +1145,7 @@ ReadData INFO EventInfo event: 12 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 23 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1190,7 +1173,7 @@ ReadData INFO EventInfo event: 13 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 24 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1218,7 +1201,7 @@ ReadData INFO EventInfo event: 14 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 25 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1246,7 +1229,7 @@ ReadData INFO EventInfo event: 15 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 26 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1274,7 +1257,7 @@ ReadData INFO EventInfo event: 16 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 27 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1302,7 +1285,7 @@ ReadData INFO EventInfo event: 17 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 28 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1330,7 +1313,7 @@ ReadData INFO EventInfo event: 18 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 29 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1358,7 +1341,7 @@ ReadData INFO EventInfo event: 19 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 30 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1387,7 +1370,7 @@ ReadData INFO EventInfo event: 20 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #20, run #2 31 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1415,7 +1398,7 @@ ReadData INFO EventInfo event: 21 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #21, run #2 32 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1443,7 +1426,7 @@ ReadData INFO EventInfo event: 22 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #22, run #2 33 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1471,7 +1454,7 @@ ReadData INFO EventInfo event: 23 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #23, run #2 34 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1499,7 +1482,7 @@ ReadData INFO EventInfo event: 24 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #24, run #2 35 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1527,7 +1510,7 @@ ReadData INFO EventInfo event: 25 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #25, run #2 36 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1555,7 +1538,7 @@ ReadData INFO EventInfo event: 26 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #26, run #2 37 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1583,7 +1566,7 @@ ReadData INFO EventInfo event: 27 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #27, run #2 38 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1611,7 +1594,7 @@ ReadData INFO EventInfo event: 28 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #28, run #2 39 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1639,7 +1622,7 @@ ReadData INFO EventInfo event: 29 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #29, run #2 40 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1667,7 +1650,7 @@ ReadData INFO EventInfo event: 30 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #30, run #2 41 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1695,7 +1678,7 @@ ReadData INFO EventInfo event: 31 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #31, run #2 42 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1723,7 +1706,7 @@ ReadData INFO EventInfo event: 32 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #32, run #2 43 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1751,7 +1734,7 @@ ReadData INFO EventInfo event: 33 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #33, run #2 44 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1779,7 +1762,7 @@ ReadData INFO EventInfo event: 34 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #34, run #2 45 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1807,7 +1790,7 @@ ReadData INFO EventInfo event: 35 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #35, run #2 46 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1835,7 +1818,7 @@ ReadData INFO EventInfo event: 36 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #36, run #2 47 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1863,7 +1846,7 @@ ReadData INFO EventInfo event: 37 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #37, run #2 48 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1891,7 +1874,7 @@ ReadData INFO EventInfo event: 38 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #38, run #2 49 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1919,7 +1902,7 @@ ReadData INFO EventInfo event: 39 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #39, run #2 50 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -2008,10 +1991,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -2156,7 +2136,7 @@ ReadData INFO Hit x = 20.4945 y = 63.5816 z = 48.1358 detector = Dum ReadData INFO Hit x = 23.7045 y = 57.9027 z = 46.3159 detector = DummyHitDetector ReadData INFO Hit x = 26.9145 y = 52.2238 z = 44.9265 detector = DummyHitDetector ReadData INFO Hit x = 30.1245 y = 46.5449 z = 43.831 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 51 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2203,7 +2183,7 @@ ReadData INFO Hit x = 120.494 y = 63.5816 z = -51.8642 detector = Du ReadData INFO Hit x = 123.704 y = 57.9027 z = -53.6841 detector = DummyHitDetector ReadData INFO Hit x = 126.915 y = 52.2238 z = -55.0735 detector = DummyHitDetector ReadData INFO Hit x = 130.125 y = 46.5449 z = -56.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 52 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2250,7 +2230,7 @@ ReadData INFO Hit x = 220.494 y = 63.5816 z = -151.864 detector = Du ReadData INFO Hit x = 223.704 y = 57.9027 z = -153.684 detector = DummyHitDetector ReadData INFO Hit x = 226.915 y = 52.2238 z = -155.073 detector = DummyHitDetector ReadData INFO Hit x = 230.125 y = 46.5449 z = -156.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 53 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2297,7 +2277,7 @@ ReadData INFO Hit x = 320.495 y = 63.5816 z = -251.864 detector = Du ReadData INFO Hit x = 323.705 y = 57.9027 z = -253.684 detector = DummyHitDetector ReadData INFO Hit x = 326.915 y = 52.2238 z = -255.073 detector = DummyHitDetector ReadData INFO Hit x = 330.125 y = 46.5449 z = -256.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 54 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2344,7 +2324,7 @@ ReadData INFO Hit x = 420.495 y = 63.5816 z = -351.864 detector = Du ReadData INFO Hit x = 423.705 y = 57.9027 z = -353.684 detector = DummyHitDetector ReadData INFO Hit x = 426.915 y = 52.2238 z = -355.073 detector = DummyHitDetector ReadData INFO Hit x = 430.125 y = 46.5449 z = -356.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 55 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2391,7 +2371,7 @@ ReadData INFO Hit x = 520.495 y = 63.5816 z = -451.864 detector = Du ReadData INFO Hit x = 523.705 y = 57.9027 z = -453.684 detector = DummyHitDetector ReadData INFO Hit x = 526.914 y = 52.2238 z = -455.073 detector = DummyHitDetector ReadData INFO Hit x = 530.125 y = 46.5449 z = -456.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 56 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2438,7 +2418,7 @@ ReadData INFO Hit x = 620.495 y = 63.5816 z = -551.864 detector = Du ReadData INFO Hit x = 623.705 y = 57.9027 z = -553.684 detector = DummyHitDetector ReadData INFO Hit x = 626.914 y = 52.2238 z = -555.073 detector = DummyHitDetector ReadData INFO Hit x = 630.125 y = 46.5449 z = -556.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 57 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2485,7 +2465,7 @@ ReadData INFO Hit x = 720.495 y = 63.5816 z = -651.864 detector = Du ReadData INFO Hit x = 723.705 y = 57.9027 z = -653.684 detector = DummyHitDetector ReadData INFO Hit x = 726.914 y = 52.2238 z = -655.073 detector = DummyHitDetector ReadData INFO Hit x = 730.125 y = 46.5449 z = -656.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 58 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2532,7 +2512,7 @@ ReadData INFO Hit x = 820.495 y = 63.5816 z = -751.864 detector = Du ReadData INFO Hit x = 823.705 y = 57.9027 z = -753.684 detector = DummyHitDetector ReadData INFO Hit x = 826.914 y = 52.2238 z = -755.073 detector = DummyHitDetector ReadData INFO Hit x = 830.125 y = 46.5449 z = -756.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 59 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2579,7 +2559,7 @@ ReadData INFO Hit x = 920.495 y = 63.5816 z = -851.864 detector = Du ReadData INFO Hit x = 923.705 y = 57.9027 z = -853.684 detector = DummyHitDetector ReadData INFO Hit x = 926.914 y = 52.2238 z = -855.073 detector = DummyHitDetector ReadData INFO Hit x = 930.125 y = 46.5449 z = -856.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 60 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2626,7 +2606,7 @@ ReadData INFO Hit x = 1020.49 y = 63.5816 z = -951.864 detector = Du ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = DummyHitDetector ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 61 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2673,7 +2653,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 62 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2720,7 +2700,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 63 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2767,7 +2747,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 64 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2814,7 +2794,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 65 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2861,7 +2841,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 66 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2908,7 +2888,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 67 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2955,7 +2935,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 68 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3002,7 +2982,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 69 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3049,14 +3029,14 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 70 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -3068,9 +3048,9 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.0735(+-0.854)/ 0/ 10 [ms] #=272 -cObj_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max=0.136(+- 1.16)/ 0/ 10 [ms] #=221 -ChronoStatSvc INFO Time User : Tot= 1.07 [s] #= 1 +cObjR_ALL INFO Time User : Tot= 30 [ms] Ave/Min/Max= 0.11(+- 1.04)/ 0/ 10 [ms] #=272 +cObj_ALL INFO Time User : Tot= 50 [ms] Ave/Min/Max=0.226(+- 1.49)/ 0/ 10 [ms] #=221 +ChronoStatSvc INFO Time User : Tot= 0.92 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadAgain.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadAgain.ref index 5898910726aa590a90577ff108cd1d5ff1993845..efc5bdc1f9b0c69f28359d163036bdcb55b8f172 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadAgain.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadAgain.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:40:08 CEST 2018 +Mon Jul 16 20:34:57 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadAgainJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:40:19 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:35:04 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,32 +21,31 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully IoComponentMgr INFO IoComponent EventSelector has already had file EmptyPoolFile.root registered with i/o mode READ EventSelector INFO reinitialization... EventSelector INFO EventSelection with query @@ -162,13 +161,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -232,9 +226,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -315,10 +307,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolReplica1.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolReplica1.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector INFO skipping event 1 EventSelector INFO skipping event 2 EventSelector INFO skipping event 3 @@ -743,10 +732,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -831,10 +817,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 ClassIDSvc INFO getRegistryEntries: read 3 CLIDRegistry entries for module ALL @@ -886,7 +869,7 @@ ReadData INFO EventInfo event: 0 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 11 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -914,7 +897,7 @@ ReadData INFO EventInfo event: 1 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 12 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -942,7 +925,7 @@ ReadData INFO EventInfo event: 2 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 13 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -970,7 +953,7 @@ ReadData INFO EventInfo event: 3 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 14 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -998,7 +981,7 @@ ReadData INFO EventInfo event: 4 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 15 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1026,7 +1009,7 @@ ReadData INFO EventInfo event: 5 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 16 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1054,7 +1037,7 @@ ReadData INFO EventInfo event: 6 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 17 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1082,7 +1065,7 @@ ReadData INFO EventInfo event: 7 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 18 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1110,7 +1093,7 @@ ReadData INFO EventInfo event: 8 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 19 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1138,7 +1121,7 @@ ReadData INFO EventInfo event: 9 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 20 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1166,7 +1149,7 @@ ReadData INFO EventInfo event: 10 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 21 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1194,7 +1177,7 @@ ReadData INFO EventInfo event: 11 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 22 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1222,7 +1205,7 @@ ReadData INFO EventInfo event: 12 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 23 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1250,7 +1233,7 @@ ReadData INFO EventInfo event: 13 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 24 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1278,7 +1261,7 @@ ReadData INFO EventInfo event: 14 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 25 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1306,7 +1289,7 @@ ReadData INFO EventInfo event: 15 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 26 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1334,7 +1317,7 @@ ReadData INFO EventInfo event: 16 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 27 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1362,7 +1345,7 @@ ReadData INFO EventInfo event: 17 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 28 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1390,7 +1373,7 @@ ReadData INFO EventInfo event: 18 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 29 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1418,7 +1401,7 @@ ReadData INFO EventInfo event: 19 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 30 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1447,7 +1430,7 @@ ReadData INFO EventInfo event: 20 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #20, run #2 31 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1475,7 +1458,7 @@ ReadData INFO EventInfo event: 21 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #21, run #2 32 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1503,7 +1486,7 @@ ReadData INFO EventInfo event: 22 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #22, run #2 33 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1531,7 +1514,7 @@ ReadData INFO EventInfo event: 23 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #23, run #2 34 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1559,7 +1542,7 @@ ReadData INFO EventInfo event: 24 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #24, run #2 35 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1587,7 +1570,7 @@ ReadData INFO EventInfo event: 25 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #25, run #2 36 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1615,7 +1598,7 @@ ReadData INFO EventInfo event: 26 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #26, run #2 37 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1643,7 +1626,7 @@ ReadData INFO EventInfo event: 27 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #27, run #2 38 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1671,7 +1654,7 @@ ReadData INFO EventInfo event: 28 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #28, run #2 39 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1699,7 +1682,7 @@ ReadData INFO EventInfo event: 29 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #29, run #2 40 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1727,7 +1710,7 @@ ReadData INFO EventInfo event: 30 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #30, run #2 41 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1755,7 +1738,7 @@ ReadData INFO EventInfo event: 31 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #31, run #2 42 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1783,7 +1766,7 @@ ReadData INFO EventInfo event: 32 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #32, run #2 43 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1811,7 +1794,7 @@ ReadData INFO EventInfo event: 33 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #33, run #2 44 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1839,7 +1822,7 @@ ReadData INFO EventInfo event: 34 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #34, run #2 45 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1867,7 +1850,7 @@ ReadData INFO EventInfo event: 35 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #35, run #2 46 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1895,7 +1878,7 @@ ReadData INFO EventInfo event: 36 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #36, run #2 47 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1923,7 +1906,7 @@ ReadData INFO EventInfo event: 37 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #37, run #2 48 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1951,7 +1934,7 @@ ReadData INFO EventInfo event: 38 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #38, run #2 49 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1979,7 +1962,7 @@ ReadData INFO EventInfo event: 39 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #39, run #2 50 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -2068,10 +2051,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile4.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile4.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -2273,7 +2253,7 @@ ReadData INFO Hit x = 20.4945 y = 63.5816 z = 48.1358 detector = Dum ReadData INFO Hit x = 23.7045 y = 57.9027 z = 46.3159 detector = DummyHitDetector ReadData INFO Hit x = 26.9145 y = 52.2238 z = 44.9265 detector = DummyHitDetector ReadData INFO Hit x = 30.1245 y = 46.5449 z = 43.831 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 51 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2320,7 +2300,7 @@ ReadData INFO Hit x = 120.494 y = 63.5816 z = -51.8642 detector = Du ReadData INFO Hit x = 123.704 y = 57.9027 z = -53.6841 detector = DummyHitDetector ReadData INFO Hit x = 126.915 y = 52.2238 z = -55.0735 detector = DummyHitDetector ReadData INFO Hit x = 130.125 y = 46.5449 z = -56.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 52 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2367,7 +2347,7 @@ ReadData INFO Hit x = 220.494 y = 63.5816 z = -151.864 detector = Du ReadData INFO Hit x = 223.704 y = 57.9027 z = -153.684 detector = DummyHitDetector ReadData INFO Hit x = 226.915 y = 52.2238 z = -155.073 detector = DummyHitDetector ReadData INFO Hit x = 230.125 y = 46.5449 z = -156.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 53 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2414,7 +2394,7 @@ ReadData INFO Hit x = 320.495 y = 63.5816 z = -251.864 detector = Du ReadData INFO Hit x = 323.705 y = 57.9027 z = -253.684 detector = DummyHitDetector ReadData INFO Hit x = 326.915 y = 52.2238 z = -255.073 detector = DummyHitDetector ReadData INFO Hit x = 330.125 y = 46.5449 z = -256.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 54 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2461,7 +2441,7 @@ ReadData INFO Hit x = 420.495 y = 63.5816 z = -351.864 detector = Du ReadData INFO Hit x = 423.705 y = 57.9027 z = -353.684 detector = DummyHitDetector ReadData INFO Hit x = 426.915 y = 52.2238 z = -355.073 detector = DummyHitDetector ReadData INFO Hit x = 430.125 y = 46.5449 z = -356.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 55 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2508,7 +2488,7 @@ ReadData INFO Hit x = 520.495 y = 63.5816 z = -451.864 detector = Du ReadData INFO Hit x = 523.705 y = 57.9027 z = -453.684 detector = DummyHitDetector ReadData INFO Hit x = 526.914 y = 52.2238 z = -455.073 detector = DummyHitDetector ReadData INFO Hit x = 530.125 y = 46.5449 z = -456.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 56 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2555,7 +2535,7 @@ ReadData INFO Hit x = 620.495 y = 63.5816 z = -551.864 detector = Du ReadData INFO Hit x = 623.705 y = 57.9027 z = -553.684 detector = DummyHitDetector ReadData INFO Hit x = 626.914 y = 52.2238 z = -555.073 detector = DummyHitDetector ReadData INFO Hit x = 630.125 y = 46.5449 z = -556.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 57 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2602,7 +2582,7 @@ ReadData INFO Hit x = 720.495 y = 63.5816 z = -651.864 detector = Du ReadData INFO Hit x = 723.705 y = 57.9027 z = -653.684 detector = DummyHitDetector ReadData INFO Hit x = 726.914 y = 52.2238 z = -655.073 detector = DummyHitDetector ReadData INFO Hit x = 730.125 y = 46.5449 z = -656.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 58 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2649,7 +2629,7 @@ ReadData INFO Hit x = 820.495 y = 63.5816 z = -751.864 detector = Du ReadData INFO Hit x = 823.705 y = 57.9027 z = -753.684 detector = DummyHitDetector ReadData INFO Hit x = 826.914 y = 52.2238 z = -755.073 detector = DummyHitDetector ReadData INFO Hit x = 830.125 y = 46.5449 z = -756.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 59 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2696,7 +2676,7 @@ ReadData INFO Hit x = 920.495 y = 63.5816 z = -851.864 detector = Du ReadData INFO Hit x = 923.705 y = 57.9027 z = -853.684 detector = DummyHitDetector ReadData INFO Hit x = 926.914 y = 52.2238 z = -855.073 detector = DummyHitDetector ReadData INFO Hit x = 930.125 y = 46.5449 z = -856.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 60 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2743,7 +2723,7 @@ ReadData INFO Hit x = 1020.49 y = 63.5816 z = -951.864 detector = Du ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = DummyHitDetector ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 61 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2790,7 +2770,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 62 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2837,7 +2817,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 63 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2884,7 +2864,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 64 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2931,7 +2911,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 65 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2978,7 +2958,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 66 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3025,7 +3005,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 67 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3072,7 +3052,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 68 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3119,7 +3099,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 69 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3166,14 +3146,14 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27334 +PoolSvc INFO Database (SimplePoolFile4.root) attribute [BYTES_READ]: 27346 PoolSvc INFO Database (SimplePoolFile4.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 70 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -3187,8 +3167,8 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** cObjR_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.0643(+-0.799)/ 0/ 10 [ms] #=311 -cObj_ALL INFO Time User : Tot= 50 [ms] Ave/Min/Max=0.207(+- 1.43)/ 0/ 10 [ms] #=241 -ChronoStatSvc INFO Time User : Tot= 1.16 [s] #= 1 +cObj_ALL INFO Time User : Tot= 60 [ms] Ave/Min/Max=0.249(+- 1.8)/ 0/ 20 [ms] #=241 +ChronoStatSvc INFO Time User : Tot= 0.89 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadBN.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadBN.ref index 6603e410719e5f0b22ce9286d80ed3905ed29b3d..062284de4df56d80a2ec964d06c9a5a2a3a347f9 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadBN.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadBN.ref @@ -1,11 +1,11 @@ -Thu Jun 14 19:57:44 CEST 2018 +Mon Jul 16 20:08:47 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadBNJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 19:57:54 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:08:55 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,32 +21,31 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully IoComponentMgr INFO IoComponent EventSelector has already had file EmptyPoolFile.root registered with i/o mode READ EventSelector INFO reinitialization... EventSelector INFO EventSelection with query @@ -168,13 +167,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully AthenaPoolAddre... INFO BackNavigationScope for: ExampleHitContainer#MyHits :: Stream1 ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 @@ -235,9 +229,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? EventSelector DEBUG Try item: "SimplePoolFile1.root" from the collection list. @@ -252,10 +244,7 @@ PoolSvc INFO Database (SimplePoolFile1.root) attribute [TREE_CACHE_ MetaDataSvc DEBUG handle() BeginInputFile for SimplePoolFile1.root MetaDataSvc DEBUG initInputMetaDataStore: file name SimplePoolFile1.root MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector INFO skipping event 1 EventSelector INFO skipping event 2 EventSelector INFO skipping event 3 @@ -327,7 +316,7 @@ ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = Dum ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector ClassIDSvc INFO getRegistryEntries: read 10 CLIDRegistry entries for module ALL -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 1 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -360,7 +349,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 2 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -393,7 +382,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 3 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -426,7 +415,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 4 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -459,7 +448,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 5 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -492,7 +481,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 6 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -525,7 +514,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 7 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -558,7 +547,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 8 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -591,7 +580,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 9 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -624,7 +613,7 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27935 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 10 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -685,10 +674,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -773,10 +759,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000005-00000000]. @@ -827,7 +810,7 @@ ReadData INFO EventInfo event: 0 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 11 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -855,7 +838,7 @@ ReadData INFO EventInfo event: 1 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 12 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -883,7 +866,7 @@ ReadData INFO EventInfo event: 2 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 13 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -911,7 +894,7 @@ ReadData INFO EventInfo event: 3 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 14 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -939,7 +922,7 @@ ReadData INFO EventInfo event: 4 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 15 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -967,7 +950,7 @@ ReadData INFO EventInfo event: 5 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 16 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -995,7 +978,7 @@ ReadData INFO EventInfo event: 6 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 17 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1023,7 +1006,7 @@ ReadData INFO EventInfo event: 7 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 18 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1051,7 +1034,7 @@ ReadData INFO EventInfo event: 8 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 19 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1079,7 +1062,7 @@ ReadData INFO EventInfo event: 9 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 20 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1107,7 +1090,7 @@ ReadData INFO EventInfo event: 10 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 21 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1135,7 +1118,7 @@ ReadData INFO EventInfo event: 11 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 22 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1163,7 +1146,7 @@ ReadData INFO EventInfo event: 12 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 23 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1191,7 +1174,7 @@ ReadData INFO EventInfo event: 13 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 24 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1219,7 +1202,7 @@ ReadData INFO EventInfo event: 14 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 25 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1247,7 +1230,7 @@ ReadData INFO EventInfo event: 15 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 26 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1275,7 +1258,7 @@ ReadData INFO EventInfo event: 16 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 27 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1303,7 +1286,7 @@ ReadData INFO EventInfo event: 17 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 28 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1331,7 +1314,7 @@ ReadData INFO EventInfo event: 18 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 29 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1359,7 +1342,7 @@ ReadData INFO EventInfo event: 19 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26644 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 30 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1388,7 +1371,7 @@ ReadData INFO EventInfo event: 20 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #20, run #2 31 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1416,7 +1399,7 @@ ReadData INFO EventInfo event: 21 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #21, run #2 32 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1444,7 +1427,7 @@ ReadData INFO EventInfo event: 22 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #22, run #2 33 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1472,7 +1455,7 @@ ReadData INFO EventInfo event: 23 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #23, run #2 34 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1500,7 +1483,7 @@ ReadData INFO EventInfo event: 24 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #24, run #2 35 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1528,7 +1511,7 @@ ReadData INFO EventInfo event: 25 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #25, run #2 36 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1556,7 +1539,7 @@ ReadData INFO EventInfo event: 26 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #26, run #2 37 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1584,7 +1567,7 @@ ReadData INFO EventInfo event: 27 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #27, run #2 38 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1612,7 +1595,7 @@ ReadData INFO EventInfo event: 28 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #28, run #2 39 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1640,7 +1623,7 @@ ReadData INFO EventInfo event: 29 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #29, run #2 40 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1668,7 +1651,7 @@ ReadData INFO EventInfo event: 30 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #30, run #2 41 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1696,7 +1679,7 @@ ReadData INFO EventInfo event: 31 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #31, run #2 42 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1724,7 +1707,7 @@ ReadData INFO EventInfo event: 32 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #32, run #2 43 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1752,7 +1735,7 @@ ReadData INFO EventInfo event: 33 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #33, run #2 44 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1780,7 +1763,7 @@ ReadData INFO EventInfo event: 34 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #34, run #2 45 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1808,7 +1791,7 @@ ReadData INFO EventInfo event: 35 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #35, run #2 46 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1836,7 +1819,7 @@ ReadData INFO EventInfo event: 36 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #36, run #2 47 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1864,7 +1847,7 @@ ReadData INFO EventInfo event: 37 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #37, run #2 48 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1892,7 +1875,7 @@ ReadData INFO EventInfo event: 38 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #38, run #2 49 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1920,7 +1903,7 @@ ReadData INFO EventInfo event: 39 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28256 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #39, run #2 50 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -2009,10 +1992,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -2157,7 +2137,7 @@ ReadData INFO Hit x = 20.4945 y = 63.5816 z = 48.1358 detector = Dum ReadData INFO Hit x = 23.7045 y = 57.9027 z = 46.3159 detector = DummyHitDetector ReadData INFO Hit x = 26.9145 y = 52.2238 z = 44.9265 detector = DummyHitDetector ReadData INFO Hit x = 30.1245 y = 46.5449 z = 43.831 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 51 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2204,7 +2184,7 @@ ReadData INFO Hit x = 120.494 y = 63.5816 z = -51.8642 detector = Du ReadData INFO Hit x = 123.704 y = 57.9027 z = -53.6841 detector = DummyHitDetector ReadData INFO Hit x = 126.915 y = 52.2238 z = -55.0735 detector = DummyHitDetector ReadData INFO Hit x = 130.125 y = 46.5449 z = -56.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 52 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2251,7 +2231,7 @@ ReadData INFO Hit x = 220.494 y = 63.5816 z = -151.864 detector = Du ReadData INFO Hit x = 223.704 y = 57.9027 z = -153.684 detector = DummyHitDetector ReadData INFO Hit x = 226.915 y = 52.2238 z = -155.073 detector = DummyHitDetector ReadData INFO Hit x = 230.125 y = 46.5449 z = -156.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 53 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2298,7 +2278,7 @@ ReadData INFO Hit x = 320.495 y = 63.5816 z = -251.864 detector = Du ReadData INFO Hit x = 323.705 y = 57.9027 z = -253.684 detector = DummyHitDetector ReadData INFO Hit x = 326.915 y = 52.2238 z = -255.073 detector = DummyHitDetector ReadData INFO Hit x = 330.125 y = 46.5449 z = -256.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 54 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2345,7 +2325,7 @@ ReadData INFO Hit x = 420.495 y = 63.5816 z = -351.864 detector = Du ReadData INFO Hit x = 423.705 y = 57.9027 z = -353.684 detector = DummyHitDetector ReadData INFO Hit x = 426.915 y = 52.2238 z = -355.073 detector = DummyHitDetector ReadData INFO Hit x = 430.125 y = 46.5449 z = -356.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 55 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2392,7 +2372,7 @@ ReadData INFO Hit x = 520.495 y = 63.5816 z = -451.864 detector = Du ReadData INFO Hit x = 523.705 y = 57.9027 z = -453.684 detector = DummyHitDetector ReadData INFO Hit x = 526.914 y = 52.2238 z = -455.073 detector = DummyHitDetector ReadData INFO Hit x = 530.125 y = 46.5449 z = -456.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 56 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2439,7 +2419,7 @@ ReadData INFO Hit x = 620.495 y = 63.5816 z = -551.864 detector = Du ReadData INFO Hit x = 623.705 y = 57.9027 z = -553.684 detector = DummyHitDetector ReadData INFO Hit x = 626.914 y = 52.2238 z = -555.073 detector = DummyHitDetector ReadData INFO Hit x = 630.125 y = 46.5449 z = -556.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 57 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2486,7 +2466,7 @@ ReadData INFO Hit x = 720.495 y = 63.5816 z = -651.864 detector = Du ReadData INFO Hit x = 723.705 y = 57.9027 z = -653.684 detector = DummyHitDetector ReadData INFO Hit x = 726.914 y = 52.2238 z = -655.073 detector = DummyHitDetector ReadData INFO Hit x = 730.125 y = 46.5449 z = -656.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 58 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2533,7 +2513,7 @@ ReadData INFO Hit x = 820.495 y = 63.5816 z = -751.864 detector = Du ReadData INFO Hit x = 823.705 y = 57.9027 z = -753.684 detector = DummyHitDetector ReadData INFO Hit x = 826.914 y = 52.2238 z = -755.073 detector = DummyHitDetector ReadData INFO Hit x = 830.125 y = 46.5449 z = -756.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 59 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2580,7 +2560,7 @@ ReadData INFO Hit x = 920.495 y = 63.5816 z = -851.864 detector = Du ReadData INFO Hit x = 923.705 y = 57.9027 z = -853.684 detector = DummyHitDetector ReadData INFO Hit x = 926.914 y = 52.2238 z = -855.073 detector = DummyHitDetector ReadData INFO Hit x = 930.125 y = 46.5449 z = -856.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 60 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2627,7 +2607,7 @@ ReadData INFO Hit x = 1020.49 y = 63.5816 z = -951.864 detector = Du ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = DummyHitDetector ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 61 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2674,7 +2654,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 62 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2721,7 +2701,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 63 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2768,7 +2748,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 64 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2815,7 +2795,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 65 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2862,7 +2842,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 66 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2909,7 +2889,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 67 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2956,7 +2936,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 68 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3003,7 +2983,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 69 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3050,14 +3030,14 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27292 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 70 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -3069,9 +3049,9 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.0735(+-0.854)/ 0/ 10 [ms] #=272 -cObj_ALL INFO Time User : Tot= 50 [ms] Ave/Min/Max=0.226(+- 1.77)/ 0/ 20 [ms] #=221 -ChronoStatSvc INFO Time User : Tot= 1.01 [s] #= 1 +cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #=272 +cObj_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.0905(+-0.947)/ 0/ 10 [ms] #=221 +ChronoStatSvc INFO Time User : Tot= 0.87 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadConcat.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadConcat.ref index 7109a6dab1662879a31e26ddeebfc2dad2dcf5b9..a213f9e891992986194d7eb0f36c611d814e6698 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadConcat.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadConcat.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:40:37 CEST 2018 +Mon Jul 16 20:35:17 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:40:48 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:35:25 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,32 +21,31 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully IoComponentMgr INFO IoComponent EventSelector has already had file EmptyPoolFile.root registered with i/o mode READ EventSelector INFO reinitialization... EventSelector INFO EventSelection with query @@ -162,13 +161,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -232,9 +226,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -315,10 +307,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector INFO skipping event 1 EventSelector INFO skipping event 2 EventSelector INFO skipping event 3 @@ -385,7 +374,7 @@ ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = Dum ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector ClassIDSvc INFO getRegistryEntries: read 10 CLIDRegistry entries for module ALL -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 1 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -418,7 +407,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 2 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -451,7 +440,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 3 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -484,7 +473,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 4 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -517,7 +506,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 5 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -550,7 +539,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 6 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -583,7 +572,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 7 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -616,7 +605,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 8 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -649,7 +638,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 9 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -682,7 +671,7 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27514 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27509 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 10 events processed so far <<<=== Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? @@ -743,10 +732,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -831,10 +817,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 ClassIDSvc INFO getRegistryEntries: read 3 CLIDRegistry entries for module ALL @@ -886,7 +869,7 @@ ReadData INFO EventInfo event: 0 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 11 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -914,7 +897,7 @@ ReadData INFO EventInfo event: 1 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 12 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -942,7 +925,7 @@ ReadData INFO EventInfo event: 2 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 13 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -970,7 +953,7 @@ ReadData INFO EventInfo event: 3 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 14 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -998,7 +981,7 @@ ReadData INFO EventInfo event: 4 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 15 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1026,7 +1009,7 @@ ReadData INFO EventInfo event: 5 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 16 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1054,7 +1037,7 @@ ReadData INFO EventInfo event: 6 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 17 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1082,7 +1065,7 @@ ReadData INFO EventInfo event: 7 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 18 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1110,7 +1093,7 @@ ReadData INFO EventInfo event: 8 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 19 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1138,7 +1121,7 @@ ReadData INFO EventInfo event: 9 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 20 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1166,7 +1149,7 @@ ReadData INFO EventInfo event: 10 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 21 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1194,7 +1177,7 @@ ReadData INFO EventInfo event: 11 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 22 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1222,7 +1205,7 @@ ReadData INFO EventInfo event: 12 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 23 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1250,7 +1233,7 @@ ReadData INFO EventInfo event: 13 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 24 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1278,7 +1261,7 @@ ReadData INFO EventInfo event: 14 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 25 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1306,7 +1289,7 @@ ReadData INFO EventInfo event: 15 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 26 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1334,7 +1317,7 @@ ReadData INFO EventInfo event: 16 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 27 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1362,7 +1345,7 @@ ReadData INFO EventInfo event: 17 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 28 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1390,7 +1373,7 @@ ReadData INFO EventInfo event: 18 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 29 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1418,7 +1401,7 @@ ReadData INFO EventInfo event: 19 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26624 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26619 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 30 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1447,7 +1430,7 @@ ReadData INFO EventInfo event: 20 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #20, run #2 31 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1475,7 +1458,7 @@ ReadData INFO EventInfo event: 21 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #21, run #2 32 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1503,7 +1486,7 @@ ReadData INFO EventInfo event: 22 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #22, run #2 33 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1531,7 +1514,7 @@ ReadData INFO EventInfo event: 23 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #23, run #2 34 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1559,7 +1542,7 @@ ReadData INFO EventInfo event: 24 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #24, run #2 35 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1587,7 +1570,7 @@ ReadData INFO EventInfo event: 25 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #25, run #2 36 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1615,7 +1598,7 @@ ReadData INFO EventInfo event: 26 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #26, run #2 37 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1643,7 +1626,7 @@ ReadData INFO EventInfo event: 27 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #27, run #2 38 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1671,7 +1654,7 @@ ReadData INFO EventInfo event: 28 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #28, run #2 39 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1699,7 +1682,7 @@ ReadData INFO EventInfo event: 29 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #29, run #2 40 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1727,7 +1710,7 @@ ReadData INFO EventInfo event: 30 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #30, run #2 41 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1755,7 +1738,7 @@ ReadData INFO EventInfo event: 31 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #31, run #2 42 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1783,7 +1766,7 @@ ReadData INFO EventInfo event: 32 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #32, run #2 43 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1811,7 +1794,7 @@ ReadData INFO EventInfo event: 33 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #33, run #2 44 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1839,7 +1822,7 @@ ReadData INFO EventInfo event: 34 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #34, run #2 45 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1867,7 +1850,7 @@ ReadData INFO EventInfo event: 35 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #35, run #2 46 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1895,7 +1878,7 @@ ReadData INFO EventInfo event: 36 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #36, run #2 47 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1923,7 +1906,7 @@ ReadData INFO EventInfo event: 37 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #37, run #2 48 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1951,7 +1934,7 @@ ReadData INFO EventInfo event: 38 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #38, run #2 49 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1979,7 +1962,7 @@ ReadData INFO EventInfo event: 39 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28229 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #39, run #2 50 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -2061,10 +2044,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 0 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -2192,7 +2172,7 @@ ReadData INFO Hit x = 20.4945 y = 63.5816 z = 48.1358 detector = Dum ReadData INFO Hit x = 23.7045 y = 57.9027 z = 46.3159 detector = DummyHitDetector ReadData INFO Hit x = 26.9145 y = 52.2238 z = 44.9265 detector = DummyHitDetector ReadData INFO Hit x = 30.1245 y = 46.5449 z = 43.831 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 51 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2239,7 +2219,7 @@ ReadData INFO Hit x = 120.494 y = 63.5816 z = -51.8642 detector = Du ReadData INFO Hit x = 123.704 y = 57.9027 z = -53.6841 detector = DummyHitDetector ReadData INFO Hit x = 126.915 y = 52.2238 z = -55.0735 detector = DummyHitDetector ReadData INFO Hit x = 130.125 y = 46.5449 z = -56.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 52 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2286,7 +2266,7 @@ ReadData INFO Hit x = 220.494 y = 63.5816 z = -151.864 detector = Du ReadData INFO Hit x = 223.704 y = 57.9027 z = -153.684 detector = DummyHitDetector ReadData INFO Hit x = 226.915 y = 52.2238 z = -155.073 detector = DummyHitDetector ReadData INFO Hit x = 230.125 y = 46.5449 z = -156.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 53 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2333,7 +2313,7 @@ ReadData INFO Hit x = 320.495 y = 63.5816 z = -251.864 detector = Du ReadData INFO Hit x = 323.705 y = 57.9027 z = -253.684 detector = DummyHitDetector ReadData INFO Hit x = 326.915 y = 52.2238 z = -255.073 detector = DummyHitDetector ReadData INFO Hit x = 330.125 y = 46.5449 z = -256.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 54 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2380,7 +2360,7 @@ ReadData INFO Hit x = 420.495 y = 63.5816 z = -351.864 detector = Du ReadData INFO Hit x = 423.705 y = 57.9027 z = -353.684 detector = DummyHitDetector ReadData INFO Hit x = 426.915 y = 52.2238 z = -355.073 detector = DummyHitDetector ReadData INFO Hit x = 430.125 y = 46.5449 z = -356.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 55 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2427,7 +2407,7 @@ ReadData INFO Hit x = 520.495 y = 63.5816 z = -451.864 detector = Du ReadData INFO Hit x = 523.705 y = 57.9027 z = -453.684 detector = DummyHitDetector ReadData INFO Hit x = 526.914 y = 52.2238 z = -455.073 detector = DummyHitDetector ReadData INFO Hit x = 530.125 y = 46.5449 z = -456.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 56 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2474,7 +2454,7 @@ ReadData INFO Hit x = 620.495 y = 63.5816 z = -551.864 detector = Du ReadData INFO Hit x = 623.705 y = 57.9027 z = -553.684 detector = DummyHitDetector ReadData INFO Hit x = 626.914 y = 52.2238 z = -555.073 detector = DummyHitDetector ReadData INFO Hit x = 630.125 y = 46.5449 z = -556.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 57 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2521,7 +2501,7 @@ ReadData INFO Hit x = 720.495 y = 63.5816 z = -651.864 detector = Du ReadData INFO Hit x = 723.705 y = 57.9027 z = -653.684 detector = DummyHitDetector ReadData INFO Hit x = 726.914 y = 52.2238 z = -655.073 detector = DummyHitDetector ReadData INFO Hit x = 730.125 y = 46.5449 z = -656.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 58 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2568,7 +2548,7 @@ ReadData INFO Hit x = 820.495 y = 63.5816 z = -751.864 detector = Du ReadData INFO Hit x = 823.705 y = 57.9027 z = -753.684 detector = DummyHitDetector ReadData INFO Hit x = 826.914 y = 52.2238 z = -755.073 detector = DummyHitDetector ReadData INFO Hit x = 830.125 y = 46.5449 z = -756.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 59 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2615,7 +2595,7 @@ ReadData INFO Hit x = 920.495 y = 63.5816 z = -851.864 detector = Du ReadData INFO Hit x = 923.705 y = 57.9027 z = -853.684 detector = DummyHitDetector ReadData INFO Hit x = 926.914 y = 52.2238 z = -855.073 detector = DummyHitDetector ReadData INFO Hit x = 930.125 y = 46.5449 z = -856.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 60 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2662,7 +2642,7 @@ ReadData INFO Hit x = 1020.49 y = 63.5816 z = -951.864 detector = Du ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = DummyHitDetector ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 61 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2709,7 +2689,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 62 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2756,7 +2736,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 63 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2803,7 +2783,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 64 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2850,7 +2830,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 65 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2897,7 +2877,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 66 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2944,7 +2924,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 67 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2991,7 +2971,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 68 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3038,7 +3018,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 69 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -3085,14 +3065,14 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26895 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 26896 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 70 events processed so far <<<=== Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? MetaDataSvc DEBUG handle() EndInputFile for FID:???? MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully @@ -3104,9 +3084,9 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** *****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) *****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.0735(+-0.854)/ 0/ 10 [ms] #=272 +cObjR_ALL INFO Time User : Tot= 10 [ms] Ave/Min/Max=0.0368(+-0.605)/ 0/ 10 [ms] #=272 cObj_ALL INFO Time User : Tot= 50 [ms] Ave/Min/Max=0.226(+- 1.77)/ 0/ 20 [ms] #=221 -ChronoStatSvc INFO Time User : Tot= 1.03 [s] #= 1 +ChronoStatSvc INFO Time User : Tot= 0.92 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadNoBN.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadNoBN.ref index 4ca427358d9de015084362f00344045af956855c..036405b1b96fe589da8176fbc52ae083a7c1ef8e 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadNoBN.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_ReadNoBN.ref @@ -1,11 +1,11 @@ -Thu Jun 14 19:57:44 CEST 2018 +Mon Jul 16 20:19:44 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadNoBNJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 19:57:54 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:19:53 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,32 +21,31 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 +MetaDataSvc DEBUG Service base class initialized successfully AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is file:Catalog1.xml DbSession INFO Open DbSession Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully IoComponentMgr INFO IoComponent EventSelector has already had file EmptyPoolFile.root registered with i/o mode READ EventSelector INFO reinitialization... EventSelector INFO EventSelection with query @@ -168,13 +167,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -234,9 +228,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? EventSelector DEBUG Try item: "SimplePoolFile1.root" from the collection list. @@ -251,10 +243,7 @@ PoolSvc INFO Database (SimplePoolFile1.root) attribute [TREE_CACHE_ MetaDataSvc DEBUG handle() BeginInputFile for SimplePoolFile1.root MetaDataSvc DEBUG initInputMetaDataStore: file name SimplePoolFile1.root MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector INFO skipping event 1 EventSelector INFO skipping event 2 EventSelector INFO skipping event 3 @@ -326,7 +315,7 @@ ReadData INFO Hit x = 1023.7 y = 57.9027 z = -953.684 detector = Dum ReadData INFO Hit x = 1026.91 y = 52.2238 z = -955.073 detector = DummyHitDetector ReadData INFO Hit x = 1030.12 y = 46.5449 z = -956.169 detector = DummyHitDetector ClassIDSvc INFO getRegistryEntries: read 10 CLIDRegistry entries for module ALL -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 1 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -359,7 +348,7 @@ ReadData INFO Hit x = 1120.49 y = 63.5816 z = -1051.86 detector = Du ReadData INFO Hit x = 1123.7 y = 57.9027 z = -1053.68 detector = DummyHitDetector ReadData INFO Hit x = 1126.91 y = 52.2238 z = -1055.07 detector = DummyHitDetector ReadData INFO Hit x = 1130.12 y = 46.5449 z = -1056.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 2 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -392,7 +381,7 @@ ReadData INFO Hit x = 1220.49 y = 63.5816 z = -1151.86 detector = Du ReadData INFO Hit x = 1223.7 y = 57.9027 z = -1153.68 detector = DummyHitDetector ReadData INFO Hit x = 1226.91 y = 52.2238 z = -1155.07 detector = DummyHitDetector ReadData INFO Hit x = 1230.12 y = 46.5449 z = -1156.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 3 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -425,7 +414,7 @@ ReadData INFO Hit x = 1320.49 y = 63.5816 z = -1251.86 detector = Du ReadData INFO Hit x = 1323.7 y = 57.9027 z = -1253.68 detector = DummyHitDetector ReadData INFO Hit x = 1326.91 y = 52.2238 z = -1255.07 detector = DummyHitDetector ReadData INFO Hit x = 1330.12 y = 46.5449 z = -1256.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 4 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -458,7 +447,7 @@ ReadData INFO Hit x = 1420.49 y = 63.5816 z = -1351.86 detector = Du ReadData INFO Hit x = 1423.7 y = 57.9027 z = -1353.68 detector = DummyHitDetector ReadData INFO Hit x = 1426.91 y = 52.2238 z = -1355.07 detector = DummyHitDetector ReadData INFO Hit x = 1430.12 y = 46.5449 z = -1356.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 5 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -491,7 +480,7 @@ ReadData INFO Hit x = 1520.49 y = 63.5816 z = -1451.86 detector = Du ReadData INFO Hit x = 1523.7 y = 57.9027 z = -1453.68 detector = DummyHitDetector ReadData INFO Hit x = 1526.91 y = 52.2238 z = -1455.07 detector = DummyHitDetector ReadData INFO Hit x = 1530.12 y = 46.5449 z = -1456.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 6 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -524,7 +513,7 @@ ReadData INFO Hit x = 1620.49 y = 63.5816 z = -1551.86 detector = Du ReadData INFO Hit x = 1623.7 y = 57.9027 z = -1553.68 detector = DummyHitDetector ReadData INFO Hit x = 1626.91 y = 52.2238 z = -1555.07 detector = DummyHitDetector ReadData INFO Hit x = 1630.12 y = 46.5449 z = -1556.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 7 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -557,7 +546,7 @@ ReadData INFO Hit x = 1720.49 y = 63.5816 z = -1651.86 detector = Du ReadData INFO Hit x = 1723.7 y = 57.9027 z = -1653.68 detector = DummyHitDetector ReadData INFO Hit x = 1726.91 y = 52.2238 z = -1655.07 detector = DummyHitDetector ReadData INFO Hit x = 1730.12 y = 46.5449 z = -1656.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 8 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -590,7 +579,7 @@ ReadData INFO Hit x = 1820.49 y = 63.5816 z = -1751.86 detector = Du ReadData INFO Hit x = 1823.7 y = 57.9027 z = -1753.68 detector = DummyHitDetector ReadData INFO Hit x = 1826.91 y = 52.2238 z = -1755.07 detector = DummyHitDetector ReadData INFO Hit x = 1830.12 y = 46.5449 z = -1756.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 9 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -623,7 +612,7 @@ ReadData INFO Hit x = 1920.49 y = 63.5816 z = -1851.86 detector = Du ReadData INFO Hit x = 1923.7 y = 57.9027 z = -1853.68 detector = DummyHitDetector ReadData INFO Hit x = 1926.91 y = 52.2238 z = -1855.07 detector = DummyHitDetector ReadData INFO Hit x = 1930.12 y = 46.5449 z = -1856.17 detector = DummyHitDetector -PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27938 +PoolSvc INFO Database (SimplePoolFile1.root) attribute [BYTES_READ]: 27943 PoolSvc INFO Database (SimplePoolFile1.root) attribute [READ_CALLS]: 24 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 10 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -684,10 +673,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name EmptyPoolFile.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool MetaDataSvc DEBUG handle() EndInputFile for eventless EmptyPoolFile.root Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] @@ -772,10 +758,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile2.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000005-00000000]. @@ -826,7 +809,7 @@ ReadData INFO EventInfo event: 0 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 11 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -854,7 +837,7 @@ ReadData INFO EventInfo event: 1 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 12 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -882,7 +865,7 @@ ReadData INFO EventInfo event: 2 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 13 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -910,7 +893,7 @@ ReadData INFO EventInfo event: 3 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 14 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -938,7 +921,7 @@ ReadData INFO EventInfo event: 4 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 15 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -966,7 +949,7 @@ ReadData INFO EventInfo event: 5 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 16 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -994,7 +977,7 @@ ReadData INFO EventInfo event: 6 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 17 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1022,7 +1005,7 @@ ReadData INFO EventInfo event: 7 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 18 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1050,7 +1033,7 @@ ReadData INFO EventInfo event: 8 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 19 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1078,7 +1061,7 @@ ReadData INFO EventInfo event: 9 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 20 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1106,7 +1089,7 @@ ReadData INFO EventInfo event: 10 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 21 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1134,7 +1117,7 @@ ReadData INFO EventInfo event: 11 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 22 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1162,7 +1145,7 @@ ReadData INFO EventInfo event: 12 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 23 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1190,7 +1173,7 @@ ReadData INFO EventInfo event: 13 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 24 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1218,7 +1201,7 @@ ReadData INFO EventInfo event: 14 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 25 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1246,7 +1229,7 @@ ReadData INFO EventInfo event: 15 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 26 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1274,7 +1257,7 @@ ReadData INFO EventInfo event: 16 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 27 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1302,7 +1285,7 @@ ReadData INFO EventInfo event: 17 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 28 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1330,7 +1313,7 @@ ReadData INFO EventInfo event: 18 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 29 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1358,7 +1341,7 @@ ReadData INFO EventInfo event: 19 run: 1 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26625 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 26639 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 27 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 30 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1387,7 +1370,7 @@ ReadData INFO EventInfo event: 20 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #20, run #2 31 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1415,7 +1398,7 @@ ReadData INFO EventInfo event: 21 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #21, run #2 32 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1443,7 +1426,7 @@ ReadData INFO EventInfo event: 22 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #22, run #2 33 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1471,7 +1454,7 @@ ReadData INFO EventInfo event: 23 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #23, run #2 34 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1499,7 +1482,7 @@ ReadData INFO EventInfo event: 24 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #24, run #2 35 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1527,7 +1510,7 @@ ReadData INFO EventInfo event: 25 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #25, run #2 36 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1555,7 +1538,7 @@ ReadData INFO EventInfo event: 26 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #26, run #2 37 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1583,7 +1566,7 @@ ReadData INFO EventInfo event: 27 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #27, run #2 38 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1611,7 +1594,7 @@ ReadData INFO EventInfo event: 28 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #28, run #2 39 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1639,7 +1622,7 @@ ReadData INFO EventInfo event: 29 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #29, run #2 40 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1667,7 +1650,7 @@ ReadData INFO EventInfo event: 30 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #30, run #2 41 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1695,7 +1678,7 @@ ReadData INFO EventInfo event: 31 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #31, run #2 42 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1723,7 +1706,7 @@ ReadData INFO EventInfo event: 32 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #32, run #2 43 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1751,7 +1734,7 @@ ReadData INFO EventInfo event: 33 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #33, run #2 44 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1779,7 +1762,7 @@ ReadData INFO EventInfo event: 34 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #34, run #2 45 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1807,7 +1790,7 @@ ReadData INFO EventInfo event: 35 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #35, run #2 46 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1835,7 +1818,7 @@ ReadData INFO EventInfo event: 36 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #36, run #2 47 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1863,7 +1846,7 @@ ReadData INFO EventInfo event: 37 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #37, run #2 48 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1891,7 +1874,7 @@ ReadData INFO EventInfo event: 38 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #38, run #2 49 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -1919,7 +1902,7 @@ ReadData INFO EventInfo event: 39 run: 2 ReadData INFO Get Smart data ptr 1 ReadData INFO Could not find ExampleTrackContainer/MyTracks ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28240 +PoolSvc INFO Database (SimplePoolFile2.root) attribute [BYTES_READ]: 28252 PoolSvc INFO Database (SimplePoolFile2.root) attribute [READ_CALLS]: 31 AthenaEventLoopMgr INFO ===>>> done processing event #39, run #2 50 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -2008,10 +1991,7 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name SimplePoolFile3.root -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 3 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -2061,7 +2041,7 @@ ReadData INFO Track pt = 74.8928 eta = 3.1676 phi = 2.6161 detector DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #1 51 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2087,7 +2067,7 @@ ReadData INFO Track pt = 137.584 eta = -39.525 phi = 17.2679 detecto DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 52 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2113,7 +2093,7 @@ ReadData INFO Track pt = 228.154 eta = -6.2704 phi = 31.9197 detecto DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 53 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2139,7 +2119,7 @@ ReadData INFO Track pt = 324.306 eta = -15.8941 phi = 46.5715 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 54 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2165,7 +2145,7 @@ ReadData INFO Track pt = 422.255 eta = -13.279 phi = 61.2233 detecto DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 55 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2191,7 +2171,7 @@ ReadData INFO Track pt = 520.987 eta = -12.3511 phi = 75.8751 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 56 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2217,7 +2197,7 @@ ReadData INFO Track pt = 620.127 eta = -11.8468 phi = 90.5269 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 57 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2243,7 +2223,7 @@ ReadData INFO Track pt = 719.507 eta = -11.5247 phi = 105.179 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #1 58 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2269,7 +2249,7 @@ ReadData INFO Track pt = 819.038 eta = -11.2998 phi = 119.831 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #1 59 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2295,7 +2275,7 @@ ReadData INFO Track pt = 918.671 eta = -11.1334 phi = 134.482 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #1 60 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2321,7 +2301,7 @@ ReadData INFO Track pt = 1018.38 eta = -11.0052 phi = 149.134 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #1 61 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2347,7 +2327,7 @@ ReadData INFO Track pt = 1118.13 eta = -10.9031 phi = 163.786 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #1 62 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2373,7 +2353,7 @@ ReadData INFO Track pt = 1217.93 eta = -10.82 phi = 178.438 detector DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #1 63 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2399,7 +2379,7 @@ ReadData INFO Track pt = 1317.76 eta = -10.751 phi = 193.09 detector DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #1 64 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2425,7 +2405,7 @@ ReadData INFO Track pt = 1417.61 eta = -10.6927 phi = 207.741 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #1 65 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2451,7 +2431,7 @@ ReadData INFO Track pt = 1517.49 eta = -10.6429 phi = 222.393 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #1 66 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2477,7 +2457,7 @@ ReadData INFO Track pt = 1617.37 eta = -10.5997 phi = 237.045 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #1 67 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2503,7 +2483,7 @@ ReadData INFO Track pt = 1717.27 eta = -10.562 phi = 251.697 detecto DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #1 68 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2529,7 +2509,7 @@ ReadData INFO Track pt = 1817.19 eta = -10.5288 phi = 266.349 detect DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #1 69 events processed so far <<<=== EventSelector DEBUG Get AttributeList from the collection @@ -2555,7 +2535,7 @@ ReadData INFO Track pt = 1917.11 eta = -10.4993 phi = 281 detector = DataProxy WARNING accessData: IOA pointer not set ReadData WARNING Could not follow ExampleTrackContainer/MyTracks ElementLinks to ExampleHitContainer/MyHits ReadData INFO Could not find ExampleHitContainer/MyHits -PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27287 +PoolSvc INFO Database (SimplePoolFile3.root) attribute [BYTES_READ]: 27297 PoolSvc INFO Database (SimplePoolFile3.root) attribute [READ_CALLS]: 23 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #1 70 events processed so far <<<=== MetaDataSvc DEBUG handle() EndInputFile for FID:???? @@ -2563,7 +2543,7 @@ Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] ???? Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize ReadData INFO in finalize() @@ -2575,7 +2555,7 @@ ToolSvc INFO Removing all tools created by ToolSvc *****Chrono***** INFO **************************************************************************************************** cObjR_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.104(+- 1.01)/ 0/ 10 [ms] #=193 cObj_ALL INFO Time User : Tot= 50 [ms] Ave/Min/Max=0.276(+- 1.95)/ 0/ 20 [ms] #=181 -ChronoStatSvc INFO Time User : Tot= 1.03 [s] #= 1 +ChronoStatSvc INFO Time User : Tot= 0.88 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_WCond.ref b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_WCond.ref index 34161a0475e0973f3ff6599d281adf0421b2495d..2320c5de709425a1c22cb5f804c0529826266467 100644 --- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_WCond.ref +++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/share/AthenaPoolExample_WCond.ref @@ -1,11 +1,11 @@ -Thu Jun 14 20:40:51 CEST 2018 +Mon Jul 16 20:52:06 CEST 2018 Preloading tcmalloc_minimal.so Athena INFO including file "AthenaCommon/Preparation.py" Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Athena INFO executing ROOT6Setup Athena INFO including file "AthenaCommon/Execution.py" Athena INFO including file "AthenaPoolExampleAlgorithms/AthenaPoolExample_WCondJobOptions.py" -Py:ConfigurableDb INFO Read module info for 5481 configurables from 56 genConfDb files +Py:ConfigurableDb INFO Read module info for 5509 configurables from 55 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Athena INFO including file "AthenaCommon/runbatch.py" [?1034hApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -13,7 +13,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v30r2) - running on lxplus021.cern.ch on Thu Jun 14 20:41:02 2018 + running on lxplus052.cern.ch on Mon Jul 16 20:52:15 2018 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -21,8 +21,7 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 2375 CLIDRegistry entries for module ALL -ChronoStatSvc INFO Number of skipped events for MemStat-1 +ClassIDSvc INFO getRegistryEntries: read 2428 CLIDRegistry entries for module ALL CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 Stream1 DEBUG Property update for OutputLevel : new value = 2 @@ -30,11 +29,12 @@ Stream1 DEBUG in initialize() ToolSvc.Stream1... INFO Initializing ToolSvc.Stream1Tool - package version AthenaServices-00-00-00 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc DEBUG Property update for OutputLevel : new value = 2 +PoolSvc DEBUG Service base class initialized successfully PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-06-13T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus021.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-07-15T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus052.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 DEBUG OutputLevel is PoolSvc INFO Setting up APR FileCatalog and Streams @@ -48,11 +48,10 @@ ReadData DEBUG Property update for OutputLevel : new value = 2 ReadData INFO in initialize() MetaDataSvc DEBUG Property update for OutputLevel : new value = 2 MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 -MetaDataSvc.IOV... DEBUG Property update for OutputLevel : new value = 2 -MetaDataSvc.IOV... DEBUG in initialize() -MetaDataSvc.IOV... DEBUG initialize(): need to modify folders +MetaDataSvc DEBUG Service base class initialized successfully EventSelector DEBUG Property update for OutputLevel : new value = 2 EventSelector INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00 +EventSelector DEBUG Service base class initialized successfully EventSelector INFO reinitialization... EventSelector INFO EventSelection with query EventSelector DEBUG Try item: "SimplePoolFile1.root" from the collection list. @@ -123,13 +122,8 @@ MetaDataHdrForm... DEBUG attributes# = 1 MetaDataHdrForm... DEBUG Branch container 'DataHeaderForm' MetaDataHdrForm... DEBUG Opened container MetaDataHdrForm(DataHeaderForm) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc.IOV... DEBUG handle() FirstInputFile for FID:???? -MetaDataSvc.IOV... DEBUG begin checkOverrideRunNumber -MetaDataSvc.IOV... DEBUG checkOverrideRunNumber: check if tag is set in jobOpts -MetaDataSvc.IOV... DEBUG resetRunNumber: unable to get OverrideRunNumberFromInput property from EventSelector -MetaDataSvc.IOV... DEBUG processInputFileMetaData: file name FID:???? -MetaDataSvc.IOV... DEBUG Could not retrieve IOVMetaDataContainer objects from InputMetaDataStore - cannot process input file meta data AthenaPoolAddre... DEBUG Property update for OutputLevel : new value = 2 +AthenaPoolAddre... DEBUG Service base class initialized successfully ReadData DEBUG input handles: 0 ReadData DEBUG output handles: 0 ReadData DEBUG Data Deps for ReadData @@ -210,9 +204,7 @@ MetaDataHdr(Dat... DEBUG attributes# = 1 MetaDataHdr(Dat... DEBUG Branch container 'DataHeader' MetaDataHdr(Dat... DEBUG Opened container MetaDataHdr(DataHeader) of type ROOT_Tree MetaDataSvc DEBUG Loaded input meta data store proxies -MetaDataSvc DEBUG calling beginInputFile for MetaDataSvc.IOVDbMetaDataTool -MetaDataSvc.IOV... DEBUG handle() BeginInputFile for SimplePoolFile1.root -MetaDataSvc.IOV... DEBUG The first BeginInputFile incidence is fired along with the FirstInputFile incidence so we skip the processing of the Input File MetaData +MetaDataSvc DEBUG calling beginInputFile for ToolSvc.IOVDbMetaDataTool EventSelector DEBUG Get AttributeList from the collection EventSelector DEBUG AttributeList size 0 EventSelector DEBUG record AthenaAttribute, name = Token = [DB=????][CNT=POOLContainer(DataHeader)][CLID=????][TECH=00000202][OID=00000006-00000000]. @@ -1105,7 +1097,7 @@ MetaDataSvc DEBUG handle() LastInputFile for end AthenaEventLoopMgr INFO No more events in event selection WriteCond INFO in finalize() WriteCond INFO Pedestal x = 193136 y = 14420 z = -175208 string = <..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o..........o> -MetaDataSvc DEBUG calling metaDataStop for MetaDataSvc.IOVDbMetaDataTool +MetaDataSvc DEBUG calling metaDataStop for ToolSvc.IOVDbMetaDataTool ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize Stream1 INFO Finalize: preparing to write conditions objects @@ -1185,8 +1177,8 @@ cRep_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0 fRep_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 2 cRepR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 3 cObjR_ALL INFO Time User : Tot= 0 [us] Ave/Min/Max= 0(+- 0)/ 0/ 0 [us] #= 66 -cObj_ALL INFO Time User : Tot= 40 [ms] Ave/Min/Max=0.635(+- 2.44)/ 0/ 10 [ms] #= 63 -ChronoStatSvc INFO Time User : Tot= 0.93 [s] #= 1 +cObj_ALL INFO Time User : Tot= 20 [ms] Ave/Min/Max=0.317(+- 1.75)/ 0/ 10 [ms] #= 63 +ChronoStatSvc INFO Time User : Tot= 0.88 [s] #= 1 *****Chrono***** INFO **************************************************************************************************** ChronoStatSvc.f... INFO Service finalized successfully ApplicationMgr INFO Application Manager Finalized successfully diff --git a/Database/AthenaPOOL/AthenaPoolTools/src/BookkeeperDumper.cxx b/Database/AthenaPOOL/AthenaPoolTools/src/BookkeeperDumper.cxx index 659c80a08ec256dcec9a9d47cdc6719c7f685c64..4f1f77158a67ba0d7ceecce97ae632de1a3fd834 100755 --- a/Database/AthenaPOOL/AthenaPoolTools/src/BookkeeperDumper.cxx +++ b/Database/AthenaPOOL/AthenaPoolTools/src/BookkeeperDumper.cxx @@ -53,7 +53,7 @@ void BookkeeperDumper::handle(const Incident& inc) ServiceHandle<StoreGateSvc> mdstore("StoreGateSvc/InputMetaDataStore", name()); if (mdstore.retrieve().isSuccess()) { // - const DataHandle<xAOD::CutBookkeeperContainer> compBook(nullptr); + const xAOD::CutBookkeeperContainer* compBook = nullptr; if (mdstore->retrieve(compBook, "CutBookkeepers").isSuccess()) { ATH_MSG_INFO("CBK size = " << compBook->size()); @@ -64,7 +64,7 @@ void BookkeeperDumper::handle(const Incident& inc) ATH_MSG_INFO("CBK No CutBookkeepers " << mdstore->dump()); } // - const DataHandle<xAOD::CutBookkeeperContainer> incompBook(nullptr); + const xAOD::CutBookkeeperContainer* incompBook = nullptr; if (mdstore->retrieve(incompBook, "IncompleteCutBookkeepers").isSuccess()) { ATH_MSG_INFO("ICBK size = " << incompBook->size()); @@ -75,7 +75,7 @@ void BookkeeperDumper::handle(const Incident& inc) ATH_MSG_INFO("ICBK No CutBookkeepers " << mdstore->dump()); } // - const DataHandle<xAOD::CutBookkeeperContainer> pcompBook(nullptr); + const xAOD::CutBookkeeperContainer* pcompBook = nullptr; if (mdstore->retrieve(pcompBook, "PDFSumOfWeights").isSuccess()) { ATH_MSG_INFO("PCBK size = " << pcompBook->size()); @@ -86,7 +86,7 @@ void BookkeeperDumper::handle(const Incident& inc) ATH_MSG_INFO("PCBK No CutBookkeepers " << mdstore->dump()); } // - const DataHandle<xAOD::CutBookkeeperContainer> ipcompBook(nullptr); + const xAOD::CutBookkeeperContainer* ipcompBook = nullptr; if (mdstore->retrieve(ipcompBook, "IncompletePDFSumOfWeights").isSuccess()) { ATH_MSG_INFO("IPCBK size = " << ipcompBook->size()); diff --git a/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.cxx b/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.cxx index 22154fe0c1e4ff2f5eaf06c7dd9bb011c1ae755b..ab8c3c2a4065ada60ec53c5b589a8d9526d94fd3 100755 --- a/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.cxx +++ b/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.cxx @@ -21,6 +21,7 @@ #include "GaudiKernel/IIncidentSvc.h" #include "GaudiKernel/FileIncident.h" +#include "StoreGate/ReadHandle.h" #include "StoreGate/StoreGateSvc.h" #include "AthenaKernel/IClassIDSvc.h" @@ -45,6 +46,9 @@ EventCount::EventCount(const std::string& name, ISvcLocator* pSvcLocator) : { // Declare the properties declareProperty("Dump", m_dump,"Bool of whether to dump object summary"); + declareProperty("EventInfoKey", + m_eventInfoKey = "EventInfo", + "Key to read EventInfo."); } EventCount::~EventCount() @@ -63,7 +67,9 @@ StatusCode EventCount::initialize() ServiceHandle<IIncidentSvc> incSvc("IncidentSvc", this->name()); ATH_CHECK( incSvc.retrieve() ); - incSvc->addListener(this, "BeginInputFile", 100); + incSvc->addListener(this, "BeginInputFile", 100); + + ATH_CHECK( m_eventInfoKey.initialize() ); return StatusCode::SUCCESS; } @@ -92,8 +98,7 @@ StatusCode EventCount::execute() // Get the event header, print out event and run number //ATH_MSG_INFO ( evtStore()->dump() ); - const DataHandle<xAOD::EventInfo> evt; - ATH_CHECK( evtStore()->retrieve(evt) ); + SG::ReadHandle<xAOD::EventInfo> evt (m_eventInfoKey); if (!evt.isValid()) { ATH_MSG_FATAL ( "Could not find event" ); return(StatusCode::FAILURE); @@ -155,8 +160,8 @@ StatusCode EventCount::execute() // Now check what objects are in storegate // //if (m_dump) { - const DataHandle<DataHeader> beg; - const DataHandle<DataHeader> ending; + SG::ConstIterator<DataHeader> beg; + SG::ConstIterator<DataHeader> ending; StatusCode status = evtStore()->retrieve(beg,ending); if (status.isFailure() || beg==ending) { ATH_MSG_DEBUG ( "No DataHeaders present in StoreGate" ); diff --git a/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.h b/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.h index 4cdee77c58d8937cfaa3e62fac6624575b745347..fb0142801c7ff1069d3c6881437febc32d55cd2c 100755 --- a/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.h +++ b/Database/AthenaPOOL/AthenaPoolTools/src/EventCount.h @@ -30,6 +30,8 @@ #include "GaudiKernel/ServiceHandle.h" #include "GaudiKernel/IIncidentListener.h" #include "PersistentDataModel/Guid.h" +#include "xAODEventInfo/EventInfo.h" +#include "StoreGate/ReadHandleKey.h" #include "EventInfo/EventID.h" class IClassIDSvc; @@ -59,7 +61,8 @@ public: private: bool m_dump; /// PROP If dump is set to true then the - /// object summary will be printed + /// object summary will be printed + SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey; ServiceHandle<IClassIDSvc> m_pCLIDSvc; int m_nev; /// Event count for output diff --git a/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx b/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx index dd26f31b26dcef225ca61f5fa20a011d5d59a17a..2c95b8ec76e5122bce808491e6cfd2b28a554f15 100755 --- a/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx +++ b/Database/AthenaPOOL/AthenaPoolTools/src/RequireUniqueEvent.cxx @@ -39,24 +39,16 @@ StatusCode RequireUniqueEvent::initialize() StatusCode RequireUniqueEvent::execute() { ATH_MSG_DEBUG ( "in execute()" ); - - // Check for event header - const DataHandle<EventInfo> evt; - ATH_CHECK( evtStore()->retrieve(evt) ); - ATH_MSG_DEBUG ( "Found EventInfo in SG" ); - - if (!evt.isValid()) { - ATH_MSG_FATAL ( "Could not find event" ); - return(StatusCode::FAILURE); - } - ATH_MSG_DEBUG ( "EventInfo event: " << evt->event_ID()->event_number() - << " run: " << evt->event_ID()->run_number() ); + + const EventIDBase& eid = getContext().eventID(); + ATH_MSG_DEBUG ( "EventInfo event: " << eid.event_number() + << " run: " << eid.run_number() ); // // Check if EventID has occurred previously. If so, issue a warning // -- Use brute force, i.e. let the set keep the index and do the search // -- return code on insert is pair with iterator,bool // - EventID ev( evt->event_ID()->run_number(), evt->event_ID()->event_number() ); + EventID ev( eid.run_number(), eid.event_number() ); if (!m_evList.insert(ev).second) { ATH_MSG_WARNING ( "Duplicate record " << ev ); m_cnt++; diff --git a/Database/AthenaRoot/AthenaRootComps/share/test_athena_variable_shape3.ref b/Database/AthenaRoot/AthenaRootComps/share/test_athena_variable_shape3.ref old mode 100755 new mode 100644 diff --git a/Database/AthenaRoot/AthenaRootComps/share/test_athena_variable_shape_merged.ref b/Database/AthenaRoot/AthenaRootComps/share/test_athena_variable_shape_merged.ref old mode 100755 new mode 100644 diff --git a/Database/AthenaRoot/AthenaRootComps/src/RootNtupleOutputMetadataTool.cxx b/Database/AthenaRoot/AthenaRootComps/src/RootNtupleOutputMetadataTool.cxx index 797c3c3339c5f7725898a880adbd7623fc5e4b38..5b4524e84747b9d83b1657ba5d871e3ee4bb58ec 100755 --- a/Database/AthenaRoot/AthenaRootComps/src/RootNtupleOutputMetadataTool.cxx +++ b/Database/AthenaRoot/AthenaRootComps/src/RootNtupleOutputMetadataTool.cxx @@ -157,13 +157,13 @@ RootNtupleOutputMetadataTool::handle(const Incident& inc) ATH_MSG_DEBUG("handle() incident type: " << inc.type()); if (inc.type()=="BeginInputFile") { // Have to clean out any previous file metadata trees - const DataHandle<TransferTree> titer; - const DataHandle<TransferTree> tend; + SG::ConstIterator<TransferTree> titer; + SG::ConstIterator<TransferTree> tend; StatusCode pc = m_ometaStore->retrieve(titer,tend); if (pc.isSuccess()) { for (; titer != tend; titer++) { - if (titer.cptr()!=0) { - if (m_ometaStore->removeDataAndProxy(titer.cptr()).isFailure()) { + if (titer.isValid()) { + if (m_ometaStore->removeDataAndProxy(&*titer).isFailure()) { ATH_MSG_ERROR("Unable to remove TransferTree after writing"); } } @@ -195,8 +195,8 @@ RootNtupleOutputMetadataTool::writeMetadata() } if (!m_metaWritten) { // Write the strings - const DataHandle<std::string> iter; - const DataHandle<std::string> end; + SG::ConstIterator<std::string> iter; + SG::ConstIterator<std::string> end; StatusCode pc = m_ometaStore->retrieve(iter,end); bool failure = false; if (pc.isSuccess()) { @@ -211,16 +211,16 @@ RootNtupleOutputMetadataTool::writeMetadata() } m_metaWritten = true; } - const DataHandle<TransferTree> titer; - const DataHandle<TransferTree> tend; + SG::ConstIterator<TransferTree> titer; + SG::ConstIterator<TransferTree> tend; StatusCode pc = m_ometaStore->retrieve(titer,tend); bool failure = false; if (pc.isSuccess()) { for (; titer != tend; titer++) { std::string key = titer.key(); if (m_treesWritten.find(key) == m_treesWritten.end()) { - if (titer.cptr()!=0) { - const TTree* x = (TTree*)titer.cptr()->tree(); + if (titer.isValid()) { + const TTree* x = (TTree*)titer->tree(); try { if (this->addMetadata(key,x,typeid(TTree)).isFailure()) failure=true; } @@ -245,8 +245,8 @@ RootNtupleOutputMetadataTool::writeMetadata() StatusCode RootNtupleOutputMetadataTool::copyMetadata() { - const DataHandle<std::string> iter; - const DataHandle<std::string> end; + SG::ConstIterator<std::string> iter; + SG::ConstIterator<std::string> end; StatusCode pc = m_imetaStore->retrieve(iter,end); bool failure = false; if (pc.isSuccess()) { @@ -261,13 +261,13 @@ RootNtupleOutputMetadataTool::copyMetadata() ATH_MSG_ERROR("Problem copying metadata"); return StatusCode::FAILURE; } - const DataHandle<TransferTree> titer; - const DataHandle<TransferTree> tend; + SG::ConstIterator<TransferTree> titer; + SG::ConstIterator<TransferTree> tend; pc = m_imetaStore->retrieve(titer,tend); failure = false; if (pc.isSuccess()) { for (; titer != tend; titer++) { - if (titer.cptr()!=0) { + if (titer.isValid()) { auto toCopy = std::make_unique<TransferTree>(*titer); if (!m_ometaStore->contains<TransferTree>(titer.key())) { if (m_ometaStore->record(std::move(toCopy),titer.key()).isFailure()) failure=true; diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py index e2f0a89ab8f19730f285379b02a073331bfc04f1..3edb96feb9b97a17c353728b4b0341b3e7884f2a 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py @@ -1,4 +1,3 @@ - include.block ( "EventOverlayJobTransforms/CaloOverlay_jobOptions.py" ) from AthenaCommon.Resilience import treatException,protectedInclude @@ -16,13 +15,13 @@ if overlayFlags.doBkg==True: from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects job += DeepCopyObjects("BkgRdo3") job.BkgRdo3.TileObjects = True - - + + if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on(): jobproperties.Digitization.doCaloNoise=False - if isRealData: + if overlayFlags.isDataOverlay(): include("LArConditionsCommon/LArIdMap_comm_jobOptions.py") include("LArConditionsCommon/LArConditionsCommon_comm_jobOptions.py") else: @@ -34,26 +33,25 @@ if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on(): if DetFlags.overlay.LAr_on(): - from AthenaCommon.GlobalFlags import GlobalFlags - # FIXME this is for doing Overlay with MC RDO + MC hits # real data RDO will require some changes in the setup for proper db acces #include( "LArDetDescr/LArDetDescr_joboptions.py" ) #include( "LArAthenaPool/LArAthenaPool_joboptions.py" ) # We also need the conditions svc for MC constants: - if readBS and isRealData: + if overlayFlags.isDataOverlay(): theApp.Dlls += [ "LArByteStream"] LArDigitKey = "FREE" ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += ["LArDigitContainer/"+LArDigitKey] ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += ["LArFebHeaderContainer/LArFebHeader"] ServiceMgr.ByteStreamAddressProviderSvc.TypeNames+=["LArDigitContainer/LArDigitContainer_MC"] - + from LArROD.LArRawChannelGetter import LArRawChannelGetter LArRawChannelGetter() - + from LArROD.LArDigits import DefaultLArDigitThinner LArDigitThinner = DefaultLArDigitThinner('LArDigitThinner') # automatically added to topSequence - if isRealData: + if overlayFlags.isDataOverlay(): + job.LArDigitThinner.InputContainerName = overlayFlags.dataStore()+"+FREE" job.LArDigitThinner.RawChannelContainerName = "LArRawChannels_FromDigits" #job.digitmaker1.LArPileUpTool.OutputLevel=DEBUG #MessageSvc.debugLimit = 100000 @@ -65,14 +63,14 @@ if DetFlags.overlay.LAr_on(): if DetFlags.overlay.Tile_on(): include( "TileIdCnv/TileIdCnv_jobOptions.py" ) - include( "TileConditions/TileConditions_jobOptions.py" ) + include( "TileConditions/TileConditions_jobOptions.py" ) include( "TileSimAlgs/TileDigitization_jobOptions.py" ) include( "TileL2Algs/TileL2Algs_jobOptions.py" ) job.TileHitVecToCnt.DigitizationTool.RndmEvtOverlay = True theTileDigitsMaker.RndmEvtOverlay = True - if readBS and isRealData: + if overlayFlags.isDataOverlay(): theApp.Dlls += [ "TileByteStream"] ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "TileBeamElemContainer/TileBeamElemCnt"] ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "TileRawChannelContainer/TileRawChannelCnt"] @@ -81,4 +79,3 @@ if DetFlags.overlay.Tile_on(): ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "TileLaserObject/TileLaserObj"] #-------------------- - diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py index 9f87e0c567fb20bb89086026fccb2ed24049d75b..4a2ea488b332062a24b62c2a56ad2095d9d4b1d4 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py @@ -2,7 +2,7 @@ include.block ( "EventOverlayJobTransforms/ConfiguredOverlay_jobOptions.py" ) #-------------------------------------------------------------- # Load POOL support -# (modified by Piyali.Banerjee to include skip events) +# (modified by Piyali.Banerjee to include skip events) #-------------------------------------------------------------- from AthenaCommon.AlgSequence import AlgSequence @@ -16,16 +16,14 @@ if not isRealData: #======================================================================= from AthenaCommon.AppMgr import ServiceMgr from PileUpComps.PileUpCompsConf import PileUpEventLoopMgr - from PileUpComps.PileUpCompsConf import BkgStreamsCache import AthenaPoolCnvSvc.WriteAthenaPool from EventSelectorAthenaPool.EventSelectorAthenaPoolConf import EventSelectorAthenaPool from StoreGate.StoreGateConf import StoreGateSvc - -from Digitization.DigitizationFlags import jobproperties -digitization = jobproperties.Digitization +from Digitization.DigitizationFlags import digitizationFlags +from OverlayCommonAlgs.OverlayFlags import overlayFlags pileUpEventLoopMgr = PileUpEventLoopMgr() pileUpEventLoopMgr.OutStreamType = "AthenaOutputStream" @@ -35,7 +33,7 @@ print "================ DetFlags ================ " DetFlags.Print() #if globalflags.InputFormat()=='bytestream': -if readBS: +if overlayFlags.isDataOverlay(): #if isRealData: # include ("RecExCommission/RecExCommission_BSRead_config_hack.py") #else: @@ -44,7 +42,7 @@ if readBS: from ByteStreamCnvSvc import ReadByteStream include("RecExCommon/BSRead_config.py") ServiceMgr.ByteStreamInputSvc.FullFileName = DataInputCollections - ServiceMgr.ByteStreamInputSvc.EventStore= "StoreGateSvc/OriginalEvent_SG" + ServiceMgr.ByteStreamInputSvc.EventStore= "StoreGateSvc/"+overlayFlags.dataStore() from AthenaKernel import StoreID ServiceMgr.ByteStreamAddressProviderSvc.StoreID=StoreID.UNKNOWN from EventSelectorAthenaPool.EventSelectorAthenaPoolConf import AthenaPoolAddressProviderSvc @@ -59,7 +57,7 @@ pileUpEventLoopMgr.OrigSelector="EventSelector" pileUpEventLoopMgr.firstXing=0 pileUpEventLoopMgr.lastXing=0 pileUpEventLoopMgr.IsEventOverlayJob=True -pileUpEventLoopMgr.IsEventOverlayJobMC=not isRealData +pileUpEventLoopMgr.IsEventOverlayJobMC=not overlayFlags.isDataOverlay() ServiceMgr.EventSelector.SkipEvents = athenaCommonFlags.SkipEvents() # Set up MC input @@ -73,6 +71,11 @@ pileUpEventLoopMgr.SignalSelector="mcSignal_EventSelector" ServiceMgr += pileUpEventLoopMgr +# Explicitly create the two extra StoreGateSvc instances used by +# Overlay jobs. This prevents warnings later in the configuration. +ServiceMgr += StoreGateSvc(overlayFlags.dataStore()) #, Dump=True, OutputLevel=DEBUG) +ServiceMgr += StoreGateSvc(overlayFlags.evtStore()) #, Dump=True, OutputLevel=DEBUG) + if not hasattr(ServiceMgr, 'PileUpMergeSvc'): from PileUpTools.PileUpToolsConf import PileUpMergeSvc ServiceMgr += PileUpMergeSvc() @@ -85,21 +88,21 @@ ServiceMgr.PileUpMergeSvc.ReturnTimedData=False #================================================================ #synchronization of Beam flags and Digitization flags - KAA -#if not (digitization.doMinimumBias.get_Value() or digitization.doCavern.get_Value() or -# digitization.doBeamGas.get_Value() or digitization.doBeamHalo.get_Value()) : +#if not (digitizationFlags.doMinimumBias.get_Value() or digitizationFlags.doCavern.get_Value() or +# digitizationFlags.doBeamGas.get_Value() or digitizationFlags.doBeamHalo.get_Value()) : DetFlags.pileup.all_setOff() -digitization.numberOfCollisions=0.0 +digitizationFlags.numberOfCollisions=0.0 #----------------------------------------------------------- # Check Beam and Digitization jobproperties are synchronised #----------------------------------------------------------- from AthenaCommon.BeamFlags import jobproperties -if jobproperties.Beam.numberOfCollisions.get_Value() != digitization.numberOfCollisions.get_Value() : - jobproperties.Beam.numberOfCollisions = digitization.numberOfCollisions.get_Value() - jobproperties.Beam.override = True ## just incase - default is True +if jobproperties.Beam.numberOfCollisions.get_Value() != digitizationFlags.numberOfCollisions.get_Value() : + jobproperties.Beam.numberOfCollisions = digitizationFlags.numberOfCollisions.get_Value() + jobproperties.Beam.override = True ## just incase - default is True -if jobproperties.Beam.bunchSpacing.get_Value() != digitization.bunchSpacing.get_Value() : - jobproperties.Beam.bunchSpacing = digitization.bunchSpacing.get_Value() - jobproperties.Beam.override = True ## just incase - default is True +if jobproperties.Beam.bunchSpacing.get_Value() != digitizationFlags.bunchSpacing.get_Value() : + jobproperties.Beam.bunchSpacing = digitizationFlags.bunchSpacing.get_Value() + jobproperties.Beam.override = True ## just incase - default is True #================================================================ diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py index 6753682414d2d3a559b50c4bf21f401e262e5d80..9347cc8c2608999a0532a0410388cb447ea75097 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py @@ -1,6 +1,6 @@ include.block ( "EventOverlayJobTransforms/InnerDetectorOverlay_jobOptions.py" ) -from Digitization.DigitizationFlags import jobproperties +from Digitization.DigitizationFlags import digitizationFlags from AthenaCommon.DetFlags import DetFlags from AthenaCommon import CfgGetter from OverlayCommonAlgs.OverlayFlags import overlayFlags @@ -10,24 +10,22 @@ from AthenaCommon.Resilience import treatException,protectedInclude if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on(): if overlayFlags.doBkg==True: - from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects - job += DeepCopyObjects("BkgRdo1") - job.BkgRdo1.InDetObjects = True + from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects + job += DeepCopyObjects("BkgRdo1") + job.BkgRdo1.InDetObjects = True - include( "InDetEventAthenaPool/InDetEventAthenaPool_joboptions.py" ) # FIXME: is needed? + digitizationFlags.doInDetNoise=False # FIXME THIS SHOULD BE SET EARLIER IN THE CONFIGURATION - jobproperties.Digitization.doInDetNoise=False - - #if readBS and isRealData: + #if overlayFlags.isDataOverlay(): # include( "InDetCosmicRecExample/InDetCosmicFlags_jobOptions.py" ) if DetFlags.overlay.pixel_on(): job += CfgGetter.getAlgorithm("PixelOverlayDigitization") - if readBS and isRealData: - job.InDetPixelRawDataProvider.RDOKey = "OriginalEvent_SG+PixelRDOs" - #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "PixelRDO_Container/PixelRDOs" ] - #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "Trk::PixelClusterContainer/PixelOnlineClusters" ] + if overlayFlags.isDataOverlay(): + job.InDetPixelRawDataProvider.RDOKey = overlayFlags.dataStore()+"+PixelRDOs" + #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "PixelRDO_Container/PixelRDOs" ] + #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "Trk::PixelClusterContainer/PixelOnlineClusters" ] else: if not conddb.folderRequested('PIXEL/PixReco'): conddb.addFolder('PIXEL_OFL','/PIXEL/PixReco') @@ -35,60 +33,55 @@ if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay. if DetFlags.overlay.SCT_on(): # Setup the ReadCalibChip folders and Svc - if isRealData: - #conddb.blockFolder("/SCT/DAQ/Calibration/ChipGain") - #conddb.blockFolder("/SCT/DAQ/Calibration/ChipNoise") - #conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipGain",forceMC=True) - #conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipNoise",forceMC=True) - conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipGain<tag>SctDaqCalibrationChipGain-Apr10-01</tag>",forceMC=True, className="CondAttrListCollection") - conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipNoise<tag>SctDaqCalibrationChipNoise-Apr10-01</tag>",forceMC=True, className="CondAttrListCollection") - - #if not conddb.folderRequested('/SCT/DAQ/Calibration/ChipGain'): - # conddb.addFolderSplitOnline("SCT","/SCT/DAQ/Calibration/ChipGain","/SCT/DAQ/Calibration/ChipGain",forceMC=True) - #if not conddb.folderRequested('/SCT/DAQ/Calibration/ChipNoise'): - # conddb.addFolderSplitOnline("SCT","/SCT/DAQ/Calibration/ChipNoise","/SCT/DAQ/Calibration/ChipNoise",forceMC=True) + if overlayFlags.isDataOverlay(): + #conddb.blockFolder("/SCT/DAQ/Calibration/ChipGain") + #conddb.blockFolder("/SCT/DAQ/Calibration/ChipNoise") + #conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipGain",forceMC=True) + #conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipNoise",forceMC=True) + conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipGain<tag>SctDaqCalibrationChipGain-Apr10-01</tag>",forceMC=True, className="CondAttrListCollection") + conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipNoise<tag>SctDaqCalibrationChipNoise-Apr10-01</tag>",forceMC=True, className="CondAttrListCollection") + + #if not conddb.folderRequested('/SCT/DAQ/Calibration/ChipGain'): + # conddb.addFolderSplitOnline("SCT","/SCT/DAQ/Calibration/ChipGain","/SCT/DAQ/Calibration/ChipGain",forceMC=True) + #if not conddb.folderRequested('/SCT/DAQ/Calibration/ChipNoise'): + # conddb.addFolderSplitOnline("SCT","/SCT/DAQ/Calibration/ChipNoise","/SCT/DAQ/Calibration/ChipNoise",forceMC=True) job += CfgGetter.getAlgorithm("SCT_OverlayDigitization") - CfgGetter.getPublicTool("SCT_DigitizationTool").InputObjectName="SCT_Hits" - if readBS and isRealData: - #job.InDetSCTRawDataProvider.EvtStore = "OriginalEvent_SG" - job.InDetSCTRawDataProvider.RDOKey = "OriginalEvent_SG+SCT_RDOs" - job.InDetSCTRawDataProvider.LVL1IDKey = "OriginalEvent_SG+SCT_LVL1ID" - job.InDetSCTRawDataProvider.BCIDKey = "OriginalEvent_SG+SCT_BCID" - #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "SCT_RDO_Container/SCT_RDOs" ] - #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "Trk::SCT_ClusterContainer/SCT_OnlineClusters" ] + if overlayFlags.isDataOverlay(): + job.InDetSCTRawDataProvider.RDOKey = overlayFlags.dataStore()+"+SCT_RDOs" + job.InDetSCTRawDataProvider.LVL1IDKey = overlayFlags.dataStore()+"+SCT_LVL1ID" + job.InDetSCTRawDataProvider.BCIDKey = overlayFlags.dataStore()+"+SCT_BCID" + #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "SCT_RDO_Container/SCT_RDOs" ] + #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "Trk::SCT_ClusterContainer/SCT_OnlineClusters" ] if DetFlags.overlay.TRT_on(): - if isRealData: - conddb.blockFolder("/TRT/Cond/DigVers") - #conddb.addFolderWithTag("TRT_OFL","/TRT/Cond/DigVers","TRTCondDigVers-Collisions-01",force=True,forceMC=True) - conddb.addFolder("TRT_OFL","/TRT/Cond/DigVers",forceMC=True) + if overlayFlags.isDataOverlay(): + conddb.blockFolder("/TRT/Cond/DigVers") + #conddb.addFolderWithTag("TRT_OFL","/TRT/Cond/DigVers","TRTCondDigVers-Collisions-01",force=True,forceMC=True) + conddb.addFolder("TRT_OFL","/TRT/Cond/DigVers",forceMC=True) from TRT_ElectronPidTools.TRT_ElectronPidToolsConf import InDet__TRT_LocalOccupancy - TRT_LocalOccupancy = InDet__TRT_LocalOccupancy( name ="TRT_LocalOccupancy", - isTrigger = False, - ) + TRT_LocalOccupancy = InDet__TRT_LocalOccupancy(name="TRT_LocalOccupancy", isTrigger= False ) ToolSvc += TRT_LocalOccupancy job += CfgGetter.getAlgorithm("TRT_OverlayDigitization") - + from InDetRecExample.InDetJobProperties import InDetFlags include("InDetRecExample/InDetRecConditionsAccess.py") - if readBS and isRealData: - job.InDetTRTRawDataProvider.EvtStore = "OriginalEvent_SG" - job.InDetTRTRawDataProvider.RDOKey = "OriginalEvent_SG+TRT_RDOs" - #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "TRT_RDO_Container/TRT_RDOs" ] - - #from IOVDbSvc.CondDB import conddb -# conddb.addFolder("TRT","/TRT/Calib/T0","<tag>TrtCalibt0-UPD2-FDR2-01</tag>") -# conddb.addFolder("TRT","/TRT/Calib/RT","<tag>TrtCalibRt-UPD2-FDR2-01</tag>") - # conddb.addFolder("TRT","/TRT/Calib/T0","<tag>TrtCalibRt-HLT-UPD1-01</tag>") - # conddb.addFolder("TRT","/TRT/Calib/RT","<tag>TrtCalibT0-HLT-UPD1-01</tag>") - conddb.addFolder("TRT_ONL","/TRT/Onl/ROD/Compress") + if overlayFlags.isDataOverlay(): + job.InDetTRTRawDataProvider.RDOKey = overlayFlags.dataStore()+"+TRT_RDOs" + #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "TRT_RDO_Container/TRT_RDOs" ] + + #from IOVDbSvc.CondDB import conddb + #conddb.addFolder("TRT","/TRT/Calib/T0","<tag>TrtCalibt0-UPD2-FDR2-01</tag>") + #conddb.addFolder("TRT","/TRT/Calib/RT","<tag>TrtCalibRt-UPD2-FDR2-01</tag>") + #conddb.addFolder("TRT","/TRT/Calib/T0","<tag>TrtCalibRt-HLT-UPD1-01</tag>") + #conddb.addFolder("TRT","/TRT/Calib/RT","<tag>TrtCalibT0-HLT-UPD1-01</tag>") + conddb.addFolder("TRT_ONL","/TRT/Onl/ROD/Compress") if overlayFlags.doSignal==True: - include ("EventOverlayJobTransforms/InDetMcSignal_jobOptions.py") + include ("EventOverlayJobTransforms/InDetMcSignal_jobOptions.py") job += CfgGetter.getAlgorithm("InDetOverlay") job += CfgGetter.getAlgorithm("InDetSDOOverlay") diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py index 405537047faba6f350773d2c380114cdef05f944..71bf544299af9f925ef937fb248d550a3d65e230 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py @@ -38,7 +38,7 @@ if DetFlags.overlay.LAr_on(): theLArPileUpTool.NoiseOnOff = False theLArPileUpTool.RecordMap = False - if isRealData: + if overlayFlags.isDataOverlay(): theLArPileUpTool.PedestalKey = job.digitmaker1.LArPileUpTool.PedestalKey theLArPileUpTool.ADC2MeVTool = job.digitmaker1.LArPileUpTool.ADC2MeVTool diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py index f7f488bafb7a88592b8f8ff2497cd9a437bf062e..616a525fa7bebd8fbb6053800982b0b1e209d081 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py @@ -2,7 +2,7 @@ include.block ( "EventOverlayJobTransforms/Level1Overlay_jobOptions.py" ) from AthenaCommon.DetFlags import DetFlags -from Digitization.DigitizationFlags import jobproperties +from Digitization.DigitizationFlags import digitizationFlags from OverlayCommonAlgs.OverlayFlags import overlayFlags if DetFlags.overlay.LVL1_on(): @@ -12,7 +12,7 @@ if DetFlags.overlay.LVL1_on(): job += DeepCopyObjects("BkgRdo5") job.BkgRdo5.Level1Objects = True - if readBS and isRealData: + if overlayFlags.isDataOverlay(): include ("TrigT1CaloByteStream/ReadLVL1CaloBS_jobOptions.py") #include ("MuonCommRecExample/ReadMuCTPI_jobOptions.py") @@ -29,7 +29,7 @@ if DetFlags.overlay.LVL1_on(): if DetFlags.simulateLVL1.LAr_on(): include( "LArL1Sim/LArL1Sim_G4_jobOptions.py" ) # Noise - if not jobproperties.Digitization.doCaloNoise.get_Value(): + if not digitizationFlags.doCaloNoise.get_Value(): job.LArTTL1Maker.NoiseOnOff= False #(default:True) # PileUp job.LArTTL1Maker.PileUp = True diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py index dbef2b7478ff62c6fac3344aa721cfbdf409e4e3..014555980e1ebddee9b6d9e904b82edd3c51b7c6 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py @@ -14,25 +14,19 @@ theApp.Dlls += [ "MuonByteStreamCnvTest" ] theApp.Dlls += [ "TrigT1RPChardware" ] theApp.Dlls += [ "TrigT1RPCsteering" ] theApp.Dlls += [ "TrigT1RPCmonitoring" ] - +from AthenaCommon.CfgGetter import getAlgorithm if DetFlags.overlay.MDT_on(): - from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import MdtDigitToMdtRDO - job += MdtDigitToMdtRDO( "SigMdtDigitToMdtRDO" ) - job.SigMdtDigitToMdtRDO.EvtStore = job.MdtOverlay.MCStore + job += getAlgorithm( "SigMdtDigitToMdtRDO" ) #ACH if readBS==False: #ACH job += MdtDigitToMdtRDO( "BkgMdtDigitToMdtRDO" ) #ACH job.BkgMdtDigitToMdtRDO.Store = job.MdtOverlay.TempBkgStore if DetFlags.overlay.RPC_on(): - from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import RpcDigitToRpcRDO - job += RpcDigitToRpcRDO( "SigRpcDigitToRpcRDO" ) - job.SigRpcDigitToRpcRDO.EvtStore = job.RpcOverlay.MCStore + job += getAlgorithm( "SigRpcDigitToRpcRDO" ) #ACH if readBS==False: #ACH job += RpcDigitToRpcRDO( "BkgRpcDigitToRpcRDO" ) #ACH job.BkgRpcDigitToRpcRDO.Store = job.RpcOverlay.TempBkgStore if DetFlags.overlay.TGC_on(): - from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import TgcDigitToTgcRDO - job += TgcDigitToTgcRDO( "SigTgcDigitToTgcRDO" ) - job.SigTgcDigitToTgcRDO.EvtStore = job.TgcOverlay.MCStore + job += getAlgorithm( "SigTgcDigitToTgcRDO" ) #ACH if readBS==False: #ACH job += TgcDigitToTgcRDO( "BkgTgcDigitToTgcRDO" ) #ACH job.BkgTgcDigitToTgcRDO.Store = job.TgcOverlay.TempBkgStore diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py index 88b90882734e94361581b3e24dad43c02cd976e4..9d999f7abf749df07bef22e7b7da2133b09395f4 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py @@ -6,43 +6,46 @@ from Digitization.DigitizationFlags import digitizationFlags from AthenaCommon.DetFlags import DetFlags from OverlayCommonAlgs.OverlayFlags import overlayFlags from AthenaCommon import CfgGetter +from AthenaCommon.CfgGetter import getAlgorithm from RecExConfig.RecFlags import rec as recFlags if DetFlags.overlay.MDT_on() or DetFlags.overlay.CSC_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on(): - + include( "MuonEventAthenaPool/MuonEventAthenaPool_joboptions.py" ) - + import MuonRecExample.MuonReadCalib - if readBS and isRealData: - theApp.Dlls += [ "MuonByteStream"] - if DetFlags.overlay.CSC_on(): - from MuonRecExample.MuonRecFlags import muonRecFlags - muonRecFlags.doCSCs.set_Value_and_Lock = True + if overlayFlags.isDataOverlay(): + theApp.Dlls += [ "MuonByteStream"] + if DetFlags.overlay.CSC_on(): + from MuonRecExample.MuonRecFlags import muonRecFlags + muonRecFlags.doCSCs.set_Value_and_Lock = True #FIXME should not be setting jobproperties at this point in the configuration. - from MuonByteStream.MuonByteStreamFlags import muonByteStreamFlags - muonByteStreamFlags.TgcDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration. - muonByteStreamFlags.RpcDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration. - muonByteStreamFlags.MdtDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration. + from MuonByteStream.MuonByteStreamFlags import muonByteStreamFlags + muonByteStreamFlags.TgcDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration. + muonByteStreamFlags.RpcDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration. + muonByteStreamFlags.MdtDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration. if overlayFlags.doBkg==True: - from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects - job += DeepCopyObjects("BkgRdo4") - job.BkgRdo4.MuonObjects = True - + from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects + job += DeepCopyObjects("BkgRdo4") + job.BkgRdo4.MuonObjects = True + import MuonCnvExample.MuonCablingConfig digitizationFlags.doMuonNoise=False #FIXME should not be setting jobproperties at this point in the configuration. - if readBS: - include("MuonCnvExample/MuonReadBS_jobOptions.py") + if overlayFlags.isDataOverlay(): + include("MuonCnvExample/MuonReadBS_jobOptions.py") if DetFlags.overlay.CSC_on(): - if readBS: - ToolSvc.CscRawDataProviderTool.RdoLocation = "OriginalEvent_SG+CSCRDO" - include ( "CscOverlay/CscOverlay_jobOptions.py" ) - job.CscOverlay.IsByteStream = readBS - job.CscOverlay.DataStore = "OriginalEvent_SG" + if overlayFlags.isDataOverlay(): + ToolSvc.CscRawDataProviderTool.RdoLocation = overlayFlags.dataStore()+"+CSCRDO" + job += getAlgorithm("CscOverlay") + + #job.CscOverlay.OutputLevel=VERBOSE + #svcMgr.MessageSvc.defaultLimit=100000 + #print job.CscOverlay #print "ACH123: Setting DEBUG v99" #job.CscOverlay.MakeRDOTool.OutputLevel=DEBUG @@ -52,52 +55,36 @@ if DetFlags.overlay.MDT_on() or DetFlags.overlay.CSC_on() or DetFlags.overlay.RP #print "ACH123: NumSamples = 2 for MakeRDOTool" #job.CscOverlay.MakeRDOTool.NumSamples=2 - + if DetFlags.overlay.MDT_on(): - # include ( "MdtOverlay/MdtOverlay_jobOptions.py" ) job += CfgGetter.getAlgorithm("MdtOverlay") - from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import MdtDigitToMdtRDO - job += MdtDigitToMdtRDO() - job.MdtDigitToMdtRDO.InputObjectName = overlayFlags.dataStore()+"+MDT_DIGITS" - job.MdtDigitToMdtRDO.OutputObjectName = overlayFlags.dataStore()+"+MDTCSM" - - - if readBS: - ToolSvc.MdtRawDataProviderTool.RdoLocation = "OriginalEvent_SG+MDTCSM" - job.MdtOverlay.ConvertRDOToDigitTool.RetrievePrivateCopy = False - + job += CfgGetter.getAlgorithm("OverlayMdtDigitToMdtRDO") + if overlayFlags.isDataOverlay(): + ToolSvc.MdtRawDataProviderTool.RdoLocation = overlayFlags.dataStore()+"+MDTCSM" + job.MdtOverlay.ConvertRDOToDigitTool.RetrievePrivateCopy = False #job.MdtOverlay.OutputLevel = VERBOSE - #job.MdtDigitToMdtRDO.OutputLevel = VERBOSE + #job.OverlayMdtDigitToMdtRDO.OutputLevel = VERBOSE if DetFlags.overlay.RPC_on(): job += CfgGetter.getAlgorithm("RpcOverlay") - from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import RpcDigitToRpcRDO - job += RpcDigitToRpcRDO() - job.RpcDigitToRpcRDO.EvtStore = job.RpcOverlay.OutputStore - #include ( "RpcOverlay/RpcOverlay_jobOptions.py" ) - #job.RpcOverlay.DataStore = "BkgEvent_2_SG" - if readBS: - ToolSvc.RpcRawDataProviderTool.RdoLocation = "OriginalEvent_SG+RPCPAD" - job.RpcOverlay.ConvertRDOToDigitTool.RetrievePrivateCopy = False + job += CfgGetter.getAlgorithm("OverlayRpcDigitToRpcRDO") + if overlayFlags.isDataOverlay(): + ToolSvc.RpcRawDataProviderTool.RdoLocation = overlayFlags.dataStore()+"+RPCPAD" + job.RpcOverlay.ConvertRDOToDigitTool.RetrievePrivateCopy = False #job.RpcOverlay.OutputLevel = VERBOSE - #job.RpcDigitToRpcRDO.OutputLevel = VERBOSE + #job.OverlayRpcDigitToRpcRDO.OutputLevel = VERBOSE if DetFlags.overlay.TGC_on(): - # include ( "TgcOverlay/TgcOverlay_jobOptions.py" ) job += CfgGetter.getAlgorithm("TgcOverlay") - from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import TgcDigitToTgcRDO - job += TgcDigitToTgcRDO() - job.TgcDigitToTgcRDO.EvtStore = job.TgcOverlay.OutputStore - #job.TgcOverlay.DataStore = "BkgEvent_2_SG" - if readBS: - ToolSvc.TgcRawDataProviderTool.RdoLocation = "OriginalEvent_SG+TGCRDO" - - job.TgcOverlay.ConvertRDOToDigitTool.RetrievePrivateCopy = False - - # storegate dump - # StoreGateSvc = Service( "StoreGateSvc" ) - # StoreGateSvc.Dump = True #true will dump data store contents - - # StoreGateSvc.OutputLevel=DEBUG - - + job += CfgGetter.getAlgorithm("OverlayTgcDigitToTgcRDO") + if overlayFlags.isDataOverlay(): + ToolSvc.TgcRawDataProviderTool.RdoLocation = overlayFlags.dataStore()+"+TGCRDO" + job.TgcOverlay.ConvertRDOToDigitTool.RetrievePrivateCopy = False + #job.TgcOverlay.OutputLevel = VERBOSE + #job.OverlayTgcDigitToRpcRDO.OutputLevel = VERBOSE + + # storegate dump + # StoreGateSvc = Service( "StoreGateSvc" ) + # StoreGateSvc.Dump = True #true will dump data store contents + + # StoreGateSvc.OutputLevel=DEBUG diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py index c40590b7924e0eae935a24964d5821a102f238fa..60d2003142c180322e62a54247056f6c8f957c92 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py @@ -3,6 +3,7 @@ include.block ( "EventOverlayJobTransforms/OverlayOutputItemList_jobOptions.py" from AthenaCommon.AppMgr import ServiceMgr from AthenaCommon.DetFlags import DetFlags from Digitization.DigitizationFlags import digitizationFlags +from OverlayCommonAlgs.OverlayFlags import overlayFlags # The output - overlay from AthenaPoolCnvSvc.WriteAthenaPool import AthenaPoolOutputStream @@ -15,7 +16,7 @@ outStream.ItemList += [ "EventInfo#*", "PileUpEventInfo#*" ] outStream.ItemList += [ "LumiBlockCollection#*" ] # timings -if not isRealData: +if not overlayFlags.isDataOverlay(): outStream.ItemList += ["RecoTimingObj#EVNTtoHITS_timings"] outStream.ItemList += ["RecoTimingObj#HITStoRDO_timings"] @@ -42,7 +43,7 @@ if DetFlags.overlay.Truth_on(): if DetFlags.overlay.TRT_on(): outStream.ItemList += [ "InDetSimDataCollection#TRT_SDO_Map" ] if DetFlags.overlay.BCM_on(): - outStream.ItemList += [ "InDetSimDataCollection#BCM_SDO_Map" ] + outStream.ItemList += [ "InDetSimDataCollection#BCM_SDO_Map" ] if DetFlags.overlay.pixel_on(): outStream.ItemList += ["PixelRDO_Container#*"] @@ -63,7 +64,7 @@ if DetFlags.overlay.LAr_on(): outStream.ItemList+=["LArFebErrorSummary#*"] if DetFlags.overlay.Tile_on(): outStream.ItemList += [ "TileRawChannelContainer#*" ] - if isRealData or 'AddCaloDigi' in digitizationFlags.experimentalDigi(): + if overlayFlags.isDataOverlay() or 'AddCaloDigi' in digitizationFlags.experimentalDigi(): outStream.ItemList += [ "TileDigitsContainer#*" ] else: outStream.ItemList += [ "TileDigitsContainer#TileDigitsFlt" ] @@ -110,5 +111,3 @@ if DetFlags.overlay.LVL1_on(): "DataVector<LVL1::JEMRoI>#*", "DataVector<LVL1::JEMEtSums>#*", "LVL1::CMMRoI#*"] - - diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py index 7aaa8f8515b832bab24d2c9a6da4d34e2b11d57e..39f97279cc661f9de0a06bc7c767155d8a97282e 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py @@ -1,4 +1,3 @@ - include.block ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" ) # McEventCollection copying. Alghough logically it belongs to @@ -7,7 +6,7 @@ include.block ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" ) from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.doBkg==True: - from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects + from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects job += DeepCopyObjects("BkgRdo") job.BkgRdo.EvtInfoObjects = True job += DeepCopyObjects("BkgRdo0") @@ -15,9 +14,9 @@ if overlayFlags.doBkg==True: from OverlayCommonAlgs.OverlayCommonAlgsConf import CopyMcEventCollection job += CopyMcEventCollection() -if readBS and isRealData: +if overlayFlags.isDataOverlay(): job.CopyMcEventCollection.RealData = True -if not isRealData: +if not overlayFlags.isDataOverlay(): from OverlayCommonAlgs.OverlayCommonAlgsConf import CopyTruthInfo job += CopyTruthInfo() diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py index 29e7b85402215446198ab356d94e3c2ac28673ed..a638742078f2c79e4ef3bf89e636119812a7cc42 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py @@ -30,7 +30,7 @@ larCondFlags.OFCShapeFolder.set_Value_and_Lock("") globalflags.isOverlay.set_Value_and_Lock(True) overlayFlags.isDataOverlay.set_Value_and_Lock(True) -isRealData = True +isRealData = overlayFlags.isDataOverlay() from AthenaCommon.BeamFlags import jobproperties jobproperties.Beam.beamType.set_Value_and_Lock("collisions") @@ -81,7 +81,7 @@ if hasattr(runArgs,"samplingFractionDbTag"): digitizationFlags.physicsList=runAr if hasattr(runArgs,"digiRndmSvc"): digitizationFlags.rndmSvc=runArgs.digiRndmSvc #if hasattr(runArgs, "AddCaloDigi"): digitizationFlags.experimentalDigi+=["AddCaloDigi"] -readBS = True +readBS = overlayFlags.isDataOverlay() overlayFlags.doBkg=False #ACH #GlobalFlags.InputFormat.set_bytestream() diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py index 8816ac2bd4accd69be2a25837ce8a6c05a9b7b3d..c859ae6ac90626a02468e8c97a243117802895fc 100644 --- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py +++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py @@ -39,10 +39,10 @@ if hasattr(runArgs,"inputHITSFile"): else: raise RuntimeError ("No input HITS file defined") -if hasattr(runArgs,"outputRDOFile"): +if hasattr(runArgs,"outputRDOFile"): athenaCommonFlags.PoolRDOOutput.set_Value_and_Lock( runArgs.outputRDOFile ) OverlayCollection = runArgs.outputRDOFile - + if not hasattr(runArgs, 'outputRDO_SGNLFile') or runArgs.outputRDO_SGNLFile=="NONE": overlayFlags.doSignal=False SignalCollection = "NONE" @@ -60,8 +60,8 @@ if hasattr(runArgs,"samplingFractionDbTag"): digitizationFlags.physicsList=runAr if hasattr(runArgs,"digiRndmSvc"): digitizationFlags.rndmSvc=runArgs.digiRndmSvc if hasattr(runArgs, "AddCaloDigi"): digitizationFlags.experimentalDigi+=["AddCaloDigi"] -readBS = False -isRealData = False +readBS = overlayFlags.isDataOverlay() +isRealData = overlayFlags.isDataOverlay() from RecExConfig.RecFlags import rec rec.projectName = 'IS_SIMULATION' @@ -74,9 +74,9 @@ import MagFieldServices.SetupField from IOVDbSvc.CondDB import conddb if hasattr(runArgs, 'conditionsTag') and runArgs.conditionsTag!='NONE' and runArgs.conditionsTag!='': - globalflags.ConditionsTag=runArgs.conditionsTag - if len(globalflags.ConditionsTag())!=0: - conddb.setGlobalTag(globalflags.ConditionsTag()) + globalflags.ConditionsTag=runArgs.conditionsTag + if len(globalflags.ConditionsTag())!=0: + conddb.setGlobalTag(globalflags.ConditionsTag()) # LVL1 Trigger Menu if hasattr(runArgs, "triggerConfig") and runArgs.triggerConfig!="NONE": @@ -139,7 +139,7 @@ except: overlaylog.warning('Could not add TimingAlg, no timing info will be written out.') -include ( "RecExCond/AllDet_detDescr.py" ) +include ( "RecExCond/AllDet_detDescr.py" ) #FIXME Dangerous to use this one from AthenaCommon.AppMgr import theApp theApp.EventLoop = "PileUpEventLoopMgr" diff --git a/Event/xAOD/xAODCore/CMakeLists.txt b/Event/xAOD/xAODCore/CMakeLists.txt index fe6bd1ff008608517848823336a37aaf3e4a5e93..c4565de13bd321f7c44df6b4d73763f643a4c73c 100644 --- a/Event/xAOD/xAODCore/CMakeLists.txt +++ b/Event/xAOD/xAODCore/CMakeLists.txt @@ -81,11 +81,9 @@ atlas_add_test( ut_xaodcore_auxinfobase_test SOURCES test/ut_xaodcore_auxinfobase_test.cxx LINK_LIBRARIES AthContainers xAODCore ) -if( XAOD_STANDALONE ) - atlas_add_test( ut_xaodcore_shallowcopy_test - SOURCES test/ut_xaodcore_shallowcopy.cxx - LINK_LIBRARIES AthContainers AthLinks xAODCore ) -endif() +atlas_add_test( ut_xaodcore_shallowcopy_test + SOURCES test/ut_xaodcore_shallowcopy.cxx + LINK_LIBRARIES AthContainers AthLinks xAODCore ) # Declare the "include tests": foreach( header AddDVProxy AuxContainerBase AuxSelection BaseInfo CLASS_DEF diff --git a/Event/xAOD/xAODCore/share/ut_xaodcore_shallowcopy_test.ref b/Event/xAOD/xAODCore/share/ut_xaodcore_shallowcopy_test.ref new file mode 100644 index 0000000000000000000000000000000000000000..c2fbee20eb8de459af637ef3af73b8fe05079bf7 --- /dev/null +++ b/Event/xAOD/xAODCore/share/ut_xaodcore_shallowcopy_test.ref @@ -0,0 +1 @@ +All tests with xAOD::ShallowAuxContainer succeeded diff --git a/Event/xAOD/xAODCore/test/ut_xaodcore_shallowcopy.cxx b/Event/xAOD/xAODCore/test/ut_xaodcore_shallowcopy.cxx index a571c405dea267a01b15357e827a6a90d402a3fd..29f49daf3b4065caf78d0d2d8aca7e9bf185e1f5 100644 --- a/Event/xAOD/xAODCore/test/ut_xaodcore_shallowcopy.cxx +++ b/Event/xAOD/xAODCore/test/ut_xaodcore_shallowcopy.cxx @@ -13,11 +13,15 @@ #include <cmath> // EDM include(s): +#ifdef XAOD_STANDALONE #define private public #define protected public # include "AthLinks/DataLink.h" #undef protected #undef private +#else +# include "AthLinks/DataLink.h" +#endif #include "AthContainers/AuxElement.h" #include "AthContainers/DataVector.h" @@ -36,24 +40,10 @@ } \ } while( 0 ) -int main() { - - // Create a test container that we'll make a copy of later on: - xAOD::AuxContainerBase origAux; - DataVector< SG::AuxElement > origVec; - origVec.setStore( &origAux ); - for( int i = 0; i < 10; ++i ) { - SG::AuxElement* e = new SG::AuxElement(); - origVec.push_back( e ); - e->auxdata< int >( "IntVar" ) = i; - e->auxdata< float >( "FloatVar" ) = i + 1; - } - // Make a shallow copy of it: - xAOD::ShallowAuxContainer copyAux; - DataLink< SG::IConstAuxStore > link; - link.m_object = &origAux; - copyAux.setParent( link ); +int testCopy (const DataVector<SG::AuxElement>& origVec, + xAOD::ShallowAuxContainer& copyAux) +{ DataVector< SG::AuxElement > copyVec; for( size_t i = 0; i < origVec.size(); ++i ) { copyVec.push_back( new SG::AuxElement() ); @@ -111,6 +101,46 @@ int main() { copyAux.setShallowIO( false ); SIMPLE_ASSERT( copyAux.getSelectedAuxIDs().size() == 2 ); + return 0; +} + + +int main() { + + // Create a test container that we'll make a copy of later on: + xAOD::AuxContainerBase origAux; + DataVector< SG::AuxElement > origVec; + origVec.setStore( &origAux ); + for( int i = 0; i < 10; ++i ) { + SG::AuxElement* e = new SG::AuxElement(); + origVec.push_back( e ); + e->auxdata< int >( "IntVar" ) = i; + e->auxdata< float >( "FloatVar" ) = i + 1; + } + +#ifdef XAOD_STANDALONE + DataLink< SG::IConstAuxStore > link; + link.m_object = &origAux; +#else + DataLink< SG::IConstAuxStore > link (&origAux); +#endif + + // Make a shallow copy of it: + { + xAOD::ShallowAuxContainer copyAux; + copyAux.setParent( link ); + if (testCopy (origVec, copyAux)) + return 1; + } + + { + xAOD::ShallowAuxContainer copyAux (link); + if (testCopy (origVec, copyAux)) + return 1; + xAOD::ShallowAuxContainer copyAux2 (copyAux); + SIMPLE_ASSERT( copyAux2.getAuxIDs().size() == 3 ); + } + // Tell the user that everything went okay: std::cout << "All tests with xAOD::ShallowAuxContainer succeeded" << std::endl; diff --git a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/PixelClusterOnTrack.h b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/PixelClusterOnTrack.h index 5aea8691936dd8e345ecac8b9a68e66ea665ddf7..7d94549755ebd1e0de5fcc81df583a25954605d1 100755 --- a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/PixelClusterOnTrack.h +++ b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/PixelClusterOnTrack.h @@ -11,7 +11,6 @@ // Base classes #include "InDetRIO_OnTrack/SiClusterOnTrack.h" -#include "InDetPrepRawData/PixelCluster.h" #include "TrkEventPrimitives/LocalParameters.h" // for ElementLink to IdentifiableContainer PixelClusterContainer @@ -19,6 +18,8 @@ #include "AthLinks/ElementLink.h" class FakeTrackBuilder; +class PixelCluster; + namespace Trk { class Surface; class TrkDetElementBase; @@ -48,13 +49,14 @@ namespace InDet { public: friend class Trk::ITrkEventCnvTool; - /**Default constructor - needed for POOL */ + ///Default constructor - needed for POOL PixelClusterOnTrack(); - /**Copy constructor */ - PixelClusterOnTrack(const PixelClusterOnTrack &); - /**Assignment operator*/ - PixelClusterOnTrack &operator=(const PixelClusterOnTrack &); - + ///Copy constructor + PixelClusterOnTrack(const PixelClusterOnTrack &) = default; + ///Assignment operator + PixelClusterOnTrack &operator=(const PixelClusterOnTrack &) = default; + ///Move assignment + PixelClusterOnTrack &operator=(PixelClusterOnTrack &&) = default; /** Constructor with parameters : RIO/PrepRawData pointer, LocalPosition&, LocalErrorMatrix&, idDE& Everything else is owned elsewhere. */ @@ -147,7 +149,6 @@ namespace InDet { /** PixelCluster - the RIO (PRD, PrepRawData)*/ ElementLinkToIDCPixelClusterContainer m_rio; -// mutable const PixelCluster* m_rio; /** records whether there is an ambiguity about this cluster*/ bool m_hasClusterAmbiguity; diff --git a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/SCT_ClusterOnTrack.h b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/SCT_ClusterOnTrack.h index cc69db024cc80928a3505954febe7abacac712c8..80b7ed1384c69b2cc79d176588377d5effe01296 100755 --- a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/SCT_ClusterOnTrack.h +++ b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/SCT_ClusterOnTrack.h @@ -11,12 +11,14 @@ // Base classes #include "InDetRIO_OnTrack/SiClusterOnTrack.h" -#include "InDetPrepRawData/SCT_Cluster.h" // for ElementLink to IdentifiableContainer SCT_ClusterContainer #include "InDetPrepRawData/SCT_ClusterContainer.h" #include "AthLinks/ElementLink.h" + +class SCT_Cluster; + namespace Trk { class Surface; class LocalParameters; @@ -45,7 +47,7 @@ namespace InDet{ /**For POOL only. Do not use*/ SCT_ClusterOnTrack(); /**Copy constructor*/ - SCT_ClusterOnTrack(const SCT_ClusterOnTrack &); + SCT_ClusterOnTrack(const SCT_ClusterOnTrack &) = default; /** Constructor with parameters : RIO/PrepRawData pointer, LocalPosition*, LocalErrorMatrix*, idDE& @@ -100,7 +102,7 @@ namespace InDet{ double positionAlongStrip); /**Assignment operator*/ - SCT_ClusterOnTrack &operator=(const SCT_ClusterOnTrack &); + SCT_ClusterOnTrack &operator=(const SCT_ClusterOnTrack &) = default; /**Default move assigment operator*/ SCT_ClusterOnTrack &operator=(SCT_ClusterOnTrack &&) = default; @@ -148,7 +150,6 @@ namespace InDet{ virtual void setValues(const Trk::TrkDetElementBase* detEl, const Trk::PrepRawData* prd); /** SCT_Cluster - the RIO (PRD, PrepRawData)*/ -// mutable const SCT_Cluster* m_rio; ElementLinkToIDCSCT_ClusterContainer m_rio; /** corresponding detector element*/ const InDetDD::SiDetectorElement* m_detEl; diff --git a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/TRT_DriftCircleOnTrack.h b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/TRT_DriftCircleOnTrack.h index 99a92eb4b5b1ff0bdfb13e5cfa5ea9510cd04e7f..d63ef19d1e4a333761312d06a754cbccacc4513c 100755 --- a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/TRT_DriftCircleOnTrack.h +++ b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/InDetRIO_OnTrack/TRT_DriftCircleOnTrack.h @@ -16,7 +16,6 @@ #include "GaudiKernel/GaudiException.h" // InDet -#include "InDetPrepRawData/TRT_DriftCircle.h" // for ElementLink to IdentifiableContainer PixelClusterContainer @@ -36,7 +35,7 @@ namespace InDetDD { typedef ElementLink<InDet::TRT_DriftCircleContainer> ElementLinkToIDCTRT_DriftCircleContainer; namespace InDet{ - + class TRT_DriftCircle; /**@class TRT_DriftCircleOnTrack Represents 'corrected' measurements from the TRT (for example, corrected for wire sag). The @@ -56,6 +55,8 @@ namespace InDet{ TRT_DriftCircleOnTrack(const TRT_DriftCircleOnTrack &); /**Assignment operator*/ TRT_DriftCircleOnTrack &operator=(const TRT_DriftCircleOnTrack &); + /**Move assignment operator*/ + TRT_DriftCircleOnTrack &operator=(TRT_DriftCircleOnTrack &&); /** Constructor with parameters and without externalPrediction: RIO pointer, LocalPosition*, LocalErrorMatrix*, diff --git a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/PixelClusterOnTrack.cxx b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/PixelClusterOnTrack.cxx index f2c13cf55e134e79b8629ef54f4cd4a0d0d99f25..7df70ae44052abe464a3ff02baa2001edc89cae6 100755 --- a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/PixelClusterOnTrack.cxx +++ b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/PixelClusterOnTrack.cxx @@ -6,13 +6,11 @@ // PixelClusterOnTrack.cxx, (c) ATLAS Detector Software /////////////////////////////////////////////////////////////////// -#include <new> #include "InDetRIO_OnTrack/PixelClusterOnTrack.h" #include "InDetPrepRawData/PixelCluster.h" #include "InDetReadoutGeometry/SiDetectorElement.h" #include "GaudiKernel/MsgStream.h" #include <ostream> -#include <typeinfo> // Constructor with parameters - no global position specified @@ -31,7 +29,6 @@ InDet::PixelClusterOnTrack::PixelClusterOnTrack( m_energyLoss(RIO->energyLoss()), m_detEl( RIO->detectorElement() ) { - //m_rio = ElementLinkToIDCPixelClusterContainer("PixelClusters", RIO->getHashAndIndex().hashAndIndex(), RIO); m_rio.setElement(RIO); } @@ -52,7 +49,6 @@ InDet::PixelClusterOnTrack::PixelClusterOnTrack( m_energyLoss(RIO->energyLoss()), m_detEl( RIO->detectorElement() ) { - //m_rio = ElementLinkToIDCPixelClusterContainer("PixelClusters", RIO->getHashAndIndex().hashAndIndex(), RIO); m_rio.setElement(RIO); } @@ -93,29 +89,7 @@ InDet::PixelClusterOnTrack::PixelClusterOnTrack() m_detEl(0) {} -// copy constructor: -InDet::PixelClusterOnTrack::PixelClusterOnTrack( const InDet::PixelClusterOnTrack& rot) - : - InDet::SiClusterOnTrack(rot), - m_rio(rot.m_rio), - m_hasClusterAmbiguity(rot.m_hasClusterAmbiguity), - m_isFake(rot.m_isFake), - m_energyLoss(rot.m_energyLoss), - m_detEl(rot.m_detEl) -{} -// assignment operator: -InDet::PixelClusterOnTrack& InDet::PixelClusterOnTrack::operator=( const InDet::PixelClusterOnTrack& rot){ - if ( &rot != this) { - InDet::SiClusterOnTrack::operator=(rot);//base class ass. op. - m_rio = rot.m_rio; - m_hasClusterAmbiguity = rot.m_hasClusterAmbiguity; - m_detEl = rot.m_detEl; - m_isFake = rot.m_isFake; - m_energyLoss = rot.m_energyLoss; - } - return *this; -} const Trk::Surface& InDet::PixelClusterOnTrack::associatedSurface() const @@ -124,7 +98,6 @@ const Trk::Surface& InDet::PixelClusterOnTrack::associatedSurface() const void InDet::PixelClusterOnTrack::setValues(const Trk::TrkDetElementBase* detEl, const Trk::PrepRawData* /*prd*/) { - //m_rio = dynamic_cast< const PixelCluster* >(prd);//should check this really. m_detEl = dynamic_cast< const InDetDD::SiDetectorElement* >(detEl); } diff --git a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/SCT_ClusterOnTrack.cxx b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/SCT_ClusterOnTrack.cxx index de5f2464e72d17518ffb0b9deb0cfbdf3e7dfda4..ee25b4ddc466e16faea3a893ead0c18fd70605b5 100755 --- a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/SCT_ClusterOnTrack.cxx +++ b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/SCT_ClusterOnTrack.cxx @@ -6,10 +6,10 @@ // SCT_ClusterOnTrack.cxx, (c) ATLAS Detector Software /////////////////////////////////////////////////////////////////// -#include <new> #include "InDetRIO_OnTrack/SCT_ClusterOnTrack.h" -#include "InDetPrepRawData/SCT_Cluster.h" #include "InDetReadoutGeometry/SiDetectorElement.h" +#include "InDetPrepRawData/SCT_Cluster.h" + #include "GaudiKernel/MsgStream.h" #include <ostream> #include <limits> @@ -24,7 +24,6 @@ InDet::SCT_ClusterOnTrack::SCT_ClusterOnTrack(const InDet::SCT_Cluster* RIO, bool isbroad) : SiClusterOnTrack(locpars, locerr, idDE, RIO->identify(),isbroad) //call base class constructor { - //m_rio = ElementLinkToIDCSCT_ClusterContainer("SCT_Clusters", RIO->getHashAndIndex().hashAndIndex(), RIO); m_detEl=nullptr; m_positionAlongStrip=std::numeric_limits<double>::quiet_NaN(); m_rio.setElement(RIO); @@ -77,24 +76,6 @@ InDet::SCT_ClusterOnTrack::SCT_ClusterOnTrack(): m_positionAlongStrip(std::numeric_limits<double>::quiet_NaN()) {} -// copy constructor: -InDet::SCT_ClusterOnTrack::SCT_ClusterOnTrack( const InDet::SCT_ClusterOnTrack& rot): - SiClusterOnTrack(rot), - m_rio(rot.m_rio), - m_detEl(rot.m_detEl), - m_positionAlongStrip(rot.m_positionAlongStrip) -{} - -// assignment operator: -InDet::SCT_ClusterOnTrack& InDet::SCT_ClusterOnTrack::operator=( const InDet::SCT_ClusterOnTrack& rot){ - if ( &rot != this) { - InDet::SiClusterOnTrack::operator=(rot);//base class ass. op. - m_rio = rot.m_rio; - m_detEl = rot.m_detEl; - m_positionAlongStrip = rot.m_positionAlongStrip; - } - return *this; -} const Trk::Surface& InDet::SCT_ClusterOnTrack::associatedSurface() const { diff --git a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/TRT_DriftCircleOnTrack.cxx b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/TRT_DriftCircleOnTrack.cxx index 23c2ac2bb98db000d83cf526202bbe73f008ba8e..29317b2ee30a249372e062d3802a035f0283ffd7 100755 --- a/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/TRT_DriftCircleOnTrack.cxx +++ b/InnerDetector/InDetRecEvent/InDetRIO_OnTrack/src/TRT_DriftCircleOnTrack.cxx @@ -16,7 +16,7 @@ #include <cassert> #include "GaudiKernel/MsgStream.h" #include <ostream> -#include<limits> +#include <limits> // Constructor with parameters: @@ -109,6 +109,25 @@ InDet::TRT_DriftCircleOnTrack::TRT_DriftCircleOnTrack( const InDet::TRT_DriftCir //assignment operator: InDet::TRT_DriftCircleOnTrack& InDet::TRT_DriftCircleOnTrack::operator=( const InDet::TRT_DriftCircleOnTrack& rot) +{ + if ( &rot != this) { + Trk::RIO_OnTrack::operator= (rot); + delete m_globalPosition; + m_globalPosition = (rot.m_globalPosition ? new Amg::Vector3D(*rot.m_globalPosition) : 0); + m_rio = rot.m_rio; + m_localAngle = rot.m_localAngle; + m_positionAlongWire = rot.m_positionAlongWire; + m_idDE = rot.m_idDE; + m_status = rot.m_status; + m_highLevel = rot.m_highLevel; + m_timeOverThreshold = rot.m_timeOverThreshold; + m_detEl = rot.m_detEl; + } + return *this; +} + +//move assignment operator: +InDet::TRT_DriftCircleOnTrack& InDet::TRT_DriftCircleOnTrack::operator=( InDet::TRT_DriftCircleOnTrack&& rot) { if ( &rot != this) { Trk::RIO_OnTrack::operator= (rot); diff --git a/InnerDetector/InDetRecTools/InDetTrackSelectorTool/InDetTrackSelectorTool/InDetTrackSelectorTool.h b/InnerDetector/InDetRecTools/InDetTrackSelectorTool/InDetTrackSelectorTool/InDetTrackSelectorTool.h index 3545328ac009030afeacc78122d6efe31c14d930..61e6889b7d20da524b90c7f60a7ea323e2bf1c8b 100644 --- a/InnerDetector/InDetRecTools/InDetTrackSelectorTool/InDetTrackSelectorTool/InDetTrackSelectorTool.h +++ b/InnerDetector/InDetRecTools/InDetTrackSelectorTool/InDetTrackSelectorTool/InDetTrackSelectorTool.h @@ -8,8 +8,8 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" #include "TrkToolInterfaces/ITrackSelectorTool.h" -#include "TrkEventPrimitives/ParticleHypothesis.h" -#include "TrkParameters/TrackParameters.h" +#include "TrkEventPrimitives/ParticleHypothesis.h"//enum, do not fwd declare +#include "TrkParameters/TrackParameters.h" //typedef /** * @file InDetTrackSelectorTool.h diff --git a/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetConversionTrackSelectorTool.cxx b/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetConversionTrackSelectorTool.cxx index 996861d969a0148079160bf289b84d3f1bada9a4..a9f0939579e0ad0c72d41d766d852b9685beb4f1 100644 --- a/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetConversionTrackSelectorTool.cxx +++ b/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetConversionTrackSelectorTool.cxx @@ -3,7 +3,6 @@ */ #include "InDetTrackSelectorTool/InDetConversionTrackSelectorTool.h" -// forward declare #include "TrkToolInterfaces/ITrackSummaryTool.h" #include "TrkExInterfaces/IExtrapolator.h" #include "VxVertex/Vertex.h" @@ -16,6 +15,7 @@ #include "VxVertex/RecVertex.h" #include "TrkParameters/TrackParameters.h" #include "xAODTracking/Vertex.h" +#include <cmath> namespace InDet @@ -68,59 +68,38 @@ namespace InDet StatusCode InDetConversionTrackSelectorTool::initialize() { - StatusCode sc = AthAlgTool::initialize(); - if(sc.isFailure()){ - msg(MSG::ERROR)<<" Unable to initialize the AlgTool"<<endmsg; - return StatusCode::FAILURE; - } - /* Get the track summary tool from ToolSvc */ - if ( m_trkSumTool.retrieve().isFailure() ) { - msg(MSG::ERROR) << "Failed to retrieve tool " << m_trkSumTool << endmsg; - return StatusCode::FAILURE; - } else { - msg(MSG::INFO) << "Retrieved tool " << m_trkSumTool << endmsg; - } - + ATH_CHECK( m_trkSumTool.retrieve()); /* Get the extrapolator tool from ToolSvc */ - if ( m_extrapolator.retrieve().isFailure() ) { - msg(MSG::ERROR) << "Failed to retrieve tool " << m_extrapolator << endmsg; - return StatusCode::FAILURE; - } else { - msg(MSG::INFO) << "Retrieved tool " << m_extrapolator << endmsg; - } - + ATH_CHECK( m_extrapolator.retrieve() ); /* Get BeamCondSvc */ - sc = m_iBeamCondSvc.retrieve(); - if (sc.isFailure()) { - msg(MSG::INFO) << "Could not find BeamCondSvc. Will use (0,0,0) if no vertex is given and extrapolation is needed." << endmsg; + if (m_iBeamCondSvc.retrieve().isFailure()) { + ATH_MSG_INFO( "Could not find BeamCondSvc. Will use (0,0,0) if no vertex is given and extrapolation is needed." ); } - return StatusCode::SUCCESS; } StatusCode InDetConversionTrackSelectorTool::finalize() { - msg(MSG::INFO) << "Finalize successful" << endmsg; + ATH_MSG_DEBUG( "Finalize successful"); return StatusCode::SUCCESS; } bool InDetConversionTrackSelectorTool::decision(const Trk::Track& track,const Trk::Vertex* vx) const { bool pass = false; - const Trk::Perigee* perigee=dynamic_cast<const Trk::Perigee*>(track.perigeeParameters()); + const bool vertexSuppliedByUser{vx!=nullptr}; const Trk::Vertex* myVertex=vx; //in case no Vertex is provided by the user, beam position will be used if available - if (myVertex==0) { + if (not vertexSuppliedByUser) { if (!m_iBeamCondSvc.empty()) { myVertex=new Trk::RecVertex(m_iBeamCondSvc->beamVtx()); } else { - msg(MSG::WARNING) << " Cannot get beamSpot center from iBeamCondSvc. Using (0,0,0)... " << endmsg; + ATH_MSG_WARNING(" Cannot get beamSpot center from iBeamCondSvc. Using (0,0,0)... " ); myVertex=new Trk::Vertex(Amg::Vector3D(0,0,0)); } } - Trk::PerigeeSurface perigeeSurface(myVertex->position()); const Trk::TrackParameters *firstmeaspar=0; for (unsigned int i=0;i<track.trackParameters()->size();i++){ @@ -134,12 +113,9 @@ namespace InDet //no track selection if firstmeas + perigee does not exist ! firstmeaspar=track.perigeeParameters(); if (!firstmeaspar){ - msg(MSG::WARNING) << " First measurment on track is missing. Using perigee Parameters, but they are missing: 0 pointer! Track selection failed " << endmsg; + ATH_MSG_WARNING( " First measurment on track is missing. Using perigee Parameters, but they are missing: 0 pointer! Track selection failed " ); //clean up vertex - if (myVertex!=vx) { - delete myVertex; - myVertex=0; - } + if (not vertexSuppliedByUser) delete myVertex; return false; } } @@ -148,18 +124,19 @@ namespace InDet // const Trk::TrackParameters * extrapolatedParameters= firstmeaspar ? m_extrapolator->extrapolate(*firstmeaspar,perigeeSurface,Trk::anyDirection,true,track.info().particleHypothesis() ) : 0; perigee = extrapolatedParameters ? dynamic_cast<const Trk::Perigee*>(extrapolatedParameters) : 0; if (perigee==0 || !perigee->covariance() ) { - msg(MSG::WARNING) << "Track Selector failed to extrapolate track to the vertex: " << myVertex->position() << endmsg; + ATH_MSG_WARNING( "Track Selector failed to extrapolate track to the vertex: " << myVertex->position() ); if (extrapolatedParameters!=0) { - msg(MSG::WARNING) << "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" << endmsg; + ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!"); delete extrapolatedParameters; - if (myVertex!=vx) delete myVertex; + if (not vertexSuppliedByUser) delete myVertex; return false; } + if (not vertexSuppliedByUser) delete myVertex; return false; } double qOverP = perigee->parameters()[Trk::qOverP]; - double pt = fabs(1/qOverP)*sin(perigee->parameters()[Trk::theta]); + double pt = std::fabs(1./qOverP)*std::sin(perigee->parameters()[Trk::theta]); double d0 = perigee->parameters()[Trk::d0]; double z0 = perigee->parameters()[Trk::z0]; const Trk::TrackSummary* tSum = m_trkSumTool->createSummaryNoHoleSearch(track); @@ -170,65 +147,59 @@ namespace InDet int nTrtOutliers = tSum->get(Trk::numberOfTRTOutliers); int ntrt = nTrtHits + nTrtOutliers; int nTrtXenonHits = tSum->get(Trk::numberOfTRTXenonHits); - if(m_isConv) { - - if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ) // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits - ratioTrk = tSum->getPID(Trk::eProbabilityHT); - + if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ){ // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits + ratioTrk = tSum->getPID(Trk::eProbabilityHT); + } if ( pt >= m_minPt ) { - if ( (nclus==0 && fabs(d0)<=m_maxTrtD0) || (nclus>0 && fabs(d0)<=m_maxSiD0) ) { - if ( (nclus==0 && fabs(z0)<=m_maxTrtZ0) || (nclus>0 && fabs(z0)<=m_maxSiZ0) ) { - if (nclus>0) { - if((ntrt<=15 && ratioTrk>=m_trRatio1) || - (ntrt>15 && ntrt<=25 && ratioTrk>=m_trRatio2) || - (ntrt>25 && ratioTrk>=m_trRatio3)) pass = true; - } else if (ratioTrk>=m_trRatioTRT) pass = true; - } - } + if ( (nclus==0 && std::fabs(d0)<=m_maxTrtD0) || (nclus>0 && std::fabs(d0)<=m_maxSiD0) ) { + if ( (nclus==0 && std::fabs(z0)<=m_maxTrtZ0) || (nclus>0 && std::fabs(z0)<=m_maxSiZ0) ) { + if (nclus>0) { + if((ntrt<=15 && ratioTrk>=m_trRatio1) || + (ntrt>15 && ntrt<=25 && ratioTrk>=m_trRatio2) || + (ntrt>25 && ratioTrk>=m_trRatio3)) pass = true; + } else if (ratioTrk>=m_trRatioTRT) pass = true; + } + } } } else { //The cuts below are necessary for the V0 track selection const AmgSymMatrix(5)& err = *perigee->covariance(); double sd0sq = err(0,0); - double sd0 = (sd0sq>0.)?sqrt(sd0sq):0.; + double sd0 = (sd0sq>0.)?std::sqrt(sd0sq):0.; double sz0sq = err(1,1); - double sz0 = (sz0sq>0.)?sqrt(sz0sq):0.; + double sz0 = (sz0sq>0.)?std::sqrt(sz0sq):0.; if(nclus == 0){ - if(fabs(d0)>=m_sD0_Trt*sd0 && fabs(d0)<=m_maxTrtD0 && fabs(z0)<=m_sZ0_Trt*sz0 && pt>=m_minPt) pass = true; + if(std::fabs(d0)>=m_sD0_Trt*sd0 && std::fabs(d0)<=m_maxTrtD0 && std::fabs(z0)<=m_sZ0_Trt*sz0 && pt>=m_minPt) pass = true; }else{ - if(fabs(d0)>=m_sD0_Si*sd0 && fabs(z0)<=m_maxSiZ0 && pt>=m_minPt) pass = true; + if(std::fabs(d0)>=m_sD0_Si*sd0 && std::fabs(z0)<=m_maxSiZ0 && pt>=m_minPt) pass = true; } - ratioTrk = 1.0; if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ) // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits - ratioTrk = tSum->getPID(Trk::eProbabilityHT); - + ratioTrk = tSum->getPID(Trk::eProbabilityHT); if(ratioTrk>m_trRatioV0) pass = false; } delete tSum; } else pass = false; - - if (myVertex!=vx) delete myVertex; + if (not vertexSuppliedByUser) delete myVertex; if (perigee!=track.perigeeParameters()) delete perigee; - return pass; } bool InDetConversionTrackSelectorTool::decision(const Trk::TrackParticleBase& track,const Trk::Vertex* vx) const { bool pass = false; - const Trk::TrackParameters* definintParameters=&(track.definingParameters()); const Trk::Perigee* perigee=dynamic_cast<const Trk::Perigee*>(definintParameters); const Trk::Vertex* myVertex=vx; + const bool vertexSuppliedByUser{vx!=nullptr}; //in case no Vertex is provided by the user, beam position will be used if available - if (myVertex==0) { + if (not vertexSuppliedByUser) { if (!m_iBeamCondSvc.empty()) { myVertex=new Trk::RecVertex(m_iBeamCondSvc->beamVtx()); } else { - msg(MSG::WARNING) << " Cannot get beamSpot center from iBeamCondSvc. Using (0,0,0)... " << endmsg; + ATH_MSG_WARNING( " Cannot get beamSpot center from iBeamCondSvc. Using (0,0,0)... " ); myVertex=new Trk::Vertex(Amg::Vector3D(0,0,0)); } } @@ -241,36 +212,31 @@ namespace InDet break; } } - if (!firstmeaspar) { //using perigee instead of firstmeasurement, since first measurement was not found... firstmeaspar=&(track.definingParameters()); if (!firstmeaspar){ - msg(MSG::DEBUG) << " Track Paraemters at first measurement not found. Perigee not found. Cannot do TrackSelection..." << endmsg; - if (myVertex!=vx) { - delete myVertex; - myVertex=0; - } + ATH_MSG_WARNING( " Track Paraemters at first measurement not found. Perigee not found. Cannot do TrackSelection..." ); + if (not vertexSuppliedByUser) delete myVertex; return false; } } - const Trk::TrackParameters * extrapolatedParameters= m_extrapolator->extrapolate(*firstmeaspar,perigeeSurface,Trk::anyDirection,true,Trk::pion ); - //const Trk::TrackParameters * extrapolatedParameters= firstmeaspar ? m_extrapolator->extrapolate(*firstmeaspar,perigeeSurface,Trk::anyDirection,true,Trk::pion ) : 0; perigee = extrapolatedParameters ? dynamic_cast<const Trk::Perigee*>(extrapolatedParameters) : 0; if (perigee==0 || !perigee->covariance()) { - msg(MSG::WARNING) << "Track Selector failed to extrapolate track to the vertex: " << myVertex->position() << endmsg; + ATH_MSG_WARNING( "Track Selector failed to extrapolate track to the vertex: " << myVertex->position() ); if (extrapolatedParameters!=0) { - msg(MSG::WARNING) << "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" << endmsg; + ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" ); delete extrapolatedParameters; - if (myVertex!=vx) delete myVertex; + if (not vertexSuppliedByUser) delete myVertex; return false; } + if (not vertexSuppliedByUser) delete myVertex; return false; } double qOverP = perigee->parameters()[Trk::qOverP]; - double pt = fabs(1/qOverP)*sin(perigee->parameters()[Trk::theta]); + double pt = std::fabs(1./qOverP)*std::sin(perigee->parameters()[Trk::theta]); double d0 = perigee->parameters()[Trk::d0]; double z0 = perigee->parameters()[Trk::z0]; const Trk::TrackSummary* tSum = track.trackSummary(); @@ -283,42 +249,40 @@ namespace InDet int nTrtXenonHits = tSum->get(Trk::numberOfTRTXenonHits); if(m_isConv){ - - if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ) // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits - ratioTrk = tSum->getPID(Trk::eProbabilityHT); - + if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ){ // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits + ratioTrk = tSum->getPID(Trk::eProbabilityHT); + } if ( pt >= m_minPt ) { - if ( (nclus==0 && fabs(d0)<=m_maxTrtD0) || (nclus>0 && fabs(d0)<=m_maxSiD0) ) { - if ( (nclus==0 && fabs(z0)<=m_maxTrtZ0) || (nclus>0 && fabs(z0)<=m_maxSiZ0) ) { - if (nclus > 0) { - if((ntrt<=15 && ratioTrk>=m_trRatio1) || - (ntrt>15 && ntrt<=25 && ratioTrk>=m_trRatio2) || - (ntrt>25 && ratioTrk>=m_trRatio3)) pass = true; - } else if (ratioTrk>=m_trRatioTRT) pass = true; - } - } + if ( (nclus==0 && std::fabs(d0)<=m_maxTrtD0) || (nclus>0 && std::fabs(d0)<=m_maxSiD0) ) { + if ( (nclus==0 && std::fabs(z0)<=m_maxTrtZ0) || (nclus>0 && std::fabs(z0)<=m_maxSiZ0) ) { + if (nclus > 0) { + if((ntrt<=15 && ratioTrk>=m_trRatio1) || + (ntrt>15 && ntrt<=25 && ratioTrk>=m_trRatio2) || + (ntrt>25 && ratioTrk>=m_trRatio3)) pass = true; + } else if (ratioTrk>=m_trRatioTRT) pass = true; + } + } } } else { //The cuts below are necessary for the V0 track selection const AmgSymMatrix(5)& err = *perigee->covariance(); double sd0sq = err(0,0); - double sd0 = (sd0sq>0.)?sqrt(sd0sq):0.; + double sd0 = (sd0sq>0.)?std::sqrt(sd0sq):0.; double sz0sq = err(1,1); - double sz0 = (sz0sq>0.)?sqrt(sz0sq):0.; + double sz0 = (sz0sq>0.)?std::sqrt(sz0sq):0.; if(nclus == 0){ - if(fabs(d0)>=m_sD0_Trt*sd0 && fabs(d0)<= m_maxTrtD0 && fabs(z0)<=m_sZ0_Trt*sz0 && pt>=m_minPt) pass = true; + if(std::fabs(d0)>=m_sD0_Trt*sd0 && std::fabs(d0)<= m_maxTrtD0 && std::fabs(z0)<=m_sZ0_Trt*sz0 && pt>=m_minPt) pass = true; }else{ - if(fabs(d0)>=m_sD0_Si*sd0 && fabs(z0)<=m_maxSiZ0 && pt>=m_minPt) pass = true; + if(std::fabs(d0)>=m_sD0_Si*sd0 && std::fabs(z0)<=m_maxSiZ0 && pt>=m_minPt) pass = true; } ratioTrk = 1.0; if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ) // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits - ratioTrk = tSum->getPID(Trk::eProbabilityHT); + ratioTrk = tSum->getPID(Trk::eProbabilityHT); if(ratioTrk>m_trRatioV0) pass = false; } } else pass = false; - - if (myVertex!=vx) delete myVertex; + if (not vertexSuppliedByUser) delete myVertex; if (perigee!=&(track.definingParameters())) delete perigee; return pass; @@ -328,26 +292,17 @@ namespace InDet // --------------------------------------------------------------------- bool InDetConversionTrackSelectorTool::decision(const xAOD::TrackParticle& tp,const xAOD::Vertex* vertex) const { - - - - bool pass = false; - const Trk::Perigee& perigee=tp.perigeeParameters(); - //in case no Vertex is provided by the user, beam position will be used if available - Trk::PerigeeSurface perigeeSurface( vertex ? vertex->position() : (!m_iBeamCondSvc.empty() ? m_iBeamCondSvc->beamVtx().position() : Amg::Vector3D(0,0,0) ) ); - const Trk::TrackParameters* extrapolatedParameters= m_extrapolator->extrapolate(perigee,perigeeSurface,Trk::anyDirection,false,Trk::pion ); if (extrapolatedParameters==0) { - ATH_MSG_WARNING( "Extrapolation to the vertex failed: " << perigeeSurface << std::endl << perigee ); + ATH_MSG_WARNING( "Extrapolation to the vertex failed: " << perigeeSurface << "\n" << perigee ); return false; } - double qOverP = perigee.parameters()[Trk::qOverP]; - double pt = fabs(1/qOverP)*sin(perigee.parameters()[Trk::theta]); + double pt = std::fabs(1./qOverP)*std::sin(perigee.parameters()[Trk::theta]); double d0 = extrapolatedParameters->parameters()[Trk::d0]; double z0 = extrapolatedParameters->parameters()[Trk::z0]; @@ -365,12 +320,12 @@ namespace InDet } if ( pt >= m_minPt ) { - if ( (nclus==0 && fabs(d0)<=m_maxTrtD0) || (nclus>0 && fabs(d0)<=m_maxSiD0) ) { - if ( (nclus==0 && fabs(z0)<=m_maxTrtZ0) || (nclus>0 && fabs(z0)<=m_maxSiZ0) ) { + if ( (nclus==0 && std::fabs(d0)<=m_maxTrtD0) || (nclus>0 && std::fabs(d0)<=m_maxSiD0) ) { + if ( (nclus==0 && std::fabs(z0)<=m_maxTrtZ0) || (nclus>0 && std::fabs(z0)<=m_maxSiZ0) ) { if (nclus > 0) { if((ntrt<=15 && ratioTrk>=m_trRatio1) || - (ntrt>15 && ntrt<=25 && ratioTrk>=m_trRatio2) || - (ntrt>25 && ratioTrk>=m_trRatio3)) pass = true; + (ntrt>15 && ntrt<=25 && ratioTrk>=m_trRatio2) || + (ntrt>25 && ratioTrk>=m_trRatio3)) pass = true; } else if (ratioTrk>=m_trRatioTRT) pass = true; } } @@ -379,15 +334,14 @@ namespace InDet //The cuts below are necessary for the V0 track selection const AmgSymMatrix(5)& err = *perigee.covariance(); double sd0sq = err(0,0); - double sd0 = (sd0sq>0.)?sqrt(sd0sq):0.; + double sd0 = (sd0sq>0.)?std::sqrt(sd0sq):0.; double sz0sq = err(1,1); - double sz0 = (sz0sq>0.)?sqrt(sz0sq):0.; + double sz0 = (sz0sq>0.)?std::sqrt(sz0sq):0.; if(nclus == 0){ - if(fabs(d0)>=m_sD0_Trt*sd0 && fabs(d0)<= m_maxTrtD0 && fabs(z0)<=m_sZ0_Trt*sz0 && pt>=m_minPt) pass = true; + if(std::fabs(d0)>=m_sD0_Trt*sd0 && std::fabs(d0)<= m_maxTrtD0 && std::fabs(z0)<=m_sZ0_Trt*sz0 && pt>=m_minPt) pass = true; }else{ - if(fabs(d0)>=m_sD0_Si*sd0 && fabs(z0)<=m_maxSiZ0 && pt>=m_minPt) pass = true; + if(std::fabs(d0)>=m_sD0_Si*sd0 && std::fabs(z0)<=m_maxSiZ0 && pt>=m_minPt) pass = true; } - ratioTrk = 1.0; float temp(0); if(ntrt > 0 && (!m_PIDonlyForXe || nTrtXenonHits==ntrt) ) // only check TRT PID if m_PIDonlyForXe is false or all TRT hits are Xenon hits diff --git a/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetDetailedTrackSelectorTool.cxx b/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetDetailedTrackSelectorTool.cxx index 7756461fc8e9ebdecb17928301408e87abcd2936..cfa203f2f25240af0ff617d2efdc21ded4813d17 100644 --- a/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetDetailedTrackSelectorTool.cxx +++ b/InnerDetector/InDetRecTools/InDetTrackSelectorTool/src/InDetDetailedTrackSelectorTool.cxx @@ -26,7 +26,7 @@ #include "TrkSurfaces/PerigeeSurface.h" #include "GeoPrimitives/GeoPrimitives.h" #include "EventPrimitives/EventPrimitives.h" -#include <TMath.h> +#include <cmath> using CLHEP::GeV; using CLHEP::mm; @@ -42,12 +42,10 @@ namespace InDet , m_iBeamCondSvc ("BeamCondSvc",n) , m_magFieldSvc("AtlasFieldSvc",n) , m_trtDCTool("InDet::InDetTrtDriftCircleCutTool") - // , m_inDetTestBLayerTool("InDet::InDetTestBLayerTool") , m_inDetTestBLayerTool("") , m_trackSumToolAvailable(true) , m_usePtDependentCuts(false) - // , m_ptBenchmarks(1, 0) // create with dummy length 1 filled with 0 - // , m_nSCTValues(1, 0) // same + { declareInterface<ITrackSelectorTool>(this); @@ -115,19 +113,7 @@ namespace InDet declareProperty("TrtDCCutTool" , m_trtDCTool); declareProperty("InDetTestBLayerTool", m_inDetTestBLayerTool); - //pt-dependent cuts; default vector values (can be done much smarter, but I want - // to have an explicit code..) - - // std::vector<float> loc_bench; - // loc_bench.push_back(100.); - // loc_bench.push_back(200.); - // loc_bench.push_back(300.); - // std::vector<int> loc_nsct; - // loc_nsct.push_back(2); - // loc_nsct.push_back(4); - // loc_nsct.push_back(6); - declareProperty("UsePtDependentCuts", m_usePtDependentCuts = false); declareProperty("PtBenchmarks" , m_ptBenchmarks); declareProperty("SCTCutValues" , m_nSCTValues); @@ -138,126 +124,81 @@ namespace InDet {} // --------------------------------------------------------------------- - StatusCode InDetDetailedTrackSelectorTool::initialize() - { - StatusCode sc = AthAlgTool::initialize(); - if(sc.isFailure()) - { - msg(MSG::ERROR)<<" Unable to initialize the AlgTool"<<endmsg; - return StatusCode::FAILURE; - } - + StatusCode + InDetDetailedTrackSelectorTool::initialize(){ m_trackSumToolAvailable=false; - if (!m_trackSumTool.empty()) - { - if(m_trackSumTool.retrieve().isFailure()) - { - msg(MSG::INFO)<<" Unable to retrieve. OK if running on AOD. "<<m_trackSumTool<<endmsg; - } - else - { - msg(MSG::INFO)<<"Track summary tool retrieved"<<endmsg; - m_trackSumToolAvailable=true; - } - } - - if ( m_extrapolator.retrieve().isFailure() ) - { - msg(MSG::ERROR) << "Failed to retrieve tool " << m_extrapolator << endmsg; - return StatusCode::FAILURE; - } - ATH_MSG_INFO("Retrieved tool " << m_extrapolator); - - sc = m_iBeamCondSvc.retrieve(); - if (sc.isFailure()) + if (!m_trackSumTool.empty()) { + if(m_trackSumTool.retrieve().isFailure()){ + ATH_MSG_INFO(" Unable to retrieve. OK if running on AOD. "<<m_trackSumTool); + }else{ + ATH_MSG_INFO("Track summary tool retrieved"); + m_trackSumToolAvailable=true; + } + } + ATH_CHECK( m_extrapolator.retrieve() ); + if (m_iBeamCondSvc.retrieve().isFailure()){ ATH_MSG_INFO("Could not find BeamCondSvc. Will use (0,0,0) if no vertex is given and extrapolation is needed."); - - if (m_useEtaDepententMinHitTrt || m_useEtaDepententMinHitTrtWithOutliers) - { - if(m_trtDCTool.empty()) { - msg(MSG::ERROR)<<" Eta delendent cut on number of TRT hits requested but TrtDCCutTool not specified. "<<endmsg; - return StatusCode::FAILURE; - } - else if(m_trtDCTool.retrieve().isFailure()) { - msg(MSG::ERROR)<<" Unable to retrieve tool "<<m_trtDCTool<<endmsg; - return StatusCode::FAILURE; - } - ATH_MSG_INFO("Retrieved tool "<<m_trtDCTool); - - if(m_useEtaDepententMinHitTrt) - ATH_MSG_INFO("Using eta dependent cut on number of TRT hits."); - if(m_useEtaDepententMinHitTrtWithOutliers) - ATH_MSG_INFO("Using eta dependent cut on number of TRT hits + outliers."); - } - else{ + } + if (m_useEtaDepententMinHitTrt || m_useEtaDepententMinHitTrtWithOutliers){ + if(m_trtDCTool.empty()) { + ATH_MSG_ERROR(" Eta delendent cut on number of TRT hits requested but TrtDCCutTool not specified. "); + return StatusCode::FAILURE; + } else if(m_trtDCTool.retrieve().isFailure()) { + ATH_MSG_ERROR(" Unable to retrieve tool "<<m_trtDCTool); + return StatusCode::FAILURE; + } + ATH_MSG_INFO("Retrieved tool "<<m_trtDCTool); + if(m_useEtaDepententMinHitTrt){ + ATH_MSG_INFO("Using eta dependent cut on number of TRT hits."); + } + if(m_useEtaDepententMinHitTrtWithOutliers){ + ATH_MSG_INFO("Using eta dependent cut on number of TRT hits + outliers."); + } + }else{ m_trtDCTool.disable(); } - - if (m_magFieldSvc.retrieve().isFailure()) - { - msg(MSG::FATAL) << "Failed to retrieve " << m_magFieldSvc << endmsg; - return StatusCode::FAILURE; - } - ATH_MSG_INFO("Retrieved tool "<<m_magFieldSvc); - - if(m_inDetTestBLayerTool.empty()) - { - msg(MSG::INFO)<<" The BLayerTool not specified, turning off cut. "<<endmsg; - } - else if ( m_inDetTestBLayerTool.retrieve().isFailure() ) - { - msg(MSG::ERROR)<< "Failed to retrieve tool " << m_inDetTestBLayerTool<<endmsg; - return StatusCode::FAILURE; - } + ATH_CHECK(m_magFieldSvc.retrieve()); + if(m_inDetTestBLayerTool.empty()){ + ATH_MSG_INFO(" The BLayerTool not specified, turning off cut. "); + } else { + ATH_CHECK( m_inDetTestBLayerTool.retrieve()); + } ATH_MSG_INFO("Using cuts on the number of Silicon hits"); - - if(m_usePtDependentCuts) - { - //checking whether sizes of cuts and pt interval expressed in vectors match - if( m_ptBenchmarks.size() != m_nSCTValues.size()) - { - msg(MSG::ERROR)<< "Number of cuts DOES NOT match the number of intervals to apply. Please check jobOptions. "<<endmsg; - return StatusCode::FAILURE; - } else if (m_ptBenchmarks.size() == 0) - { - msg(MSG::ERROR)<< "Zero vectors for number of cuts and pt intervals. Please check jobOptions. "<<endmsg; - return StatusCode::FAILURE; - }//end of vector size protection block - }//end of memory protection - + if(m_usePtDependentCuts) { + //checking whether sizes of cuts and pt interval expressed in vectors match + if( m_ptBenchmarks.size() != m_nSCTValues.size()){ + ATH_MSG_ERROR( "Number of cuts DOES NOT match the number of intervals to apply. Please check jobOptions. "); + return StatusCode::FAILURE; + } else if (m_ptBenchmarks.empty()){ + ATH_MSG_ERROR( "Zero vectors for number of cuts and pt intervals. Please check jobOptions. "); + return StatusCode::FAILURE; + }//end of vector size protection block + }//end of memory protection return StatusCode::SUCCESS; } // --------------------------------------------------------------------- StatusCode InDetDetailedTrackSelectorTool::finalize() { - msg(MSG::INFO) << "Finalize successful" << endmsg; + ATH_MSG_DEBUG( "Finalize successful" ); return StatusCode::SUCCESS; } // --------------------------------------------------------------------- - bool InDetDetailedTrackSelectorTool::decision(const Trk::Track& track,const Trk::Vertex* vertex) const - { - const Trk::Perigee* perigeeBeforeExtrapolation= - dynamic_cast<const Trk::Perigee*>(track.perigeeParameters()); - - if (perigeeBeforeExtrapolation && m_usePreselectionCuts) - { - bool preselectionDecision=preselectionBeforeExtrapolation(*perigeeBeforeExtrapolation); - if (!preselectionDecision) { - ATH_MSG_DEBUG("Track rejected because of preselection decision!"); - return false; - } - } - else if (m_usePreselectionCuts) - { - ATH_MSG_INFO( " Preselection was requested but cannot be made since no Perigee in Track is available. This is not an error." ); - } - + bool + InDetDetailedTrackSelectorTool::decision(const Trk::Track& track,const Trk::Vertex* vertex) const{ + const Trk::Perigee* perigeeBeforeExtrapolation=dynamic_cast<const Trk::Perigee*>(track.perigeeParameters()); + if (perigeeBeforeExtrapolation && m_usePreselectionCuts){ + bool preselectionDecision=preselectionBeforeExtrapolation(*perigeeBeforeExtrapolation); + if (!preselectionDecision) { + ATH_MSG_DEBUG("Track rejected because of preselection decision!"); + return false; + } + } else if (m_usePreselectionCuts){ + ATH_MSG_INFO( " Preselection was requested but cannot be made since no Perigee in Track is available. This is not an error." ); + } const Trk::Vertex* myVertex=vertex; - //in case no Vertex is provided by the user, beam position will be used if available - if (myVertex==0) { //ATH_MSG_DEBUG( "No vertex given, using beam spot or 0,0,0" ); if (!m_iBeamCondSvc.empty()) { @@ -267,7 +208,6 @@ namespace InDet myVertex=new Trk::Vertex(Amg::Vector3D(0,0,0)); } } - Trk::PerigeeSurface perigeeSurface(myVertex->position()); const Trk::TrackParameters *firstmeaspar=0; for (unsigned int i=0;i<track.trackParameters()->size();i++){ @@ -276,204 +216,163 @@ namespace InDet break; } } - if (!firstmeaspar) { //assumes perigeeParameters exist... //no track selection if firstmeas + perigee does not exist ! firstmeaspar=track.perigeeParameters(); - if (!firstmeaspar) - { - ATH_MSG_WARNING( " First measurment on track is missing. Using perigee Parameters, but they are missing: 0 pointer! Track selection failed " ); - //clean up vertex - if (myVertex!=vertex) { - delete myVertex; - myVertex=0; - } - return false; - } + if (!firstmeaspar){ + ATH_MSG_WARNING( " First measurment on track is missing. Using perigee Parameters, but they are missing: 0 pointer! Track selection failed " ); + //clean up vertex + if (myVertex!=vertex) { + delete myVertex; + myVertex=0; + } + return false; + } } - const Trk::TrackParameters* extrapolatedParameters= m_extrapolator->extrapolate(*firstmeaspar,perigeeSurface,Trk::anyDirection,true,track.info().particleHypothesis() ); const Trk::Perigee* extrapolatedPerigee = extrapolatedParameters ? dynamic_cast<const Trk::Perigee*>(extrapolatedParameters) : 0; - if (!extrapolatedPerigee || !extrapolatedPerigee->covariance() ) { ATH_MSG_WARNING( "Track Selector failed to extrapolate track to the vertex: " << myVertex->position() ); - if (extrapolatedParameters!=0) { + if (extrapolatedParameters) { ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" ); delete extrapolatedParameters; + extrapolatedParameters=nullptr; } } //decision based on the track parameters const Trk::RecVertex* recVertex = dynamic_cast<const Trk::RecVertex*>(myVertex); bool dec = decision(extrapolatedPerigee, recVertex ? &recVertex->covariancePosition() : 0 ); - if (myVertex!=vertex) { delete myVertex; myVertex=0; } - bool isInTrtAcceptance=true; - - if (!extrapolatedPerigee || fabs(extrapolatedPerigee->momentum().eta())>m_TrtMaxEtaAcceptance) { + if (!extrapolatedPerigee || std::fabs(extrapolatedPerigee->momentum().eta())>m_TrtMaxEtaAcceptance) { isInTrtAcceptance=false; } - if (extrapolatedPerigee!=track.perigeeParameters()) { delete extrapolatedPerigee; extrapolatedPerigee=0; } - if(!dec) { ATH_MSG_DEBUG("Track rejected because of perigee parameters!"); return false; } - if (m_useTrackQualityInfo) { - const Trk::FitQuality* TrkQuality=track.fitQuality(); - if (TrkQuality==0) { ATH_MSG_WARNING( "Requested cut on track quality was not possible. Track has no FitQuality object attached. Selection failed." ); return false; } - if (!decision(TrkQuality)) { return false; } } - if (m_useTrackSummaryInfo) { //number of hits, silicon hits, b-layer - const Trk::TrackSummary* summary = 0; - // first ask track for summary summary = track.trackSummary(); - if (m_trackSumToolAvailable && summary == 0) { // ugly but one needs to cast the const away because the method needs to update the track (the tool is a friend of track) Trk::Track& nonConstTrack = const_cast<Trk::Track&>(track); m_trackSumTool->updateTrack(nonConstTrack); summary = nonConstTrack.trackSummary(); } - if (!m_trackSumToolAvailable) { ATH_MSG_WARNING( " No Track Summary Tool available. This should be the case only when running on AOD" ); } - if (0==summary ) { ATH_MSG_WARNING( "Track preselection: cannot create a track summary (but useTrackSummary is true). Selection failed." ); return false; } - // get the minimum nimber of TRT hits based on eta of the track if(m_useEtaDepententMinHitTrt) { m_nHitTrt = m_trtDCTool->minNumberDCs( (*track.trackParameters())[0] ); - if(m_addToMinHitTrt!=0) + if(m_addToMinHitTrt!=0){ m_nHitTrt += m_addToMinHitTrt; - else + }else{ m_nHitTrt = (int)((double)m_nHitTrt*m_scaleMinHitTrt); + } } - // get the minimum nimber of TRT hits + outliers based on eta of the track if(m_useEtaDepententMinHitTrtWithOutliers) { m_nHitTrtPlusOutliers = m_trtDCTool->minNumberDCs( (*track.trackParameters())[0] ); - if(m_addToMinHitTrtWithOutliers!=0) + if(m_addToMinHitTrtWithOutliers!=0){ m_nHitTrtPlusOutliers += m_addToMinHitTrtWithOutliers; - else + }else{ m_nHitTrtPlusOutliers = (int)((double)m_nHitTrtPlusOutliers*m_scaleMinHitTrtWithOutliers); + } } - if (!decision(summary,m_useSharedHitInfo,isInTrtAcceptance, perigeeBeforeExtrapolation)) { summary=0; return false; } summary=0; } - - //all ok return true; } // --------------------------------------------------------------------- - bool InDetDetailedTrackSelectorTool::decision(const Trk::TrackParticleBase& track,const Trk::Vertex* vertex) const - { - + bool + InDetDetailedTrackSelectorTool::decision(const Trk::TrackParticleBase& track,const Trk::Vertex* vertex) const{ const Trk::TrackParameters* definintParameters=&(track.definingParameters()); - - const Trk::Perigee* perigeeBeforeExtrapolation= - dynamic_cast<const Trk::Perigee*>(definintParameters); - + const Trk::Perigee* perigeeBeforeExtrapolation=dynamic_cast<const Trk::Perigee*>(definintParameters); if (perigeeBeforeExtrapolation && m_usePreselectionCuts) { bool preselectionDecision=preselectionBeforeExtrapolation(*perigeeBeforeExtrapolation); if (!preselectionDecision) { ATH_MSG_DEBUG("Track rejected because of preselection decision!"); return false; } - } - else if (m_usePreselectionCuts) { + } else if (m_usePreselectionCuts) { ATH_MSG_WARNING( " Preselection was requested but cannot be made since the Perigee is not the defining Parameter of the TrackParticle. This is not an error." ); } - - bool isInTrtAcceptance=true; - if (!perigeeBeforeExtrapolation || fabs(perigeeBeforeExtrapolation->momentum().eta())>m_TrtMaxEtaAcceptance) { + if (!perigeeBeforeExtrapolation || std::fabs(perigeeBeforeExtrapolation->momentum().eta())>m_TrtMaxEtaAcceptance) { isInTrtAcceptance=false; } - - if (m_useTrackQualityInfo) { - const Trk::FitQuality* TrkQuality=track.fitQuality(); - if (TrkQuality==0) { ATH_MSG_WARNING( "Requested cut on track quality was not possible. TrackParticleBase has no FitQuality object attached. Selection failed." ); return false; } - if (!decision(TrkQuality)) { return false; } - } - if (m_useTrackSummaryInfo) { //number of hits, silicon hits, b-layer const Trk::TrackSummary* summary = track.trackSummary(); - if (0==summary ) { ATH_MSG_WARNING( "Track preselection: cannot create a track summary (but useTrackSummary is true). Selection failed." ); return false; } - if(m_useEtaDepententMinHitTrt) { m_nHitTrt = m_trtDCTool->minNumberDCs( (track.trackParameters())[0] ); - if(m_addToMinHitTrt!=0) + if(m_addToMinHitTrt!=0){ m_nHitTrt += m_addToMinHitTrt; - else + }else{ m_nHitTrt = (int)((double)m_nHitTrt*m_scaleMinHitTrt); + } } - if(m_useEtaDepententMinHitTrtWithOutliers) { m_nHitTrtPlusOutliers = m_trtDCTool->minNumberDCs( (track.trackParameters())[0] ); - if(m_addToMinHitTrtWithOutliers!=0) + if(m_addToMinHitTrtWithOutliers!=0){ m_nHitTrtPlusOutliers += m_addToMinHitTrtWithOutliers; - else + }else{ m_nHitTrtPlusOutliers = (int)((double)m_nHitTrtPlusOutliers*m_scaleMinHitTrtWithOutliers); + } } - - if (!decision(summary, m_useSharedHitInfo, isInTrtAcceptance, perigeeBeforeExtrapolation)) { - return false; + if ((!perigeeBeforeExtrapolation) or (!decision(summary, m_useSharedHitInfo, isInTrtAcceptance, perigeeBeforeExtrapolation))) { + return false; } } - const Trk::Perigee* extrapolatedPerigee=dynamic_cast<const Trk::Perigee*>(definintParameters); - const Trk::Vertex* myVertex=vertex; - if (vertex==0) { - //ATH_MSG_DEBUG( "No vertex given, using beam spot or 0,0,0" ); if (!m_iBeamCondSvc.empty()) { myVertex=new Trk::RecVertex(m_iBeamCondSvc->beamVtx()); } else { @@ -481,27 +380,23 @@ namespace InDet myVertex=new Trk::Vertex(Amg::Vector3D(0,0,0)); } } - Trk::PerigeeSurface perigeeSurface(myVertex->position()); - const Trk::TrackParameters *firstmeaspar=0; - for (unsigned int i=0;i<track.trackParameters().size();i++) { if ((track.trackParameters())[i]->covariance() && - !dynamic_cast<const Trk::Perigee*>((track.trackParameters())[i])) { + !dynamic_cast<const Trk::Perigee*>((track.trackParameters())[i])) { firstmeaspar=(track.trackParameters())[i]; break; } } - if (!firstmeaspar) { if (!extrapolatedPerigee || !extrapolatedPerigee->covariance() ) { - ATH_MSG_DEBUG( " Track Paraemters at first measurement not found. Perigee not found. Cannot do TrackSelection..." ); - if (myVertex!=vertex) { - delete myVertex; - myVertex=0; - } - return false; + ATH_MSG_DEBUG( " Track Paraemters at first measurement not found. Perigee not found. Cannot do TrackSelection..." ); + if (myVertex!=vertex) { + delete myVertex; + myVertex=0; + } + return false; } //using perigee instead of firstmeasurement, since first measurement was not found... firstmeaspar=&(track.definingParameters()); @@ -510,26 +405,20 @@ namespace InDet ATH_MSG_VERBOSE ("Input to extrapolation: " << *firstmeaspar); ATH_MSG_VERBOSE ("Extrapolating to position: " << myVertex->position()[0] << " , " << myVertex->position()[1] << " , " << myVertex->position()[2]); - const Trk::TrackParameters* extrapolatedParameters= firstmeaspar ? m_extrapolator->extrapolate(*firstmeaspar,perigeeSurface,Trk::anyDirection,true,Trk::pion ) : 0; - extrapolatedPerigee = extrapolatedParameters ? dynamic_cast<const Trk::Perigee*>(extrapolatedParameters) : 0; - - if (extrapolatedPerigee==0 || !extrapolatedPerigee->covariance()) { ATH_MSG_WARNING( "Track Selector failed to extrapolate track to the vertex: " << myVertex->position() ); - if (extrapolatedParameters!=0) { - ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" ); - delete extrapolatedParameters; + if (extrapolatedParameters) { + ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" ); + delete extrapolatedParameters; + extrapolatedParameters = nullptr; } } - - ATH_MSG_VERBOSE ("Result: " << *extrapolatedParameters); - + if (extrapolatedParameters) ATH_MSG_VERBOSE ("Result: " << *extrapolatedParameters); const Trk::RecVertex* recVertex = dynamic_cast<const Trk::RecVertex*>(myVertex); bool dec = decision(extrapolatedPerigee, recVertex ? &recVertex->covariancePosition() : 0 ); - if (myVertex!=vertex) { delete myVertex; myVertex=0; @@ -538,18 +427,17 @@ namespace InDet delete extrapolatedPerigee; extrapolatedPerigee=0; } - if(!dec) { ATH_MSG_DEBUG("Track rejected because of perigee parameters!"); return false; } - return true; } // --------------------------------------------------------------------- - bool InDetDetailedTrackSelectorTool::decision(const xAOD::TrackParticle& tp,const xAOD::Vertex* vertex) const + bool + InDetDetailedTrackSelectorTool::decision(const xAOD::TrackParticle& tp,const xAOD::Vertex* vertex) const { const Trk::Perigee& perigee=tp.perigeeParameters(); @@ -568,21 +456,20 @@ namespace InDet if(m_useEtaDepententMinHitTrt) { m_nHitTrt = m_trtDCTool->minNumberDCs( &perigee ); - if(m_addToMinHitTrt!=0) + if(m_addToMinHitTrt!=0){ m_nHitTrt += m_addToMinHitTrt; - else + }else{ m_nHitTrt = (int)((double)m_nHitTrt*m_scaleMinHitTrt); + } } - if(m_useEtaDepententMinHitTrtWithOutliers) { m_nHitTrtPlusOutliers = m_trtDCTool->minNumberDCs( &perigee ); - if(m_addToMinHitTrtWithOutliers!=0) + if(m_addToMinHitTrtWithOutliers!=0){ m_nHitTrtPlusOutliers += m_addToMinHitTrtWithOutliers; - else + }else{ m_nHitTrtPlusOutliers = (int)((double)m_nHitTrtPlusOutliers*m_scaleMinHitTrtWithOutliers); + } } - - int nb = getCount(tp,xAOD::numberOfInnermostPixelLayerHits ); int np = getCount(tp,xAOD::numberOfPixelHits ); int npd = getCount(tp,xAOD::numberOfPixelDeadSensors ); @@ -590,25 +477,22 @@ namespace InDet int nhp = getCount(tp,xAOD::numberOfPixelHoles ); int nhs = getCount(tp,xAOD::numberOfSCTHoles ); int ndhs = getCount(tp,xAOD::numberOfSCTDoubleHoles); - //**----------------------------------------------------------------------- if(m_usePtDependentCuts) { - - double pt = tp.pt(); - - unsigned int it = 0; - for(; it< m_ptBenchmarks.size()-1; ++it ) { - if(pt>m_ptBenchmarks[it] && pt <=m_ptBenchmarks[it+1] && ns < m_nSCTValues[it]) { - ATH_MSG_DEBUG("Track rejected because of Pt-Dependent SCT Hit cut (CAREFUL! Excludes dead modules)") ; - return false; - } - }//end of pt intervals loop + double pt = tp.pt(); + unsigned int it = 0; + for(; it< m_ptBenchmarks.size()-1; ++it ) { + if(pt>m_ptBenchmarks[it] && pt <=m_ptBenchmarks[it+1] && ns < m_nSCTValues[it]) { + ATH_MSG_DEBUG("Track rejected because of Pt-Dependent SCT Hit cut (CAREFUL! Excludes dead modules)") ; + return false; + } + }//end of pt intervals loop - //now cutting all the rest by the last value in the vector - if(pt>m_ptBenchmarks[it+1] && ns < m_nSCTValues[it+1]) { - ATH_MSG_DEBUG("Track rejected because of Pt-Dependent SCT Hit cut (CAREFUL! Excludes dead modules)") ; - return false; - } + //now cutting all the rest by the last value in the vector + if(pt>m_ptBenchmarks[it+1] && ns < m_nSCTValues[it+1]) { + ATH_MSG_DEBUG("Track rejected because of Pt-Dependent SCT Hit cut (CAREFUL! Excludes dead modules)") ; + return false; + } } //*-------------------------------------------------------------------------------- @@ -616,40 +500,40 @@ namespace InDet //normal cuts in all their variety if(nb == 0 && nb < m_nHitBLayer) { - ATH_MSG_DEBUG("Track rejected because of nHitBLayer "<<nb<<" < "<<m_nHitBLayer); - if(m_inDetTestBLayerTool.empty()) { - ATH_MSG_DEBUG("and no blayer tool configured, so will not try to recover track"); - return false; - } else if (m_inDetTestBLayerTool->expectHitInBLayer(&perigee)) { - ATH_MSG_DEBUG("and track rejected because of Number of b-layer hits ACCOUNTING for those expected") ; - return false; - }else ATH_MSG_DEBUG("recovered track as no b-layer expected") ; + ATH_MSG_DEBUG("Track rejected because of nHitBLayer "<<nb<<" < "<<m_nHitBLayer); + if(m_inDetTestBLayerTool.empty()) { + ATH_MSG_DEBUG("and no blayer tool configured, so will not try to recover track"); + return false; + } else if (m_inDetTestBLayerTool->expectHitInBLayer(&perigee)) { + ATH_MSG_DEBUG("and track rejected because of Number of b-layer hits ACCOUNTING for those expected") ; + return false; + }else ATH_MSG_DEBUG("recovered track as no b-layer expected") ; }//end of checking the b-layer if(np+npd < m_nHitPix) { - ATH_MSG_DEBUG("Track rejected because of nHitPix "<<np+npd<<" < "<<m_nHitPix); - return false; + ATH_MSG_DEBUG("Track rejected because of nHitPix "<<np+npd<<" < "<<m_nHitPix); + return false; } if(np < m_nHitPixPhysical) { - ATH_MSG_DEBUG("Track rejected because of nHitPixPhysical "<<np<<" < "<<m_nHitPixPhysical); - return false; + ATH_MSG_DEBUG("Track rejected because of nHitPixPhysical "<<np<<" < "<<m_nHitPixPhysical); + return false; } int nsd = getCount(tp,xAOD::numberOfSCTDeadSensors); if(ns+nsd < m_nHitSct) { - ATH_MSG_DEBUG("Track rejected because of nHitSct "<<ns+nsd<<" < "<<m_nHitSct); - return false; + ATH_MSG_DEBUG("Track rejected because of nHitSct "<<ns+nsd<<" < "<<m_nHitSct); + return false; } if(np+ns+npd+nsd < m_nHitSi) { - ATH_MSG_DEBUG("Track rejected because of nHitSi "<<np+npd+ns+nsd<<" < "<<m_nHitSi); - return false; + ATH_MSG_DEBUG("Track rejected because of nHitSi "<<np+npd+ns+nsd<<" < "<<m_nHitSi); + return false; } if(np+ns < m_nHitSiPhysical) { - ATH_MSG_DEBUG("Track rejected because of nHitSiPhysical "<<np+ns<<" < "<<m_nHitSiPhysical); - return false; + ATH_MSG_DEBUG("Track rejected because of nHitSiPhysical "<<np+ns<<" < "<<m_nHitSiPhysical); + return false; } if (nb+np+npd< m_nHitBLayerPlusPix){ @@ -669,69 +553,67 @@ namespace InDet } if(nhp > m_nHolesPix){ - ATH_MSG_DEBUG("Track rejected because of nHolesPix "<<nhp<<" > "<<m_nHolesPix); - return false; + ATH_MSG_DEBUG("Track rejected because of nHolesPix "<<nhp<<" > "<<m_nHolesPix); + return false; } if (nhs > m_nHolesSct){ - ATH_MSG_DEBUG("Track rejected because of nHolesSct "<<nhs<<" > "<<m_nHolesSct); - return false; + ATH_MSG_DEBUG("Track rejected because of nHolesSct "<<nhs<<" > "<<m_nHolesSct); + return false; } - if (fabs(tp.eta())>m_TrtMaxEtaAcceptance) { - int nh = getCount(tp,xAOD::numberOfTRTHits); - if(nh < m_nHitTrt) { - ATH_MSG_DEBUG("Track rejected because of nHitTrt "<<nh<<" < "<<m_nHitTrt); - return false; - } - - int nhh = getCount(tp, xAOD::numberOfTRTHits ) + getCount(tp, xAOD::numberOfTRTOutliers ); - if (nhh<m_nHitTrtPlusOutliers) { - ATH_MSG_DEBUG("Track rejected because of nHitTrtPlusOutliers "<<nhh<<" < "<<m_nHitTrtPlusOutliers); - return false; - } + if (std::fabs(tp.eta())>m_TrtMaxEtaAcceptance) { + int nh = getCount(tp,xAOD::numberOfTRTHits); + if(nh < m_nHitTrt) { + ATH_MSG_DEBUG("Track rejected because of nHitTrt "<<nh<<" < "<<m_nHitTrt); + return false; + } + + int nhh = getCount(tp, xAOD::numberOfTRTHits ) + getCount(tp, xAOD::numberOfTRTOutliers ); + if (nhh<m_nHitTrtPlusOutliers) { + ATH_MSG_DEBUG("Track rejected because of nHitTrtPlusOutliers "<<nhh<<" < "<<m_nHitTrtPlusOutliers); + return false; + } - int nhthits= getCount(tp,xAOD::numberOfTRTHighThresholdHits); - if (nhthits<m_nHitTrtHighE) { - ATH_MSG_DEBUG("Track rejected because of nHitTrtHighE "<<nhthits<<" < "<<m_nHitTrtHighE); - return false; - } + int nhthits= getCount(tp,xAOD::numberOfTRTHighThresholdHits); + if (nhthits<m_nHitTrtHighE) { + ATH_MSG_DEBUG("Track rejected because of nHitTrtHighE "<<nhthits<<" < "<<m_nHitTrtHighE); + return false; + } - int nhthitsWithOutliers= getCount(tp,xAOD::numberOfTRTHighThresholdHits) + getCount(tp,xAOD::numberOfTRTHighThresholdOutliers); - if (nhthitsWithOutliers<m_nHitTrtPlusOutliersHighE) { - ATH_MSG_DEBUG("Track rejected because of nHitTrtPlusOutliersHighE "<<nhthitsWithOutliers<<" < "<<m_nHitTrtPlusOutliersHighE); - return false; - } + int nhthitsWithOutliers= getCount(tp,xAOD::numberOfTRTHighThresholdHits) + getCount(tp,xAOD::numberOfTRTHighThresholdOutliers); + if (nhthitsWithOutliers<m_nHitTrtPlusOutliersHighE) { + ATH_MSG_DEBUG("Track rejected because of nHitTrtPlusOutliersHighE "<<nhthitsWithOutliers<<" < "<<m_nHitTrtPlusOutliersHighE); + return false; + } - if ( getCount(tp, xAOD::numberOfTRTHits )>0) { - double nhe = getCount(tp,xAOD::numberOfTRTHighThresholdHits); - nhe /= getCount(tp, xAOD::numberOfTRTHits); - if(nhe > m_nHitTrtHighEFraction ) { - ATH_MSG_DEBUG("Track rejected because of nHitTrtHighEFraction "<<nhe<<" < "<<m_nHitTrtHighEFraction); - return false; - } - } + if ( getCount(tp, xAOD::numberOfTRTHits )>0) { + double nhe = getCount(tp,xAOD::numberOfTRTHighThresholdHits); + nhe /= getCount(tp, xAOD::numberOfTRTHits); + if(nhe > m_nHitTrtHighEFraction ) { + ATH_MSG_DEBUG("Track rejected because of nHitTrtHighEFraction "<<nhe<<" < "<<m_nHitTrtHighEFraction); + return false; + } + } - if ( getCount(tp, xAOD::numberOfTRTHits ) + getCount(tp, xAOD::numberOfTRTOutliers ) > 0 ) { - double nheh = (double)(getCount(tp,xAOD::numberOfTRTHighThresholdHits) + getCount(tp,xAOD::numberOfTRTHighThresholdOutliers))/ - (double)(getCount(tp, xAOD::numberOfTRTHits) + getCount(tp, xAOD::numberOfTRTOutliers ) ); - if(nheh<0.) nheh=0.; - if (nheh>1.) nheh=1.; - if(nheh > m_nHitTrtHighEFractionWithOutliers ) { - ATH_MSG_DEBUG("Track rejected because of nHitTrtHighEFractionWithOutliers "<<nheh<<" < "<<m_nHitTrtHighEFractionWithOutliers); - return false; - } - } + if ( getCount(tp, xAOD::numberOfTRTHits ) + getCount(tp, xAOD::numberOfTRTOutliers ) > 0 ) { + double nheh = (double)(getCount(tp,xAOD::numberOfTRTHighThresholdHits) + getCount(tp,xAOD::numberOfTRTHighThresholdOutliers))/ + (double)(getCount(tp, xAOD::numberOfTRTHits) + getCount(tp, xAOD::numberOfTRTOutliers ) ); + if(nheh<0.) nheh=0.; + if (nheh>1.) nheh=1.; + if(nheh > m_nHitTrtHighEFractionWithOutliers ) { + ATH_MSG_DEBUG("Track rejected because of nHitTrtHighEFractionWithOutliers "<<nheh<<" < "<<m_nHitTrtHighEFractionWithOutliers); + return false; + } + } } - if (m_useSharedHitInfo) { - - int nbs = getCount(tp,xAOD::numberOfInnermostPixelLayerSharedHits); - if (nbs>1) nbs=1; - if(nbs>m_nSharedBLayer) { - ATH_MSG_DEBUG("Track rejected because of nSharedBLayer "<<nbs<<" < "<<m_nSharedBLayer); - return false; - } + int nbs = getCount(tp,xAOD::numberOfInnermostPixelLayerSharedHits); + if (nbs>1) nbs=1; + if(nbs>m_nSharedBLayer) { + ATH_MSG_DEBUG("Track rejected because of nSharedBLayer "<<nbs<<" < "<<m_nSharedBLayer); + return false; + } int nps = getCount(tp,xAOD::numberOfPixelSharedHits); if(nps>m_nSharedPix) { @@ -759,8 +641,9 @@ namespace InDet if (extrapolatedPerigee==0) { ATH_MSG_WARNING( "Extrapolation to the vertex failed: " << perigeeSurface << std::endl << perigee ); if (extrapolatedParameters!=0) { - ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" ); - delete extrapolatedParameters; + ATH_MSG_WARNING( "The return object of the extrapolator was not a perigee even if a perigeeSurface was used!" ); + delete extrapolatedParameters; + extrapolatedParameters=nullptr; } return false; } @@ -800,35 +683,35 @@ namespace InDet ATH_MSG_DEBUG("Track rejected because of qOverP == 0."); return false; } - double p = fabs(1./perigeeParms[Trk::qOverP]); + double p = std::fabs(1./perigeeParms[Trk::qOverP]); if (p<m_pMin) { ATH_MSG_DEBUG("Track rejected because of p " << p << " < " << m_pMin); return false; } - double pt = p*sin(perigeeParms[Trk::theta]); + double pt = p*std::sin(perigeeParms[Trk::theta]); if (pt<m_pTMin) { ATH_MSG_DEBUG("Track rejected because of pt " << pt << " < " << m_pTMin); return false; } } - if (fabs(perigeeParms[Trk::d0]) > m_IPd0Max) { - ATH_MSG_DEBUG("Track rejected because of fabs(d0) " << fabs(perigeeParms[Trk::d0]) << " > " << m_IPd0Max); + if (std::fabs(perigeeParms[Trk::d0]) > m_IPd0Max) { + ATH_MSG_DEBUG("Track rejected because of fabs(d0) " << std::fabs(perigeeParms[Trk::d0]) << " > " << m_IPd0Max); return false; } - if (fabs(perigeeParms[Trk::z0]*sin(perigeeParms[Trk::theta])) > m_IPz0Max) { - ATH_MSG_DEBUG("Track rejected because of fabs(z0*sin(theta)) " << fabs(perigeeParms[Trk::z0]*sin(perigeeParms[Trk::theta])) << " > " << m_IPz0Max); + if (std::fabs(perigeeParms[Trk::z0]*std::sin(perigeeParms[Trk::theta])) > m_IPz0Max) { + ATH_MSG_DEBUG("Track rejected because of fabs(z0*sin(theta)) " << std::fabs(perigeeParms[Trk::z0]*std::sin(perigeeParms[Trk::theta])) << " > " << m_IPz0Max); return false; } - if (fabs(perigeeParms[Trk::z0]) > m_z0Max) { - ATH_MSG_DEBUG("Track rejected because of fabs(z0) " << fabs(perigeeParms[Trk::z0]) << " > " << m_z0Max); + if (std::fabs(perigeeParms[Trk::z0]) > m_z0Max) { + ATH_MSG_DEBUG("Track rejected because of fabs(z0) " << std::fabs(perigeeParms[Trk::z0]) << " > " << m_z0Max); return false; } - if (sqrt( (*track->covariance())(Trk::z0,Trk::z0) )*sin(perigeeParms[Trk::theta])>m_sigIPz0Max) { - ATH_MSG_DEBUG("Track rejected because of err(z0)*sin(theta) " << sqrt( (*track->covariance())(Trk::z0,Trk::z0) )*sin(perigeeParms[Trk::theta]) << " > " << m_sigIPz0Max); + if (sqrt( (*track->covariance())(Trk::z0,Trk::z0) )*std::sin(perigeeParms[Trk::theta])>m_sigIPz0Max) { + ATH_MSG_DEBUG("Track rejected because of err(z0)*sin(theta) " << sqrt( (*track->covariance())(Trk::z0,Trk::z0) )*std::sin(perigeeParms[Trk::theta]) << " > " << m_sigIPz0Max); return false; } @@ -839,8 +722,8 @@ namespace InDet if (m_d0significanceMax>0 || m_z0significanceMax>0) { - double sinTheta = sin(perigeeParms[Trk::theta]); - double cosTheta = cos(perigeeParms[Trk::theta]); + double sinTheta = std::sin(perigeeParms[Trk::theta]); + double cosTheta = std::cos(perigeeParms[Trk::theta]); double d0wrtPriVtx = perigeeParms[Trk::d0]; double deltaZ = perigeeParms[Trk::z0]; double z0wrtPriVtx = deltaZ*sinTheta; @@ -849,15 +732,15 @@ namespace InDet double testtrackSigTh = sqrt( (*track->covariance())(Trk::theta,Trk::theta) ); // error on IP: double trackPhi = perigeeParms[Trk::phi]; - double dIPdx = sin(trackPhi); - double dIPdy = -cos(trackPhi); + double dIPdx = std::sin(trackPhi); + double dIPdy = -std::cos(trackPhi); double DD0 = testtrackSigD0*testtrackSigD0; double newD0Err=0; if (covariancePosition) { - double DXX = dIPdx*dIPdx* (*covariancePosition)(0,0); - double DYY = dIPdy*dIPdy* (*covariancePosition)(1,1); - double DXY = 2.*dIPdx*dIPdy* (*covariancePosition)(0,1); - newD0Err = DD0 + DXX + DYY + DXY; + double DXX = dIPdx*dIPdx* (*covariancePosition)(0,0); + double DYY = dIPdy*dIPdy* (*covariancePosition)(1,1); + double DXY = 2.*dIPdx*dIPdy* (*covariancePosition)(0,1); + newD0Err = DD0 + DXX + DYY + DXY; } else { newD0Err = DD0; } @@ -869,8 +752,8 @@ namespace InDet } if (m_d0significanceMax>0) { - if (fabs(d0wrtPriVtx/d0ErrwrtPriVtx)>m_d0significanceMax) { - ATH_MSG_DEBUG("Track rejected because of fabs(d0wrtPriVtx/d0ErrwrtPriVtx) " << fabs(d0wrtPriVtx/d0ErrwrtPriVtx) << " > " << m_d0significanceMax); + if (std::fabs(d0wrtPriVtx/d0ErrwrtPriVtx)>m_d0significanceMax) { + ATH_MSG_DEBUG("Track rejected because of fabs(d0wrtPriVtx/d0ErrwrtPriVtx) " << std::fabs(d0wrtPriVtx/d0ErrwrtPriVtx) << " > " << m_d0significanceMax); return false; } } @@ -898,16 +781,16 @@ namespace InDet ATH_MSG_WARNING( " error on z0 is negative: numeric error... (not expected. please report!)" ); } - if (fabs(z0wrtPriVtx/z0ErrwrtPriVtx)>m_z0significanceMax) { - ATH_MSG_DEBUG("Track rejected because of fabs(z0wrtPriVtx/z0ErrwrtPriVtx) " << fabs(z0wrtPriVtx/z0ErrwrtPriVtx) << " > " << m_z0significanceMax); + if (std::fabs(z0wrtPriVtx/z0ErrwrtPriVtx)>m_z0significanceMax) { + ATH_MSG_DEBUG("Track rejected because of fabs(z0wrtPriVtx/z0ErrwrtPriVtx) " << std::fabs(z0wrtPriVtx/z0ErrwrtPriVtx) << " > " << m_z0significanceMax); return false; } } } - if (fabs(track->momentum().eta())>m_etaMax) { - ATH_MSG_DEBUG("Track rejected because of fabs(eta) " << fabs(track->momentum().eta()) << " > " << m_etaMax); + if (std::fabs(track->momentum().eta())>m_etaMax) { + ATH_MSG_DEBUG("Track rejected because of fabs(eta) " << std::fabs(track->momentum().eta()) << " > " << m_etaMax); return false; } @@ -989,8 +872,8 @@ namespace InDet return false; } const AmgVector(5)& perigeeParms = track->parameters(); - double p = fabs(1./perigeeParms[Trk::qOverP]); - double pt = p*sin(perigeeParms[Trk::theta]); + double p = std::fabs(1./perigeeParms[Trk::qOverP]); + double pt = p*std::sin(perigeeParms[Trk::theta]); unsigned int it = 0; for(; it< m_ptBenchmarks.size()-1; ++it ) { @@ -1183,20 +1066,20 @@ namespace InDet ATH_MSG_DEBUG("Track rejected because of perigee qOverP == 0."); return false; } - double p = fabs(1./perigeeParms[Trk::qOverP]); + double p = std::fabs(1./perigeeParms[Trk::qOverP]); if (p<m_pMin) { ATH_MSG_DEBUG("Track rejected because of p " << p << " < " << m_pMin); return false; } - double pt = p*sin(perigeeParms[Trk::theta]); + double pt = p*std::sin(perigeeParms[Trk::theta]); if (pt<m_pTMin) { ATH_MSG_DEBUG("Track rejected because of pt " << pt << " < " << m_pTMin); return false; } } - if (fabs(perigeeParms[Trk::d0]) > m_d0MaxPreselection) { - ATH_MSG_DEBUG("Track rejected because of fabs(d0) "<<fabs(perigeeParms[Trk::d0])<<" < "<<m_d0MaxPreselection); + if (std::fabs(perigeeParms[Trk::d0]) > m_d0MaxPreselection) { + ATH_MSG_DEBUG("Track rejected because of fabs(d0) "<<std::fabs(perigeeParms[Trk::d0])<<" < "<<m_d0MaxPreselection); return false; } diff --git a/InnerDetector/InDetRecTools/SiClusterOnTrackTool/SiClusterOnTrackTool/PixelClusterOnTrackTool.h b/InnerDetector/InDetRecTools/SiClusterOnTrackTool/SiClusterOnTrackTool/PixelClusterOnTrackTool.h index dec8ebccb2cb279166b85e66ab57313f7de1c934..64fc07a87f0ad9834c1a90a9d145ece5f4d07e3c 100755 --- a/InnerDetector/InDetRecTools/SiClusterOnTrackTool/SiClusterOnTrackTool/PixelClusterOnTrackTool.h +++ b/InnerDetector/InDetRecTools/SiClusterOnTrackTool/SiClusterOnTrackTool/PixelClusterOnTrackTool.h @@ -2,210 +2,214 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -/////////////////////////////////////////////////////////////////// -// Header file for class PixelClusterOnTrackTool -/////////////////////////////////////////////////////////////////// -// (c) ATLAS Detector software -/////////////////////////////////////////////////////////////////// -// Interface for PixelClusterOnTrack production -/////////////////////////////////////////////////////////////////// -// started 1/05/2004 I.Gavrilenko - see ChangeLog for details -/////////////////////////////////////////////////////////////////// -#ifndef PixelClusterOnTrackTool_H -#define PixelClusterOnTrackTool_H - -#include "GaudiKernel/ToolHandle.h" -#include "AthenaBaseComps/AthAlgTool.h" - - -#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" -#include "TrkToolInterfaces/IRIO_OnTrackErrorScalingTool.h" -#include "InDetRIO_OnTrack/PixelClusterOnTrack.h" - -#include "InDetPrepRawData/PixelGangedClusterAmbiguities.h" -#include "TrkParameters/TrackParameters.h" -//#include "InDetIdentifier/PixelID.h" -#include "GeoPrimitives/GeoPrimitives.h" -#include "TrkAmbiguityProcessor/dRMap.h" - -//#include "PixelConditionsServices/IPixelOfflineCalibSvc.h" -//#include "PixelConditionsTools/IModuleDistortionsTool.h" - -#include "AthenaPoolUtilities/CondAttrListCollection.h" -class PixelID; -class IPixelOfflineCalibSvc; -class IModuleDistortionsTool; - -class StoreGateSvc; -class IIBLParameterSvc; - -namespace InDet { - - /** @brief creates PixelClusterOnTrack objects allowing to - calibrate cluster position and error using a given track hypothesis. - - See doxygen of Trk::RIO_OnTrackCreator for details. - Different strategies to calibrate the cluster error can be chosen - by job Option. Also the handle to the general hit-error scaling - is implemented. - - Special strategies for correction can be invoked by calling the - correct method with an additional argument from the - PixelClusterStrategy enumeration - - */ - - class NnClusterizationFactory; - - enum PixelClusterStrategy { - PIXELCLUSTER_DEFAULT=0, - PIXELCLUSTER_OUTLIER=1, - PIXELCLUSTER_SHARED =2, - PIXELCLUSTER_SPLIT =3 - }; - - - class PixelClusterOnTrackTool: - public AthAlgTool, virtual public Trk::IRIO_OnTrackCreator -{ - /////////////////////////////////////////////////////////////////// - // Public methods: - /////////////////////////////////////////////////////////////////// - -public: - - //! AlgTool constructor - PixelClusterOnTrackTool(const std::string&,const std::string&, - const IInterface*); - virtual ~PixelClusterOnTrackTool (); - //! AlgTool initialisation - virtual StatusCode initialize() override; - //! AlgTool termination - virtual StatusCode finalize () override; - - - - void correctBow(const Identifier&, Amg::Vector2D& locpos, const double tanphi, const double taneta) const; - - double splineIBLPullX(float x, int layer) const; - - /** @brief produces a PixelClusterOnTrack (object factory!). - - Depending on job options it changes the pixel cluster position - and error according to the parameters (in particular, the angle) - of the intersecting track. - */ - virtual const InDet::PixelClusterOnTrack* correct(const Trk::PrepRawData&, - const Trk::TrackParameters&) const override; - - virtual const InDet::PixelClusterOnTrack* correctDefault(const Trk::PrepRawData&, - const Trk::TrackParameters&) const; - - virtual const InDet::PixelClusterOnTrack* correctNN(const Trk::PrepRawData&, const Trk::TrackParameters&) const; - - virtual bool getErrorsDefaultAmbi( const InDet::PixelCluster*, const Trk::TrackParameters&, - Amg::Vector2D&, Amg::MatrixX&) const; - - virtual bool getErrorsTIDE_Ambi( const InDet::PixelCluster*, const Trk::TrackParameters&, - Amg::Vector2D&, Amg::MatrixX&) const; - - virtual const InDet::PixelClusterOnTrack* correct - (const Trk::PrepRawData&, const Trk::TrackParameters&, - const InDet::PixelClusterStrategy) const; - - - /////////////////////////////////////////////////////////////////// - // Private methods: - /////////////////////////////////////////////////////////////////// - - private: - - /** @brief parametrizes the pixel cluster position error as a function of - the track angle alpha and the cluster width (number of rows) deltax */ - // double getBarrelPhiError(double& alpha, int& deltax) const; - // double getBarrelEtaError(double eta, int deltax, int deltay) const; - // double getEndcapPhiError(int etasize, int phisize) const; - // double getEndcapEtaError(int etasize, int phisize) const; - - void FillFromDataBase() const; - - /////////////////////////////////////////////////////////////////// - // Private data: - /////////////////////////////////////////////////////////////////// - - ToolHandle<IModuleDistortionsTool> m_pixDistoTool ; - ToolHandle<Trk::IRIO_OnTrackErrorScalingTool> m_errorScalingTool; - ServiceHandle<IPixelOfflineCalibSvc> m_calibSvc ; - StoreGateSvc* m_detStore ; - /* ME: Test histos have nothing to do with production code, use a flag - IHistogram1D* m_h_Resx; - IHistogram1D* m_h_Resy; - IHistogram1D* m_h_Locx; - IHistogram1D* m_h_Locy; - IHistogram1D* m_h_PhiTrack; - IHistogram1D* m_h_ThetaTrack; - IHistogram1D* m_h_Rad; - IHistogram1D* m_h_Slope; - */ - - //! toolhandle for central error scaling - //! flag storing if errors need scaling or should be kept nominal - bool m_scalePixelCov ; - bool m_disableDistortions; - bool m_rel13like ; - int m_positionStrategy ; - mutable int m_errorStrategy ; - - - /** @brief Flag controlling how module distortions are taken into account: - - case 0 -----> No distorsions implemented; - - case 1 -----> Set curvature (in 1/meter) and twist (in radiant) equal for all modules; - - case 2 -----> Read curvatures and twists from textfile containing Survey data; - - case 3 -----> Set curvature and twist from Gaussian random generator with mean and RMS coming from Survey data; - - case 4 -----> Read curvatures and twists from database (not ready yet); - */ - //! identifier-helper - const PixelID* m_pixelid; - - /** Enable NN based calibration (do only if NN calibration is applied) **/ - mutable bool m_applyNNcorrection; - mutable bool m_applydRcorrection; - bool m_NNIBLcorrection; - bool m_IBLAbsent; - - /** NN clusterizationi factory for NN based positions and errors **/ - ToolHandle<NnClusterizationFactory> m_NnClusterizationFactory; - ServiceHandle<StoreGateSvc> m_storeGate; //!< Event store - ServiceHandle<IIBLParameterSvc> m_IBLParameterSvc; - - - SG::ReadHandleKey<InDet::DRMap> m_dRMap; //!< the actual dR map - std::string m_dRMapName; - - bool m_doNotRecalibrateNN; - bool m_noNNandBroadErrors; - - /** Enable different treatment of cluster errors based on NN information (do only if TIDE ambi is run) **/ - bool m_usingTIDE_Ambi; - SG::ReadHandleKey<InDet::PixelGangedClusterAmbiguities> m_splitClusterHandle; - mutable std::vector< std::vector<float> > m_fX, m_fY, m_fB, m_fC, m_fD; - - //moved from static to member variable - static constexpr int s_nbinphi=9; - static constexpr int s_nbineta=6; - double m_calphi[s_nbinphi]; - double m_caleta[s_nbineta][3]; - double m_calerrphi[s_nbinphi][3]; - double m_calerreta[s_nbineta][3]; - double m_phix[s_nbinphi+1]; - double m_etax[s_nbineta+1]; -}; - -} // end of namespace InDet - -#endif // PixelClusterOnTrackTool_H +/////////////////////////////////////////////////////////////////// +// Header file for class PixelClusterOnTrackTool +/////////////////////////////////////////////////////////////////// +/////////////////////////////////////////////////////////////////// +// Interface for PixelClusterOnTrack production +/////////////////////////////////////////////////////////////////// +// started 1/05/2004 I.Gavrilenko - see ChangeLog for details +/////////////////////////////////////////////////////////////////// +#ifndef PixelClusterOnTrackTool_H +#define PixelClusterOnTrackTool_H + +#include "GaudiKernel/ToolHandle.h" +#include "AthenaBaseComps/AthAlgTool.h" + + +#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" +/** The following cannot be fwd declared for interesting reason; the return type of + * 'correct' is InDet::PixelClusterOnTrack* here, but in the baseclass is + * Trk::RIO_OnTrack*. This works if the inheritance is known, but fwd declaration results + * in an error: + * invalid covariant return type for 'virtual const InDet::PixelClusterOnTrack* + InDet::PixelClusterOnTrackTool::correct(const Trk::PrepRawData&, + const TrackParameters&) const' + * because the return type has changed and the compiler has no information to cast. + **/ +#include "InDetRIO_OnTrack/PixelClusterOnTrack.h" + +#include "InDetPrepRawData/PixelGangedClusterAmbiguities.h" +#include "TrkParameters/TrackParameters.h" +#include "GeoPrimitives/GeoPrimitives.h" +#include "TrkAmbiguityProcessor/dRMap.h" +class PixelID; +class IPixelOfflineCalibSvc; +class IModuleDistortionsTool; +namespace Trk{ + class IRIO_OnTrackErrorScalingTool; +} + +class StoreGateSvc; +class IIBLParameterSvc; + +namespace InDet { + + /** @brief creates PixelClusterOnTrack objects allowing to + calibrate cluster position and error using a given track hypothesis. + + See doxygen of Trk::RIO_OnTrackCreator for details. + Different strategies to calibrate the cluster error can be chosen + by job Option. Also the handle to the general hit-error scaling + is implemented. + + Special strategies for correction can be invoked by calling the + correct method with an additional argument from the + PixelClusterStrategy enumeration + + */ + + class NnClusterizationFactory; + + enum PixelClusterStrategy { + PIXELCLUSTER_DEFAULT=0, + PIXELCLUSTER_OUTLIER=1, + PIXELCLUSTER_SHARED =2, + PIXELCLUSTER_SPLIT =3 + }; + + + class PixelClusterOnTrackTool: + public AthAlgTool, virtual public Trk::IRIO_OnTrackCreator +{ + /////////////////////////////////////////////////////////////////// + // Public methods: + /////////////////////////////////////////////////////////////////// + +public: + + //! AlgTool constructor + PixelClusterOnTrackTool(const std::string&,const std::string&, + const IInterface*); + virtual ~PixelClusterOnTrackTool (); + //! AlgTool initialisation + virtual StatusCode initialize() override; + //! AlgTool termination + virtual StatusCode finalize () override; + + + + void correctBow(const Identifier&, Amg::Vector2D& locpos, const double tanphi, const double taneta) const; + + double splineIBLPullX(float x, int layer) const; + + /** @brief produces a PixelClusterOnTrack (object factory!). + + Depending on job options it changes the pixel cluster position + and error according to the parameters (in particular, the angle) + of the intersecting track. + */ + virtual const InDet::PixelClusterOnTrack* correct(const Trk::PrepRawData&, + const Trk::TrackParameters&) const override; + + virtual const InDet::PixelClusterOnTrack* correctDefault(const Trk::PrepRawData&, + const Trk::TrackParameters&) const; + + virtual const InDet::PixelClusterOnTrack* correctNN(const Trk::PrepRawData&, const Trk::TrackParameters&) const; + + virtual bool getErrorsDefaultAmbi( const InDet::PixelCluster*, const Trk::TrackParameters&, + Amg::Vector2D&, Amg::MatrixX&) const; + + virtual bool getErrorsTIDE_Ambi( const InDet::PixelCluster*, const Trk::TrackParameters&, + Amg::Vector2D&, Amg::MatrixX&) const; + + virtual const InDet::PixelClusterOnTrack* correct + (const Trk::PrepRawData&, const Trk::TrackParameters&, + const InDet::PixelClusterStrategy) const; + + + /////////////////////////////////////////////////////////////////// + // Private methods: + /////////////////////////////////////////////////////////////////// + + private: + + /** @brief parametrizes the pixel cluster position error as a function of + the track angle alpha and the cluster width (number of rows) deltax */ + // double getBarrelPhiError(double& alpha, int& deltax) const; + // double getBarrelEtaError(double eta, int deltax, int deltay) const; + // double getEndcapPhiError(int etasize, int phisize) const; + // double getEndcapEtaError(int etasize, int phisize) const; + + void FillFromDataBase() const; + + /////////////////////////////////////////////////////////////////// + // Private data: + /////////////////////////////////////////////////////////////////// + + ToolHandle<IModuleDistortionsTool> m_pixDistoTool ; + ToolHandle<Trk::IRIO_OnTrackErrorScalingTool> m_errorScalingTool; + ServiceHandle<IPixelOfflineCalibSvc> m_calibSvc ; + StoreGateSvc* m_detStore ; + /* ME: Test histos have nothing to do with production code, use a flag + IHistogram1D* m_h_Resx; + IHistogram1D* m_h_Resy; + IHistogram1D* m_h_Locx; + IHistogram1D* m_h_Locy; + IHistogram1D* m_h_PhiTrack; + IHistogram1D* m_h_ThetaTrack; + IHistogram1D* m_h_Rad; + IHistogram1D* m_h_Slope; + */ + + //! toolhandle for central error scaling + //! flag storing if errors need scaling or should be kept nominal + bool m_scalePixelCov ; + bool m_disableDistortions; + bool m_rel13like ; + int m_positionStrategy ; + mutable int m_errorStrategy ; + + + /** @brief Flag controlling how module distortions are taken into account: + + case 0 -----> No distorsions implemented; + + case 1 -----> Set curvature (in 1/meter) and twist (in radiant) equal for all modules; + + case 2 -----> Read curvatures and twists from textfile containing Survey data; + + case 3 -----> Set curvature and twist from Gaussian random generator with mean and RMS coming from Survey data; + + case 4 -----> Read curvatures and twists from database (not ready yet); + */ + //! identifier-helper + const PixelID* m_pixelid; + + /** Enable NN based calibration (do only if NN calibration is applied) **/ + mutable bool m_applyNNcorrection; + mutable bool m_applydRcorrection; + bool m_NNIBLcorrection; + bool m_IBLAbsent; + + /** NN clusterizationi factory for NN based positions and errors **/ + ToolHandle<NnClusterizationFactory> m_NnClusterizationFactory; + ServiceHandle<StoreGateSvc> m_storeGate; //!< Event store + ServiceHandle<IIBLParameterSvc> m_IBLParameterSvc; + + + SG::ReadHandleKey<InDet::DRMap> m_dRMap; //!< the actual dR map + std::string m_dRMapName; + + bool m_doNotRecalibrateNN; + bool m_noNNandBroadErrors; + + /** Enable different treatment of cluster errors based on NN information (do only if TIDE ambi is run) **/ + bool m_usingTIDE_Ambi; + SG::ReadHandleKey<InDet::PixelGangedClusterAmbiguities> m_splitClusterHandle; + mutable std::vector< std::vector<float> > m_fX, m_fY, m_fB, m_fC, m_fD; + + //moved from static to member variable + static constexpr int s_nbinphi=9; + static constexpr int s_nbineta=6; + double m_calphi[s_nbinphi]; + double m_caleta[s_nbineta][3]; + double m_calerrphi[s_nbinphi][3]; + double m_calerreta[s_nbineta][3]; + double m_phix[s_nbinphi+1]; + double m_etax[s_nbineta+1]; +}; + +} // end of namespace InDet + +#endif // PixelClusterOnTrackTool_H diff --git a/InnerDetector/InDetRecTools/SiClusterOnTrackTool/src/PixelClusterOnTrackTool.cxx b/InnerDetector/InDetRecTools/SiClusterOnTrackTool/src/PixelClusterOnTrackTool.cxx index b9e289c724f648e69c011ff3f36f7dd6bc34c1a3..0f43976e48eb74119ec9f53d8bb348883a00edb5 100755 --- a/InnerDetector/InDetRecTools/SiClusterOnTrackTool/src/PixelClusterOnTrackTool.cxx +++ b/InnerDetector/InDetRecTools/SiClusterOnTrackTool/src/PixelClusterOnTrackTool.cxx @@ -13,6 +13,7 @@ /////////////////////////////////////////////////////////////////// #include "SiClusterOnTrackTool/PixelClusterOnTrackTool.h" +#include "TrkToolInterfaces/IRIO_OnTrackErrorScalingTool.h" #include "InDetReadoutGeometry/SiDetectorManager.h" #include "InDetReadoutGeometry/PixelModuleDesign.h" #include "InDetIdentifier/PixelID.h" @@ -273,8 +274,8 @@ InDet::PixelClusterOnTrackTool::FillFromDataBase() const{ m_fD.emplace_back(std::move(fd)); } }else { - msg(MSG::ERROR) << "Cannot find covariance corrections for key " - << "/PIXEL/PixelClustering/PixelCovCorr" << " - no correction " << endmsg; + ATH_MSG_ERROR( "Cannot find covariance corrections for key " + << "/PIXEL/PixelClustering/PixelCovCorr" << " - no correction " ); } } @@ -300,11 +301,9 @@ InDet::PixelClusterOnTrackTool::correct m_applyNNcorrection = false; } #endif - - if (!m_applyNNcorrection || - ((dynamic_cast<const InDetDD::SiDetectorElement *>(rio.detectorElement()))->isBlayer() && !m_NNIBLcorrection && - !m_IBLAbsent)) { - return correctDefault(rio, trackPar); + auto element= dynamic_cast<const InDetDD::SiDetectorElement *>(rio.detectorElement()); + if ((not m_applyNNcorrection) or (element and element->isBlayer() and (not m_NNIBLcorrection) and (not m_IBLAbsent))){ + return correctDefault(rio, trackPar); }else { if (m_errorStrategy == 0 || m_errorStrategy == 1) { // version from Giacinto @@ -374,8 +373,8 @@ InDet::PixelClusterOnTrackTool::correctDefault float trkphicomp = my_track.dot(my_phiax); float trketacomp = my_track.dot(my_etaax); float trknormcomp = my_track.dot(my_normal); - double bowphi = atan2(trkphicomp, trknormcomp); - double boweta = atan2(trketacomp, trknormcomp); + double bowphi = std::atan2(trkphicomp, trknormcomp); + double boweta = std::atan2(trketacomp, trknormcomp); float etatrack = trackPar.eta(); float tanl = element->getTanLorentzAnglePhi(); @@ -391,7 +390,7 @@ InDet::PixelClusterOnTrackTool::correctDefault // finally, subtract the Lorentz angle effect // the readoutside term is needed because of a bug in old // geometry versions (CSC-01-* and CSC-02-*) - double angle = atan(tan(bowphi) - readoutside * tanl); + double angle = std::atan(std::tan(bowphi) - readoutside * tanl); // try to understand... const Identifier element_id = element->identify(); @@ -729,8 +728,8 @@ InDet::PixelClusterOnTrackTool::correctNN float trkphicomp = my_track.dot(my_phiax); float trketacomp = my_track.dot(my_etaax); float trknormcomp = my_track.dot(my_normal); - double bowphi = atan2(trkphicomp, trknormcomp); - double boweta = atan2(trketacomp, trknormcomp); + double bowphi = std::atan2(trkphicomp, trknormcomp); + double boweta = std::atan2(trketacomp, trknormcomp); Amg::Vector2D locpos = pixelPrepCluster->localPosition(); if (element->isBarrel() && !m_disableDistortions) { @@ -771,16 +770,14 @@ InDet::PixelClusterOnTrackTool::correctNN } } - if (msgLvl(MSG::DEBUG)) { - msg(MSG::DEBUG) << " Old position x: " << pixelPrepCluster->localPosition()[0] << - " +/- " << std::sqrt(pixelPrepCluster->localCovariance()(0, 0)) - << " y: " << pixelPrepCluster->localPosition()[1] << - " +/- " << std::sqrt(pixelPrepCluster->localCovariance()(1, 1)) << endmsg; - msg(MSG::DEBUG) << " Final position x: " << finalposition[0] << - " +/- " << std::sqrt(finalerrormatrix(0, 0)) << - " y: " << finalposition[1] << " +/- " << - std::sqrt(finalerrormatrix(1, 1)) << endmsg; - } + ATH_MSG_DEBUG( " Old position x: " << pixelPrepCluster->localPosition()[0] + << " +/- " << std::sqrt(pixelPrepCluster->localCovariance()(0, 0)) + << " y: " << pixelPrepCluster->localPosition()[1] + << " +/- " << std::sqrt(pixelPrepCluster->localCovariance()(1, 1)) <<"\n" + << " Final position x: " << finalposition[0] + << " +/- " << std::sqrt(finalerrormatrix(0, 0)) + << " y: " << finalposition[1] << " +/- " + <<std::sqrt(finalerrormatrix(1, 1)) ); Amg::Vector3D my_track = trackPar.momentum(); Amg::Vector3D my_normal = element->normal(); @@ -789,8 +786,8 @@ InDet::PixelClusterOnTrackTool::correctNN float trkphicomp = my_track.dot(my_phiax); float trketacomp = my_track.dot(my_etaax); float trknormcomp = my_track.dot(my_normal); - double bowphi = atan2(trkphicomp, trknormcomp); - double boweta = atan2(trketacomp, trknormcomp); + double bowphi = std::atan2(trkphicomp, trknormcomp); + double boweta = std::atan2(trketacomp, trknormcomp); if (element->isBarrel() && !m_disableDistortions) { correctBow(element->identify(), finalposition, bowphi, boweta); @@ -831,7 +828,7 @@ InDet::PixelClusterOnTrackTool::getErrorsDefaultAmbi(const InDet::PixelCluster * int numberOfSubclusters = 1; vectorOfPositions.push_back(pixelPrepCluster->localPosition()); -#ifdef __clustermap + #ifdef __clustermap SG::ReadHandle<InDet::PixelGangedClusterAmbiguities> splitClusterMap(m_splitClusterHandle); InDet::PixelGangedClusterAmbiguities::const_iterator mapBegin = splitClusterMap->begin(); @@ -843,9 +840,7 @@ InDet::PixelClusterOnTrackTool::getErrorsDefaultAmbi(const InDet::PixelCluster * if (first == pixelPrepCluster && second != pixelPrepCluster) { ATH_MSG_DEBUG("Found additional split cluster in ambiguity map (+=1)."); numberOfSubclusters += 1; - const SiCluster *otherOne = second; - const InDet::PixelCluster *pixelAddCluster = dynamic_cast<const InDet::PixelCluster *>(otherOne); if (pixelAddCluster == 0) { ATH_MSG_WARNING("Pixel ambiguity map has empty pixel cluster. Please DEBUG!"); @@ -853,27 +848,17 @@ InDet::PixelClusterOnTrackTool::getErrorsDefaultAmbi(const InDet::PixelCluster * } vectorOfPositions.push_back(pixelAddCluster->localPosition()); - if (msgLvl(MSG::DEBUG)) { - msg(MSG::DEBUG) << "Found one more pixel cluster. Position x: " - << pixelAddCluster->localPosition()[0] << "y: " << pixelAddCluster->localPosition()[1] << - endmsg; - } + ATH_MSG_DEBUG( "Found one more pixel cluster. Position x: " + << pixelAddCluster->localPosition()[0] << "y: " << pixelAddCluster->localPosition()[1]); }// find relevant element of map }// iterate over map #endif - // A.S. hack for the moment: isSplit is also set for modified (non-split) 1-pixel-clusters ... is this needed anyway ? - // - // if (pixelPrepCluster->isSplit() && numberOfSubclusters<2) - // { - // msg(MSG::WARNING) << " Cluster is split but no further clusters found in split cluster map." << endmsg; - // } - // now you have numberOfSubclusters and the vectorOfPositions (Amg::Vector2D) const Trk::AtaPlane *parameters = dynamic_cast<const Trk::AtaPlane *>(&trackPar); - if (parameters == 0) { - msg(MSG::WARNING) << "Parameters are not at a plane ! Aborting cluster correction... " << endmsg; + if (not parameters) { + ATH_MSG_WARNING( "Parameters are not at a plane ! Aborting cluster correction... " ); return false; } @@ -887,17 +872,15 @@ InDet::PixelClusterOnTrackTool::getErrorsDefaultAmbi(const InDet::PixelCluster * allErrorMatrix, numberOfSubclusters); - if (allLocalPositions.size() == 0) { - if (msgLvl(MSG::DEBUG)) { - msg(MSG::DEBUG) << " Cluster cannot be treated by NN. Giving back to default clusterization " << endmsg; - } + if (allLocalPositions.empty()) { + ATH_MSG_DEBUG( " Cluster cannot be treated by NN. Giving back to default clusterization " ); + return false; } if (allLocalPositions.size() != size_t(numberOfSubclusters)) { - msg(MSG::WARNING) << "Returned position vector size " << allLocalPositions.size() << - " not according to expected number of subclusters: " << numberOfSubclusters << ". Abort cluster correction..." << - endmsg; + ATH_MSG_WARNING( "Returned position vector size " << allLocalPositions.size() << + " not according to expected number of subclusters: " << numberOfSubclusters << ". Abort cluster correction..." ); return false; } @@ -923,16 +906,15 @@ InDet::PixelClusterOnTrackTool::getErrorsDefaultAmbi(const InDet::PixelCluster * square(vectorOfPositions[1][1] - allLocalPositions[0][1]) / allErrorMatrix[0](1, 1) + square(vectorOfPositions[0][1] - allLocalPositions[1][1]) / allErrorMatrix[1](1, 1); - if (msgLvl(MSG::DEBUG)) { - msg(MSG::DEBUG) << " Old pix (1) x: " << vectorOfPositions[0][0] << " y: " << vectorOfPositions[0][1] << endmsg; - msg(MSG::DEBUG) << " Old pix (2) x: " << vectorOfPositions[1][0] << " y: " << vectorOfPositions[1][1] << endmsg; - msg(MSG::DEBUG) << " Pix (1) x: " << allLocalPositions[0][0] << " +/- " << std::sqrt(allErrorMatrix[0](0, 0)) - << " y: " << allLocalPositions[0][1] << " +/- " << std::sqrt(allErrorMatrix[0](1, 1)) << endmsg; - msg(MSG::DEBUG) << " Pix (2) x: " << allLocalPositions[1][0] << " +/- " << std::sqrt(allErrorMatrix[1](0, 0)) - << " y: " << allLocalPositions[1][1] << " +/- " << std::sqrt(allErrorMatrix[1](1, 1)) << endmsg; - msg(MSG::DEBUG) << " Old (1) new (1) dist: " << std::sqrt(distancesq1) << " Old (1) new (2) " << std::sqrt(distancesq2) << - endmsg; - } + ATH_MSG_DEBUG( + " Old pix (1) x: " << vectorOfPositions[0][0] << " y: " << vectorOfPositions[0][1] << "\n" + << " Old pix (2) x: " << vectorOfPositions[1][0] << " y: " << vectorOfPositions[1][1] << "\n" + << " Pix (1) x: " << allLocalPositions[0][0] << " +/- " << std::sqrt(allErrorMatrix[0](0, 0)) + << " y: " << allLocalPositions[0][1] << " +/- " << std::sqrt(allErrorMatrix[0](1, 1)) <<"\n" + << " Pix (2) x: " << allLocalPositions[1][0] << " +/- " << std::sqrt(allErrorMatrix[1](0, 0)) + << " y: " << allLocalPositions[1][1] << " +/- " << std::sqrt(allErrorMatrix[1](1, 1)) << "\n" + << " Old (1) new (1) dist: " << std::sqrt(distancesq1) << " Old (1) new (2) " << std::sqrt(distancesq2) ); + if (distancesq1 < distancesq2) { finalposition = allLocalPositions[0]; diff --git a/InnerDetector/InDetRecTools/SiClusterizationTool/SiClusterizationTool/IPixelClusteringTool.h b/InnerDetector/InDetRecTools/SiClusterizationTool/SiClusterizationTool/IPixelClusteringTool.h index 10b4bcd75d37ec9b4bb6986bc05816401e967a48..f8e1d92eb70ec2cc68bf636f0de04b3b6647df12 100755 --- a/InnerDetector/InDetRecTools/SiClusterizationTool/SiClusterizationTool/IPixelClusteringTool.h +++ b/InnerDetector/InDetRecTools/SiClusterizationTool/SiClusterizationTool/IPixelClusteringTool.h @@ -2,61 +2,59 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -/////////////////////////////////////////////////////////////////// -// I_PixelClusteringTool.h -/////////////////////////////////////////////////////////////////// -// (c) ATLAS Detector software -/////////////////////////////////////////////////////////////////// -// Interface for pixel clustering algorithms, taking input from RDOs -/////////////////////////////////////////////////////////////////// - -#ifndef SICLUSTERIZATIONTOOL_IPIXELCLUSTERINGTOOL_H -#define SICLUSTERIZATIONTOOL_IPIXELCLUSTERINGTOOL_H - -#include "GaudiKernel/IAlgTool.h" - -#include "InDetRawData/InDetRawDataCollection.h" -#include "InDetRawData/PixelRDORawData.h" -// forward declare not possible (typedef) -#include "InDetPrepRawData/PixelClusterCollection.h" -// forward declare of this causes a compilation error (which I do not fully understand) -// in LazyOfflineSpacePointTool in a trigger package (T.L.) -#include "InDetConditionsSummaryService/IInDetConditionsSvc.h" - -//class PixelConditionsSummarySvc; -//template <class T> class ServiceHandle; - -class PixelID; - -namespace InDetDD -{ - class SiDetectorManager; -} - -namespace InDet -{ - - static const InterfaceID IID_IPixelClusteringTool("InDet::IPixelClusteringTool", 1, 0); - - class IPixelClusteringTool : virtual public IAlgTool - { - - public: - - virtual ~IPixelClusteringTool() {}; - virtual StatusCode initialize() = 0; - virtual StatusCode finalize() = 0; - - static const InterfaceID& interfaceID() { return IID_IPixelClusteringTool; }; - - // Clusterize a collection of pixel raw data objects - virtual PixelClusterCollection* clusterize - (const InDetRawDataCollection<PixelRDORawData> &RDOs, - const InDetDD::SiDetectorManager& manager, - const PixelID& idHelper) const = 0; - - }; - -} - -#endif // SICLUSTERIZATIONTOOL_I_PIXELCLUSTERINGALG_H +/////////////////////////////////////////////////////////////////// +// I_PixelClusteringTool.h +/////////////////////////////////////////////////////////////////// +// (c) ATLAS Detector software +/////////////////////////////////////////////////////////////////// +// Interface for pixel clustering algorithms, taking input from RDOs +/////////////////////////////////////////////////////////////////// + +#ifndef SICLUSTERIZATIONTOOL_IPIXELCLUSTERINGTOOL_H +#define SICLUSTERIZATIONTOOL_IPIXELCLUSTERINGTOOL_H + +#include "GaudiKernel/IAlgTool.h" + +#include "InDetRawData/InDetRawDataCollection.h" +#include "InDetRawData/PixelRDORawData.h" +// forward declare not possible (typedef) +#include "InDetPrepRawData/PixelClusterCollection.h" +// forward declare of this causes a compilation error (which I do not fully understand) +// in LazyOfflineSpacePointTool in a trigger package (T.L.) +#include "InDetConditionsSummaryService/IInDetConditionsSvc.h" + + +class PixelID; + +namespace InDetDD +{ + class SiDetectorManager; +} + +namespace InDet +{ + + static const InterfaceID IID_IPixelClusteringTool("InDet::IPixelClusteringTool", 1, 0); + + class IPixelClusteringTool : virtual public IAlgTool + { + + public: + + virtual ~IPixelClusteringTool() {}; + virtual StatusCode initialize() = 0; + virtual StatusCode finalize() = 0; + + static const InterfaceID& interfaceID() { return IID_IPixelClusteringTool; }; + + // Clusterize a collection of pixel raw data objects + virtual PixelClusterCollection* clusterize + (const InDetRawDataCollection<PixelRDORawData> &RDOs, + const InDetDD::SiDetectorManager& manager, + const PixelID& idHelper) const = 0; + + }; + +} + +#endif // SICLUSTERIZATIONTOOL_I_PIXELCLUSTERINGALG_H diff --git a/InnerDetector/InDetRecTools/SiClusterizationTool/src/MergedPixelsTool.cxx b/InnerDetector/InDetRecTools/SiClusterizationTool/src/MergedPixelsTool.cxx index 0742262e1c8d29e0a32da009bedf77dca97a57da..f82cb47659a70b74ef4e385026a02804d2b8b9df 100755 --- a/InnerDetector/InDetRecTools/SiClusterizationTool/src/MergedPixelsTool.cxx +++ b/InnerDetector/InDetRecTools/SiClusterizationTool/src/MergedPixelsTool.cxx @@ -18,7 +18,6 @@ #include "SiClusterizationTool/MergedPixelsTool.h" #include "GaudiKernel/ServiceHandle.h" -//#include "StoreGate/StoreGateSvc.h" #include "GaudiKernel/Incident.h" #include "Identifier/IdentifierHash.h" #include "InDetRawData/InDetRawDataCollection.h" @@ -116,47 +115,10 @@ namespace InDet { m_IBLParameterSvc->setBoolParameters(m_IBLAbsent,"IBLAbsent"); } - - //// Get an Identifier helper object - //sc = m_detStore.retrieve(); - //if(!sc.isSuccess()){ - // ATH_MSG_FATAL("Unable to retrieve detector store"); - //return StatusCode::FAILURE; - //} - //else { - // msg(MSG::DEBUG) << "DetectorStore service found" << endmsg; - //} - - //// Get the PixelID Helper - //if (m_detStore->retrieve(m_idHelper, "PixelID").isFailure()) { - // msg(MSG::FATAL) << "Could not get Pixel ID helper" << endmsg; - //return StatusCode::FAILURE; - //} - // for the cluster splitting - if (!m_splitProbTool.empty() && m_splitProbTool.retrieve().isFailure()) { - ATH_MSG_FATAL( "Could not retrieve the split probability tool " << m_splitProbTool << "'."); - return StatusCode::FAILURE; - } - if (!m_clusterSplitter.empty() && m_clusterSplitter.retrieve().isFailure()) { - ATH_MSG_FATAL( "Could not retrieve the cluster splitter '" << m_clusterSplitter << "'."); - return StatusCode::FAILURE; - } - - if (m_incidentSvc.retrieve().isFailure()){ - ATH_MSG_WARNING("Can not retrieve " << m_incidentSvc << ". Exiting."); - return StatusCode::FAILURE; - } - // register to the incident service: - // (a) BeginEvent needed for the recording of the Split ambiguity map (always need to be there for merging) -// m_incidentSvc->addListener( this, IncidentType::BeginEvent); - // (b) EndEvent needed for memory cleanup -// m_incidentSvc->addListener( this, IncidentType::EndEvent); - - if (m_pixofflinecalibSvc.retrieve().isFailure()){ - ATH_MSG_ERROR("Could not retrieve " << m_pixofflinecalibSvc); - return StatusCode::FAILURE; - } + ATH_CHECK(m_splitProbTool.retrieve( EnableTool{not m_splitProbTool.empty()})); + ATH_CHECK(m_clusterSplitter.retrieve( EnableTool{not m_clusterSplitter.empty()} )); + ATH_CHECK(m_pixofflinecalibSvc.retrieve()); if (m_minToT.size() != 7){ ATH_MSG_ERROR("Number of entries for ToT Cut is:" << m_minToT.size() << " . 7 Values are needed, so fix jO."); @@ -513,8 +475,14 @@ namespace InDet { ATH_MSG_VERBOSE( "--> Processing new splitCluster with n. " << splitClusterParts.size() << " subClusters. "); + const InDetDD::PixelModuleDesign* design (dynamic_cast<const InDetDD::PixelModuleDesign*>(&element->design())); + if (not design){ + ATH_MSG_ERROR("Dynamic cast failed at "<<__LINE__<<" of MergedPixelsTool.cxx."); + delete cluster; + delete clusterCollection; + return nullptr; + } for ( size_t iclus = 0 ; splitClusterPartsIter != splitClusterPartsIterEnd; ++splitClusterPartsIter, ++iclus ){ - const Amg::Vector2D& position=(*(*splitClusterPartsIter).localPosition()); const Amg::MatrixX& error=(*(*splitClusterPartsIter).errorMatrix()); const std::vector<int>& totGroup=(*splitClusterPartsIter).totGroup(); @@ -563,12 +531,7 @@ namespace InDet { colMax = col; } } - const InDetDD::PixelModuleDesign* design - (dynamic_cast<const InDetDD::PixelModuleDesign*>(&element->design())); - if (not design){ - ATH_MSG_ERROR("Dynamic cast failed at "<<__LINE__<<" of MergedPixelsTool.cxx."); - return nullptr; - } + int colWidth = colMax-colMin+1; int rowWidth = rowMax-rowMin+1; double etaWidth = design->widthFromColumnRange(colMin, colMax); diff --git a/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTools_xk.h b/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTools_xk.h index 9ffe946c03c67c4f67976216a9b0d203c5a947c0..2c9bd32c8898a1a295085773ca5e06853b261c16 100755 --- a/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTools_xk.h +++ b/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTools_xk.h @@ -34,9 +34,9 @@ namespace InDet{ public: SiTools_xk(); - SiTools_xk(const SiTools_xk&); + SiTools_xk(const SiTools_xk&) = default; ~SiTools_xk(); - SiTools_xk& operator = (const SiTools_xk&); + SiTools_xk& operator = (const SiTools_xk&) = default; /////////////////////////////////////////////////////////////////// // Main methods @@ -75,11 +75,8 @@ namespace InDet{ MagField::IMagFieldSvc* ); - void setTools - (const Trk::MagneticFieldProperties&); - + void setTools(const Trk::MagneticFieldProperties&); void setTools(IInDetConditionsTool*,IInDetConditionsTool*); - void setXi2pTmin(const double&,const double&,const double&,const double&); void setHolesClusters(const int&,const int&,const int&); void setAssociation(const int&); @@ -130,6 +127,7 @@ namespace InDet{ inline SiTools_xk::SiTools_xk() { m_assoTool = 0 ; + m_fieldService= 0 ; m_proptool = 0 ; m_updatortool = 0 ; m_riotool = 0 ; @@ -148,42 +146,10 @@ namespace InDet{ m_multitrack = false; m_bremnoise = false; m_electron = false; - m_fieldService= 0 ; + m_heavyion = false; } - inline SiTools_xk::SiTools_xk(const SiTools_xk& T) - { - *this = T; - } - inline SiTools_xk& SiTools_xk::operator = - (const SiTools_xk& T) - { - if(&T!=this) { - m_assoTool = T.m_assoTool ; - m_fieldtool = T.m_fieldtool ; - m_fieldService= T.m_fieldService; - m_proptool = T.m_proptool ; - m_updatortool = T.m_updatortool; - m_riotool = T.m_riotool ; - m_pixcond = T.m_pixcond ; - m_sctcond = T.m_sctcond ; - m_xi2max = T.m_xi2max ; - m_xi2maxBrem = T.m_xi2maxBrem ; - m_xi2maxlink = T.m_xi2maxlink ; - m_xi2multi = T.m_xi2multi ; - m_pTmin = T.m_pTmin ; - m_nholesmax = T.m_nholesmax ; - m_dholesmax = T.m_dholesmax ; - m_nclusmin = T.m_nclusmin ; - m_useassoTool = T.m_useassoTool; - m_multitrack = T.m_multitrack ; - m_bremnoise = T.m_bremnoise ; - m_electron = T.m_electron ; - m_heavyion = T.m_heavyion ; - } - return(*this); - } inline SiTools_xk::~SiTools_xk() {} diff --git a/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTrajectoryElement_xk.h b/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTrajectoryElement_xk.h index f5720d7f013b36e1ae4854da61f357260d4dd288..ce86080e791a6ba4bf406fada2e093de68fb9304 100755 --- a/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTrajectoryElement_xk.h +++ b/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/SiCombinatorialTrackFinderTool_xk/SiTrajectoryElement_xk.h @@ -16,7 +16,6 @@ #define SiTrajectoryElement_xk_H #include "InDetPrepRawData/SiClusterCollection.h" -#include "TrkTrack/TrackStateOnSurface.h" #include "TrkPatternParameters/PatternTrackParameters.h" #include "TrkPatternParameters/NoiseOnSurface.h" @@ -24,6 +23,9 @@ #include "SiCombinatorialTrackFinderTool_xk/SiClusterLink_xk.h" #include "SiCombinatorialTrackFinderTool_xk/SiDetElementBoundaryLink_xk.h" +#include "TrkTrack/TrackStateOnSurface.h" + + namespace InDet{ class SiTrajectoryElement_xk diff --git a/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/src/SiTrajectoryElement_xk.cxx b/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/src/SiTrajectoryElement_xk.cxx index dfda6f280504e8c1246ff2a873a3e78d49803caf..adc7fa4d43d949de9adf5dc151089db4260e2d11 100755 --- a/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/src/SiTrajectoryElement_xk.cxx +++ b/InnerDetector/InDetRecTools/SiCombinatorialTrackFinderTool_xk/src/SiTrajectoryElement_xk.cxx @@ -2,8 +2,6 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include <iostream> -#include <iomanip> #include "TrkSurfaces/PerigeeSurface.h" #include "TrkSurfaces/AnnulusBounds.h" @@ -15,6 +13,8 @@ #include "InDetRIO_OnTrack/PixelClusterOnTrack.h" #include "InDetRIO_OnTrack/SCT_ClusterOnTrack.h" +#include <stdexcept> +#include <math.h>//for sincos function /////////////////////////////////////////////////////////////////// // Set trajectory element @@ -28,7 +28,8 @@ bool InDet::SiTrajectoryElement_xk::set const InDet::SiCluster* si ) { - m_fieldMode = false; if(m_tools->fieldTool().magneticFieldMode()!=0) m_fieldMode = true; + m_fieldMode = false; + if(m_tools->fieldTool().magneticFieldMode()!=0) m_fieldMode = true; m_status = 0 ; m_detstatus = st ; m_ndist = 0 ; @@ -1457,18 +1458,16 @@ double InDet::SiTrajectoryElement_xk::quality(int& holes) const // to PlaneSurface Ta->pSu = Tb with step to surface calculation ///////////////////////////////////////////////////////////////////////////////// -bool InDet::SiTrajectoryElement_xk::propagate -(Trk::PatternTrackParameters & Ta, +bool +InDet::SiTrajectoryElement_xk::propagate(Trk::PatternTrackParameters & Ta, Trk::PatternTrackParameters & Tb, - double & S ) -{ - bool useJac = true; if(!Ta.iscovariance()) useJac = false; - - double P[64]; transformPlaneToGlobal(useJac,Ta,P); - + double & S ) { + bool useJac = true; + if(!Ta.iscovariance()) useJac = false; + double P[64]; + transformPlaneToGlobal(useJac,Ta,P); if( m_fieldMode) {if(!rungeKuttaToPlane (useJac,P)) return false;} else {if(!straightLineStepToPlane(useJac,P)) return false;} - S = P[45]; return transformGlobalToPlane(useJac,P,Ta,Tb); } @@ -1477,32 +1476,36 @@ bool InDet::SiTrajectoryElement_xk::propagate // to PlaneSurface Ta->pSu = Tb with step to surface calculation ///////////////////////////////////////////////////////////////////////////////// -bool InDet::SiTrajectoryElement_xk::propagateParameters -(Trk::PatternTrackParameters & Ta, - Trk::PatternTrackParameters & Tb, - double & S ) -{ +bool +InDet::SiTrajectoryElement_xk::propagateParameters(Trk::PatternTrackParameters & Ta, + Trk::PatternTrackParameters & Tb, double & S ) { bool useJac = false; - - double P[64]; transformPlaneToGlobal(useJac,Ta,P); - - if( m_fieldMode) {if(!rungeKuttaToPlane (useJac,P)) return false;} - else {if(!straightLineStepToPlane(useJac,P)) return false;} - - S = P[45]; return transformGlobalToPlane(useJac,P,Ta,Tb); + double P[64]; + transformPlaneToGlobal(useJac,Ta,P); + if( m_fieldMode) { + if(!rungeKuttaToPlane (useJac,P)) return false; + } else { + if(!straightLineStepToPlane(useJac,P)) return false; + } + S = P[45]; + return transformGlobalToPlane(useJac,P,Ta,Tb); } ///////////////////////////////////////////////////////////////////////////////// // Tramsform from plane to global ///////////////////////////////////////////////////////////////////////////////// -void InDet::SiTrajectoryElement_xk::transformPlaneToGlobal -(bool useJac,Trk::PatternTrackParameters& Tp,double* P) -{ - double Sf,Cf,Ce,Se; sincos(Tp.par()[2],&Sf,&Cf); sincos(Tp.par()[3],&Se,&Ce); - - const Amg::Transform3D& T = Tp.associatedSurface()->transform(); - +void InDet::SiTrajectoryElement_xk::transformPlaneToGlobal(bool useJac, + Trk::PatternTrackParameters& Tp,double* P) { + double Sf,Cf,Ce,Se; + sincos(Tp.par()[2],&Sf,&Cf); + sincos(Tp.par()[3],&Se,&Ce); + const auto pSurface=Tp.associatedSurface(); + if (not pSurface){ + throw(std::runtime_error("TrackParameters associated surface is null pointer in InDet::SiTrajectoryElement_xk::transformPlaneToGlobal")); + } + const Amg::Transform3D& T = pSurface->transform(); + double Ax[3] = {T(0,0),T(1,0),T(2,0)}; double Ay[3] = {T(0,1),T(1,1),T(2,1)}; diff --git a/InnerDetector/InDetRecTools/SiZvertexTool_xk/SiZvertexTool_xk/SiZvertexMaker_xk.h b/InnerDetector/InDetRecTools/SiZvertexTool_xk/SiZvertexTool_xk/SiZvertexMaker_xk.h index b42e20474aa6c27069c9b7664346f0a3b7441a89..8d0b9f046bd9276ec94703ef7a0c5e487bb106ee 100755 --- a/InnerDetector/InDetRecTools/SiZvertexTool_xk/SiZvertexTool_xk/SiZvertexMaker_xk.h +++ b/InnerDetector/InDetRecTools/SiZvertexTool_xk/SiZvertexTool_xk/SiZvertexMaker_xk.h @@ -15,11 +15,20 @@ #ifndef SiZvertexMaker_xk_H #define SiZvertexMaker_xk_H -#include <list> + #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" #include "InDetRecToolInterfaces/ISiZvertexMaker.h" #include "InDetRecToolInterfaces/ISiSpacePointsSeedMaker.h" +#include "Identifier/IdentifierHash.h" +#include <list> +#include <vector> +#include <iosfwd> + +namespace Trk{ + class Vertex; +} + class MsgStream; @@ -72,17 +81,17 @@ namespace InDet{ // Protected data and methods /////////////////////////////////////////////////////////////////// - int* m_histogram ; - double* m_z_histogram ; - int m_outputlevel ; - int m_nprint ; - int m_nspoint ; - int m_histsize ; - int m_mincontent ; - int m_maxcontent ; - double m_zmin ; - double m_zmax ; - double m_ratio ; + int* m_histogram{} ; + double* m_z_histogram{} ; + int m_outputlevel{} ; + int m_nprint {} ; + int m_nspoint{} ; + int m_histsize{} ; + int m_mincontent{} ; + int m_maxcontent{} ; + double m_zmin{} ; + double m_zmax {} ; + double m_ratio {} ; std::list<Trk::Vertex> m_vertex ; ToolHandle<InDet::ISiSpacePointsSeedMaker> m_seedsgenerator; diff --git a/InnerDetector/InDetRecTools/SiZvertexTool_xk/src/SiZvertexMaker_xk.cxx b/InnerDetector/InDetRecTools/SiZvertexTool_xk/src/SiZvertexMaker_xk.cxx index a8a54df87bec194ff513993c44799ca7259e9df2..8c2385afc4debad84c4707b21a96f52380453052 100755 --- a/InnerDetector/InDetRecTools/SiZvertexTool_xk/src/SiZvertexMaker_xk.cxx +++ b/InnerDetector/InDetRecTools/SiZvertexTool_xk/src/SiZvertexMaker_xk.cxx @@ -10,11 +10,13 @@ // Version 1.0 30/10/2004 I.Gavrilenko /////////////////////////////////////////////////////////////////// -#include <iostream> +#include <ostream> #include <iomanip> #include "SiZvertexTool_xk/SiZvertexMaker_xk.h" #include "SiSpacePointsSeed/SiSpacePointsSeed.h" +#include "VxVertex/Vertex.h" +#include <map> /////////////////////////////////////////////////////////////////// // Constructor diff --git a/InnerDetector/InDetRecTools/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadMaker_xk.h b/InnerDetector/InDetRecTools/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadMaker_xk.h index a25bbb328dc9e453af3b92a49f150f6abf43eda7..9a13c8aeb6ec382f63fd79d1efdcfd843358c576 100755 --- a/InnerDetector/InDetRecTools/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadMaker_xk.h +++ b/InnerDetector/InDetRecTools/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadTool_xk/TRT_DetElementsRoadMaker_xk.h @@ -16,8 +16,7 @@ #ifndef TRT_DetElementsRoadMaker_xk_H #define TRT_DetElementsRoadMaker_xk_H -#include <list> -#include <vector> + #include "GaudiKernel/ServiceHandle.h" #include "MagFieldInterfaces/IMagFieldSvc.h" @@ -33,6 +32,9 @@ #include "TrkSurfaces/CylinderBounds.h" #include "TRT_DetElementsRoadTool_xk/TRT_DetElementsLayer_xk.h" +#include <list> +#include <vector> +#include <iosfwd> class MsgStream; @@ -97,17 +99,17 @@ namespace InDet { /////////////////////////////////////////////////////////////////// ServiceHandle<MagField::IMagFieldSvc> m_fieldServiceHandle; - MagField::IMagFieldSvc* m_fieldService ; + MagField::IMagFieldSvc* m_fieldService{} ; ToolHandle<Trk::IPropagator> m_proptool ; // Propagator tool Trk::MagneticFieldProperties m_fieldprop; // Magnetic field properties - int m_outputlevel; - int m_nprint ; - int m_sizeroad ; - double m_zfield ; - float m_width ; // Width of the roadInnerDetector/InDetRecTools/ - double m_step ; // Max step allowed - double m_rminTRT ; + int m_outputlevel{}; + int m_nprint{} ; + int m_sizeroad{} ; + double m_zfield{} ; + float m_width{} ; // Width of the roadInnerDetector/InDetRecTools/ + double m_step{} ; // Max step allowed + double m_rminTRT{} ; Trk::CylinderBounds m_bounds ; // int m_map [3] ; std::vector<TRT_DetElementsLayer_xk> m_layer[3] ; // Layers diff --git a/InnerDetector/InDetSimEvent/InDetSimEvent/SiHit.h b/InnerDetector/InDetSimEvent/InDetSimEvent/SiHit.h index b00a10afe83bb71ff25b7845c1a0495e09eb2633..15acd0616814ee1528753b1979e5135d00bc315f 100755 --- a/InnerDetector/InDetSimEvent/InDetSimEvent/SiHit.h +++ b/InnerDetector/InDetSimEvent/InDetSimEvent/SiHit.h @@ -12,7 +12,6 @@ #ifndef INDETSIMEVENT_SIHIT_H #define INDETSIMEVENT_SIHIT_H -#include <iostream> // Data members classes #include "CLHEP/Geometry/Point3D.h" #include "GeneratorObjects/HepMcParticleLink.h" @@ -69,6 +68,13 @@ public: // Destructor: virtual ~SiHit(); //temporary make it virtual for Pool! + + //move assignment defaulted + SiHit & operator = (SiHit &&) = default; + //assignment defaulted + SiHit & operator = (const SiHit &) = default; + //copy c'tor defaulted + SiHit(const SiHit &) = default; /////////////////////////////////////////////////////////////////// // Const methods: @@ -137,14 +143,11 @@ public: /////////////////////////////////////////////////////////////////// private: - // HepGeom::Point3D<double> m_localStartPosition; // local start position of the hit - // HepGeom::Point3D<double> m_localEndPosition; // local end position of the hit float m_stX, m_stY, m_stZ; float m_enX, m_enY, m_enZ; float m_energyLoss; // deposited energy float m_meanTime; // time of energy deposition HepMcParticleLink m_partLink; - // int m_trackNumber; // number of track which released this energy unsigned int m_ID; public: enum diff --git a/InnerDetector/InDetSimEvent/InDetSimEvent/TRTUncompressedHit.h b/InnerDetector/InDetSimEvent/InDetSimEvent/TRTUncompressedHit.h index ca6c7ab1c1782901b203abb4ef043b29898c641b..3b22798c5846e3f96c8c4aca2cf961210bdb4fd2 100755 --- a/InnerDetector/InDetSimEvent/InDetSimEvent/TRTUncompressedHit.h +++ b/InnerDetector/InDetSimEvent/InDetSimEvent/TRTUncompressedHit.h @@ -26,6 +26,13 @@ public: // Destructor: FIXME POOL inline virtual ~TRTUncompressedHit() {}; + + //copy c'tor defaulted + TRTUncompressedHit(const TRTUncompressedHit &) = default; + //assignment defaulted + TRTUncompressedHit & operator = (const TRTUncompressedHit &) =default; + //move assignment defaulted + TRTUncompressedHit & operator = (TRTUncompressedHit &&) = default; bool operator < (const TRTUncompressedHit& obj) const {return m_hitID < obj.m_hitID;} diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/InDetTrigConversionFinder/TrigConversionFinder.h b/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/InDetTrigConversionFinder/TrigConversionFinder.h index 579a0c72248a68f345190ebebc516eb04f3cb059..8e52356ab72dcae295aba70ad239cb15de5300df 100755 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/InDetTrigConversionFinder/TrigConversionFinder.h +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/InDetTrigConversionFinder/TrigConversionFinder.h @@ -40,21 +40,21 @@ namespace InDet void analyzeResults(xAOD::VertexContainer*); protected: - int m_nTracks; - int m_nVertices; + int m_nTracks{}; + int m_nVertices{}; ToolHandle< IVertexFinder > m_VertexFinderTool; /** Statistics */ - long m_events_processed; //!< Number of events processed - long m_Gamma_stored; //!< Number of conversion vertices stored - long m_Double_Conversions; //!< Number of two-track conversions - long m_Single_Conversions; //!< Number of single-track conversions - long m_SiSi_Conversions; //!< Number of Si-Si track conversions - long m_SiTrt_Conversions; //!< Number of Si-TRT track conversions - long m_TrtTrt_Conversions; //!< Number of TRT-TRT track conversions - long m_Si_Conversions; //!< Number of Si single-track conversions - long m_Trt_Conversions; //!< Number of TRT single-track conversions + long m_events_processed{}; //!< Number of events processed + long m_Gamma_stored{}; //!< Number of conversion vertices stored + long m_Double_Conversions{}; //!< Number of two-track conversions + long m_Single_Conversions{}; //!< Number of single-track conversions + long m_SiSi_Conversions{}; //!< Number of Si-Si track conversions + long m_SiTrt_Conversions{}; //!< Number of Si-TRT track conversions + long m_TrtTrt_Conversions{}; //!< Number of TRT-TRT track conversions + long m_Si_Conversions{}; //!< Number of Si single-track conversions + long m_Trt_Conversions{}; //!< Number of TRT single-track conversions }; } diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/src/TrigConversionFinder.cxx b/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/src/TrigConversionFinder.cxx index 799a8fe33ef38454863a316c484e8b08dee147ba..a5417d547b6a08fa8044eb7389f67120d48d2475 100755 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/src/TrigConversionFinder.cxx +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigConversionFinder/src/TrigConversionFinder.cxx @@ -127,11 +127,9 @@ namespace InDet #endif // Find conversions - // virtual std::pair<xAOD::VertexContainer*, xAOD::VertexAuxContainer*> findVertex(const xAOD::TrackParticleContainer* trackParticles) = 0; std::pair <xAOD::VertexContainer*, xAOD::VertexAuxContainer*> foo; foo = m_VertexFinderTool->findVertex(TPC); InDetTrigConversionContainer = foo.first; - //delete tpBaseColl; } @@ -151,7 +149,12 @@ namespace InDet if(outputLevel <= MSG::DEBUG){ msg() << MSG::DEBUG << "Container recorded in StoreGate." << endmsg; - msg() << MSG::DEBUG << "REGTEST: Output conversion container size :" << InDetTrigConversionContainer->size() << endmsg; + if (InDetTrigConversionContainer){ + msg() << MSG::DEBUG << "REGTEST: Output conversion container size :" << InDetTrigConversionContainer->size() << endmsg; + } else { + msg() << MSG::DEBUG << "InDetTrigConversionContainer ptr is null at "<<__LINE__<<endmsg; + } + } return HLT::OK; @@ -178,6 +181,10 @@ namespace InDet const Trk::LinkToTrackParticleBase * linkToTrackPB = dynamic_cast<const Trk::LinkToTrackParticleBase *>(trLink); if(0!= linkToTrackPB){ if(linkToTrackPB->isValid()) tempTrk = linkToTrackPB->cachedElement(); + if (not tempTrk) { + msg() << MSG::ERROR<<"tempTrk ptr is null at "<<__LINE__<<endmsg; + continue; + } const Trk::TrackSummary* summary = tempTrk->trackSummary(); int ncl = summary->get(Trk::numberOfPixelHits) + summary->get(Trk::numberOfSCTHits); int ntrt = summary->get(Trk::numberOfTRTHits); @@ -190,7 +197,7 @@ namespace InDet if(ncl==0 && ntrt>0) isTrt2 = true; } }//end of dynamic_cast check - }//end of ITrackLink existance check + }//end of ITrackLink existence check } diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnv.cxx b/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnv.cxx index d8ee613d58b617ab3ba1239dfeeaf2756aa785ee..35835c0c0580b74ebaf843271dceffed7c0ec79c 100644 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnv.cxx +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnv.cxx @@ -40,6 +40,8 @@ namespace InDet : HLT::FexAlgo (name, pSvcLocator), m_particleCreatorTool("Trk::ParticleCreatorTool"), m_residualCalc("Trk::ResidualPullCalculator"), + m_idHelper{}, + m_pixelId{}, m_tracks(0), m_doIBLresidual(false), m_slice_name(""), @@ -258,7 +260,7 @@ namespace InDet tpCont->setStore( &tpAuxCont ); - if(m_tracks && runAlg) { + if(runAlg) { //m_tracks should not be checked here, it has been dereferenced already for(unsigned int idtr=0; idtr< m_tracks->size(); ++idtr) { const ElementLink<TrackCollection> trackLink(*m_tracks, idtr); diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnvMT.h b/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnvMT.h index 25819cb7c312ac48648d2ab3514b3510cf0659f3..d0db3be90d85f394eab0bf4a1cecf0b2a084464c 100644 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnvMT.h +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigParticleCreation/src/TrigTrackingxAODCnvMT.h @@ -32,8 +32,8 @@ #include "TrigInterfaces/FexAlgo.h" // STL -#include <map> #include <string> +#include <vector> class StoreGateSvc; class TH1F; @@ -73,17 +73,17 @@ namespace InDet private: ToolHandle< Trk::ITrackParticleCreatorTool > m_particleCreatorTool; ToolHandle< Trk::IResidualPullCalculator > m_residualCalc; - const AtlasDetectorID* m_idHelper; - const PixelID* m_pixelId; + const AtlasDetectorID* m_idHelper{}; + const PixelID* m_pixelId{}; - bool m_doIBLresidual; + bool m_doIBLresidual{}; //Monitoring std::string m_slice_name; - bool m_mon_doSliceSpecific; - int m_mon_counter; - int m_mon_prescale; - float m_mon_ptmin; + bool m_mon_doSliceSpecific{}; + int m_mon_counter{}; + int m_mon_prescale{}; + float m_mon_ptmin{}; //Common Variables std::vector<float> m_dqm_d0; std::vector<float> m_dqm_z0; @@ -96,33 +96,33 @@ namespace InDet std::vector<float> m_dqm_chi2dof; std::vector<float> m_dqm_eta_roi; std::vector<float> m_dqm_phi_roi; - double m_roiPhi, m_roiEta, m_roiZ; - double m_roiPhiWidth, m_roiEtaWidth, m_roiZ_Width; - int m_dqm_ntrkpart; - int m_dqm_ntrk; - int m_dqm_nvertex; + double m_roiPhi{}, m_roiEta{}, m_roiZ{}; + double m_roiPhiWidth{}, m_roiEtaWidth{}, m_roiZ_Width{}; + int m_dqm_ntrkpart{}; + int m_dqm_ntrk{}; + int m_dqm_nvertex{}; //Bjet - float m_dqm_bj_sumpt; + float m_dqm_bj_sumpt{}; //Muon - float m_dqm_mu_d0; - float m_dqm_mu_z0; - float m_dqm_mu_eta; - float m_dqm_mu_phi; - float m_dqm_mu_qOverP; - float m_dqm_mu_pt; - int m_dqm_mu_npix_hits; - int m_dqm_mu_nsct_hits; - int m_dqm_mu_ntrt_hits; - float m_dqm_mu_chi2dof; - float m_dqm_mu_eta_roi; - float m_dqm_mu_phi_roi; + float m_dqm_mu_d0{}; + float m_dqm_mu_z0{}; + float m_dqm_mu_eta{}; + float m_dqm_mu_phi{}; + float m_dqm_mu_qOverP{}; + float m_dqm_mu_pt{}; + int m_dqm_mu_npix_hits{}; + int m_dqm_mu_nsct_hits{}; + int m_dqm_mu_ntrt_hits{}; + float m_dqm_mu_chi2dof{}; + float m_dqm_mu_eta_roi{}; + float m_dqm_mu_phi_roi{}; //Tau std::vector<float> m_dqm_ta_roidr; - float m_dqm_ta_L_pt; //+++ pT of leading (L) pT track - float m_dqm_ta_frac_pt; //+++ fraction pT_L/pT_NL, NL= next-to-leading - float m_dqm_ta_sum_ch; //+++ Charge sum all tracks - float m_dqm_ta_asy_ch; //+++ Charge asymmetry all tracks - float m_dqm_ta_m; //+++ Inv mass all tracks + float m_dqm_ta_L_pt{}; //+++ pT of leading (L) pT track + float m_dqm_ta_frac_pt{}; //+++ fraction pT_L/pT_NL, NL= next-to-leading + float m_dqm_ta_sum_ch{}; //+++ Charge sum all tracks + float m_dqm_ta_asy_ch{}; //+++ Charge asymmetry all tracks + float m_dqm_ta_m{}; //+++ Inv mass all tracks // std::vector<float> m_dqm_ibl_z; //IBL coordinate along z @@ -130,11 +130,7 @@ namespace InDet std::vector<float> m_dqm_ibl_res_y; std::vector<float> m_dqm_ibl_hit_expected_found; - //Timers - //TrigTimer* m_timerMemAlloc; - //TrigTimer* m_timerFeatureAttach; - //TrigTimer* m_timerTrackConversion; - + SG::ReadHandleKey<TrigRoiDescriptorCollection> m_roiCollectionKey; SG::ReadHandleKey<TrackCollection> m_trackKey; diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association.h b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association.h index 9beda3c1d10a167d1bfc35d59938cd589d44a1fe..9c8e1a4f87e21b405df3923fa38ddde2064b38ec 100755 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association.h +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association.h @@ -11,6 +11,8 @@ //!< Trigger specific stuff #include "TrigTimeAlgs/TrigTimerSvc.h" #include "TrigInterfaces/FexAlgo.h" +#include <vector> +#include <iosfwd> namespace InDet { @@ -52,10 +54,10 @@ namespace InDet { std::vector<std::string> m_tracksName ; // Name of track collections ToolHandle<Trk::IPRD_AssociationTool> m_assoTool ; // Assotiation tool - int m_outputlevel ; + int m_outputlevel{} ; int m_tracksPRD[10]; int m_tracksPRDn[10]; - int m_nprint; + int m_nprint{}; bool m_istracks[10]; /////////////////////////////////////////////////////////////////// diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/src/InDetTrigTrackPRD_Association.cxx b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/src/InDetTrigTrackPRD_Association.cxx index 91f1dbd6dc8fd54c5271e2cdc09d39770aa04026..7e83fced9a7ec94a41152144fa191cfcd2aa8165 100755 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/src/InDetTrigTrackPRD_Association.cxx +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackPRD_Association/src/InDetTrigTrackPRD_Association.cxx @@ -5,6 +5,7 @@ #include "InDetTrigTrackPRD_Association/InDetTrigTrackPRD_Association.h" #include "TrkTrack/TrackCollection.h" #include "TrkTrack/Track.h" +#include <ostream> /////////////////////////////////////////////////////////////////// diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/InDetTrigTrackResidualMonitor/TrigTrackResidualMonitor.h b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/InDetTrigTrackResidualMonitor/TrigTrackResidualMonitor.h index f6215fc43bb096f1ba3a9b3fed5551f5ae3daa14..ba7c14465d50d1fdd24cd632f70893978f76b691 100644 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/InDetTrigTrackResidualMonitor/TrigTrackResidualMonitor.h +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/InDetTrigTrackResidualMonitor/TrigTrackResidualMonitor.h @@ -12,14 +12,10 @@ */ //////////////////////////////////////////////////////////////////////////// -#ifndef INDETTRIGTRACKSLIMMER_H -#define INDETTRIGTRACKSLIMMER_H +#ifndef TrigTrackResidualMonitor_H +#define TrigTrackResidualMonitor_H #include "GaudiKernel/ToolHandle.h" -#include "AthenaBaseComps/AthAlgTool.h" -#include "AthContainers/DataVector.h" -#include "GaudiKernel/ITHistSvc.h" - //typedef #include "TrkTrack/TrackCollection.h" @@ -27,21 +23,6 @@ //!< Trigger specific stuff #include "TrigInterfaces/FexAlgo.h" -#include "TrkParameters/TrackParameters.h" -#include "TrkToolInterfaces/IResidualPullCalculator.h" -#include "TrkEventPrimitives/TrackStateDefs.h" -#include "TrkEventPrimitives/FitQualityOnSurface.h" -#include "TrkTrack/TrackStateOnSurface.h" -#include "TrkValEvent/TrackStateData.h" -#include "Identifier/IdentifierHash.h" -#include "Identifier/Identifier.h" -#include "AtlasDetDescr/AtlasDetectorID.h" -#include "InDetPrepRawData/PixelClusterCollection.h" -#include "InDetPrepRawData/PixelClusterContainer.h" -#include "InDetReadoutGeometry/SCT_DetectorManager.h" -#include "InDetReadoutGeometry/PixelDetectorManager.h" -#include "InDetPrepRawData/SiClusterContainer.h" -#include "InDetPrepRawData/SCT_ClusterCollection.h" #include "TrkEventPrimitives/ParticleHypothesis.h" @@ -104,10 +85,10 @@ namespace InDet // tools - const AtlasDetectorID* m_idHelper; + const AtlasDetectorID* m_idHelper{}; - const PixelID* m_idHelperPixel; - const SCT_ID* m_idHelperSCT; + const PixelID* m_idHelperPixel{}; + const SCT_ID* m_idHelperSCT{}; @@ -129,8 +110,8 @@ namespace InDet ToolHandle<Trk::IResidualPullCalculator> m_residualPullCalculator; - const InDetDD::SCT_DetectorManager *m_SCT_Manager; - const InDetDD::PixelDetectorManager *m_Pixel_Manager; + const InDetDD::SCT_DetectorManager *m_SCT_Manager{}; + const InDetDD::PixelDetectorManager *m_Pixel_Manager{}; diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/src/TrigTrackResidualMonitor.cxx b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/src/TrigTrackResidualMonitor.cxx index 964b73a87de4aa035a0c837eaa69dac68f6e678e..ef74b8dd2da251fadfb9d74b65716269478aa575 100644 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/src/TrigTrackResidualMonitor.cxx +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigTrackResidualMonitor/src/TrigTrackResidualMonitor.cxx @@ -39,6 +39,9 @@ #include "TrkTrackSummaryTool/TrackSummaryTool.h" #include "TrkTrackSummary/TrackSummary.h" #include "TrkTrackSummary/MuonTrackSummary.h" +#include "InDetReadoutGeometry/SCT_DetectorManager.h" +#include "TrkToolInterfaces/IResidualPullCalculator.h" +#include "InDetReadoutGeometry/SiDetectorElement.h" namespace InDet { @@ -444,239 +447,243 @@ namespace InDet if (trkSum && npix >= 3 && nsct >= 6){ - const Trk::Perigee *trkPerig = track->perigeeParameters(); - double TrackPt = -1; - if(trkPerig){ - TrackPt = trkPerig->pT(); - m_TrackPt.push_back(TrackPt); - } - if (trkPerig->pT() > 5000){ - for( ; it!=itEnd; ++it ){ - tsos = *it; - if ((*it)->type(Trk::TrackStateOnSurface::Measurement) ){ - const Trk::MeasurementBase* mesb= - dynamic_cast <const Trk::MeasurementBase*>((*it)->measurementOnTrack()); - const Trk::TrackParameters* trackPars = (*it)->trackParameters(); - - const Trk::ResidualPull* resPullPixelBiased;// = 0; - const Trk::ResidualPull* resPullSCTBiased; //= 0; - - const Trk::ResidualPull* resPullPixelUnbiased;// = 0; - const Trk::ResidualPull* resPullSCTUnbiased; //= 0; - - int detType = 99; - - const Trk::MeasurementBase* mesh = (*it)->measurementOnTrack(); - const Trk::RIO_OnTrack* hitbec = dynamic_cast <const Trk::RIO_OnTrack*>(mesh); - const Identifier & hitIdbec = hitbec->identify(); - - - if (m_idHelper->is_pixel(hitIdbec)){ - detType = 0; - } - if (m_idHelper->is_sct(hitIdbec)) { - detType = 1; - } - - if((mesb) != 0 && (trackPars) !=0){ - const Trk::TrackParameters* TrackParams(0); - const Trk::TrackParameters* UnbiasedTrackParams(0); - const Trk::TrackParameters* PropagatedTrackParams(0); - const Trk::TrackParameters* OtherSideUnbiasedTrackParams(0); - const Trk::TrackParameters* PropagatedPixelUnbiasedTrackParams(0); - const Trk::TrackParameters* PixelUnbiasedTrackParams(0); - - const Trk::Surface* Surf = &(mesb->associatedSurface()); - const Identifier id = Surf->associatedDetectorElementIdentifier(); - - if ( id.is_valid()) { - int barrelECSCTUB = 99; - int barrelECSCTB = 99; - int barrelECPUB = 99; - int barrelECPB = 99; - if (detType == 1 ) { - // if (m_idHelperSCT->is_sct(id)) { //there's no TrueUnbiased for non-SCT (pixel) hits) - - // check if other module side was also hit and try to remove other hit as well - const Identifier& idbECSCTUB = m_idHelperSCT->wafer_id(hitIdbec); - barrelECSCTUB = m_idHelperSCT->barrel_ec(idbECSCTUB); - const Trk::TrackStateOnSurface* OtherModuleSideHit(0); - const Identifier& OtherModuleSideID = m_SCT_Manager->getDetectorElement(id)->otherSide()->identify(); - //const Trk::RIO_OnTrack* hit(0); - - for (const Trk::TrackStateOnSurface* TempTsos : *(*itResTrk)->trackStateOnSurfaces()) { - const Trk::RIO_OnTrack* hitOnTrack = dynamic_cast <const Trk::RIO_OnTrack*>(TempTsos->measurementOnTrack()); - //hit = hitOnTrack; - if (hitOnTrack != 0) { - const Identifier& trkID = hitOnTrack->identify(); - if (m_idHelperSCT->wafer_id(trkID) == OtherModuleSideID) { - OtherModuleSideHit = TempTsos; - } - } - } - - if (OtherModuleSideHit) { - if (OtherModuleSideHit->trackParameters()) { - OtherSideUnbiasedTrackParams = m_updator->removeFromState(*(OtherModuleSideHit->trackParameters()), - OtherModuleSideHit->measurementOnTrack()->localParameters(), - OtherModuleSideHit->measurementOnTrack()->localCovariance()); - - if (OtherSideUnbiasedTrackParams) { - const Trk::Surface* TempSurface = &(OtherModuleSideHit->measurementOnTrack()->associatedSurface()); - const Trk::MagneticFieldProperties* TempField = 0; - if (TempSurface){ - if (TempSurface->associatedLayer()){ - if (TempSurface->associatedLayer()->enclosingTrackingVolume()){ - TempField = dynamic_cast <const Trk::MagneticFieldProperties*>(TempSurface->associatedLayer()->enclosingTrackingVolume()); - } - } - } - - PropagatedTrackParams = m_propagator->propagate(*OtherSideUnbiasedTrackParams, - tsos->measurementOnTrack()->associatedSurface(), - Trk::anyDirection, false, - *TempField, - m_ParticleHypothesis); - - delete OtherSideUnbiasedTrackParams; - - UnbiasedTrackParams = m_updator->removeFromState(*PropagatedTrackParams, - tsos->measurementOnTrack()->localParameters(), - tsos->measurementOnTrack()->localCovariance()); - - delete PropagatedTrackParams; - if (UnbiasedTrackParams) { - TrackParams = UnbiasedTrackParams->clone(); - } - - resPullSCTUnbiased = m_residualPullCalculator->residualPull(mesb,TrackParams,Trk::ResidualPull::Unbiased); - if(barrelECSCTUB == 0) { // Barrel region - m_resSCTUnbiasedBarrel.push_back(resPullSCTUnbiased->residual()[Trk::loc1]); - m_pullSCTUnbiasedBarrel.push_back(resPullSCTUnbiased->pull()[Trk::loc1]); - } - else if (barrelECSCTUB == 2){ // EndCap A - m_resSCTUnbiasedEndCapA.push_back(resPullSCTUnbiased->residual()[Trk::loc1]); - m_pullSCTUnbiasedEndCapA.push_back(resPullSCTUnbiased->pull()[Trk::loc1]); - } - else if (barrelECSCTUB == -2 ) { // EndCap A - m_resSCTUnbiasedEndCapC.push_back(resPullSCTUnbiased->residual()[Trk::loc1]); - m_pullSCTUnbiasedEndCapC.push_back(resPullSCTUnbiased->pull()[Trk::loc1]); - } - delete UnbiasedTrackParams; - } - } - } - } // end of m_True Unbiased Loop - - - else if ( detType == 0 ) { - // else if (m_idHelperPixel->is_pixel(id) ) { - const Identifier& idbECPUB = m_idHelperPixel->wafer_id(hitIdbec); - barrelECPUB = m_idHelperPixel->barrel_ec(idbECPUB); - const Trk::TrackStateOnSurface* PixelSideHit(0); - PixelSideHit = *it; - - PropagatedPixelUnbiasedTrackParams = m_updator->removeFromState(*tsos->trackParameters(), - tsos->measurementOnTrack()->localParameters(), - tsos->measurementOnTrack()->localCovariance()); - // const Identifier& PixelID = m_Pixel_Manager->getDetectorElement(id)->identify(); - const Trk::Surface* TempSurfacePixel = &(PixelSideHit->measurementOnTrack()->associatedSurface()); - const Trk::MagneticFieldProperties* TempFieldPixel = 0; - - if (TempSurfacePixel){ - if (TempSurfacePixel->associatedLayer()){ - if (TempSurfacePixel->associatedLayer()->enclosingTrackingVolume()){ - TempFieldPixel = dynamic_cast <const Trk::MagneticFieldProperties*>(TempSurfacePixel->associatedLayer()->enclosingTrackingVolume()); - } - } - } - - PixelUnbiasedTrackParams = m_propagator->propagate(*PropagatedPixelUnbiasedTrackParams, - tsos->measurementOnTrack()->associatedSurface(), - Trk::anyDirection, false, - *TempFieldPixel, - m_ParticleHypothesis); - delete PropagatedPixelUnbiasedTrackParams; - - if (PixelUnbiasedTrackParams) { - TrackParams = PixelUnbiasedTrackParams->clone(); - } - - resPullPixelUnbiased = m_residualPullCalculator->residualPull(mesb,TrackParams,Trk::ResidualPull::Unbiased); - if (barrelECPUB == 0){ - m_resPixellocXUnbiasedBarrel.push_back(resPullPixelUnbiased->residual()[Trk::locX]); - m_resPixellocYUnbiasedBarrel.push_back(resPullPixelUnbiased->residual()[Trk::locY]); - m_pullPixellocXUnbiasedBarrel.push_back(resPullPixelUnbiased->pull()[Trk::locX]); - m_pullPixellocYUnbiasedBarrel.push_back(resPullPixelUnbiased->pull()[Trk::locY]); - } - else if (barrelECPUB == 2 ){ - m_resPixellocXUnbiasedEndCapA.push_back(resPullPixelUnbiased->residual()[Trk::locX]); - m_resPixellocYUnbiasedEndCapA.push_back(resPullPixelUnbiased->residual()[Trk::locY]); - m_pullPixellocXUnbiasedEndCapA.push_back(resPullPixelUnbiased->pull()[Trk::locX]); - m_pullPixellocYUnbiasedEndCapA.push_back(resPullPixelUnbiased->pull()[Trk::locY]); - } - else if (barrelECPUB == -2 ) { - m_resPixellocXUnbiasedEndCapC.push_back(resPullPixelUnbiased->residual()[Trk::locX]); - m_resPixellocYUnbiasedEndCapC.push_back(resPullPixelUnbiased->residual()[Trk::locY]); - m_pullPixellocXUnbiasedEndCapC.push_back(resPullPixelUnbiased->pull()[Trk::locX]); - m_pullPixellocYUnbiasedEndCapC.push_back(resPullPixelUnbiased->pull()[Trk::locY]); - } - } - - - if ( detType == 0 ){ - // if (m_idHelperPixel->is_pixel(id) ) { - const Identifier& idbECPB = m_idHelperPixel->wafer_id(hitIdbec); - barrelECPB = m_idHelperPixel->barrel_ec(idbECPB); - - resPullPixelBiased = m_residualPullCalculator->residualPull(mesb,trackPars,Trk::ResidualPull::Biased); - - if(barrelECPB == 0){ - m_resPixellocXBiasedBarrel.push_back(resPullPixelBiased->residual()[Trk::locX]); - m_resPixellocYBiasedBarrel.push_back(resPullPixelBiased->residual()[Trk::locY]); - m_pullPixellocXBiasedBarrel.push_back(resPullPixelBiased->pull()[Trk::locX]); - m_pullPixellocYBiasedBarrel.push_back(resPullPixelBiased->pull()[Trk::locY]); - } - else if (barrelECPB == 2 ){ - m_resPixellocXBiasedEndCapA.push_back(resPullPixelBiased->residual()[Trk::locX]); - m_resPixellocYBiasedEndCapA.push_back(resPullPixelBiased->residual()[Trk::locY]); - m_pullPixellocXBiasedEndCapA.push_back(resPullPixelBiased->pull()[Trk::locX]); - m_pullPixellocYBiasedEndCapA.push_back(resPullPixelBiased->pull()[Trk::locY]); - } - else if (barrelECPB == -2 ) { - m_resPixellocXBiasedEndCapC.push_back(resPullPixelBiased->residual()[Trk::locX]); - m_resPixellocYBiasedEndCapC.push_back(resPullPixelBiased->residual()[Trk::locY]); - m_pullPixellocXBiasedEndCapC.push_back(resPullPixelBiased->pull()[Trk::locX]); - m_pullPixellocYBiasedEndCapC.push_back(resPullPixelBiased->pull()[Trk::locY]); - } - - - } else if ( detType == 1 ) { - // } else if (m_idHelperSCT->is_sct(id)) { - const Identifier& idbECSCTB = m_idHelperSCT->wafer_id(hitIdbec); - barrelECSCTB = m_idHelperSCT->barrel_ec(idbECSCTB); - - resPullSCTBiased = m_residualPullCalculator->residualPull(mesb,trackPars,Trk::ResidualPull::Biased); - - if(barrelECSCTB == 0){ - m_resSCTBiasedBarrel.push_back(resPullSCTBiased->residual()[Trk::locX]); - m_pullSCTBiasedBarrel.push_back(resPullSCTBiased->pull()[Trk::locX]); - } - else if (barrelECSCTB == 2) { - m_resSCTBiasedEndCapA.push_back(resPullSCTBiased->residual()[Trk::locX]); - m_pullSCTBiasedEndCapA.push_back(resPullSCTBiased->pull()[Trk::locX]); - } - else if (barrelECSCTB == -2 ) { - m_resSCTBiasedEndCapC.push_back(resPullSCTBiased->residual()[Trk::locX]); - m_pullSCTBiasedEndCapC.push_back(resPullSCTBiased->pull()[Trk::locX]); - } - } - } // is_valid, for detector types - } // if loop, track parameters ! = 0 or trackPars !=0 - } // If loop Trk::measurement - } // end of for loop over trackStateOnSurfaces - } // end of the if loop for trkPerig->pT() - }// end of trkSum and npix and nsct + const Trk::Perigee *trkPerig = track->perigeeParameters(); + double TrackPt = -1; + if(trkPerig){ + TrackPt = trkPerig->pT(); + m_TrackPt.push_back(TrackPt); + if (trkPerig->pT() > 5000){ + for( ; it!=itEnd; ++it ){ + tsos = *it; + if ((*it)->type(Trk::TrackStateOnSurface::Measurement) ){ + const Trk::MeasurementBase* mesb=dynamic_cast <const Trk::MeasurementBase*>((*it)->measurementOnTrack()); + const Trk::TrackParameters* trackPars = (*it)->trackParameters(); + + const Trk::ResidualPull* resPullPixelBiased;// = 0; + const Trk::ResidualPull* resPullSCTBiased; //= 0; + + const Trk::ResidualPull* resPullPixelUnbiased;// = 0; + const Trk::ResidualPull* resPullSCTUnbiased; //= 0; + + int detType = 99; + + const Trk::MeasurementBase* mesh = (*it)->measurementOnTrack(); + const Trk::RIO_OnTrack* hitbec = dynamic_cast <const Trk::RIO_OnTrack*>(mesh); + if (not hitbec){ + msg() << MSG::WARNING << " Cast from MeasurementBase to RIO_OnTrack failed in line "<<__LINE__ << endmsg; + continue; + } + const Identifier & hitIdbec = hitbec->identify(); + + + if (m_idHelper->is_pixel(hitIdbec)){ + detType = 0; + } + if (m_idHelper->is_sct(hitIdbec)) { + detType = 1; + } + + if((mesb) != 0 && (trackPars) !=0){ + const Trk::TrackParameters* TrackParams(0); + const Trk::TrackParameters* UnbiasedTrackParams(0); + const Trk::TrackParameters* PropagatedTrackParams(0); + const Trk::TrackParameters* OtherSideUnbiasedTrackParams(0); + const Trk::TrackParameters* PropagatedPixelUnbiasedTrackParams(0); + const Trk::TrackParameters* PixelUnbiasedTrackParams(0); + + const Trk::Surface* Surf = &(mesb->associatedSurface()); + const Identifier id = Surf->associatedDetectorElementIdentifier(); + + if ( id.is_valid()) { + int barrelECSCTUB = 99; + int barrelECSCTB = 99; + int barrelECPUB = 99; + int barrelECPB = 99; + if (detType == 1 ) { + // if (m_idHelperSCT->is_sct(id)) { //there's no TrueUnbiased for non-SCT (pixel) hits) + + // check if other module side was also hit and try to remove other hit as well + const Identifier& idbECSCTUB = m_idHelperSCT->wafer_id(hitIdbec); + barrelECSCTUB = m_idHelperSCT->barrel_ec(idbECSCTUB); + const Trk::TrackStateOnSurface* OtherModuleSideHit(0); + const Identifier& OtherModuleSideID = m_SCT_Manager->getDetectorElement(id)->otherSide()->identify(); + //const Trk::RIO_OnTrack* hit(0); + + for (const Trk::TrackStateOnSurface* TempTsos : *(*itResTrk)->trackStateOnSurfaces()) { + const Trk::RIO_OnTrack* hitOnTrack = dynamic_cast <const Trk::RIO_OnTrack*>(TempTsos->measurementOnTrack()); + //hit = hitOnTrack; + if (hitOnTrack != 0) { + const Identifier& trkID = hitOnTrack->identify(); + if (m_idHelperSCT->wafer_id(trkID) == OtherModuleSideID) { + OtherModuleSideHit = TempTsos; + } + } + } + + if (OtherModuleSideHit) { + if (OtherModuleSideHit->trackParameters()) { + OtherSideUnbiasedTrackParams = m_updator->removeFromState(*(OtherModuleSideHit->trackParameters()), + OtherModuleSideHit->measurementOnTrack()->localParameters(), + OtherModuleSideHit->measurementOnTrack()->localCovariance()); + + if (OtherSideUnbiasedTrackParams) { + const Trk::Surface* TempSurface = &(OtherModuleSideHit->measurementOnTrack()->associatedSurface()); + const Trk::MagneticFieldProperties* TempField = 0; + if (TempSurface){ + if (TempSurface->associatedLayer()){ + if (TempSurface->associatedLayer()->enclosingTrackingVolume()){ + TempField = dynamic_cast <const Trk::MagneticFieldProperties*>(TempSurface->associatedLayer()->enclosingTrackingVolume()); + } + } + } + + PropagatedTrackParams = m_propagator->propagate(*OtherSideUnbiasedTrackParams, + tsos->measurementOnTrack()->associatedSurface(), + Trk::anyDirection, false, + *TempField, + m_ParticleHypothesis); + + delete OtherSideUnbiasedTrackParams; + + UnbiasedTrackParams = m_updator->removeFromState(*PropagatedTrackParams, + tsos->measurementOnTrack()->localParameters(), + tsos->measurementOnTrack()->localCovariance()); + + delete PropagatedTrackParams; + if (UnbiasedTrackParams) { + TrackParams = UnbiasedTrackParams->clone(); + } + + resPullSCTUnbiased = m_residualPullCalculator->residualPull(mesb,TrackParams,Trk::ResidualPull::Unbiased); + if(barrelECSCTUB == 0) { // Barrel region + m_resSCTUnbiasedBarrel.push_back(resPullSCTUnbiased->residual()[Trk::loc1]); + m_pullSCTUnbiasedBarrel.push_back(resPullSCTUnbiased->pull()[Trk::loc1]); + } + else if (barrelECSCTUB == 2){ // EndCap A + m_resSCTUnbiasedEndCapA.push_back(resPullSCTUnbiased->residual()[Trk::loc1]); + m_pullSCTUnbiasedEndCapA.push_back(resPullSCTUnbiased->pull()[Trk::loc1]); + } + else if (barrelECSCTUB == -2 ) { // EndCap A + m_resSCTUnbiasedEndCapC.push_back(resPullSCTUnbiased->residual()[Trk::loc1]); + m_pullSCTUnbiasedEndCapC.push_back(resPullSCTUnbiased->pull()[Trk::loc1]); + } + delete UnbiasedTrackParams; + } + } + } + } // end of m_True Unbiased Loop + + + else if ( detType == 0 ) { + // else if (m_idHelperPixel->is_pixel(id) ) { + const Identifier& idbECPUB = m_idHelperPixel->wafer_id(hitIdbec); + barrelECPUB = m_idHelperPixel->barrel_ec(idbECPUB); + const Trk::TrackStateOnSurface* PixelSideHit(0); + PixelSideHit = *it; + + PropagatedPixelUnbiasedTrackParams = m_updator->removeFromState(*tsos->trackParameters(), + tsos->measurementOnTrack()->localParameters(), + tsos->measurementOnTrack()->localCovariance()); + // const Identifier& PixelID = m_Pixel_Manager->getDetectorElement(id)->identify(); + const Trk::Surface* TempSurfacePixel = &(PixelSideHit->measurementOnTrack()->associatedSurface()); + const Trk::MagneticFieldProperties* TempFieldPixel = 0; + + if (TempSurfacePixel){ + if (TempSurfacePixel->associatedLayer()){ + if (TempSurfacePixel->associatedLayer()->enclosingTrackingVolume()){ + TempFieldPixel = dynamic_cast <const Trk::MagneticFieldProperties*>(TempSurfacePixel->associatedLayer()->enclosingTrackingVolume()); + } + } + } + + PixelUnbiasedTrackParams = m_propagator->propagate(*PropagatedPixelUnbiasedTrackParams, + tsos->measurementOnTrack()->associatedSurface(), + Trk::anyDirection, false, + *TempFieldPixel, + m_ParticleHypothesis); + delete PropagatedPixelUnbiasedTrackParams; + + if (PixelUnbiasedTrackParams) { + TrackParams = PixelUnbiasedTrackParams->clone(); + } + + resPullPixelUnbiased = m_residualPullCalculator->residualPull(mesb,TrackParams,Trk::ResidualPull::Unbiased); + if (barrelECPUB == 0){ + m_resPixellocXUnbiasedBarrel.push_back(resPullPixelUnbiased->residual()[Trk::locX]); + m_resPixellocYUnbiasedBarrel.push_back(resPullPixelUnbiased->residual()[Trk::locY]); + m_pullPixellocXUnbiasedBarrel.push_back(resPullPixelUnbiased->pull()[Trk::locX]); + m_pullPixellocYUnbiasedBarrel.push_back(resPullPixelUnbiased->pull()[Trk::locY]); + } + else if (barrelECPUB == 2 ){ + m_resPixellocXUnbiasedEndCapA.push_back(resPullPixelUnbiased->residual()[Trk::locX]); + m_resPixellocYUnbiasedEndCapA.push_back(resPullPixelUnbiased->residual()[Trk::locY]); + m_pullPixellocXUnbiasedEndCapA.push_back(resPullPixelUnbiased->pull()[Trk::locX]); + m_pullPixellocYUnbiasedEndCapA.push_back(resPullPixelUnbiased->pull()[Trk::locY]); + } + else if (barrelECPUB == -2 ) { + m_resPixellocXUnbiasedEndCapC.push_back(resPullPixelUnbiased->residual()[Trk::locX]); + m_resPixellocYUnbiasedEndCapC.push_back(resPullPixelUnbiased->residual()[Trk::locY]); + m_pullPixellocXUnbiasedEndCapC.push_back(resPullPixelUnbiased->pull()[Trk::locX]); + m_pullPixellocYUnbiasedEndCapC.push_back(resPullPixelUnbiased->pull()[Trk::locY]); + } + } + + + if ( detType == 0 ){ + // if (m_idHelperPixel->is_pixel(id) ) { + const Identifier& idbECPB = m_idHelperPixel->wafer_id(hitIdbec); + barrelECPB = m_idHelperPixel->barrel_ec(idbECPB); + + resPullPixelBiased = m_residualPullCalculator->residualPull(mesb,trackPars,Trk::ResidualPull::Biased); + + if(barrelECPB == 0){ + m_resPixellocXBiasedBarrel.push_back(resPullPixelBiased->residual()[Trk::locX]); + m_resPixellocYBiasedBarrel.push_back(resPullPixelBiased->residual()[Trk::locY]); + m_pullPixellocXBiasedBarrel.push_back(resPullPixelBiased->pull()[Trk::locX]); + m_pullPixellocYBiasedBarrel.push_back(resPullPixelBiased->pull()[Trk::locY]); + } + else if (barrelECPB == 2 ){ + m_resPixellocXBiasedEndCapA.push_back(resPullPixelBiased->residual()[Trk::locX]); + m_resPixellocYBiasedEndCapA.push_back(resPullPixelBiased->residual()[Trk::locY]); + m_pullPixellocXBiasedEndCapA.push_back(resPullPixelBiased->pull()[Trk::locX]); + m_pullPixellocYBiasedEndCapA.push_back(resPullPixelBiased->pull()[Trk::locY]); + } + else if (barrelECPB == -2 ) { + m_resPixellocXBiasedEndCapC.push_back(resPullPixelBiased->residual()[Trk::locX]); + m_resPixellocYBiasedEndCapC.push_back(resPullPixelBiased->residual()[Trk::locY]); + m_pullPixellocXBiasedEndCapC.push_back(resPullPixelBiased->pull()[Trk::locX]); + m_pullPixellocYBiasedEndCapC.push_back(resPullPixelBiased->pull()[Trk::locY]); + } + + + } else if ( detType == 1 ) { + // } else if (m_idHelperSCT->is_sct(id)) { + const Identifier& idbECSCTB = m_idHelperSCT->wafer_id(hitIdbec); + barrelECSCTB = m_idHelperSCT->barrel_ec(idbECSCTB); + + resPullSCTBiased = m_residualPullCalculator->residualPull(mesb,trackPars,Trk::ResidualPull::Biased); + + if(barrelECSCTB == 0){ + m_resSCTBiasedBarrel.push_back(resPullSCTBiased->residual()[Trk::locX]); + m_pullSCTBiasedBarrel.push_back(resPullSCTBiased->pull()[Trk::locX]); + } + else if (barrelECSCTB == 2) { + m_resSCTBiasedEndCapA.push_back(resPullSCTBiased->residual()[Trk::locX]); + m_pullSCTBiasedEndCapA.push_back(resPullSCTBiased->pull()[Trk::locX]); + } + else if (barrelECSCTB == -2 ) { + m_resSCTBiasedEndCapC.push_back(resPullSCTBiased->residual()[Trk::locX]); + m_pullSCTBiasedEndCapC.push_back(resPullSCTBiased->pull()[Trk::locX]); + } + } + } // is_valid, for detector types + } // if loop, track parameters ! = 0 or trackPars !=0 + } // If loop Trk::measurement + } // end of for loop over trackStateOnSurfaces + + } + }// end of the 'if trkPerig' + }//end of 'if trkSum and npix>=3 and nsct>=6 } // end of loop over all tracks diff --git a/InnerDetector/InDetTrigRecAlgs/InDetTrigVxSecondary/src/TrigVxSecondary.cxx b/InnerDetector/InDetTrigRecAlgs/InDetTrigVxSecondary/src/TrigVxSecondary.cxx index e65f6ecc5a672e6dcbf34d30a0c572e8e47c11b4..2b3573b554c5fb548cb371f0f7057754b688a84b 100644 --- a/InnerDetector/InDetTrigRecAlgs/InDetTrigVxSecondary/src/TrigVxSecondary.cxx +++ b/InnerDetector/InDetTrigRecAlgs/InDetTrigVxSecondary/src/TrigVxSecondary.cxx @@ -7,7 +7,6 @@ #include "InDetRecToolInterfaces/ISecVertexInJetFinder.h" #include "TrkTrack/TrackCollection.h" #include "TrkParameters/TrackParameters.h" -//#include "VxVertex/VxContainer.h" #include "GeoPrimitives/GeoPrimitives.h" #include "InDetBeamSpotService/IBeamCondSvc.h" #include "TrigInDetEvent/TrigVertexCollection.h" @@ -15,7 +14,6 @@ #include "IRegionSelector/IRegSelSvc.h" #include <sstream> #include <TLorentzVector.h> -//#include "xAODTracking/Vertex.h" #include "xAODBase/IParticle.h" #include "xAODTracking/TrackParticleContainer.h" @@ -378,84 +376,61 @@ namespace InDet { m_secVertexInfoContainer = new Trk::VxSecVertexInfoContainer; m_secVertexInfo = 0; - for(; itSecVtxFinders != itSecVtxFindersEnd; ++itSecVtxFinders) { - std::string vxAuthor = (*itSecVtxFinders).name(); - if(*itSecVtxFinders != 0) { - if(outputLevel <= MSG::DEBUG) - msg() << MSG::DEBUG << "Running " << vxAuthor << endmsg; - - xAOD::Vertex* vertex = new xAOD::Vertex(); - vertex->makePrivateStore(); - vertex->setPosition(bestFitPriVertex->position()); - vertex->setCovariancePosition(bestFitPriVertex->covariancePosition()); - vertex->setFitQuality(bestFitPriVertex->chiSquared(), bestFitPriVertex->numberDoF () ); - - std::vector<const xAOD::IParticle*> inputIParticles; - - xAOD::TrackParticleContainer::const_iterator trackIt = trackTES->begin(); - xAOD::TrackParticleContainer::const_iterator lastTrackIt = trackTES->end(); - - for(; trackIt != lastTrackIt; ++trackIt) - inputIParticles.push_back(*trackIt); - - m_secVertexInfo = (*itSecVtxFinders)->findSecVertex(*vertex, *m_jetDirection, inputIParticles); - - delete vertex; - - if(m_secVertexInfo == 0) { - if(outputLevel <= MSG::DEBUG) - msg() << MSG::DEBUG << vxAuthor << " returned null pointer (no vertex)" << endmsg; - continue; - } - else { - if (m_secVertexInfo->vertices().size()) { - m_secVertexInfo->vertices().front()->setVertexType((xAOD::VxType::VertexType)2); - } - m_secVertexInfoContainer->push_back(const_cast<Trk::VxSecVertexInfo*>(m_secVertexInfo)); - m_secVertexInfoContainer->back()->getSVOwnership(true); - m_nVxSecVertexInfo++; - } - - if(outputLevel <= MSG::DEBUG) { - msg() << MSG::DEBUG << vxAuthor << " returned " << m_secVertexInfo->vertices().size() << " vertices" << endmsg; - } - - //* for monitoring *// - - const Trk::VxSecVKalVertexInfo* secVKalVertexInfo = dynamic_cast<const Trk::VxSecVKalVertexInfo*>(m_secVertexInfo); - const std::vector<xAOD::Vertex_v1*> & myVertices = secVKalVertexInfo->vertices(); - if(myVertices.size()>0) { - m_secVtx_twoTrkTot = secVKalVertexInfo->n2trackvertices(); - m_secVtx_mass = secVKalVertexInfo->mass(); - m_secVtx_energy = secVKalVertexInfo->energyFraction(); - - std::vector<xAOD::Vertex_v1*>::const_iterator verticesIt=myVertices.begin(); - std::vector<xAOD::Vertex_v1*>::const_iterator verticesEnd=myVertices.end(); - - for( ; verticesIt!=verticesEnd ; ++verticesIt) { - - if(!(*verticesIt)) { - msg() << MSG::DEBUG << "Secondary vertex from InDetVKalVxInJet has zero pointer. Skipping this vtx.." << endmsg; - continue; - } - - msg() << MSG::DEBUG << "xAOD::Vertex at (" - << (*verticesIt)->position().x() << "," - << (*verticesIt)->position().y() << "," - << (*verticesIt)->position().z() << endmsg; - - std::vector<Trk::VxTrackAtVertex> tracksAtVertex = (*verticesIt)->vxTrackAtVertex(); - - if(tracksAtVertex.size()) - m_secVtx_numTrkSV = tracksAtVertex.size(); - } - } - - //std::vector<xAOD::Vertex*>::const_iterator vertexIt = m_secVertexInfo->vertices().begin(); - //std::vector<xAOD::Vertex*>::const_iterator lastVertexIt = m_secVertexInfo->vertices().end(); + if(outputLevel <= MSG::DEBUG) msg() << MSG::DEBUG << "Running " << vxAuthor << endmsg; + xAOD::Vertex* vertex = new xAOD::Vertex(); + vertex->makePrivateStore(); + vertex->setPosition(bestFitPriVertex->position()); + vertex->setCovariancePosition(bestFitPriVertex->covariancePosition()); + vertex->setFitQuality(bestFitPriVertex->chiSquared(), bestFitPriVertex->numberDoF () ); + std::vector<const xAOD::IParticle*> inputIParticles; + xAOD::TrackParticleContainer::const_iterator trackIt = trackTES->begin(); + xAOD::TrackParticleContainer::const_iterator lastTrackIt = trackTES->end(); + for(; trackIt != lastTrackIt; ++trackIt) inputIParticles.push_back(*trackIt); + m_secVertexInfo = (*itSecVtxFinders)->findSecVertex(*vertex, *m_jetDirection, inputIParticles); + delete vertex; + if(m_secVertexInfo == 0) { + if(outputLevel <= MSG::DEBUG) msg() << MSG::DEBUG << vxAuthor << " returned null pointer (no vertex)" << endmsg; + continue; + } else { + if (m_secVertexInfo->vertices().size()) { + m_secVertexInfo->vertices().front()->setVertexType((xAOD::VxType::VertexType)2); + } + m_secVertexInfoContainer->push_back(const_cast<Trk::VxSecVertexInfo*>(m_secVertexInfo)); + m_secVertexInfoContainer->back()->getSVOwnership(true); + m_nVxSecVertexInfo++; + } + if(outputLevel <= MSG::DEBUG) { + msg() << MSG::DEBUG << vxAuthor << " returned " << m_secVertexInfo->vertices().size() << " vertices" << endmsg; + } + // + //* for monitoring *// + const Trk::VxSecVKalVertexInfo* secVKalVertexInfo = dynamic_cast<const Trk::VxSecVKalVertexInfo*>(m_secVertexInfo); + if (secVKalVertexInfo){ + const std::vector<xAOD::Vertex_v1*> & myVertices = secVKalVertexInfo->vertices(); + if(not myVertices.empty()) { + m_secVtx_twoTrkTot = secVKalVertexInfo->n2trackvertices(); + m_secVtx_mass = secVKalVertexInfo->mass(); + m_secVtx_energy = secVKalVertexInfo->energyFraction(); + std::vector<xAOD::Vertex_v1*>::const_iterator verticesIt=myVertices.begin(); + std::vector<xAOD::Vertex_v1*>::const_iterator verticesEnd=myVertices.end(); + for( ; verticesIt!=verticesEnd ; ++verticesIt) { + if(!(*verticesIt)) { + msg() << MSG::DEBUG << "Secondary vertex from InDetVKalVxInJet has zero pointer. Skipping this vtx.." << endmsg; + continue; + } + msg() << MSG::DEBUG << "xAOD::Vertex at (" + << (*verticesIt)->position().x() << "," + << (*verticesIt)->position().y() << "," + << (*verticesIt)->position().z() << endmsg; + std::vector<Trk::VxTrackAtVertex> tracksAtVertex = (*verticesIt)->vxTrackAtVertex(); + if(not tracksAtVertex.empty()) + m_secVtx_numTrkSV = tracksAtVertex.size(); + } + } + } } } diff --git a/LArCalorimeter/LArCellRec/src/LArCellHVCorr.h b/LArCalorimeter/LArCellRec/src/LArCellHVCorr.h index 658c1d5e67155ec8d49ba9d6b72bcbcf489b735c..427f9453c35ff3bad0188c1447c33670dd5b7dc2 100644 --- a/LArCalorimeter/LArCellRec/src/LArCellHVCorr.h +++ b/LArCalorimeter/LArCellRec/src/LArCellHVCorr.h @@ -45,9 +45,9 @@ public: //Implements the ILArCellHVCorrTool interface virtual float getCorrection(const Identifier id) override; - StatusCode LoadCalibration(IOVSVC_CALLBACK_ARGS); + virtual StatusCode LoadCalibration(IOVSVC_CALLBACK_ARGS) override; - bool updateOnLastCallback() {return m_updateOnLastCallback;} + virtual bool updateOnLastCallback() override {return m_updateOnLastCallback;} private: float getCorrection(const Identifier id) const; diff --git a/LArCalorimeter/LArROD/python/LArRawChannelGetter.py b/LArCalorimeter/LArROD/python/LArRawChannelGetter.py index baeeb41647cda8441a85cb49df9602e86b507b7c..f268e0f807ccd79cf08fa32a1871daf424d69f7b 100755 --- a/LArCalorimeter/LArROD/python/LArRawChannelGetter.py +++ b/LArCalorimeter/LArROD/python/LArRawChannelGetter.py @@ -130,7 +130,7 @@ class LArRawChannelGetter ( Configured ) : # main method from database from LArROD.LArRODConf import LArRawChannelBuilderPedestalDataBase theLArRawChannelBuilderPedestalDataBase=LArRawChannelBuilderPedestalDataBase() - theLArRawChannelBuilderPedestalDataBase.LArPedestalKey = "Pedestal" + theLArRawChannelBuilderPedestalDataBase.LArPedestalKey = "LArPedestal" theLArRawChannelBuilder.PedestalTools = [theLArRawChannelBuilderPedestalDataBase] theLArRawChannelBuilder += theLArRawChannelBuilderPedestalDataBase diff --git a/LArCalorimeter/LArRawUtils/LArRawUtils/LArRoI_Map.h b/LArCalorimeter/LArRawUtils/LArRawUtils/LArRoI_Map.h index a4cd397a030d20454b81dff96fbc6b2af8c148b5..7598fd2b01270d2fbc254f67242e660f0cbd8c69 100755 --- a/LArCalorimeter/LArRawUtils/LArRawUtils/LArRoI_Map.h +++ b/LArCalorimeter/LArRawUtils/LArRawUtils/LArRoI_Map.h @@ -20,8 +20,9 @@ #include "AthenaBaseComps/AthAlgTool.h" #include <map> -class LArCablingService; -class CaloTriggerTowerService; +#include "LArCabling/LArCablingService.h" +#include "CaloTriggerTool/CaloTriggerTowerService.h" + class LArOnlineID ; class LArEM_ID ; class LArHEC_ID ; @@ -109,8 +110,9 @@ class LArRoI_Map : public AthAlgTool, ONLMAP m_onlmap; ROIMAP m_roimap; - LArCablingService* m_cablingSvc; - CaloTriggerTowerService* m_ttSvc; + + ToolHandle<LArCablingService> m_cablingSvc{ this, "CablingSvc", "LArCablingService", "LAr cabling tool"}; + ToolHandle<CaloTriggerTowerService> m_ttSvc{ this, "TriggerTowerSvc", "CaloTriggerTowerService", "Towers tool"}; bool m_print; bool m_loadAtBegin; @@ -121,7 +123,6 @@ class LArRoI_Map : public AthAlgTool, const LArEM_ID* m_em_id ; const LArHEC_ID* m_hec_id ; const LArFCAL_ID* m_fcal_id; - }; diff --git a/LArCalorimeter/LArRawUtils/src/LArRoI_Map.cxx b/LArCalorimeter/LArRawUtils/src/LArRoI_Map.cxx index 581755f150e51574fb5f5aff62cb4d448cb8891e..9e596263fdefd9f1952104c456a0aad611cdc022 100755 --- a/LArCalorimeter/LArRawUtils/src/LArRoI_Map.cxx +++ b/LArCalorimeter/LArRawUtils/src/LArRoI_Map.cxx @@ -14,9 +14,6 @@ #include "CaloIdentifier/CaloLVL1_ID.h" #include "LArIdentifier/LArOnlineID.h" -#include "LArCabling/LArCablingService.h" -#include "CaloTriggerTool/CaloTriggerTowerService.h" - #include "StoreGate/StoreGateSvc.h" #include "GaudiKernel/IIncidentSvc.h" @@ -62,8 +59,9 @@ StatusCode LArRoI_Map::initialize() ATH_CHECK( detStore()->retrieve(m_em_id) ); ATH_CHECK( detStore()->retrieve(m_hec_id) ); ATH_CHECK( detStore()->retrieve(m_fcal_id) ); - ATH_CHECK( toolSvc()->retrieveTool("LArCablingService",m_cablingSvc) ); - ATH_CHECK( toolSvc()->retrieveTool("CaloTriggerTowerService",m_ttSvc) ); + + ATH_CHECK( m_cablingSvc.retrieve() ); + ATH_CHECK( m_ttSvc.retrieve() ); ATH_CHECK( detStore()->regFcn(&LArCablingService::iovCallBack,&(*m_cablingSvc), &LArRoI_Map::iovCallBack, diff --git a/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfig.py b/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfig.py index 2b1b6b83a20596024eb8cc62f12f09a0e35742d6..afc22f0ba9929c0979f56156071647b510a0d7ca 100644 --- a/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfig.py +++ b/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfig.py @@ -12,6 +12,7 @@ def getMdtRdoToMdtDigit(name="MdtRdoToMdtDigitOverlay", **kwargs): kwargs.setdefault("EvtStore", overlayFlags.dataStore()) return CfgMgr.MuonRdoToMuonDigitTool(name, **kwargs) + def getRpcRdoToRpcDigit(name="RpcRdoToRpcDigitOverlay", **kwargs): kwargs.setdefault("DecodeMdtRDO", False) kwargs.setdefault("DecodeRpcRDO", True) @@ -22,6 +23,7 @@ def getRpcRdoToRpcDigit(name="RpcRdoToRpcDigitOverlay", **kwargs): kwargs.setdefault("EvtStore", overlayFlags.dataStore()) return CfgMgr.MuonRdoToMuonDigitTool(name, **kwargs) + def getTgcRdoToTgcDigit(name="TgcRdoToTgcDigitOverlay", **kwargs): kwargs.setdefault("DecodeMdtRDO", False) kwargs.setdefault("DecodeRpcRDO", False) @@ -31,3 +33,45 @@ def getTgcRdoToTgcDigit(name="TgcRdoToTgcDigitOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags kwargs.setdefault("EvtStore", overlayFlags.dataStore()) return CfgMgr.MuonRdoToMuonDigitTool(name, **kwargs) + + +def getSigMdtDigitToMdtRDO(name="SigMdtDigitToMdtRDO", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.evtStore()+"+MDT_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.evtStore()+"+MDTCSM") + return CfgMgr.MdtDigitToMdtRDO(name, **kwargs) + + +def getSigRpcDigitToRpcRDO(name="SigRpcDigitToRpcRDO", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.evtStore()+"+RPC_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.evtStore()+"+RPCPAD") + return CfgMgr.RpcDigitToRpcRDO(name, **kwargs) + + +def getSigTgcDigitToTgcRDO(name="SigTgcDigitToTgcRDO", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.evtStore()+"+TGC_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.evtStore()+"+TGCRDO") + return CfgMgr.TgcDigitToTgcRDO(name, **kwargs) + + +def getOverlayMdtDigitToMdtRDO(name="OverlayMdtDigitToMdtRDO", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.outputStore()+"+MDT_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.outputStore()+"+MDTCSM") + return CfgMgr.MdtDigitToMdtRDO(name, **kwargs) + + +def getOverlayRpcDigitToRpcRDO(name="OverlayRpcDigitToRpcRDO", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.outputStore()+"+RPC_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.outputStore()+"+RPCPAD") + return CfgMgr.RpcDigitToRpcRDO(name, **kwargs) + + +def getOverlayTgcDigitToTgcRDO(name="OverlayTgcDigitToTgcRDO", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.outputStore()+"+TGC_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.outputStore()+"+TGCRDO") + return CfgMgr.TgcDigitToTgcRDO(name, **kwargs) diff --git a/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfigDb.py b/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfigDb.py index afb48cb4bb26787e799833b963091e5a5b15ee22..671cef55eadf61e2218790a217ede48c941f7c32 100644 --- a/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfigDb.py +++ b/MuonSpectrometer/MuonCnv/MuonByteStreamCnvTest/python/MuonByteStreamCnvTestConfigDb.py @@ -1,8 +1,14 @@ # Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -from AthenaCommon.CfgGetter import addTool +from AthenaCommon.CfgGetter import addTool, addAlgorithm addTool("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getMdtRdoToMdtDigit", "MdtRdoToMdtDigitOverlay") addTool("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getRpcRdoToRpcDigit", "RpcRdoToRpcDigitOverlay") addTool("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getTgcRdoToTgcDigit", "TgcRdoToTgcDigitOverlay") +addAlgorithm("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getSigMdtDigitToMdtRDO" , "SigMdtDigitToMdtRDO") +addAlgorithm("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getSigRpcDigitToRpcRDO" , "SigRpcDigitToRpcRDO") +addAlgorithm("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getSigTgcDigitToTgcRDO" , "SigTgcDigitToTgcRDO") +addAlgorithm("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getOverlayMdtDigitToMdtRDO" , "OverlayMdtDigitToMdtRDO") +addAlgorithm("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getOverlayRpcDigitToRpcRDO" , "OverlayRpcDigitToRpcRDO") +addAlgorithm("MuonByteStreamCnvTest.MuonByteStreamCnvTestConfig.getOverlayTgcDigitToTgcRDO" , "OverlayTgcDigitToTgcRDO") diff --git a/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvConfig.py b/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvConfig.py index cbe83911a1fca50c9b4e0600dbd0d377dd3d6fe6..7da4b5df2d0bed3bcee9bce52e9fc96d41354314 100644 --- a/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvConfig.py +++ b/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvConfig.py @@ -1,31 +1,46 @@ -# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration -def CscDigitToCscRDOTool(name,**kwargs): - - from Digitization.DigitizationFlags import digitizationFlags - +def BaseCscDigitToCscRDOTool(name,**kwargs): kwargs.setdefault("NumSamples", 4) kwargs.setdefault("Latency", 0) + from Digitization.DigitizationFlags import digitizationFlags kwargs.setdefault("addNoise", digitizationFlags.doMuonNoise()) kwargs.setdefault("RndmSvc", digitizationFlags.rndmSvc.get_Value()) kwargs.setdefault("cscCalibTool", "CscCalibTool") + from AthenaCommon import CfgMgr + return CfgMgr.CscDigitToCscRDOTool(name,**kwargs) +def CscDigitToCscRDOTool(name,**kwargs): + from Digitization.DigitizationFlags import digitizationFlags digitizationFlags.rndmSeedList.addSeed("CscDigitToCscRDOTool", 49261510, 105132394 ) - - from AthenaCommon.GlobalFlags import globalflags - if globalflags.isOverlay(): - from OverlayCommonAlgs.OverlayFlags import overlayFlags - kwargs.setdefault("InputObjectName",overlayFlags.dataStore()+"+CSC_DIGITS") - kwargs.setdefault("OutputObjectName",overlayFlags.dataStore()+"+CSCRDO") - kwargs.setdefault("EvtStore", overlayFlags.dataStore()) + return BaseCscDigitToCscRDOTool(name,**kwargs) - from AthenaCommon import CfgMgr - return CfgMgr.CscDigitToCscRDOTool(name,**kwargs) +def CscDigitToCscRDOTool2(name,**kwargs): + # consider a separate random number stream + #from Digitization.DigitizationFlags import digitizationFlags + #digitizationFlags.rndmSeedList.addSeed("CscDigitToCscRDOTool2", 49261510, 105132394 ) + #kwargs.setdefault("RndmEngine","CscDigitToCscRDOTool2") + kwargs.setdefault("NumSamples", 2) + kwargs.setdefault("addNoise", False) + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.evtStore()+"+CSC_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.evtStore()+"+CSCRDO") + return BaseCscDigitToCscRDOTool(name,**kwargs) -def CscDigitToCscRDO(name,**kwargs): +def CscDigitToCscRDOTool4(name,**kwargs): + # consider a separate random number stream + #from Digitization.DigitizationFlags import digitizationFlags + #digitizationFlags.rndmSeedList.addSeed("CscDigitToCscRDOTool4", 49261510, 105132394 ) + #kwargs.setdefault("RndmEngine","CscDigitToCscRDOTool4") + kwargs.setdefault("NumSamples", 4) + kwargs.setdefault("addNoise", False) + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputObjectName",overlayFlags.evtStore()+"+CSC_DIGITS") + kwargs.setdefault("OutputObjectName",overlayFlags.evtStore()+"+CSCRDO") + return BaseCscDigitToCscRDOTool(name,**kwargs) +def CscDigitToCscRDO(name,**kwargs): kwargs.setdefault("CscDigitToRDOTool", "CscDigitToCscRDOTool") - from AthenaCommon import CfgMgr return CfgMgr.CscDigitToCscRDO(name,**kwargs) diff --git a/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvExampleConfigDb.py b/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvExampleConfigDb.py index 245c93346cdf1252c82759e990b59d51fc5a717c..7629a530c6303760497b518f64cc445823e6c7e7 100644 --- a/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvExampleConfigDb.py +++ b/MuonSpectrometer/MuonCnv/MuonCnvExample/python/MuonCnvExampleConfigDb.py @@ -36,5 +36,7 @@ addService( "MuonCnvExample.MuonCalibConfig.MdtCalibrationSvc", "MdtCalibrationS # Tools/algorithms/services from MuonCnvExample.MuonCnvConfig ################################################################################ addTool( "MuonCnvExample.MuonCnvConfig.CscDigitToCscRDOTool", "CscDigitToCscRDOTool" ) +addTool( "MuonCnvExample.MuonCnvConfig.CscDigitToCscRDOTool2", "CscDigitToCscRDOTool2" ) +addTool( "MuonCnvExample.MuonCnvConfig.CscDigitToCscRDOTool4", "CscDigitToCscRDOTool4" ) addAlgorithm( "MuonCnvExample.MuonCnvConfig.CscDigitToCscRDO", "CscDigitToCscRDO" ) diff --git a/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfig.py b/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfig.py index 9108258af348d5d931b450c3c418df005761835d..c733688fd8f68f4f72eb3bb6a4c7ece7e700edc8 100644 --- a/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfig.py +++ b/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfig.py @@ -53,3 +53,11 @@ def CscDigitizationTool(name="CscDigitizationTool", **kwargs): kwargs.setdefault("IncludePileUpTruth", False) return CfgMgr.CscDigitizationTool(name, **kwargs) + +def Csc_OverlayDigitizationTool(name="Csc_OverlayDigitizationTool",**kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("EvtStore", overlayFlags.evtStore()) + kwargs.setdefault("OutputObjectName",overlayFlags.evtStore()+"+CSC_DIGITS") + if not overlayFlags.isDataOverlay(): + kwargs.setdefault("CSCSimDataCollectionOutputName",overlayFlags.evtStore()+"+CSC_SDO") + return CscDigitizationTool(name,**kwargs) diff --git a/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfigDb.py b/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfigDb.py index 182c996c10113052d4f0a56aee39c91881c3d66a..f79021dbd8de8c614d082728720e8d5a5578bb45 100644 --- a/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfigDb.py +++ b/MuonSpectrometer/MuonDigitization/CSC_Digitization/python/CSC_DigitizationConfigDb.py @@ -3,4 +3,5 @@ from AthenaCommon.CfgGetter import addTool addTool("CSC_Digitization.CSC_DigitizationConfig.CscDigitizationTool" , "CscDigitizationTool") +addTool("CSC_Digitization.CSC_DigitizationConfig.Csc_OverlayDigitizationTool" , "Csc_OverlayDigitizationTool") addTool("CSC_Digitization.CSC_DigitizationConfig.getCscRange" , "CscRange") diff --git a/MuonSpectrometer/MuonG4/NSW_Sim/data/NSW_StationDescription.xml b/MuonSpectrometer/MuonG4/NSW_Sim/data/NSW_StationDescription.xml index cd500edbfdfb2502290cdd1b47f2864a67c85615..e18b0f1be4b35f91ecef2c10bd94c208d322416f 120000 --- a/MuonSpectrometer/MuonG4/NSW_Sim/data/NSW_StationDescription.xml +++ b/MuonSpectrometer/MuonG4/NSW_Sim/data/NSW_StationDescription.xml @@ -1 +1 @@ -stations.v1.79.xml \ No newline at end of file +stations.v1.80.xml \ No newline at end of file diff --git a/MuonSpectrometer/MuonG4/NSW_Sim/data/stations.v1.80.xml b/MuonSpectrometer/MuonG4/NSW_Sim/data/stations.v1.80.xml new file mode 100644 index 0000000000000000000000000000000000000000..3c8910709bdd6a3112293fcae6a4b339142d8e04 --- /dev/null +++ b/MuonSpectrometer/MuonG4/NSW_Sim/data/stations.v1.80.xml @@ -0,0 +1,325 @@ +<?xml version="1.0" encoding="UTF-8"?> +<AGDD> + +<section name="NSW_Parameters" version="1" top_volume="useless" date="December 16 2014" author="S.Chen" > +<!-- Global variables--> +<var name="NSW_NbrOfLayers" value="4"/> +<var name="NSW_NbrOfDriftPcb" value="3"/> +<var name="NSW_NbrOfROPcb" value="2"/> +</section> + +<section name="NSW_sTGC_Parameters" version="13.7" top_volume="useless" date=" June 30, 2016 " author="Daniel Lellouch"> +<!-- ================ Global Variables ================= --> + +<!-- Thickness of a quadruplet --> +<var name="NSW_sTGC_Tck" value="49.34"/> +<!-- Gas Gap inside one layer --> +<var name="NSW_sTGC_GasTck" value="2.85"/> +<!-- G10 thickness per layer --> +<var name="NSW_sTGC_pcbTck" value="3"/> +<!-- Number of layers in a quaduplet --> +<var name="NSW_sTGC_NbrOfLayers" value="4"/> +<!-- Wire pitch --> +<var name="NSW_sTGC_WirePitch" value="1.8"/> +<!-- Strip pitch --> +<var name="NSW_sTGC_StripPitch" value="3.2"/> +<!-- Strip width --> +<var name="NSW_sTGC_StripWidth" value="2.7"/> +<!-- Width of G10 frame besides gas volume --> +<var name="NSW_sTGC_SideFrame" value="28.5"/> +<!-- Width of G10 frame in base w/o capacitor --> +<var name="NSW_sTGC_hFrameNoCapacitor" value="11"/> +<!-- Width of G10 frame in base with capacitor --> +<var name="NSW_sTGC_hFrameCapacitor" value="14"/> +<!-- Opening (in degrees) of trapezes in small wedges --> +<var name="NSW_sTGC_SmallOpening" value="17"/> +<!-- Opening (in degrees) of trapezes in large wedges --> +<var name="NSW_sTGC_LargeOpening" value="28"/> +<!-- Z center of small Pivot --> +<var name="NSW_sTGC_ZSmallPivot" value="7344"/> +<!-- Z center of small Confirm --> +<var name="NSW_sTGC_ZSmallConfirm" value="7010"/> +<!-- Z center of Large Pivot --> +<var name="NSW_sTGC_ZLargePivot" value="7474"/> +<!-- Z center of Large Confirm --> +<var name="NSW_sTGC_ZLargeConfirm" value="7808"/> +<!-- Z of each volume, relative to center of quadruplet --> +<array name="NSW_sTGC_LayerDeltaZ" values="-16.45;-5.48;5.49;16.46"/> +<!-- Side of the Pad readout --> +<array name="NSW_sTGC_PadSide" values="-1;1;-1;1"/> +<!-- Side of the Strip readout --> +<array name="NSW_sTGC_StripSide" values="1;-1;1;-1"/> +</section> + +<!-- ================ sTGC ========================= --> + + +<section name="NewSmallWheels_sTGC" version="22.1" top_volume="useless" date=" June 22, 2018 " author="Daniel Lellouch"> + +<composition name="NSW_sTGC"> + +<sTGC_Tech type="sTGC_1" geometryLevel="1" nLayers="NSW_sTGC_NbrOfLayers" gasTck="NSW_sTGC_GasTck" pcbTck="NSW_sTGC_pcbTck" Tck="NSW_sTGC_Tck" f4="NSW_sTGC_hFrameNoCapacitor" f5="NSW_sTGC_hFrameNoCapacitor" f6="NSW_sTGC_SideFrame"/> + +<!-- ================ small Pivot ========================= --> + +<sTGC type="sTG1-QS1P" tech="sTGC_1" subType="QS1P" sWidth="346.93" lWidth="743.15" Length="1325.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="279.32" lPadWidth="667.18" padH="80;80;80.24;80.24" rankPadPhi="4;3;2;1" nPadPhi="4;4;3;3" anglePadPhi="5" firstPadPhiDivision_C="-5;-5;-2.5;-2.5" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-5;-5;-2.5;-2.5" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="17;17;17;17" firstPadH="65.8;65.8;28.61;28.61" firstPadRow="1;1;1;1" sStripWidth="293.48" lStripWidth="681.33" wireCutout="802.8;829.8;856.8;883.8" nWires="371;370;370;370" firstWire="-333;-331.65;-332.55;-332.1" wireGroupWidth="20" nStrips="406" firstTriggerBand="3;3;3;3" nTriggerBands="28;28;28;28" firstStripInTrigger="44;44;44;44" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13; 12;13;12;13;12;13;10" StripsInBandsLayer2="12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;13;12; 13;12;13;12;13;12;10" StripsInBandsLayer3="12;13;12;13;12;13;12;13;13;12;13;12;13;12;13;12;13;12;13;12;13;12; 13;12;13;13;12;13;8" StripsInBandsLayer4="12;13;12;13;12;13;13;12;13;12;13;12;13;12;13;13;12;13;12;13;12;13; 12;13;12;13;13;12;8" nWireGroups="19;20;19;19" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QS1P" type="ENDCAP" chamberType="sTGS" radius="1563" zPos="NSW_sTGC_ZSmallPivot" phi0="22.5"/> + +<sTGC type="sTG1-QS2P" tech="sTGC_1" subType="QS2P" sWidth="746.14" lWidth="1102.25" Length="1191.4" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="677.64" lPadWidth="1026.28" padH="80;80;80.24;80.24" rankPadPhi="2;1;4;3" nPadPhi="2;2;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="0;0;-3.75;-3.75" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="0;0;-3.75;-3.75" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="15;15;15;15" firstPadH="93.2;93.2;60.09;60.09" firstPadRow="18;18;18;18" sStripWidth="691.8" lStripWidth="1040.43" wireCutout="0;0;0;0" nWires="569;570;570;570" firstWire="-511.2;-511.65;-512.55;-512.1" wireGroupWidth="20" nStrips="365" firstTriggerBand="34;34;34;34" nTriggerBands="30;30;30;30" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="4;13;12;13;12;13;12;13;12;12; 12;13;12;12;13;12;13;12;13;12; 13;12;13;12;;12;13;12;13;11" StripsInBandsLayer2="5;12;13;12;13;12;13;12;13;13; 13;12;13;12;13;12;13;12;13;12; 13;12;13;12;13;12;13;12;13;10" StripsInBandsLayer3="5;12;13;12;13;12;13;12;13;13; 13;12;13;12;13;12;13;12;13;12; 13;12;13;12;13;12;13;12;13;10" StripsInBandsLayer4="7;12;13;12;13;12;13;13;12;12; 12;13;12;13;12;13;13;12;13;12; 13;12;13;12;13;12;13;13;12;7" nWireGroups="29;30;29;29" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QS2P" type="ENDCAP" chamberType="sTGS" radius="2831.5" zPos="NSW_sTGC_ZSmallPivot" phi0="22.5"/> + +<sTGC type="sTG1-QS3P" tech="sTGC_1" subType="QS3P" sWidth="1105.96" lWidth="1406.59" Length="1005.8" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1037.46" lPadWidth="1330.62" padH="80;80;80.24;80.24" rankPadPhi="2;1;4;3" nPadPhi="2;2;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="0;0;-3.75;-3.75" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="0;0;-3.75;-3.75" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="12;12;13;13" firstPadH="89.4;89.4;59.88;59.88" firstPadRow="33;33;33;33" sStripWidth="1051.61" lStripWidth="1344.78" wireCutout="0;0;0;0" nWires="739;739;739;738" firstWire="-664.2;-664.65;-663.75;-663.3" wireGroupWidth="20" nStrips="307" firstTriggerBand="64;64;64;64" nTriggerBands="26;26;25;25" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="3;12;13;12;13;12;13;12;13;13; 13;12;13;12;13;12;12;13;12;13; 12;13;12;13;12;5" StripsInBandsLayer2="6;12;13;12;13;13;12;13;12;12; 12;13;12;13;12;13;12;13;12;13; 13;12;13;12;13;3" StripsInBandsLayer3="6;12;13;12;13;13;12;13;12;12; 12;13;12;13;12;13;12;13;12;13; 12;13;12;13;13" StripsInBandsLayer4="7;13;12;13;12;13;12;13;12;12; 12;13;13;12;13;12;13;12;13;12; 13;12;13;13;11" nWireGroups="37;38;38;38" firstWireGroup="20;14;10;3"/> +</sTGC> + +<chamberPosition volume="sTG1-QS3P" type="ENDCAP" chamberType="sTGS" radius="3942.5" zPos="NSW_sTGC_ZSmallPivot" phi0="22.5"/> + + +<!-- ================ small confirm =============== --> + +<sTGC type="sTG1-QS1C" tech="sTGC_1" subType="QS1C" sWidth="346.93" lWidth="743.15" Length="1325.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="293.48" lPadWidth="681.33" padH="76.35;76.35;76.59;76.59" rankPadPhi="1;4;2;3" nPadPhi="4;4;4;4" anglePadPhi="5" firstPadPhiDivision_C="-3.75;-6.25;-3.75;-6.25" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-6.25;-3.75;-6.25;-3.75" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="17;17;18;18" firstPadH="78.4;78.4;43.21;43.21" firstPadRow="2;2;2;2" sStripWidth="293.48" lStripWidth="681.33" wireCutout="883.8;856.8;829.8;802.8" nWires="370;370;370;371" firstWire="-332.1;-331.65;-332.55;-333" wireGroupWidth="20" nStrips="406" firstTriggerBand="5;5;5;5" nTriggerBands="32;32;31;31" firstStripInTrigger="44;44;44;44" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="12;12;12;11;12;12;12;12;12;12; 12;12;12;12;12;12;11;12;12;12; 12;12;12;12;12;12;12;12;11;12;12;12" StripsInBandsLayer2="12;12;12;12;11;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 11;12;12;12;12;12;12;12;12;12;12;11" StripsInBandsLayer3="12;12;12;12;11;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12;11;10" StripsInBandsLayer4="12;12;12;12;12;12;12;12;11; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12;12;9" nWireGroups="20;19;19;19" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QS1C" type="ENDCAP" chamberType="sTGS" radius="1563" zPos="NSW_sTGC_ZSmallConfirm" phi0="22.5"/> + +<sTGC type="sTG1-QS2C" tech="sTGC_1" subType="QS2C" sWidth="746.14" lWidth="1102.25" Length="1191.4" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="691.8" lPadWidth="1040.43" padH="76.35;76.35;76.59;76.59" rankPadPhi="3;2;4;1" nPadPhi="3;3;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-1.87;-5.62;-1.87" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-1.87;-5.62;-1.87;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="16;16;15;15" firstPadH="43.8;43.8;89.29;89.29" firstPadRow="19;19;20;20" sStripWidth="691.8" lStripWidth="1040.43" wireCutout="0;0;0;0" nWires="570;570;570;569" firstWire="-512.1;-511.65;-512.55;-511.2" wireGroupWidth="20" nStrips="365" firstTriggerBand="64;64;64;64" nTriggerBands="31;31;31;31" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="2;12;12;12;11;12;12;12;12;12;12; 12;12;12;12;12;11;12;12;12;12; 12;12;12;12;12;12;12;12;11;12" StripsInBandsLayer2="12;12;12;12;12;12;12;12;12;12;12; 12;12;12;11;12;12;12;12;12;12; ;12;12;12;12;12;12;12;12;12" StripsInBandsLayer3="2;12;12;12;12;12;12;12;12;12;12; 12;12;12;11;12;12;12;12;12;12; ;12;12;12;12;12;12;12;12;12" StripsInBandsLayer4="5;12;11;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12" nWireGroups="30;29;29;29" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QS2C" type="ENDCAP" chamberType="sTGS" radius="2831.5" zPos="NSW_sTGC_ZSmallConfirm" phi0="22.5"/> + +<sTGC type="sTG1-QS3C" tech="sTGC_1" subType="QS3C" sWidth="1105.96" lWidth="1406.59" Length="1005.8" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1051.61" lPadWidth="1344.78" padH="76.35;76.35;76.59;76.59" rankPadPhi="3;2;4;1" nPadPhi="3;3;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-1.87;-5.62;-1.87" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-1.87;-5.62;-1.87;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="13;13;14;14" firstPadH="61.66;61.66;34.38;34.38" firstPadRow="35;35;35;35" sStripWidth="1051.61" lStripWidth="1344.78" wireCutout="0;0;0;0" nWires="738;739;739;739" firstWire="-663.3;-664.65;-663.75;-664.2" wireGroupWidth="20" nStrips="307" firstTriggerBand="37;37;37;37" nTriggerBands="26;26;25;25" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="6;7;12;12;12;12;12;12;11;11; 12;12;12;12;12;12;12;12;12;12; 12;11;12;13;12;12" StripsInBandsLayer2="2;10;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;13;12" StripsInBandsLayer3="2;10;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;13;13" StripsInBandsLayer4="1;12;12;12;12;12;12;11;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;13;11" nWireGroups="38;38;38;38" firstWireGroup="5;14;15;3"/> +</sTGC> + +<chamberPosition volume="sTG1-QS3C" type="ENDCAP" chamberType="sTGS" radius="3942.5" zPos="NSW_sTGC_ZSmallConfirm" phi0="22.5"/> + + +<!-- ================ Large Pivot ==================== --> + +<sTGC type="sTG1-QL1P" tech="sTGC_1" subType="QL1P" sWidth="542.61" lWidth="1206.82" Length="1332" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="476.42" lPadWidth="1126.66" padH="81.42;81.42;81.66;81.66" rankPadPhi="4;3;2;1" nPadPhi="6;6;7;7" anglePadPhi="5" firstPadPhiDivision_C="-10;-10;-12.5;-12.5" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-10;-10;-12.5;-12.5" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="17;17;16;16" firstPadH="54.39;54.39;98.15;98.15" firstPadRow="1;1;2;2" sStripWidth="490.84" lStripWidth="1141.09" wireCutout="808;835;862;889" nWires="621;620;620;620" firstWire="-558;-556.65;-557.55;-557.1" wireGroupWidth="20" nStrips="408" firstTriggerBand="3;3;3;3" nTriggerBands="30;30;30;30" firstStripInTrigger="45;45;45;45" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="13;13;12;13;13;13;12;13;13;12;13;13;13;12;13;13;12;13;13;13;12;13; 13;12;13;13;13;12;13;13" StripsInBandsLayer2="13;13;12;13;13;13;12;13;13;13;12;13;13;12;13;13;13;12;13;13;13;12; 13;13;12;13;13;13;12;13" StripsInBandsLayer3="13;13;12;13;13;13;12;13;13;13;12;13;13;13;12;13;13;13;12;13;13;13; 12;13;13;13;12;13;13;13" StripsInBandsLayer4="13;13;12;13;13;13;13;12;13;13;13;12;13;13;13;12;13;13;13;13;12;13; 13;13;12;13;13;13;12;13" nWireGroups="32;32;32;32" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QL1P" type="ENDCAP" chamberType="sTGL" radius="1595" zPos="NSW_sTGC_ZLargePivot" phi0="0.0"/> + +<sTGC type="sTG1-QL2P" tech="sTGC_1" subType="QL2P" sWidth="1211.81" lWidth="1807.5" Length="1194.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1144.12" lPadWidth="1727.34" padH="81.42;81.42;81.66;81.66" rankPadPhi="2;1;4;3" nPadPhi="4;4;5;5" anglePadPhi="7.5" firstPadPhiDivision_C="-7.5;-7.5;-11.25;-11.25" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-7.5;-7.5;-11.25;-11.25" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="14;14;15;15" firstPadH="99.51;99.51;65.69;65.69" firstPadRow="18;18;18;18" sStripWidth="490.84" lStripWidth="1141.09" wireCutout="0;0;0;0" nWires="953;954;954;954" firstWire="-856.8;-857.25;-858.15;-857.7" wireGroupWidth="20" nStrips="366" firstTriggerBand="33;33;33;33" nTriggerBands="30;30;30;29" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="9;6;12;13;13;12;13;13;13;12;13;13;1313;13;13;13;12;13;13;12;13;13;13; 12;13;13;12;13;13;13" StripsInBandsLayer2="9;6;13;13;12;13;13;13;12;13;13;12;1213;13;13;12;13;13;13;12;13;13;13; 12;13;13;12;13;13;13" StripsInBandsLayer3="7;8;12;13;13;13;12;13;13;13;12;13;1313;13;12;13;13;13;12;13;13;13;12; 13;13;13;12;13;13;13" StripsInBandsLayer4="7;8;13;13;13;12;13;13;13;12;13;13;1313;13;12;13;13;13;12;13;13;13;12; 13;13;13;12;13;13" nWireGroups="48;49;49;48" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QL2P" type="ENDCAP" chamberType="sTGL" radius="2868.3" zPos="NSW_sTGC_ZLargePivot" phi0="0.0"/> + +<sTGC type="sTG1-QL3P" tech="sTGC_1" subType="QL3P" sWidth="1813.68" lWidth="2111" Length="1153" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="545.3" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode="539.26"> + +<sTGC_readout sPadWidth="1745.99" lPadWidth="2054" padH="81.42;81.42;81.66;81.66" + rankPadPhi="2;1;4;3" nPadPhi="4;4;5;5" anglePadPhi="7.5" firstPadPhiDivision_C="-7.5;-7.5;-11.25;-11.25" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-7.5;-7.5;-11.25;-11.25" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="15;15;14;14" firstPadH="32.38;32.38;83.57;83.57" firstPadRow="32;32;33;33" sStripWidth="1760.42" lStripWidth="2054" wireCutout="0;0;0;0" nWires="1133;1134;1134;1134" firstWire="-1018.8;-1019.25;-1019.7;-1019.7" wireGroupWidth="20" nStrips="353" firstTriggerBand="63;63;63;62" nTriggerBands="28;28;28;29" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="10;13;12;13;13;12;13;13;13; 12;13;13;12;13;13;12;13;13;13; 12;13;13;12;13;13;13;12;13" StripsInBandsLayer2="11;13;12;13;13;13;12;13;13; 12;13;13;13;12;13;13;13;12;13; 13;13;12;13;13;12;13;13;11" StripsInBandsLayer3="13;13;13;12;13;13;13;12;13; 13;13;12;13;13;13;12;13;13;13; 12;13;13;13;12;13;13;13;8" StripsInBandsLayer4="1;13;13;13;12;13;13;13;13;12; 13;13;13;12;13;13;13;12;13;13; 13;13;12;13;13;13;12;13;7" nWireGroups="57;58;58;57" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QL3P" type="ENDCAP" chamberType="sTGL" radius="4054.5" zPos="NSW_sTGC_ZLargePivot" phi0="0.0"/> + +<!-- =============== Large Confirm ===================== --> + +<sTGC type="sTG1-QL1C" tech="sTGC_1" subType="QL1C" sWidth="542.61" lWidth="1206.82" Length="1332" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="490.84" lPadWidth="1141.09" padH="85.07;85.07;85.31;85.31" rankPadPhi="4;3;2;1" nPadPhi="6;6;6;6" anglePadPhi="5" firstPadPhiDivision_C="-8.75;-11.25;-8.75;-11.25" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-11.25;-8.75;-11.25;-8.75" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="16;16;16;16" firstPadH="77.79;77.79;38.01;38.01" firstPadRow="1;1;1;1" sStripWidth="490.84" lStripWidth="1141.09" wireCutout="889;862;835;808" nWires="620;620;620;621" firstWire="-557.1;-556.65;-557.55;-558" wireGroupWidth="20" nStrips="408" firstTriggerBand="3;3;3;3" nTriggerBands="29;29;28;28" firstStripInTrigger="44;44;44;44" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="13;13;13;14;13;13;14;13;13;13; 14;13;13;14;13;13;13;14;13;13; 13;14;13;13;14;13;13;13" StripsInBandsLayer2="13;13;13;14;13;13;14;13;13;14; 13;13;13;14;13;13;14;13;13;14; 13;13;13;14;13;13;14;13" StripsInBandsLayer3="14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;13;14;13; 13;13;14;13;13;14;13;13" StripsInBandsLayer4="14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;13;14;13; 14;13;13;14;13;13;14;13" nWireGroups="32;32;32;32" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QL1C" type="ENDCAP" chamberType="sTGL" radius="1595" zPos="NSW_sTGC_ZLargeConfirm" phi0="0.0"/> + +<sTGC type="sTG1-QL2C" tech="sTGC_1" subType="QL2C" sWidth="1211.81" lWidth="1807.5" Length="1194.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1158.55" lPadWidth="1741.77" padH="85.07;85.07;85.31;85.31" rankPadPhi="3;2;4;1" nPadPhi="4;4;4;4" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-9.37;-5.62;-9.37" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-9.37;-5.62;-9.37;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="14;14;14;14" firstPadH="99.84;99.84;63.9;63.9" firstPadRow="17;17;17;17" sStripWidth="1158.55" lStripWidth="1741.77" wireCutout="0;0;0;0" nWires="954;954;954;953" firstWire="-857.7;-857.25;-858.15;-856.8" wireGroupWidth="20" nStrips="366" firstTriggerBand="30;30;30;30" nTriggerBands="29;29;29;29" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="12;5;13;13;13;14;13;13;14;13; 13;13;14;13;13;14;13;13;13;14; 13;13;14;13;13;13;14;13;13" StripsInBandsLayer2="11;5;13;14;13;13;14;13;13;13; 14;13;13;14;13;13;14;13;13;14; 13;13;13;14;13;13;14;13;13" StripsInBandsLayer3="10;7;13;13;14;13;13;14;13;13; 13;14;13;13;14;13;13;14;13;13; 14;13;13;14;13;13;14;13;13" StripsInBandsLayer4="9;7;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;14;13;13; 14;13;13;14;13;13;14;13;12" nWireGroups="49;49;48;48" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QL2C" type="ENDCAP" chamberType="sTGL" radius="2868.3" zPos="NSW_sTGC_ZLargeConfirm" phi0="0.0"/> + +<sTGC type="sTG1-QL3C" tech="sTGC_1" subType="QL3C" sWidth="1813.68" lWidth="2111" Length="1153" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="545.3" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode="539.26"> + +<sTGC_readout sPadWidth="1760.42" lPadWidth="2054" padH="85.07;85.07;85.31;85.31" rankPadPhi="3;2;4;1" nPadPhi="4;4;4;4" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-9.37;-5.62;-9.37" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-9.37;-5.62;-9.37;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="13;13;14;14" firstPadH="83.76;83.76;51.17;51.17" firstPadRow="31;31;31;31" sStripWidth="1760.42" lStripWidth="2054" wireCutout="0;0;0;0" nWires="1134;1134;1134;1133" firstWire="-1019.7;-1019.25;-1020.15;-1018.8" wireGroupWidth="20" nStrips="353" firstTriggerBand="60;60;60;60" nTriggerBands="28;28;28;28" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="3;13;13;13;13;14;13;13;14;13;13; 13;14;13;13;14;13;13;13;14;13; 13;13;14;13;13;14;8" StripsInBandsLayer2="2;14;13;13;14;13;13;13;14;13;13; 14;13;13;14;13;13;13;14;13;13; 14;13;13;14;13;13;7" StripsInBandsLayer3="2;14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;13;14;13;13;14; 13;13;14;13;13;14;4" StripsInBandsLayer4="3;14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;13;14;13; 13;14;13;13;14;13;3" nWireGroups="58;58;57;57" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QL3C" type="ENDCAP" chamberType="sTGL" radius="4054.5" zPos="NSW_sTGC_ZLargeConfirm" phi0="0.0"/> + +</composition> +</section> + + +<!-- ========== MicroMegas ============================== --> + +<section name="NSW_MM_Parameters" version="1" top_volume="useless" date="December 16 2014" author="S.Chen" > + +<!-- Frames. "f1": frame width close to the trapezium large side. "f2": frame width close to the trapezium small side. "f3": frame width close to the trapezium oblique side --> + +<!-- Distance from IP, labeled zmin_MM in Parameter Book --> +<var name="NSW_MM_LM_distanceFromIP" value="7536"/> +<var name="NSW_MM_SM_distanceFromIP" value="7072"/> +<!-- Thickness of Multilayer and the subcomponent (mm)--> +<var name="NSW_MM_GasTck" value="5.04"/> +<var name="NSW_MM_ROPcbTck" value="11.69"/> +<var name="NSW_MM_DriftPcbTck" value="11.284"/> +<var name="NSW_MM_MultilayerTck" value="NSW_NbrOfLayers* NSW_MM_GasTck + (NSW_NbrOfDriftPcb) * NSW_MM_DriftPcbTck+ ( NSW_NbrOfROPcb) * NSW_MM_ROPcbTck" /> <!-- Thickness of one multilayer --> + +<!-- Large sector modules (LM1" LM2). Modules are all trapezoid. ""Height"": radial envelope" ""base/top Width"": upper/lower side of the trapezoid--> +<var name="NSW_MM_LM1_InnerRadius" value="923" /> +<var name="NSW_MM_LM1_Length" value="2310" /> +<var name="NSW_MM_LM1_outerRadius" value="NSW_MM_LM1_InnerRadius+NSW_MM_LM1_Length" /> +<var name="NSW_MM_LM1_f1" value="30"/> +<var name="NSW_MM_LM1_f2" value="30"/> +<var name="NSW_MM_LM1_f3" value="100"/> +<var name="NSW_MM_LMGap_Length" value="5" /> <!-- Radial gap between LM1 and LM2 --> +<var name="NSW_MM_LM2_InnerRadius" value="NSW_MM_LM1_outerRadius+NSW_MM_LMGap_Length" /> +<var name="NSW_MM_LM2_Length" value="1410" /> +<var name="NSW_MM_LM2_outerRadius" value="NSW_MM_LM2_InnerRadius+NSW_MM_LM2_Length" /> +<var name="NSW_MM_LM1_baseWidth" value="640" /> +<var name="NSW_MM_LM1_topWidth" value="2008.5" /> +<var name="NSW_MM_LM2_baseWidth" value="2022.8" /> +<var name="NSW_MM_LM2_topWidth" value="2220" /> +<var name="NSW_MM_LM2_f1" value="30"/> +<var name="NSW_MM_LM2_f2" value="30"/> +<var name="NSW_MM_LM2_f3" value="100"/> +<!-- Small sector modules (SM1" SM2). Modules are all trapezoids. ""Height"": radial envelope" ""base/top Width"": upper/lower side --> +<var name="NSW_MM_SM1_InnerRadius" value="895" /> +<var name="NSW_MM_SM1_Length" value="2210" /> +<var name="NSW_MM_SM1_outerRadius" value="NSW_MM_SM1_InnerRadius+NSW_MM_SM1_Length" /> +<var name="NSW_MM_SMGap_Length" value="5" /> <!-- Radial gap between SM1 and SM2 --> +<var name="NSW_MM_SM1_f1" value="30"/> +<var name="NSW_MM_SM1_f2" value="30"/> +<var name="NSW_MM_SM1_f3" value="100"/> +<var name="NSW_MM_SM2_InnerRadius" value="NSW_MM_SM1_outerRadius+NSW_MM_SMGap_Length" /> +<var name="NSW_MM_SM2_Length" value="1350" /> +<var name="NSW_MM_SM2_outerRadius" value="NSW_MM_SM2_InnerRadius+NSW_MM_SM2_Length" /> +<var name="NSW_MM_SM1_baseWidth" value="500" /> +<var name="NSW_MM_SM1_topWidth" value="1319.2" /> +<var name="NSW_MM_SM2_baseWidth" value="1321.1" /> +<var name="NSW_MM_SM2_topWidth" value="1821.5" /> +<var name="NSW_MM_SM2_f1" value="30"/> +<var name="NSW_MM_SM2_f2" value="30"/> +<var name="NSW_MM_SM2_f3" value="100"/> + +<var name="NSW_MM_LargeSector_ZCENTER" value="(NSW_sTGC_ZLargePivot+NSW_sTGC_ZLargeConfirm)/2."/> +<var name="NSW_MM_SmallSector_ZCENTER" value="(NSW_sTGC_ZSmallPivot+NSW_sTGC_ZSmallConfirm)/2."/> + + +<!-- Thickness of inter-multilayer spacers --> +<var name="NSW_MM_SpacerThickness" value="50" /> + +<!-- Global z-coordinate for the sector center --> +<!-- <var name="NSW_MM_LargeSector_ZCENTER" value="NSW_MM_LM_distanceFromIP + 4.*NSW_MM_DriftPcbTck + 4.*NSW_MM_ROPcbTck + 4.*NSW_MM_GasTck + NSW_MM_SpacerThickness/2."/> +<var name="NSW_MM_SmallSector_ZCENTER" value="NSW_MM_SM_distanceFromIP + 4.*NSW_MM_DriftPcbTck + 4.*NSW_MM_ROPcbTck + 4.*NSW_MM_GasTck + NSW_MM_SpacerThickness/2."/> --> + +</section> + +<section name="NewSmallWheelsMM" version="1" top_volume="useless" date="December 16 2014" author="S.Chen" > + + +<!-- Technologies --> +<mm_Tech type="MM_1" geometryLevel="1" nLayers="NSW_NbrOfLayers" gasTck="NSW_MM_GasTck" driftPcbTck="NSW_MM_DriftPcbTck" ROPcbTck="NSW_MM_ROPcbTck" Tck="NSW_MM_MultilayerTck" /> +<mmSpacer_Tech type="Spa_1" Tck="NSW_MM_SpacerThickness" /> + +<!-- large wheel --> +<micromegas type="sMD1-1-1" tech="MM_1" subType="M1L1" sWidth="NSW_MM_LM1_baseWidth" lWidth="NSW_MM_LM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM1_Length" ylFrame="NSW_MM_LM1_f1" ysFrame="NSW_MM_LM1_f2" xFrame="NSW_MM_LM1_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM1_InnerRadius" roLength="NSW_MM_LM1_Length"/> +</micromegas> +<micromegas type="sMD1-2-1" tech="MM_1" subType="M2L1" sWidth="NSW_MM_LM2_baseWidth" lWidth="NSW_MM_LM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM2_Length" ylFrame="NSW_MM_LM2_f1" ysFrame="NSW_MM_LM2_f2" xFrame="NSW_MM_LM2_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM2_InnerRadius" roLength="NSW_MM_LM2_Length"/> +</micromegas> +<micromegas type="sMD1-1-2" tech="MM_1" subType="M1L2" sWidth="NSW_MM_LM1_baseWidth" lWidth="NSW_MM_LM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM1_Length" ylFrame="NSW_MM_LM1_f1" ysFrame="NSW_MM_LM1_f2" xFrame="NSW_MM_LM1_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM1_InnerRadius" roLength="NSW_MM_LM1_Length"/> +</micromegas> +<micromegas type="sMD1-2-2" tech="MM_1" subType="M2L2" sWidth="NSW_MM_LM2_baseWidth" lWidth="NSW_MM_LM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM2_Length" ylFrame="NSW_MM_LM2_f1" ysFrame="NSW_MM_LM2_f2" xFrame="NSW_MM_LM2_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM2_InnerRadius" roLength="NSW_MM_LM2_Length"/> +</micromegas> + +<mmSpacer type="spa1-1" tech="Spa_1" sWidth="NSW_MM_LM1_baseWidth" lWidth="NSW_MM_LM1_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_LM1_Length" /> +<mmSpacer type="spa1-2" tech="Spa_1" sWidth="NSW_MM_LM2_baseWidth" lWidth="NSW_MM_LM2_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_LM2_Length" /> + + +<!-- small wheel --> +<micromegas type="sMD3-1-1" tech="MM_1" subType="M1S1" sWidth="NSW_MM_SM1_baseWidth" lWidth="NSW_MM_SM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM1_Length" ylFrame="NSW_MM_SM1_f1" ysFrame="NSW_MM_SM1_f2" xFrame="NSW_MM_SM1_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM1_InnerRadius" roLength="NSW_MM_SM1_Length"/> +</micromegas> +<micromegas type="sMD3-2-1" tech="MM_1" subType="M2S1" sWidth="NSW_MM_SM2_baseWidth" lWidth="NSW_MM_SM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM2_Length" ylFrame="NSW_MM_SM2_f1" ysFrame="NSW_MM_SM2_f2" xFrame="NSW_MM_SM2_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM2_InnerRadius" roLength="NSW_MM_SM2_Length"/> +</micromegas> +<micromegas type="sMD3-1-2" tech="MM_1" subType="M1S2" sWidth="NSW_MM_SM1_baseWidth" lWidth="NSW_MM_SM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM1_Length" ylFrame="NSW_MM_SM1_f1" ysFrame="NSW_MM_SM1_f2" xFrame="NSW_MM_SM1_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM1_InnerRadius" roLength="NSW_MM_SM1_Length"/> +</micromegas> +<micromegas type="sMD3-2-2" tech="MM_1" subType="M2S2" sWidth="NSW_MM_SM2_baseWidth" lWidth="NSW_MM_SM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM2_Length" ylFrame="NSW_MM_SM2_f1" ysFrame="NSW_MM_SM2_f2" xFrame="NSW_MM_SM2_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM2_InnerRadius" roLength="NSW_MM_SM2_Length"/> +</micromegas> +<mmSpacer type="spa3-1" tech="Spa_1" sWidth="NSW_MM_SM1_baseWidth" lWidth="NSW_MM_SM1_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_SM1_Length" /> +<mmSpacer type="spa3-2" tech="Spa_1" sWidth="NSW_MM_SM2_baseWidth" lWidth="NSW_MM_SM2_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_SM2_Length" /> + +<composition name="NSW_MM" > +<!-- A-SIDE --> + +<!-- LARGE SECTOR --> + +<!-- MM multilayer 1 --> +<chamberPosition volume="sMD1-1-1" radius="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> +<chamberPosition volume="sMD1-2-1" radius="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> +<!-- spacer --> +<mposPhi volume="spa1-1" ncopy="8" R_Z="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2;NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 270.; 90." /> +<mposPhi volume="spa1-2" ncopy="8" R_Z="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2;NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 270.; 90." /> + +<!-- MM multilayer 2 --> +<chamberPosition volume="sMD1-1-2" radius="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> +<chamberPosition volume="sMD1-2-2" radius="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> + +<!-- SMALL SECTOR --> + +<!-- MM multilayer 1 --> +<chamberPosition volume="sMD3-1-1" radius="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> +<chamberPosition volume="sMD3-2-1" radius="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> + +<!-- spacer --> +<mposPhi volume="spa3-1" ncopy="8" R_Z="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2;NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 270.; 90." /> +<mposPhi volume="spa3-2" ncopy="8" R_Z="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2;NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 270.; 90." /> + +<!-- MM multilayer 2 --> +<chamberPosition volume="sMD3-1-2" radius="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> +<chamberPosition volume="sMD3-2-2" radius="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> + +<!-- C-SIDE --> +<!-- LARGE SECTOR --> +<!-- spacer --> +<mposPhi volume="spa1-1" ncopy="8" R_Z="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2;-NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 90.; 90." /> +<mposPhi volume="spa1-2" ncopy="8" R_Z="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2;-NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 90.; 90." /> + +<!-- SMALL SECTOR --> +<!-- spacer --> +<mposPhi volume="spa3-1" ncopy="8" R_Z="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2;-NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 90.; 90." /> +<mposPhi volume="spa3-2" ncopy="8" R_Z="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2;-NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 90.; 90." /> + +</composition> + +</section> + + +<!-- ========== Poisitionning sTGC in NSW================ --> + + +<section name="NewSmallWheels" version="4.3" top_volume="useless" date=" April 20, 2015 " author="Daniel Lellouch"> + +<composition name="NewSmallWheel"> + <posXYZ volume="NSW_sTGC" X_Y_Z="0.;0.;0."/> + <posXYZ volume="NSW_MM" X_Y_Z="0.;0.;0." /> +</composition> + +</section> +</AGDD> diff --git a/MuonSpectrometer/MuonG4/NSW_Sim/data/stations.v2.04.xml b/MuonSpectrometer/MuonG4/NSW_Sim/data/stations.v2.04.xml new file mode 100644 index 0000000000000000000000000000000000000000..647f2459436f708e812bee6217acea14d581c22f --- /dev/null +++ b/MuonSpectrometer/MuonG4/NSW_Sim/data/stations.v2.04.xml @@ -0,0 +1,1788 @@ +<?xml version="1.0" encoding="UTF-8"?> +<AGDD> + +<section name="NSW_Parameters" version="1" top_volume="useless" date="December 16 2014" author="S.Chen" > +<!-- Global variables--> +<var name="NSW_NbrOfLayers" value="4"/> +<var name="NSW_NbrOfDriftPcb" value="3"/> +<var name="NSW_NbrOfROPcb" value="2"/> +<!--Center between the large sectors and the small sectors--> +<var name="ZCenter_Global" value="7409"/> +</section> + +<section name="NSW_sTGC_Parameters" version="13.7" top_volume="useless" date=" June 30, 2016 " author="Daniel Lellouch"> +<!-- ================ Global Variables ================= --> + +<!-- Thickness of a quadruplet --> +<var name="NSW_sTGC_Tck" value="49.34"/> +<!-- Gas Gap inside one layer --> +<var name="NSW_sTGC_GasTck" value="2.85"/> +<!-- G10 thickness per layer --> +<var name="NSW_sTGC_pcbTck" value="3"/> +<!-- Number of layers in a quaduplet --> +<var name="NSW_sTGC_NbrOfLayers" value="4"/> +<!-- Wire pitch --> +<var name="NSW_sTGC_WirePitch" value="1.8"/> +<!-- Strip pitch --> +<var name="NSW_sTGC_StripPitch" value="3.2"/> +<!-- Strip width --> +<var name="NSW_sTGC_StripWidth" value="2.7"/> +<!-- Width of G10 frame besides gas volume --> +<var name="NSW_sTGC_SideFrame" value="28.5"/> +<!-- Width of G10 frame in base w/o capacitor --> +<var name="NSW_sTGC_hFrameNoCapacitor" value="11"/> +<!-- Width of G10 frame in base with capacitor --> +<var name="NSW_sTGC_hFrameCapacitor" value="14"/> +<!-- Opening (in degrees) of trapezes in small wedges --> +<var name="NSW_sTGC_SmallOpening" value="17"/> +<!-- Opening (in degrees) of trapezes in large wedges --> +<var name="NSW_sTGC_LargeOpening" value="28"/> +<!-- Z center of small Pivot --> +<var name="NSW_sTGC_ZSmallPivot" value="ZCenter_Global-64"/> +<!-- Z center of small Confirm --> +<var name="NSW_sTGC_ZSmallConfirm" value="ZCenter_Global-399"/> +<!-- Z center of Large Pivot --> +<var name="NSW_sTGC_ZLargePivot" value="ZCenter_Global+64"/> +<!-- Z center of Large Confirm --> +<var name="NSW_sTGC_ZLargeConfirm" value="ZCenter_Global+399"/> +<!-- Z of each volume, relative to center of quadruplet --> +<array name="NSW_sTGC_LayerDeltaZ" values="-16.45;-5.48;5.49;16.46"/> +<!-- Side of the Pad readout --> +<array name="NSW_sTGC_PadSide" values="-1;1;-1;1"/> +<!-- Side of the Strip readout --> +<array name="NSW_sTGC_StripSide" values="1;-1;1;-1"/> +</section> + +<!-- ================ sTGC ========================= --> + + +<section name="NewSmallWheels_sTGC" version="22.1" top_volume="useless" date=" June 22, 2018 " author="Daniel Lellouch"> + +<composition name="NSW_sTGC"> + +<sTGC_Tech type="sTGC_1" geometryLevel="1" nLayers="NSW_sTGC_NbrOfLayers" gasTck="NSW_sTGC_GasTck" pcbTck="NSW_sTGC_pcbTck" Tck="NSW_sTGC_Tck" f4="NSW_sTGC_hFrameNoCapacitor" f5="NSW_sTGC_hFrameNoCapacitor" f6="NSW_sTGC_SideFrame"/> + +<!-- ================ small Pivot ========================= --> + +<sTGC type="sTG1-QS1P" tech="sTGC_1" subType="QS1P" sWidth="346.93" lWidth="743.15" Length="1325.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="279.32" lPadWidth="667.18" padH="80;80;80.24;80.24" rankPadPhi="4;3;2;1" nPadPhi="4;4;3;3" anglePadPhi="5" firstPadPhiDivision_C="-5;-5;-2.5;-2.5" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-5;-5;-2.5;-2.5" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="17;17;17;17" firstPadH="65.8;65.8;28.61;28.61" firstPadRow="1;1;1;1" sStripWidth="293.48" lStripWidth="681.33" wireCutout="802.8;829.8;856.8;883.8" nWires="371;370;370;370" firstWire="-333;-331.65;-332.55;-332.1" wireGroupWidth="20" nStrips="406" firstTriggerBand="3;3;3;3" nTriggerBands="28;28;28;28" firstStripInTrigger="44;44;44;44" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13; 12;13;12;13;12;13;10" StripsInBandsLayer2="12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;12;13;13;12; 13;12;13;12;13;12;10" StripsInBandsLayer3="12;13;12;13;12;13;12;13;13;12;13;12;13;12;13;12;13;12;13;12;13;12; 13;12;13;13;12;13;8" StripsInBandsLayer4="12;13;12;13;12;13;13;12;13;12;13;12;13;12;13;13;12;13;12;13;12;13; 12;13;12;13;13;12;8" nWireGroups="19;20;19;19" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QS1P" type="ENDCAP" chamberType="sTGS" radius="1563" zPos="NSW_sTGC_ZSmallPivot" phi0="22.5"/> + +<sTGC type="sTG1-QS2P" tech="sTGC_1" subType="QS2P" sWidth="746.14" lWidth="1102.25" Length="1191.4" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="677.64" lPadWidth="1026.28" padH="80;80;80.24;80.24" rankPadPhi="2;1;4;3" nPadPhi="2;2;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="0;0;-3.75;-3.75" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="0;0;-3.75;-3.75" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="15;15;15;15" firstPadH="93.2;93.2;60.09;60.09" firstPadRow="18;18;18;18" sStripWidth="691.8" lStripWidth="1040.43" wireCutout="0;0;0;0" nWires="569;570;570;570" firstWire="-511.2;-511.65;-512.55;-512.1" wireGroupWidth="20" nStrips="365" firstTriggerBand="34;34;34;34" nTriggerBands="30;30;30;30" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="4;13;12;13;12;13;12;13;12;12; 12;13;12;12;13;12;13;12;13;12; 13;12;13;12;;12;13;12;13;11" StripsInBandsLayer2="5;12;13;12;13;12;13;12;13;13; 13;12;13;12;13;12;13;12;13;12; 13;12;13;12;13;12;13;12;13;10" StripsInBandsLayer3="5;12;13;12;13;12;13;12;13;13; 13;12;13;12;13;12;13;12;13;12; 13;12;13;12;13;12;13;12;13;10" StripsInBandsLayer4="7;12;13;12;13;12;13;13;12;12; 12;13;12;13;12;13;13;12;13;12; 13;12;13;12;13;12;13;13;12;7" nWireGroups="29;30;29;29" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QS2P" type="ENDCAP" chamberType="sTGS" radius="2831.5" zPos="NSW_sTGC_ZSmallPivot" phi0="22.5"/> + +<sTGC type="sTG1-QS3P" tech="sTGC_1" subType="QS3P" sWidth="1105.96" lWidth="1406.59" Length="1005.8" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1037.46" lPadWidth="1330.62" padH="80;80;80.24;80.24" rankPadPhi="2;1;4;3" nPadPhi="2;2;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="0;0;-3.75;-3.75" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="0;0;-3.75;-3.75" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="12;12;13;13" firstPadH="89.4;89.4;59.88;59.88" firstPadRow="33;33;33;33" sStripWidth="1051.61" lStripWidth="1344.78" wireCutout="0;0;0;0" nWires="739;739;739;738" firstWire="-664.2;-664.65;-663.75;-663.3" wireGroupWidth="20" nStrips="307" firstTriggerBand="64;64;64;64" nTriggerBands="26;26;25;25" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="3;12;13;12;13;12;13;12;13;13; 13;12;13;12;13;12;12;13;12;13; 12;13;12;13;12;5" StripsInBandsLayer2="6;12;13;12;13;13;12;13;12;12; 12;13;12;13;12;13;12;13;12;13; 13;12;13;12;13;3" StripsInBandsLayer3="6;12;13;12;13;13;12;13;12;12; 12;13;12;13;12;13;12;13;12;13; 12;13;12;13;13" StripsInBandsLayer4="7;13;12;13;12;13;12;13;12;12; 12;13;13;12;13;12;13;12;13;12; 13;12;13;13;11" nWireGroups="37;38;38;38" firstWireGroup="20;14;10;3"/> +</sTGC> + +<chamberPosition volume="sTG1-QS3P" type="ENDCAP" chamberType="sTGS" radius="3942.5" zPos="NSW_sTGC_ZSmallPivot" phi0="22.5"/> + + +<!-- ================ small confirm =============== --> + +<sTGC type="sTG1-QS1C" tech="sTGC_1" subType="QS1C" sWidth="346.93" lWidth="743.15" Length="1325.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="293.48" lPadWidth="681.33" padH="76.35;76.35;76.59;76.59" rankPadPhi="1;4;2;3" nPadPhi="4;4;4;4" anglePadPhi="5" firstPadPhiDivision_C="-3.75;-6.25;-3.75;-6.25" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-6.25;-3.75;-6.25;-3.75" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="17;17;18;18" firstPadH="78.4;78.4;43.21;43.21" firstPadRow="2;2;2;2" sStripWidth="293.48" lStripWidth="681.33" wireCutout="883.8;856.8;829.8;802.8" nWires="370;370;370;371" firstWire="-332.1;-331.65;-332.55;-333" wireGroupWidth="20" nStrips="406" firstTriggerBand="5;5;5;5" nTriggerBands="32;32;31;31" firstStripInTrigger="44;44;44;44" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="12;12;12;11;12;12;12;12;12;12; 12;12;12;12;12;12;11;12;12;12; 12;12;12;12;12;12;12;12;11;12;12;12" StripsInBandsLayer2="12;12;12;12;11;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 11;12;12;12;12;12;12;12;12;12;12;11" StripsInBandsLayer3="12;12;12;12;11;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12;11;10" StripsInBandsLayer4="12;12;12;12;12;12;12;12;11; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12;12;9" nWireGroups="20;19;19;19" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QS1C" type="ENDCAP" chamberType="sTGS" radius="1563" zPos="NSW_sTGC_ZSmallConfirm" phi0="22.5"/> + +<sTGC type="sTG1-QS2C" tech="sTGC_1" subType="QS2C" sWidth="746.14" lWidth="1102.25" Length="1191.4" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="691.8" lPadWidth="1040.43" padH="76.35;76.35;76.59;76.59" rankPadPhi="3;2;4;1" nPadPhi="3;3;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-1.87;-5.62;-1.87" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-1.87;-5.62;-1.87;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="16;16;15;15" firstPadH="43.8;43.8;89.29;89.29" firstPadRow="19;19;20;20" sStripWidth="691.8" lStripWidth="1040.43" wireCutout="0;0;0;0" nWires="570;570;570;569" firstWire="-512.1;-511.65;-512.55;-511.2" wireGroupWidth="20" nStrips="365" firstTriggerBand="64;64;64;64" nTriggerBands="31;31;31;31" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="2;12;12;12;11;12;12;12;12;12;12; 12;12;12;12;12;11;12;12;12;12; 12;12;12;12;12;12;12;12;11;12" StripsInBandsLayer2="12;12;12;12;12;12;12;12;12;12;12; 12;12;12;11;12;12;12;12;12;12; ;12;12;12;12;12;12;12;12;12" StripsInBandsLayer3="2;12;12;12;12;12;12;12;12;12;12; 12;12;12;11;12;12;12;12;12;12; ;12;12;12;12;12;12;12;12;12" StripsInBandsLayer4="5;12;11;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12" nWireGroups="30;29;29;29" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QS2C" type="ENDCAP" chamberType="sTGS" radius="2831.5" zPos="NSW_sTGC_ZSmallConfirm" phi0="22.5"/> + +<sTGC type="sTG1-QS3C" tech="sTGC_1" subType="QS3C" sWidth="1105.96" lWidth="1406.59" Length="1005.8" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1051.61" lPadWidth="1344.78" padH="76.35;76.35;76.59;76.59" rankPadPhi="3;2;4;1" nPadPhi="3;3;3;3" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-1.87;-5.62;-1.87" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-1.87;-5.62;-1.87;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="13;13;14;14" firstPadH="61.66;61.66;34.38;34.38" firstPadRow="35;35;35;35" sStripWidth="1051.61" lStripWidth="1344.78" wireCutout="0;0;0;0" nWires="738;739;739;739" firstWire="-663.3;-664.65;-663.75;-664.2" wireGroupWidth="20" nStrips="307" firstTriggerBand="37;37;37;37" nTriggerBands="26;26;25;25" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="6;7;12;12;12;12;12;12;11;11; 12;12;12;12;12;12;12;12;12;12; 12;11;12;13;12;12" StripsInBandsLayer2="2;10;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;12;13;12" StripsInBandsLayer3="2;10;12;12;12;12;12;12;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;13;13" StripsInBandsLayer4="1;12;12;12;12;12;12;11;12;12; 12;12;12;12;12;12;12;12;12;12; 12;12;12;13;11" nWireGroups="38;38;38;38" firstWireGroup="5;14;15;3"/> +</sTGC> + +<chamberPosition volume="sTG1-QS3C" type="ENDCAP" chamberType="sTGS" radius="3942.5" zPos="NSW_sTGC_ZSmallConfirm" phi0="22.5"/> + + +<!-- ================ Large Pivot ==================== --> + +<sTGC type="sTG1-QL1P" tech="sTGC_1" subType="QL1P" sWidth="542.61" lWidth="1206.82" Length="1332" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="476.42" lPadWidth="1126.66" padH="81.42;81.42;81.66;81.66" rankPadPhi="4;3;2;1" nPadPhi="6;6;7;7" anglePadPhi="5" firstPadPhiDivision_C="-10;-10;-12.5;-12.5" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-10;-10;-12.5;-12.5" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="17;17;16;16" firstPadH="54.39;54.39;98.15;98.15" firstPadRow="1;1;2;2" sStripWidth="490.84" lStripWidth="1141.09" wireCutout="808;835;862;889" nWires="621;620;620;620" firstWire="-558;-556.65;-557.55;-557.1" wireGroupWidth="20" nStrips="408" firstTriggerBand="3;3;3;3" nTriggerBands="30;30;30;30" firstStripInTrigger="45;45;45;45" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="13;13;12;13;13;13;12;13;13;12;13;13;13;12;13;13;12;13;13;13;12;13; 13;12;13;13;13;12;13;13" StripsInBandsLayer2="13;13;12;13;13;13;12;13;13;13;12;13;13;12;13;13;13;12;13;13;13;12; 13;13;12;13;13;13;12;13" StripsInBandsLayer3="13;13;12;13;13;13;12;13;13;13;12;13;13;13;12;13;13;13;12;13;13;13; 12;13;13;13;12;13;13;13" StripsInBandsLayer4="13;13;12;13;13;13;13;12;13;13;13;12;13;13;13;12;13;13;13;13;12;13; 13;13;12;13;13;13;12;13" nWireGroups="32;32;32;32" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QL1P" type="ENDCAP" chamberType="sTGL" radius="1595" zPos="NSW_sTGC_ZLargePivot" phi0="0.0"/> + +<sTGC type="sTG1-QL2P" tech="sTGC_1" subType="QL2P" sWidth="1211.81" lWidth="1807.5" Length="1194.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1144.12" lPadWidth="1727.34" padH="81.42;81.42;81.66;81.66" rankPadPhi="2;1;4;3" nPadPhi="4;4;5;5" anglePadPhi="7.5" firstPadPhiDivision_C="-7.5;-7.5;-11.25;-11.25" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-7.5;-7.5;-11.25;-11.25" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="14;14;15;15" firstPadH="99.51;99.51;65.69;65.69" firstPadRow="18;18;18;18" sStripWidth="490.84" lStripWidth="1141.09" wireCutout="0;0;0;0" nWires="953;954;954;954" firstWire="-856.8;-857.25;-858.15;-857.7" wireGroupWidth="20" nStrips="366" firstTriggerBand="33;33;33;33" nTriggerBands="30;30;30;29" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="9;6;12;13;13;12;13;13;13;12;13;13;1313;13;13;13;12;13;13;12;13;13;13; 12;13;13;12;13;13;13" StripsInBandsLayer2="9;6;13;13;12;13;13;13;12;13;13;12;1213;13;13;12;13;13;13;12;13;13;13; 12;13;13;12;13;13;13" StripsInBandsLayer3="7;8;12;13;13;13;12;13;13;13;12;13;1313;13;12;13;13;13;12;13;13;13;12; 13;13;13;12;13;13;13" StripsInBandsLayer4="7;8;13;13;13;12;13;13;13;12;13;13;1313;13;12;13;13;13;12;13;13;13;12; 13;13;13;12;13;13" nWireGroups="48;49;49;48" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QL2P" type="ENDCAP" chamberType="sTGL" radius="2868.3" zPos="NSW_sTGC_ZLargePivot" phi0="0.0"/> + +<sTGC type="sTG1-QL3P" tech="sTGC_1" subType="QL3P" sWidth="1813.68" lWidth="2111" Length="1153" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="545.3" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode="539.26"> + +<sTGC_readout sPadWidth="1745.99" lPadWidth="2054" padH="81.42;81.42;81.66;81.66" + rankPadPhi="2;1;4;3" nPadPhi="4;4;5;5" anglePadPhi="7.5" firstPadPhiDivision_C="-7.5;-7.5;-11.25;-11.25" PadPhiShift_C="2;-2;2;-2" firstPadPhiDivision_A="-7.5;-7.5;-11.25;-11.25" PadPhiShift_A="-2;2;-2;2" rankPadH="1;2;3;4" nPadH="15;15;14;14" firstPadH="32.38;32.38;83.57;83.57" firstPadRow="32;32;33;33" sStripWidth="1760.42" lStripWidth="2054" wireCutout="0;0;0;0" nWires="1133;1134;1134;1134" firstWire="-1018.8;-1019.25;-1019.7;-1019.7" wireGroupWidth="20" nStrips="353" firstTriggerBand="63;63;63;62" nTriggerBands="28;28;28;29" firstStripInTrigger="1;1;1;1" firstStripWidth="1.6;3.2;1.6;3.2" StripsInBandsLayer1="10;13;12;13;13;12;13;13;13; 12;13;13;12;13;13;12;13;13;13; 12;13;13;12;13;13;13;12;13" StripsInBandsLayer2="11;13;12;13;13;13;12;13;13; 12;13;13;13;12;13;13;13;12;13; 13;13;12;13;13;12;13;13;11" StripsInBandsLayer3="13;13;13;12;13;13;13;12;13; 13;13;12;13;13;13;12;13;13;13; 12;13;13;13;12;13;13;13;8" StripsInBandsLayer4="1;13;13;13;12;13;13;13;13;12; 13;13;13;12;13;13;13;12;13;13; 13;13;12;13;13;13;12;13;7" nWireGroups="57;58;58;57" firstWireGroup="20;5;10;15"/> +</sTGC> + +<chamberPosition volume="sTG1-QL3P" type="ENDCAP" chamberType="sTGL" radius="4054.5" zPos="NSW_sTGC_ZLargePivot" phi0="0.0"/> + +<!-- =============== Large Confirm ===================== --> + +<sTGC type="sTG1-QL1C" tech="sTGC_1" subType="QL1C" sWidth="542.61" lWidth="1206.82" Length="1332" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="490.84" lPadWidth="1141.09" padH="85.07;85.07;85.31;85.31" rankPadPhi="4;3;2;1" nPadPhi="6;6;6;6" anglePadPhi="5" firstPadPhiDivision_C="-8.75;-11.25;-8.75;-11.25" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-11.25;-8.75;-11.25;-8.75" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="16;16;16;16" firstPadH="77.79;77.79;38.01;38.01" firstPadRow="1;1;1;1" sStripWidth="490.84" lStripWidth="1141.09" wireCutout="889;862;835;808" nWires="620;620;620;621" firstWire="-557.1;-556.65;-557.55;-558" wireGroupWidth="20" nStrips="408" firstTriggerBand="3;3;3;3" nTriggerBands="29;29;28;28" firstStripInTrigger="44;44;44;44" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="13;13;13;14;13;13;14;13;13;13; 14;13;13;14;13;13;13;14;13;13; 13;14;13;13;14;13;13;13" StripsInBandsLayer2="13;13;13;14;13;13;14;13;13;14; 13;13;13;14;13;13;14;13;13;14; 13;13;13;14;13;13;14;13" StripsInBandsLayer3="14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;13;14;13; 13;13;14;13;13;14;13;13" StripsInBandsLayer4="14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;13;14;13; 14;13;13;14;13;13;14;13" nWireGroups="32;32;32;32" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QL1C" type="ENDCAP" chamberType="sTGL" radius="1595" zPos="NSW_sTGC_ZLargeConfirm" phi0="0.0"/> + +<sTGC type="sTG1-QL2C" tech="sTGC_1" subType="QL2C" sWidth="1211.81" lWidth="1807.5" Length="1194.6" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="0" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode ="0"> + +<sTGC_readout sPadWidth="1158.55" lPadWidth="1741.77" padH="85.07;85.07;85.31;85.31" rankPadPhi="3;2;4;1" nPadPhi="4;4;4;4" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-9.37;-5.62;-9.37" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-9.37;-5.62;-9.37;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="14;14;14;14" firstPadH="99.84;99.84;63.9;63.9" firstPadRow="17;17;17;17" sStripWidth="1158.55" lStripWidth="1741.77" wireCutout="0;0;0;0" nWires="954;954;954;953" firstWire="-857.7;-857.25;-858.15;-856.8" wireGroupWidth="20" nStrips="366" firstTriggerBand="30;30;30;30" nTriggerBands="29;29;29;29" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="12;5;13;13;13;14;13;13;14;13; 13;13;14;13;13;14;13;13;13;14; 13;13;14;13;13;13;14;13;13" StripsInBandsLayer2="11;5;13;14;13;13;14;13;13;13; 14;13;13;14;13;13;14;13;13;14; 13;13;13;14;13;13;14;13;13" StripsInBandsLayer3="10;7;13;13;14;13;13;14;13;13; 13;14;13;13;14;13;13;14;13;13; 14;13;13;14;13;13;14;13;13" StripsInBandsLayer4="9;7;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;14;13;13; 14;13;13;14;13;13;14;13;12" nWireGroups="49;49;48;48" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QL2C" type="ENDCAP" chamberType="sTGL" radius="2868.3" zPos="NSW_sTGC_ZLargeConfirm" phi0="0.0"/> + +<sTGC type="sTG1-QL3C" tech="sTGC_1" subType="QL3C" sWidth="1813.68" lWidth="2111" Length="1153" Tck="NSW_sTGC_Tck" xFrame="NSW_sTGC_SideFrame" ysFrame="NSW_sTGC_hFrameNoCapacitor" ylFrame="NSW_sTGC_hFrameCapacitor" yCutout="545.3" stripPitch="NSW_sTGC_StripPitch" wirePitch="NSW_sTGC_WirePitch" stripWidth="NSW_sTGC_StripWidth" yCutoutCathode="539.26"> + +<sTGC_readout sPadWidth="1760.42" lPadWidth="2054" padH="85.07;85.07;85.31;85.31" rankPadPhi="3;2;4;1" nPadPhi="4;4;4;4" anglePadPhi="7.5" firstPadPhiDivision_C="-5.62;-9.37;-5.62;-9.37" PadPhiShift_C="-2;2;-2;2" firstPadPhiDivision_A="-9.37;-5.62;-9.37;-5.62" PadPhiShift_A="2;-2;2;-2" rankPadH="1;2;3;4" nPadH="13;13;14;14" firstPadH="83.76;83.76;51.17;51.17" firstPadRow="31;31;31;31" sStripWidth="1760.42" lStripWidth="2054" wireCutout="0;0;0;0" nWires="1134;1134;1134;1133" firstWire="-1019.7;-1019.25;-1020.15;-1018.8" wireGroupWidth="20" nStrips="353" firstTriggerBand="60;60;60;60" nTriggerBands="28;28;28;28" firstStripInTrigger="1;1;1;1" firstStripWidth="3.2;1.6;3.2;1.6" StripsInBandsLayer1="3;13;13;13;13;14;13;13;14;13;13; 13;14;13;13;14;13;13;13;14;13; 13;13;14;13;13;14;8" StripsInBandsLayer2="2;14;13;13;14;13;13;13;14;13;13; 14;13;13;14;13;13;13;14;13;13; 14;13;13;14;13;13;7" StripsInBandsLayer3="2;14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;13;14;13;13;14; 13;13;14;13;13;14;4" StripsInBandsLayer4="3;14;13;13;14;13;13;14;13;13;14; 13;13;14;13;13;14;13;13;14;13; 13;14;13;13;14;13;3" nWireGroups="58;58;57;57" firstWireGroup="5;10;15;20"/> +</sTGC> + +<chamberPosition volume="sTG1-QL3C" type="ENDCAP" chamberType="sTGL" radius="4054.5" zPos="NSW_sTGC_ZLargeConfirm" phi0="0.0"/> + +</composition> +</section> + + +<!-- ========== MicroMegas ============================== --> + +<section name="NSW_MM_Parameters" version="1" top_volume="useless" date="December 16 2014" author="S.Chen" > + +<!-- Frames. "f1": frame width close to the trapezium large side. "f2": frame width close to the trapezium small side. "f3": frame width close to the trapezium oblique side --> + +<!-- Distance from IP, labeled zmin_MM in Parameter Book --> +<var name="NSW_MM_LM_distanceFromIP" value="7536"/> +<var name="NSW_MM_SM_distanceFromIP" value="7072"/> +<!-- Thickness of Multilayer and the subcomponent (mm)--> +<var name="NSW_MM_GasTck" value="5.04"/> +<var name="NSW_MM_ROPcbTck" value="11.69"/> +<var name="NSW_MM_DriftPcbTck" value="11.284"/> +<var name="NSW_MM_MultilayerTck" value="NSW_NbrOfLayers* NSW_MM_GasTck + (NSW_NbrOfDriftPcb) * NSW_MM_DriftPcbTck+ ( NSW_NbrOfROPcb) * NSW_MM_ROPcbTck" /> <!-- Thickness of one multilayer --> + +<!-- Large sector modules (LM1" LM2). Modules are all trapezoid. ""Height"": radial envelope" ""base/top Width"": upper/lower side of the trapezoid--> +<var name="NSW_MM_LM1_InnerRadius" value="923" /> +<var name="NSW_MM_LM1_Length" value="2310" /> +<var name="NSW_MM_LM1_outerRadius" value="NSW_MM_LM1_InnerRadius+NSW_MM_LM1_Length" /> +<var name="NSW_MM_LM1_f1" value="30"/> +<var name="NSW_MM_LM1_f2" value="30"/> +<var name="NSW_MM_LM1_f3" value="100"/> +<var name="NSW_MM_LMGap_Length" value="5" /> <!-- Radial gap between LM1 and LM2 --> +<var name="NSW_MM_LM2_InnerRadius" value="NSW_MM_LM1_outerRadius+NSW_MM_LMGap_Length" /> +<var name="NSW_MM_LM2_Length" value="1410" /> +<var name="NSW_MM_LM2_outerRadius" value="NSW_MM_LM2_InnerRadius+NSW_MM_LM2_Length" /> +<var name="NSW_MM_LM1_baseWidth" value="640" /> +<var name="NSW_MM_LM1_topWidth" value="2008.5" /> +<var name="NSW_MM_LM2_baseWidth" value="2022.8" /> +<var name="NSW_MM_LM2_topWidth" value="2220" /> +<var name="NSW_MM_LM2_f1" value="30"/> +<var name="NSW_MM_LM2_f2" value="30"/> +<var name="NSW_MM_LM2_f3" value="100"/> +<!-- Small sector modules (SM1" SM2). Modules are all trapezoids. ""Height"": radial envelope" ""base/top Width"": upper/lower side --> +<var name="NSW_MM_SM1_InnerRadius" value="895" /> +<var name="NSW_MM_SM1_Length" value="2210" /> +<var name="NSW_MM_SM1_outerRadius" value="NSW_MM_SM1_InnerRadius+NSW_MM_SM1_Length" /> +<var name="NSW_MM_SMGap_Length" value="5" /> <!-- Radial gap between SM1 and SM2 --> +<var name="NSW_MM_SM1_f1" value="30"/> +<var name="NSW_MM_SM1_f2" value="30"/> +<var name="NSW_MM_SM1_f3" value="100"/> +<var name="NSW_MM_SM2_InnerRadius" value="NSW_MM_SM1_outerRadius+NSW_MM_SMGap_Length" /> +<var name="NSW_MM_SM2_Length" value="1350" /> +<var name="NSW_MM_SM2_outerRadius" value="NSW_MM_SM2_InnerRadius+NSW_MM_SM2_Length" /> +<var name="NSW_MM_SM1_baseWidth" value="500" /> +<var name="NSW_MM_SM1_topWidth" value="1319.2" /> +<var name="NSW_MM_SM2_baseWidth" value="1321.1" /> +<var name="NSW_MM_SM2_topWidth" value="1821.5" /> +<var name="NSW_MM_SM2_f1" value="30"/> +<var name="NSW_MM_SM2_f2" value="30"/> +<var name="NSW_MM_SM2_f3" value="100"/> + +<var name="NSW_MM_LargeSector_ZCENTER" value="ZCenter_Global+232."/> +<var name="NSW_MM_SmallSector_ZCENTER" value="ZCenter_Global-232."/> + + +<!-- Thickness of inter-multilayer spacers --> +<var name="NSW_MM_SpacerThickness" value="50" /> + +<!-- Global z-coordinate for the sector center --> +<!-- <var name="NSW_MM_LargeSector_ZCENTER" value="NSW_MM_LM_distanceFromIP + 4.*NSW_MM_DriftPcbTck + 4.*NSW_MM_ROPcbTck + 4.*NSW_MM_GasTck + NSW_MM_SpacerThickness/2."/> +<var name="NSW_MM_SmallSector_ZCENTER" value="NSW_MM_SM_distanceFromIP + 4.*NSW_MM_DriftPcbTck + 4.*NSW_MM_ROPcbTck + 4.*NSW_MM_GasTck + NSW_MM_SpacerThickness/2."/> --> + +</section> + +<section name="NewSmallWheelsMM" version="1" top_volume="useless" date="December 16 2014" author="S.Chen" > + + +<!-- Technologies --> +<mm_Tech type="MM_1" geometryLevel="1" nLayers="NSW_NbrOfLayers" gasTck="NSW_MM_GasTck" driftPcbTck="NSW_MM_DriftPcbTck" ROPcbTck="NSW_MM_ROPcbTck" Tck="NSW_MM_MultilayerTck" /> +<!--Chilufya<mmSpacer_Tech type="Spa_1" Tck="NSW_MM_SpacerThickness" />Chilufya--> + +<!-- large wheel --> +<micromegas type="sMD1-1-1" tech="MM_1" subType="M1L1" sWidth="NSW_MM_LM1_baseWidth" lWidth="NSW_MM_LM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM1_Length" ylFrame="NSW_MM_LM1_f1" ysFrame="NSW_MM_LM1_f2" xFrame="NSW_MM_LM1_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM1_InnerRadius" roLength="NSW_MM_LM1_Length"/> +</micromegas> +<micromegas type="sMD1-2-1" tech="MM_1" subType="M2L1" sWidth="NSW_MM_LM2_baseWidth" lWidth="NSW_MM_LM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM2_Length" ylFrame="NSW_MM_LM2_f1" ysFrame="NSW_MM_LM2_f2" xFrame="NSW_MM_LM2_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM2_InnerRadius" roLength="NSW_MM_LM2_Length"/> +</micromegas> +<micromegas type="sMD1-1-2" tech="MM_1" subType="M1L2" sWidth="NSW_MM_LM1_baseWidth" lWidth="NSW_MM_LM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM1_Length" ylFrame="NSW_MM_LM1_f1" ysFrame="NSW_MM_LM1_f2" xFrame="NSW_MM_LM1_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM1_InnerRadius" roLength="NSW_MM_LM1_Length"/> +</micromegas> +<micromegas type="sMD1-2-2" tech="MM_1" subType="M2L2" sWidth="NSW_MM_LM2_baseWidth" lWidth="NSW_MM_LM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_LM2_Length" ylFrame="NSW_MM_LM2_f1" ysFrame="NSW_MM_LM2_f2" xFrame="NSW_MM_LM2_f3"> +<mm_readout stripPitch="0.45" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_LM2_InnerRadius" roLength="NSW_MM_LM2_Length"/> +</micromegas> + +<!--Chilufya<mmSpacer type="spa1-1" tech="Spa_1" sWidth="NSW_MM_LM1_baseWidth" lWidth="NSW_MM_LM1_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_LM1_Length" /> +<mmSpacer type="spa1-2" tech="Spa_1" sWidth="NSW_MM_LM2_baseWidth" lWidth="NSW_MM_LM2_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_LM2_Length" />Chilufya--> + + +<!-- small wheel --> +<micromegas type="sMD3-1-1" tech="MM_1" subType="M1S1" sWidth="NSW_MM_SM1_baseWidth" lWidth="NSW_MM_SM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM1_Length" ylFrame="NSW_MM_SM1_f1" ysFrame="NSW_MM_SM1_f2" xFrame="NSW_MM_SM1_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM1_InnerRadius" roLength="NSW_MM_SM1_Length"/> +</micromegas> +<micromegas type="sMD3-2-1" tech="MM_1" subType="M2S1" sWidth="NSW_MM_SM2_baseWidth" lWidth="NSW_MM_SM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM2_Length" ylFrame="NSW_MM_SM2_f1" ysFrame="NSW_MM_SM2_f2" xFrame="NSW_MM_SM2_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.; 0.; 0.02618; -0.02618" readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM2_InnerRadius" roLength="NSW_MM_SM2_Length"/> +</micromegas> +<micromegas type="sMD3-1-2" tech="MM_1" subType="M1S2" sWidth="NSW_MM_SM1_baseWidth" lWidth="NSW_MM_SM1_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM1_Length" ylFrame="NSW_MM_SM1_f1" ysFrame="NSW_MM_SM1_f2" xFrame="NSW_MM_SM1_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM1_InnerRadius" roLength="NSW_MM_SM1_Length"/> +</micromegas> +<micromegas type="sMD3-2-2" tech="MM_1" subType="M2S2" sWidth="NSW_MM_SM2_baseWidth" lWidth="NSW_MM_SM2_topWidth" Tck="NSW_MM_MultilayerTck" Length="NSW_MM_SM2_Length" ylFrame="NSW_MM_SM2_f1" ysFrame="NSW_MM_SM2_f2" xFrame="NSW_MM_SM2_f3"> +<mm_readout stripPitch="0.425" gasThickness="NSW_MM_GasTck" pcbThickness="NSW_MM_ROPcbTck" driftThickness="NSW_MM_DriftPcbTck" stereoAngle="0.02618; -0.02618; 0.; 0." readoutSide="-1; 1; -1; 1" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." distanceFromZAxis="NSW_MM_SM2_InnerRadius" roLength="NSW_MM_SM2_Length"/> +</micromegas> +<!--Chilufya<mmSpacer type="spa3-1" tech="Spa_1" sWidth="NSW_MM_SM1_baseWidth" lWidth="NSW_MM_SM1_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_SM1_Length" /> +<mmSpacer type="spa3-2" tech="Spa_1" sWidth="NSW_MM_SM2_baseWidth" lWidth="NSW_MM_SM2_topWidth" Tck="NSW_MM_SpacerThickness" Length="NSW_MM_SM2_Length" />Chilufya--> + +<composition name="NSW_MM" > +<!-- A-SIDE --> + +<!-- LARGE SECTOR --> + +<!-- MM multilayer 1 --> +<chamberPosition volume="sMD1-1-1" radius="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> +<chamberPosition volume="sMD1-2-1" radius="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> +<!-- spacer --> +<!--Chilufya<mposPhi volume="spa1-1" ncopy="8" R_Z="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2;NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 270.; 90." /> +<mposPhi volume="spa1-2" ncopy="8" R_Z="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2;NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 270.; 90." />Chilufya--> + +<!-- MM multilayer 2 --> +<chamberPosition volume="sMD1-1-2" radius="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> +<chamberPosition volume="sMD1-2-2" radius="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2" zPos="NSW_MM_LargeSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="0" /> + +<!-- SMALL SECTOR --> + +<!-- MM multilayer 1 --> +<chamberPosition volume="sMD3-1-1" radius="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> +<chamberPosition volume="sMD3-2-1" radius="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER-NSW_MM_MultilayerTck/2.-NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> + +<!-- spacer --> +<!--Chilufya<mposPhi volume="spa3-1" ncopy="8" R_Z="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2;NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 270.; 90." /> +<mposPhi volume="spa3-2" ncopy="8" R_Z="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2;NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 270.; 90." />Chilufya--> + +<!-- MM multilayer 2 --> +<chamberPosition volume="sMD3-1-2" radius="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> +<chamberPosition volume="sMD3-2-2" radius="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2" zPos="NSW_MM_SmallSector_ZCENTER+NSW_MM_MultilayerTck/2.+NSW_MM_SpacerThickness/2." type="ENDCAP" chamberType="Micromegas" phi0="22.5" /> + +<!-- C-SIDE --> +<!-- LARGE SECTOR --> +<!-- spacer --> +<!--Chilufya<mposPhi volume="spa1-1" ncopy="8" R_Z="(NSW_MM_LM1_InnerRadius+NSW_MM_LM1_outerRadius)/2;-NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 90.; 90." /> +<mposPhi volume="spa1-2" ncopy="8" R_Z="(NSW_MM_LM2_InnerRadius+NSW_MM_LM2_outerRadius)/2;-NSW_MM_LargeSector_ZCENTER" Phi0="0" rot=" 90.; 90.; 90." />Chilufya--> + +<!-- SMALL SECTOR --> +<!-- spacer --> +<!--Chilufya<mposPhi volume="spa3-1" ncopy="8" R_Z="(NSW_MM_SM1_InnerRadius+NSW_MM_SM1_outerRadius)/2;-NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 90.; 90." /> +<mposPhi volume="spa3-2" ncopy="8" R_Z="(NSW_MM_SM2_InnerRadius+NSW_MM_SM2_outerRadius)/2;-NSW_MM_SmallSector_ZCENTER" Phi0="22.5" rot=" 90.; 90.; 90." />Chilufya--> + +</composition> + +</section> + + + + + + + +<!--====================================SPACER FRAME===============================================--> + +<section name = "LS and SS Spacer Frames" + version = "0.0" + date = "25-07-2017" + author = "Georgian Engineering Team - Niko Tsutskiridze" + top_volume = "NSW_Spacer"> + +<!-- LS Spacer Ftame --> +<gvxy name="LS_StructuralPlate_Main" material="Aluminium" dZ="5.9"> + <gvxy_point X_Y="226.; 958."/> + <gvxy_point X_Y="914.15; 3281."/> + <gvxy_point X_Y="1007.3; 4613."/> + <gvxy_point X_Y="0.01; 4613."/> + <gvxy_point X_Y="0.01; 958."/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut1" material="Aluminium" dZ="7."> + <gvxy_point X_Y="902.87; 4123."/> + <gvxy_point X_Y="932.24; 4543."/> + <gvxy_point X_Y="40.; 4543."/> + <gvxy_point X_Y="40.; 4123."/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut2" material="Aluminium" dZ="7."> + <gvxy_point X_Y="774.41; 3913.25"/> + <gvxy_point X_Y="770.86; 3963."/> + <gvxy_point X_Y="135.; 3963."/> + <gvxy_point X_Y="135.; 3821.33"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut3" material="Aluminium" dZ="7."> + <gvxy_point X_Y="778.83; 3639.29"/> + <gvxy_point X_Y="792.52; 3835.04"/> + <gvxy_point X_Y="203.42; 3750.35"/> + <gvxy_point X_Y="203.46; 3720.65"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut4" material="Aluminium" dZ="7."> + <gvxy_point X_Y="477.15; 3586.36"/> + <gvxy_point X_Y="477.24; 3606.18"/> + <gvxy_point X_Y="135.; 3654.58"/> + <gvxy_point X_Y="135.; 3541.07"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut5" material="Aluminium" dZ="7."> + <gvxy_point X_Y="762.41; 3404.48"/> + <gvxy_point X_Y="772.57; 3549.82"/> + <gvxy_point X_Y="286.06; 3485.41"/> + <gvxy_point X_Y="286.1; 3465.58"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut6" material="Aluminium" dZ="7."> + <gvxy_point X_Y="600.; 3314.58"/> + <gvxy_point X_Y="602.55; 3354.42"/> + <gvxy_point X_Y="60.; 3424.01"/> + <gvxy_point X_Y="60.; 3314.58"/> +</gvxy> + +<box name="LS_StructuralPlate_Cut7" material="Aluminium" X_Y_Z="138.; 70.; 7. " /> + +<gvxy name="LS_StructuralPlate_Cut8" material="Aluminium" dZ="7."> + <gvxy_point X_Y="678.71; 2838.18"/> + <gvxy_point X_Y="772.71; 3155.5"/> + <gvxy_point X_Y="63.52; 3155.5"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut9" material="Aluminium" dZ="7."> + <gvxy_point X_Y="533.6; 2715.5"/> + <gvxy_point X_Y="551.94; 2791.05"/> + <gvxy_point X_Y="40.; 3055.11"/> + <gvxy_point X_Y="40.; 2715.5"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut10" material="Aluminium" dZ="7."> + <gvxy_point X_Y="459.9; 2169.9"/> + <gvxy_point X_Y="585.97; 2595.5"/> + <gvxy_point X_Y="117.42; 2595.5"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut11" material="Aluminium" dZ="7."> + <gvxy_point X_Y="391.41; 2095.5"/> + <gvxy_point X_Y="135.; 2414.15"/> + <gvxy_point X_Y="135.; 2095.5"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut12" material="Aluminium" dZ="7."> + <gvxy_point X_Y="344.91; 1865.18"/> + <gvxy_point X_Y="389.44; 2015.5"/> + <gvxy_point X_Y="258.79; 2015.5"/> +</gvxy> +<gvxy name="LS_StructuralPlate_Cut13" material="Aluminium" dZ="7."> + <gvxy_point X_Y="275.45; 1825.5"/> + <gvxy_point X_Y="172.35; 2005.44"/> + <gvxy_point X_Y="135.; 1995.5"/> + <gvxy_point X_Y="135.; 1825.5"/> +</gvxy> + +<gvxy name="LS_StructuralPlate_Cut14" material="Aluminium" dZ="7."> + <gvxy_point X_Y="173.8; 1028."/> + <gvxy_point X_Y="380.41; 1725.5"/> + <gvxy_point X_Y="40.; 1725.5"/> + <gvxy_point X_Y="40.; 1028."/> +</gvxy> + +<subtraction name="LS_StructuralPlateSub" > + <posXYZ volume="LS_StructuralPlate_Main" /> + <posXYZ volume="LS_StructuralPlate_Cut1" /> + <posXYZ volume="LS_StructuralPlate_Cut2" /> + <posXYZ volume="LS_StructuralPlate_Cut3" /> + <posXYZ volume="LS_StructuralPlate_Cut4" /> + <posXYZ volume="LS_StructuralPlate_Cut5" /> + <posXYZ volume="LS_StructuralPlate_Cut6" /> + <posXYZ volume="LS_StructuralPlate_Cut7" X_Y_Z="589.; 3235.5; 0." /> + <posXYZ volume="LS_StructuralPlate_Cut8" /> + <posXYZ volume="LS_StructuralPlate_Cut9" /> + <posXYZ volume="LS_StructuralPlate_Cut10" /> + <posXYZ volume="LS_StructuralPlate_Cut11" /> + <posXYZ volume="LS_StructuralPlate_Cut12" /> + <posXYZ volume="LS_StructuralPlate_Cut13" /> + <posXYZ volume="LS_StructuralPlate_Cut14" /> +</subtraction> + +<composition name="LS_StructuralPlate" > + <posXYZ volume="LS_StructuralPlateSub" /> + <posXYZ volume="LS_StructuralPlateSub" rot="0. ; 180. ; 0." /> +</composition> + +<box name="LS_Central_reference_bar" material="Aluminium" X_Y_Z="1704.; 100.; 27.8 " /> + +<box name="LS_Channel_section_L2000_Main" material="Aluminium" X_Y_Z="50.; 2000.; 30. " /> +<box name="LS_Channel_section_L2000_Cut" material="Aluminium" X_Y_Z="40.; 2050.; 20. " /> +<subtraction name="LS_Channel_section_L2000" > + <posXYZ volume="LS_Channel_section_L2000_Main" /> + <posXYZ volume="LS_Channel_section_L2000_Cut" /> +</subtraction> + +<box name="LS_Channel_section_L1200_Main" material="Aluminium" X_Y_Z="50.; 1200.; 30. " /> +<subtraction name="LS_Channel_section_L1200" > + <posXYZ volume="LS_Channel_section_L1200_Main" /> + <posXYZ volume="LS_Channel_section_L2000_Cut" /> +</subtraction> + +<box name="LS_Channel_section_L850_Main" material="Aluminium" X_Y_Z="50.; 850.; 30. " /> +<subtraction name="LS_Channel_section_L850" > + <posXYZ volume="LS_Channel_section_L850_Main" /> + <posXYZ volume="LS_Channel_section_L2000_Cut" /> +</subtraction> + +<box name="LS_Channel_section_L1000_Main" material="Aluminium" X_Y_Z="50.; 1000.; 30. " /> +<subtraction name="LS_Channel_section_L1000" > + <posXYZ volume="LS_Channel_section_L1000_Main" /> + <posXYZ volume="LS_Channel_section_L2000_Cut" /> +</subtraction> + +<box name="LS_UProfile_L1460_Main" material="Aluminium" X_Y_Z="20.; 1460.; 30. " /> +<box name="LS_UProfile_L1460_Cut" material="Aluminium" X_Y_Z="20.; 1500.; 24. " /> +<subtraction name="LS_UProfile_L1460" > + <posXYZ volume="LS_UProfile_L1460_Main" /> + <posXYZ volume="LS_UProfile_L1460_Cut" X_Y_Z="-3.; 0.; 0." /> +</subtraction> + +<box name="LS_UProfile_L750_Main" material="Aluminium" X_Y_Z="20.; 750.; 30. " /> +<subtraction name="LS_UProfile_L750" > + <posXYZ volume="LS_UProfile_L750_Main" /> + <posXYZ volume="LS_UProfile_L1460_Cut" X_Y_Z="3.; 0.; 0." /> +</subtraction> + +<gvxy name="LS_Top_Interface" material="Aluminium" dZ="30."> + <gvxy_point X_Y="914.3; 3484.44"/> + <gvxy_point X_Y="1146.47; 3571.68"/> + <gvxy_point X_Y="1141.27; 3656.86"/> + <gvxy_point X_Y="1054.98; 3656.86"/> + <gvxy_point X_Y="1054.98; 4070."/> + <gvxy_point X_Y="813.64; 4070."/> + <gvxy_point X_Y="774.65; 3494.2"/> +</gvxy> + +<gvxy name="LS_Bottom_Grabber_interface" material="Aluminium" dZ="30."> + <gvxy_point X_Y="-801.54; 2552.21"/> + <gvxy_point X_Y="-858.34; 2743.97"/> + <gvxy_point X_Y="-591.97; 2822.88"/> + <gvxy_point X_Y="-535.17; 2631.11"/> +</gvxy> + +<gvxy name="LS_Bottom_Interface" material="Aluminium" dZ="30."> + <gvxy_point X_Y="-558.42; 1731.46"/> + <gvxy_point X_Y="-616.93; 1928.98"/> + <gvxy_point X_Y="-678.34; 1910.78"/> + <gvxy_point X_Y="-727.9; 1985.99"/> + <gvxy_point X_Y="-570.48; 2124.21"/> + <gvxy_point X_Y="-437.49; 2163.6"/> + <gvxy_point X_Y="-329.56; 1799.25"/> +</gvxy> + +<box name="LS_MM_Connectors" material="Aluminium" X_Y_Z="76.; 40.; 30. " /> +<composition name="LS_MM_Connectors_Assembly" > + <posXYZ volume="LS_MM_Connectors" X_Y_Z="323.24; 1278.98; 0." rot="0. ; 0. ; -16.5" /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="596.23; 2200.58; 0." rot="0. ; 0. ; -16.5" /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="800.97; 2891.78; 0." rot="0. ; 0. ; -16.5" /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="922.31; 3368.81; 0." rot="0. ; 0. ; -4." /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="986.76; 4290.41; 0." rot="0. ; 0. ; -4." /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="824.; 4615.; 0." rot="0. ; 0. ; 90." /> +</composition> + +<box name="LS_KM_Joint" material="ShieldSteel" X_Y_Z="150.; 118.; 48. " /> + +<composition name="LS_Spacer_Frame_Assembly" > + <posXYZ volume="LS_StructuralPlate" X_Y_Z="0.; 0.; 18." /> + <posXYZ volume="LS_StructuralPlate" X_Y_Z="0.; 0.; -18." /> + <posXYZ volume="LS_Central_reference_bar" X_Y_Z="0.; 3235.5; 0." /> + <posXYZ volume="LS_Channel_section_L2000" X_Y_Z="0.; 2185.49; 0." /> + <posXYZ volume="LS_Channel_section_L1200" X_Y_Z="0.; 3885.51; 0." /> + <posXYZ volume="LS_Channel_section_L850" X_Y_Z="130.5; 3710.51; 0." /> + <posXYZ volume="LS_Channel_section_L850" X_Y_Z="-130.5; 3710.51; 0." /> + <posXYZ volume="LS_Channel_section_L1000" X_Y_Z="130.5; 2223.; 0." /> + <posXYZ volume="LS_Channel_section_L1000" X_Y_Z="-130.5; 2223.; 0." /> + <posXYZ volume="LS_UProfile_L1460" X_Y_Z="252.; 2455.49; 0." /> + <posXYZ volume="LS_UProfile_L1460" X_Y_Z="-252.; 2455.49; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="252.; 3760.5; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="-252.; 3760.5; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="465.; 3760.5; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="-465.; 3760.5; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="678.; 3760.5; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="-678.; 3760.5; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="465.; 2551.; 0." /> + <posXYZ volume="LS_UProfile_L750" X_Y_Z="-465.; 2551.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_Top_Interface" X_Y_Z="0.; 0.; 0." /> + <posXYZ volume="LS_Top_Interface" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_Bottom_Grabber_interface" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="LS_Bottom_Grabber_interface" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_Bottom_Interface" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="LS_Bottom_Interface" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_MM_Connectors_Assembly" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="LS_MM_Connectors_Assembly" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="0.; 956.; 0." rot="0. ; 0. ; 90." /> + <posXYZ volume="LS_MM_Connectors" X_Y_Z="0.; 4615.; 0." rot="0. ; 0. ; 90." /> + <posXYZ volume="LS_KM_Joint" X_Y_Z="-1130.01; 3970.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="LS_KM_Joint" X_Y_Z="1130.01; 3970.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="LS_KM_Joint" X_Y_Z="656.6; 1798.8; 0." rot="0. ; 0. ; -16.5" /> +</composition> + +<composition name="LS" > + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 0." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 45." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 90." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 135." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 180." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 225." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 270." /> + <posXYZ volume="LS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 315." /> +</composition> +<!-- LS Spacer Ftame --> + +<!-- SS Spacer Ftame --> +<gvxy name="SS_StructuralPlate_Main" material="Aluminium" dZ="5.9"> + <gvxy_point X_Y="154.8; 930."/> + <gvxy_point X_Y="745.; 4114.46"/> + <gvxy_point X_Y="745.; 4425."/> + <gvxy_point X_Y="0.01; 4425."/> + <gvxy_point X_Y="0.01; 930."/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut1" material="Aluminium" dZ="7."> + <gvxy_point X_Y="685.; 4242.5"/> + <gvxy_point X_Y="685.; 4375."/> + <gvxy_point X_Y="25.; 4375."/> + <gvxy_point X_Y="25.; 4242.5"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut2" material="Aluminium" dZ="7."> + <gvxy_point X_Y="449.11; 4102.75"/> + <gvxy_point X_Y="446.87; 4122.5"/> + <gvxy_point X_Y="125.; 4122.5"/> + <gvxy_point X_Y="125.; 4028.36"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut3" material="Aluminium" dZ="7."> + <gvxy_point X_Y="577.21; 3867.18"/> + <gvxy_point X_Y="620.57; 4101.07"/> + <gvxy_point X_Y="131.86; 3988.9"/> + <gvxy_point X_Y="131.86; 3969.4"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut4" material="Aluminium" dZ="7."> + <gvxy_point X_Y="395.9; 3847.5"/> + <gvxy_point X_Y="398.14; 3867.25"/> + <gvxy_point X_Y="125.; 3929.94"/> + <gvxy_point X_Y="125.; 3847.5"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut5" material="Aluminium" dZ="7."> + <gvxy_point X_Y="495.98; 3705.39"/> + <gvxy_point X_Y="495.98; 3747.5"/> + <gvxy_point X_Y="25.; 3747.5"/> + <gvxy_point X_Y="25.; 3475.7"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut6" material="Aluminium" dZ="7."> + <gvxy_point X_Y="488.74; 3225.16"/> + <gvxy_point X_Y="576.8; 3700.3"/> + <gvxy_point X_Y="45.63; 3441.26"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut7" material="Aluminium" dZ="7."> + <gvxy_point X_Y="408.58; 3177.5"/> + <gvxy_point X_Y="417.35; 3215.48"/> + <gvxy_point X_Y="25.; 3406.82"/> + <gvxy_point X_Y="25.; 3177.5"/> +</gvxy> + +<box name="SS_StructuralPlate_Cut8" material="Aluminium" X_Y_Z="92.; 70.; 7. " /> + +<gvxy name="SS_StructuralPlate_Cut9" material="Aluminium" dZ="7."> + <gvxy_point X_Y="429.19; 3037.5"/> + <gvxy_point X_Y="25.; 3037.5"/> + <gvxy_point X_Y="25.; 2483.96"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut10" material="Aluminium" dZ="7."> + <gvxy_point X_Y="342.44; 2435.8"/> + <gvxy_point X_Y="445.53; 2992.05"/> + <gvxy_point X_Y="50.98; 2451.7"/> + <gvxy_point X_Y="59.05; 2435.8"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut11" material="Aluminium" dZ="7."> + <gvxy_point X_Y="275.17; 2072.87"/> + <gvxy_point X_Y="330.64; 2372.16"/> + <gvxy_point X_Y="310.98; 2395.8"/> + <gvxy_point X_Y="39.37; 2395.8"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut12" material="Aluminium" dZ="7."> + <gvxy_point X_Y="245.39; 2045.82"/> + <gvxy_point X_Y="25.; 2347.65"/> + <gvxy_point X_Y="25.; 2045.82"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut13" material="Aluminium" dZ="7."> + <gvxy_point X_Y="144.83; 1534.74"/> + <gvxy_point X_Y="203.73; 1852.5"/> + <gvxy_point X_Y="125.; 1852.5"/> + <gvxy_point X_Y="125.; 1536.56"/> +</gvxy> + +<gvxy name="SS_StructuralPlate_Cut14" material="Aluminium" dZ="7."> + <gvxy_point X_Y="123.38; 980."/> + <gvxy_point X_Y="201.04; 1399."/> + <gvxy_point X_Y="25.; 1399."/> + <gvxy_point X_Y="25.; 980."/> +</gvxy> + +<subtraction name="SS_StructuralPlateSub" > + <posXYZ volume="SS_StructuralPlate_Main" /> + <posXYZ volume="SS_StructuralPlate_Cut1" /> + <posXYZ volume="SS_StructuralPlate_Cut2" /> + <posXYZ volume="SS_StructuralPlate_Cut3" /> + <posXYZ volume="SS_StructuralPlate_Cut4" /> + <posXYZ volume="SS_StructuralPlate_Cut5" /> + <posXYZ volume="SS_StructuralPlate_Cut6" /> + <posXYZ volume="SS_StructuralPlate_Cut7" /> + <posXYZ volume="SS_StructuralPlate_Cut8" X_Y_Z="-340.5; 3107.5; 0." /> + <posXYZ volume="SS_StructuralPlate_Cut9" /> + <posXYZ volume="SS_StructuralPlate_Cut10" /> + <posXYZ volume="SS_StructuralPlate_Cut11" /> + <posXYZ volume="SS_StructuralPlate_Cut12" /> + <posXYZ volume="SS_StructuralPlate_Cut13" /> + <posXYZ volume="SS_StructuralPlate_Cut14" /> +</subtraction> + +<composition name="SS_StructuralPlate" > + <posXYZ volume="SS_StructuralPlateSub" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="SS_StructuralPlateSub" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> +</composition> + +<box name="SS_Central_reference_bar" material="Aluminium" X_Y_Z="1012.; 100.; 28. " /> + +<box name="SS_Channel_section_L1100_Main" material="Aluminium" X_Y_Z="50.; 1100.; 30. " /> +<subtraction name="SS_Channel_section_L1100" > + <posXYZ volume="SS_Channel_section_L1100_Main" /> + <posXYZ volume="LS_Channel_section_L2000_Cut" /> +</subtraction> + + +<box name="SS_Channel_section_L650_Main" material="Aluminium" X_Y_Z="50.; 650.; 30. " /> +<subtraction name="SS_Channel_section_L650" > + <posXYZ volume="SS_Channel_section_L650_Main" /> + <posXYZ volume="LS_Channel_section_L2000_Cut" /> +</subtraction> + +<box name="SS_UProfile_L1000_Main" material="Aluminium" X_Y_Z="20.; 1000.; 30. " /> +<subtraction name="SS_UProfile_L1000" > + <posXYZ volume="SS_UProfile_L1000_Main" /> + <posXYZ volume="LS_UProfile_L1460_Cut" X_Y_Z="-3.; 0.; 0." /> +</subtraction> + +<box name="SS_UProfile_L920_Main" material="Aluminium" X_Y_Z="20.; 920.; 30. " /> +<subtraction name="SS_UProfile_L920" > + <posXYZ volume="SS_UProfile_L920_Main" /> + <posXYZ volume="LS_UProfile_L1460_Cut" X_Y_Z="-3.; 0.; 0." /> +</subtraction> + +<box name="SS_UProfile_L1200_Main" material="Aluminium" X_Y_Z="20.; 1200.; 30. " /> +<subtraction name="SS_UProfile_L1200" > + <posXYZ volume="SS_UProfile_L1200_Main" /> + <posXYZ volume="LS_UProfile_L1460_Cut" X_Y_Z="-3.; 0.; 0." /> +</subtraction> + +<box name="SS_UProfile_L700_Main" material="Aluminium" X_Y_Z="20.; 700.; 30. " /> +<subtraction name="SS_UProfile_L700" > + <posXYZ volume="SS_UProfile_L700_Main" /> + <posXYZ volume="LS_UProfile_L1460_Cut" X_Y_Z="-3.; 0.; 0." /> +</subtraction> + +<gvxy name="SS_Top_Interface" material="Aluminium" dZ="30."> + <gvxy_point X_Y="849.99; 3705.17"/> + <gvxy_point X_Y="849.99; 4260."/> + <gvxy_point X_Y="627.69; 4260."/> + <gvxy_point X_Y="627.69; 4106.34"/> + <gvxy_point X_Y="564.77; 3758.03"/> +</gvxy> + +<gvxy name="SS_Bottom_Grabber_interface" material="Aluminium" dZ="30."> + <gvxy_point X_Y="454.99; 1875."/> + <gvxy_point X_Y="454.99; 2075."/> + <gvxy_point X_Y="255.; 2075."/> + <gvxy_point X_Y="255.; 1875."/> +</gvxy> + +<gvxy name="SS_Bottom_Interface" material="Aluminium" dZ="30."> + <gvxy_point X_Y="442.2; 1397.5"/> + <gvxy_point X_Y="442.2; 1560.65"/> + <gvxy_point X_Y="397.; 1560.65"/> + <gvxy_point X_Y="397.; 1792.5"/> + <gvxy_point X_Y="194.29; 1792.5"/> + <gvxy_point X_Y="149.53; 1434.71"/> + <gvxy_point X_Y="204.54; 1397.5"/> +</gvxy> + +<box name="SS_MM_Connectors" material="Aluminium" X_Y_Z="76.; 40.; 30. " /> +<box name="SS_MM_Connectors_Lar" material="Aluminium" X_Y_Z="120.; 40.; 30. " /> +<composition name="SS_MM_Connectors_Assembly" > + <posXYZ volume="SS_MM_Connectors" X_Y_Z="214.86; 1243.14; 0." rot="0. ; 0. ; -10.5" /> + <posXYZ volume="SS_MM_Connectors" X_Y_Z="376.17; 2113.54; 0." rot="0. ; 0. ; -10.5" /> + <posXYZ volume="SS_MM_Connectors" X_Y_Z="497.16; 2766.34; 0." rot="0. ; 0. ; -10.5" /> + <posXYZ volume="SS_MM_Connectors" X_Y_Z="626.36; 3463.34; 0." rot="0. ; 0. ; -10.5" /> + <posXYZ volume="SS_MM_Connectors_Lar" X_Y_Z="766.02; 4337.75; 0." rot="0. ; 0. ; -10.5" /> + <posXYZ volume="SS_MM_Connectors" X_Y_Z="624.; 4427.; 0." rot="0. ; 0. ; 90." /> +</composition> + +<box name="SS_KM_Joint" material="ShieldSteel" X_Y_Z="154.; 101.; 48. " /> + +<composition name="SS_Spacer_Frame_Assembly" > + <posXYZ volume="SS_StructuralPlate" X_Y_Z="0.; 0.; 18." /> + <posXYZ volume="SS_StructuralPlate" X_Y_Z="0.; 0.; -18." /> + <posXYZ volume="SS_Central_reference_bar" X_Y_Z="0.; 3107.5; 0." /> + <posXYZ volume="LS_Channel_section_L2000" X_Y_Z="0.; 2057.49; 0." /> + <posXYZ volume="SS_Channel_section_L1100" X_Y_Z="0.; 3707.51; 0." /> + <posXYZ volume="SS_Channel_section_L1100" X_Y_Z="-110.5; 3707.51; 0." /> + <posXYZ volume="SS_Channel_section_L1100" X_Y_Z="110.5; 3707.51; 0." /> + <posXYZ volume="SS_Channel_section_L650" X_Y_Z="-110.5; 1722.; 0." /> + <posXYZ volume="SS_Channel_section_L650" X_Y_Z="110.5; 1722.; 0." /> + <posXYZ volume="SS_UProfile_L1000" X_Y_Z="-345.; 3742.5; 0." /> + <posXYZ volume="SS_UProfile_L1000" X_Y_Z="345.; 3742.5; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_UProfile_L920" X_Y_Z="-195.; 3782.5; 0." /> + <posXYZ volume="SS_UProfile_L920" X_Y_Z="195.; 3782.5; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_UProfile_L1200" X_Y_Z="-195.; 2457.49; 0." /> + <posXYZ volume="SS_UProfile_L1200" X_Y_Z="195.; 2457.49; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_UProfile_L700" X_Y_Z="-360.; 2587.5; 0." /> + <posXYZ volume="SS_UProfile_L700" X_Y_Z="360.; 2587.5; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_Top_Interface" X_Y_Z="0.; 0.; 0." /> + <posXYZ volume="SS_Top_Interface" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_Bottom_Grabber_interface" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="SS_Bottom_Grabber_interface" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_Bottom_Interface" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="SS_Bottom_Interface" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_MM_Connectors_Assembly" X_Y_Z="0.; 0.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="SS_MM_Connectors_Assembly" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="SS_MM_Connectors" X_Y_Z="0.; 928.; 0." rot="0. ; 0. ; 90." /> + <posXYZ volume="SS_MM_Connectors" X_Y_Z="0.; 4427.; 0." rot="0. ; 0. ; 90." /> + <posXYZ volume="SS_KM_Joint" X_Y_Z="-927.01; 4160.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="SS_KM_Joint" X_Y_Z="927.01; 4160.; 0." rot="0. ; 0. ; 0." /> + <posXYZ volume="SS_KM_Joint" X_Y_Z="-532.01; 1975.; 0." rot="0. ; 0. ; 0." /> +</composition> + +<composition name="SS_AssemblyRot" > + <posXYZ volume="SS_Spacer_Frame_Assembly" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 22.5" /> +</composition> + +<composition name="SS" > + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 0." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 45." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 90." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 135." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 180." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 225." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 270." /> + <posXYZ volume="SS_AssemblyRot" X_Y_Z="0.; 0.; 0." rot=" 0. ; 0. ; 315." /> +</composition> +<!-- End SS Spacer_Frame--> + +<composition name="LS_and_SS_SideA" > + <posXYZ volume="LS" X_Y_Z="0.; 0.; 7641." rot=" 0. ; 0. ; 0." /> + <posXYZ volume="SS" X_Y_Z="0.; 0.; 7177." rot=" 0. ; 0. ; 0." /> +</composition> + +<composition name="LS_and_SS_SideC" > + <posXYZ volume="LS" X_Y_Z="0.; 0.; -7641." rot=" 0. ; 0. ; 0." /> + <posXYZ volume="SS" X_Y_Z="0.; 0.; -7177." rot=" 0. ; 0. ; 0." /> +</composition> + +<composition name="NSW_Spacer" > + <posXYZ volume="LS_and_SS_SideA" /> + <posXYZ volume="LS_and_SS_SideC" /> +</composition> + +</section> + + + + + + + + + + + + + + + +<!--====================================Support Structures and Hub===============================================--> + +<section name = "NSW Aluminum Structure and HUB" + version = "0.0" + date = "25-04-2017" + author = "Georgian Engineering Team - Niko Tsutskiridze" + top_volume = "NSW_Aluminum_Structure_and_HUB"> + +<!-- ********************************************** New Hub ************************************************** --> + +<!-- Horizontal Shielding --> +<gvxysx name="Hub_Outer_Plate1" material="Lead" dZ="517.5"> + <gvxy_point X_Y="-163.1; 820.05"/> + <gvxy_point X_Y=" -169.25; 850.95"/> +</gvxysx> + + <gvxysx name="Hub_Outer_Plate2" material="PolyBoron207HD5" dZ="517.5"> + <gvxy_point X_Y="-163.1; 820."/> + <gvxy_point X_Y=" -153.15; 770."/> +</gvxysx> + +<gvxysx name="Hub_Outer_Plate3" material="Lead" dZ="504."> + <gvxy_point X_Y="-163.1; 820.05"/> + <gvxy_point X_Y=" -169.25; 850.95"/> +</gvxysx> + +<gvxysx name="Hub_Outer_Plate4" material="PolyBoron207HD5" dZ="545."> + <gvxy_point X_Y="-163.1; 820."/> + <gvxy_point X_Y=" -153.15; 770."/> +</gvxysx> + +<gvxysx name="Hub_Outer_Plate5" material="Lead" dZ="30."> + <gvxy_point X_Y="-163.1; 820.05"/> + <gvxy_point X_Y=" -169.25; 850.95"/> +</gvxysx> + +<gvxysx name="Hub_Outer_Plate6" material="PolyBoron207HD5" dZ="30."> + <gvxy_point X_Y="-163.1; 820."/> + <gvxy_point X_Y=" -153.15; 770."/> +</gvxysx> + +<gvxysx name="Hub_Outer_Plate7" material="Lead" dZ="85."> + <gvxy_point X_Y="-163.1; 820.05"/> + <gvxy_point X_Y=" -169.25; 850.95"/> +</gvxysx> + +<gvxysx name="Hub_Outer_Plate8" material="PolyBoron207HD5" dZ="126."> +<gvxy_point X_Y="-163.1; 820."/> + <gvxy_point X_Y=" -153.15; 770."/> +</gvxysx> + +<composition name="Horizontal_Shielding_ForRot_Spec" > + <posXYZ volume="Hub_Outer_Plate5" X_Y_Z="0.; 0.; 908.2" /> + <posXYZ volume="Hub_Outer_Plate6" X_Y_Z="0.; 0.; 908.2" /> +</composition> + +<composition name="Horizontal_Shielding_ForRot_Spec2" > + <posXYZ volume="Hub_Outer_Plate3" X_Y_Z="0.; 0.; 248.7" rot=" 0. ; 0. ; 22.5" /> + <posXYZ volume="Hub_Outer_Plate4" X_Y_Z="0.; 0.; 228.2" rot=" 0. ; 0. ; 22.5" /> +</composition> + +<composition name="Horizontal_Shielding_ForRot" > + <posXYZ volume="Hub_Outer_Plate1" X_Y_Z="0.; 0.; 643.45" /> + <posXYZ volume="Hub_Outer_Plate2" X_Y_Z="0.; 0.; 643.45" /> + <posXYZ volume="Horizontal_Shielding_ForRot_Spec2" /> + <posXYZ volume="Hub_Outer_Plate7" X_Y_Z="0.; 0.; 39.2" /> + <posXYZ volume="Hub_Outer_Plate8" X_Y_Z="0.; 0.; 18.7" /> +</composition> + +<composition name="Horizontal_Shielding" > + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 0." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 45." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 90." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 135." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 180." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 225." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 270." /> + <posXYZ volume="Horizontal_Shielding_ForRot" rot=" 0. ; 0. ; 315." /> + <posXYZ volume="Horizontal_Shielding_ForRot_Spec" rot=" 0. ; 0. ; 22.5" /> + <posXYZ volume="Horizontal_Shielding_ForRot_Spec" rot=" 0. ; 0. ; 67.5" /> + <posXYZ volume="Horizontal_Shielding_ForRot_Spec" rot=" 0. ; 0. ; -22.5" /> + <posXYZ volume="Horizontal_Shielding_ForRot_Spec" rot=" 0. ; 0. ; -67.5" /> +</composition> +<!-- End Horizontal Shielding (New Hub) --> + +<!-- Other Parts of New Hub --> +<pcon name="HUB_Extension_inner_tube" material="ShieldSteel" nbPhi="20"> + <polyplane Rio_Z="172.; 225.; 997.75"/> + <polyplane Rio_Z=" 152.3; 225.; 0."/> +</pcon> +<tubs name="HUB_Extension_plate_HO_side" material="ShieldSteel" Rio_Z="172.5; 530.; 59.2" /> +<tubs name="Copper_disk_Extension" material="Copper" Rio_Z="225.5; 454.5; 998." /> +<tubs name="HUB_Extension_outer_tube" material="ShieldSteel" Rio_Z="455.5; 530.; 998.7" /> + +<pcon name="HUB_Main_part_inner_tube" material="ShieldSteel" nbPhi="20"> + <polyplane Rio_Z="148.7; 225.; 858.5"/> + <polyplane Rio_Z=" 137.; 225.; 0."/> +</pcon> + +<tubs name="Copper_disk_Main_part" material="Copper" Rio_Z="225.5; 699.5; 760." /> + +<gvxysxy name="Plate_IP_Main" material="ShieldSteel" dZ="91.6"> + <gvxy_point X_Y="769.95; 153.16"/> + <gvxy_point X_Y="652.77; 436.16"/> + <gvxy_point X_Y="436.16; 652.77"/> + <gvxy_point X_Y="153.16; 769.95"/> +</gvxysxy> + +<tubs name="Plate_IP_Cut_Tube" material="ShieldSteel" Rio_Z="0.; 226.; 95." /> + +<subtraction name="Plate_IP" > + <posXYZ volume="Plate_IP_Main" /> + <posXYZ volume="Plate_IP_Cut_Tube" /> +</subtraction> + +<gvxysxy name="HUB_Main_part_outer_tube_Main" material="ShieldSteel" dZ="767.7"> + <gvxy_point X_Y="769.95; 153.16"/> + <gvxy_point X_Y="652.77; 436.16"/> + <gvxy_point X_Y="436.16; 652.77"/> + <gvxy_point X_Y="153.16; 769.95"/> +</gvxysxy> + +<tubs name="HUB_Main_part_outer_tube_Cut_Tube" material="ShieldSteel" Rio_Z="0.; 700.; 770." /> + +<subtraction name="HUB_Main_part_outer_tube" > + <posXYZ volume="HUB_Main_part_outer_tube_Main" /> + <posXYZ volume="HUB_Main_part_outer_tube_Cut_Tube" /> +</subtraction> + +<gvxysxy name="Plate_HO_Main" material="ShieldSteel" dZ="78."> + <gvxy_point X_Y="769.95; 153.16"/> + <gvxy_point X_Y="652.77; 436.16"/> + <gvxy_point X_Y="436.16; 652.77"/> + <gvxy_point X_Y="153.16; 769.95"/> +</gvxysxy> + +<tubs name="Plate_HO_Cut_Tube" material="ShieldSteel" Rio_Z="0.; 150.5; 80." /> + +<subtraction name="Plate_HO" > + <posXYZ volume="Plate_HO_Main" /> + <posXYZ volume="Plate_HO_Cut_Tube" /> +</subtraction> + +<tubs name="Plate_HO_SupportTube" material="ShieldSteel" Rio_Z="585.; 770.; 21.4" profile="-15.; 210." nbPhi="20"/> + +<tubs name="Disque_shileding_ext" material="PolyBoron207HD5" Rio_Z="532.5; 800.; 40." /> +<tubs name="Plaque_polyboron_droite_v2" material="PolyBoron207HD5" Rio_Z="532.5; 582.5; 200." /> + +<composition name="Hub_Other_Parts_Assembly" > + <posXYZ volume="HUB_Extension_plate_HO_side" X_Y_Z="0.; 0.; 1920.6" /> + <posXYZ volume="HUB_Extension_inner_tube" X_Y_Z="0.; 0.; 892.25" /> + <posXYZ volume="Copper_disk_Extension" X_Y_Z="0.; 0.; 1391.95" /> + <posXYZ volume="HUB_Extension_outer_tube" X_Y_Z="0.; 0.; 1391.6" /> + <posXYZ volume="HUB_Main_part_inner_tube" X_Y_Z="0.; 0.; -45.8" /> + <posXYZ volume="Copper_disk_Main_part" X_Y_Z="0.; 0.; 434.2" /> + <posXYZ volume="Plate_IP" /> + <posXYZ volume="HUB_Main_part_outer_tube" X_Y_Z="0.; 0.; 430.3" /> + <posXYZ volume="Disque_shileding_ext" X_Y_Z="0.; 0.; 944.2" /> + <posXYZ volume="Plaque_polyboron_droite_v2" X_Y_Z="0.; 0.; 1064.25" /> + <posXYZ volume="Plate_HO" X_Y_Z="0.; 0.; 853.2" /> + <posXYZ volume="Plate_HO_SupportTube" X_Y_Z="0.; 0.; 902.95" /> +</composition> +<!-- End Other Parts of New Hub --> + +<composition name="New_Hub" > + <posXYZ volume="Hub_Other_Parts_Assembly" /> + <posXYZ volume="Horizontal_Shielding" /> +</composition> +<!-- ************************************************************************************** End New Hub *********************************************** --> + +<!-- **************************************************** Inner Spoke ******************************************************************* --> +<gvxysx name="Base_Leg" material="Aluminium" dZ="390."> + <gvxy_point X_Y="40.; 531.5"/> + <gvxy_point X_Y=" 40.; -501.5"/> + <gvxy_point X_Y="150.; -501.5"/> + <gvxy_point X_Y=" 150.; -531.5"/> +</gvxysx> + +<gvxy name="JOINING_BAR3" material="Aluminium" dZ="150."> + <gvxy_point X_Y="75.; 23."/> + <gvxy_point X_Y="75.; 7."/> + <gvxy_point X_Y="640.; 7."/> + <gvxy_point X_Y="640.; -23."/> + <gvxy_point X_Y="-640.; -23."/> + <gvxy_point X_Y="-640.; 7."/> + <gvxy_point X_Y="-75.; 7."/> + <gvxy_point X_Y="-75.; 23."/> +</gvxy> + +<box name="LATERAL_PLATE_L" material="Aluminium" X_Y_Z="21.; 1680.; 390. " /> + +<gvxysx name="Front_plate2" material="Aluminium" dZ="14."> + <gvxy_point X_Y="98.65; 2867.18"/> + <gvxy_point X_Y=" 89.94; 2805.19"/> + <gvxy_point X_Y="89.94; 2587.18"/> +</gvxysx> + +<gvxysx name="LS_OUTER3_MainBox" material="Aluminium" dZ="30."> + <gvxy_point X_Y="323.7; 450."/> + <gvxy_point X_Y=" 197.21; -450."/> +</gvxysx> + +<box name="LS_OUTER3_CutBox" material="Aluminium" X_Y_Z="250.; 600.; 35. " /> + +<subtraction name="LS_OUTER3" > + <posXYZ volume="LS_OUTER3_MainBox" /> + <posXYZ volume="LS_OUTER3_CutBox" X_Y_Z=" 0.; -50.; 0. " /> +</subtraction> + +<gvxysx name="REAR_PLATE1" material="Aluminium" dZ="30."> + <gvxy_point X_Y="176.95; 309.25"/> + <gvxy_point X_Y=" 90.03; -309.25"/> +</gvxysx> + +<gvxy name="REAR_PLATE2" material="Aluminium" dZ="30."> + <gvxy_point X_Y="273.95; 174.5"/> + <gvxy_point X_Y="224.9; -174.5"/> + <gvxy_point X_Y="125.; -174.5"/> + <gvxy_point X_Y="125.; -154.5"/> + <gvxy_point X_Y="-125.; -154.5"/> + <gvxy_point X_Y="-125.; -174.5"/> + <gvxy_point X_Y="-224.9; -174.5"/> + <gvxy_point X_Y="-273.95; 174.5"/> +</gvxy> + +<box name="SHIM1" material="Aluminium" X_Y_Z="700.; 150.; 21.6 " /> +<box name="SHIM2" material="Aluminium" X_Y_Z="350.; 150.; 21.6 " /> + +<gvxysx name="REAR_PLATE3" material="Aluminium" dZ="30."> + <gvxy_point X_Y="323.7; 80."/> + <gvxy_point X_Y=" 301.21; -80."/> +</gvxysx> + +<box name="KM_FRONT_PLATE1" material="ShieldSteel" X_Y_Z="34.; 160.; 250. " /> +<box name="KM_LOCKING_PLATE1" material="ShieldSteel" X_Y_Z="20.; 120.; 200. " /> + +<gvxy name="JOINING_BAR2" material="Aluminium" dZ="29."> + <gvxy_point X_Y="175.; 75."/> + <gvxy_point X_Y="964.81; -64.27"/> + <gvxy_point X_Y="938.77; -211.99"/> + <gvxy_point X_Y="161.88; -75."/> + <gvxy_point X_Y="-161.88; -75."/> + <gvxy_point X_Y="-938.77; -211.99"/> + <gvxy_point X_Y="-964.81; -64.27"/> + <gvxy_point X_Y="-175.; 75."/> +</gvxy> + +<gvxy name="JOINING_BAR1" material="Aluminium" dZ="29."> + <gvxy_point X_Y="350.; 75."/> + <gvxy_point X_Y="1196.93; -74.34"/> + <gvxy_point X_Y="1170.88; -222.06"/> + <gvxy_point X_Y="336.88; -75."/> + <gvxy_point X_Y="-336.88; -75."/> + <gvxy_point X_Y="-1170.88; -222.06"/> + <gvxy_point X_Y="-1196.93; -74.34"/> + <gvxy_point X_Y="-350.; 75."/> +</gvxy> + +<composition name="Inner_Spoke_Assembly" > + <posXYZ volume="Base_Leg" X_Y_Z="0.; 1301.5; 0." /> + <posXYZ volume="JOINING_BAR1" X_Y_Z="0.; 4385.; -231.2" /> + <posXYZ volume="JOINING_BAR2" X_Y_Z="0.; 3065.; -231.2" /> + <posXYZ volume="JOINING_BAR3" X_Y_Z="0.; 1715.; -218.05" rot=" 90. ; 0. ; 0." /> + <posXYZ volume="LATERAL_PLATE_L" X_Y_Z="-217.3; 3635.56; 0." rot=" 0. ; 0. ; 8." /> + <posXYZ volume="LATERAL_PLATE_L" X_Y_Z="217.3; 3635.56; 0." rot=" 0. ; 0. ; -8." /> + <posXYZ volume="Front_plate2" X_Y_Z="0.; 0.; 188." /> + <posXYZ volume="LS_OUTER3" X_Y_Z="0.; 4018.41; 180." /> + <posXYZ volume="REAR_PLATE1" X_Y_Z="0.; 3114.99; -180." /> + <posXYZ volume="REAR_PLATE2" X_Y_Z="0.; 3939.93; -180." /> + <posXYZ volume="REAR_PLATE3" X_Y_Z="0.; 4388.42; -180." /> + <posXYZ volume="SHIM1" X_Y_Z="0.; 4385.; -205.85" /> + <posXYZ volume="SHIM2" X_Y_Z="0.; 3065.; -205.85" /> + <posXYZ volume="KM_FRONT_PLATE1" X_Y_Z="318.34; 4156.56; 25." rot=" 0. ; 0. ; -8." /> + <posXYZ volume="KM_FRONT_PLATE1" X_Y_Z="-318.34; 4156.56; 25." rot=" 0. ; 0. ; 8." /> + <posXYZ volume="KM_LOCKING_PLATE1" X_Y_Z="270.71; 4163.26; 0." rot=" 0. ; 0. ; -8." /> + <posXYZ volume="KM_LOCKING_PLATE1" X_Y_Z="-270.71; 4163.26; 0." rot=" 0. ; 0. ; 8." /> +</composition> + +<composition name="Inner_Spoke" > + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 22.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 67.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 112.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 157.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 202.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 247.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 292.5" /> + <posXYZ volume="Inner_Spoke_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 337.5" /> +</composition> + +<!-- *********************************************************************************** End Inner Spoke **************************************************\ +************************************* --> + +<!-- *********************************************************************************** Outer Spoke ******************************************************\ +************************************* --> + +<box name="NSW_F1_spoke_MainBox" material="Aluminium" X_Y_Z="135.; 1060.; 185. " /> +<box name="NSW_F1_spoke_CutBox" material="Aluminium" X_Y_Z="111.; 1070.; 161. " /> + +<subtraction name="NSW_F1_spoke" > + <posXYZ volume="NSW_F1_spoke_MainBox" /> + <posXYZ volume="NSW_F1_spoke_CutBox" /> +</subtraction> +<box name="NSW_F1_spoke_Bot_Plate" material="Aluminium" X_Y_Z="300.; 48.; 300. " /> + +<gvxysx name="Plaque_interface2" material="Aluminium" dZ="37."> + <gvxy_point X_Y="182.5; 375."/> + <gvxy_point X_Y="146.5; 213.2"/> + <gvxy_point X_Y="90.; -375."/> +</gvxysx> + +<gvxysx name="Plaque_interface2.1" material="Aluminium" dZ="45."> + <gvxy_point X_Y="182.5; 375."/> + <gvxy_point X_Y="146.5; 213.2"/> + <gvxy_point X_Y="90.; -375."/> +</gvxysx> + +<box name="NSW_SS_spoke_Pillar_MainBox" material="Aluminium" X_Y_Z="135.; 2683.25; 185. " /> +<box name="NSW_SS_spoke_Pillar_CutBox" material="Aluminium" X_Y_Z="113.; 2685.; 163. " /> + +<subtraction name="NSW_SS_spoke_Pillar" > + <posXYZ volume="NSW_SS_spoke_Pillar_MainBox" /> + <posXYZ volume="NSW_SS_spoke_Pillar_CutBox" /> +</subtraction> + +<box name="Spoke_Joint" material="ShieldSteel" X_Y_Z="75.; 85.; 124.4 " /> + +<gvxysx name="Manifolds_Support_Main" material="Aluminium" dZ="150."> + <gvxy_point X_Y="585.; 75."/> + <gvxy_point X_Y=" 551.74; -75."/> +</gvxysx> + +<box name="Manifolds_Support_CutBox1" material="Aluminium" X_Y_Z="1180.; 140.; 140. " /> +<box name="Manifolds_Support_CutBox2" material="Aluminium" X_Y_Z="160.; 90.; 160. " /> + +<subtraction name="Manifolds_Support" > + <posXYZ volume="Manifolds_Support_Main" /> + <posXYZ volume="Manifolds_Support_CutBox1" /> + <posXYZ volume="Manifolds_Support_CutBox2" X_Y_Z="135.; -45.; 0." /> +</subtraction> + +<box name="Cale" material="Aluminium" X_Y_Z="135.; 280.; 52. " /> +<box name="JD_JOINT2.1_Plate1" material="Aluminium" X_Y_Z="250.; 270.; 20. " /> +<box name="Shim_JD" material="Aluminium" X_Y_Z="250.; 270.; 29. " /> +<box name="JD_JOINT1_Pipe_MainBox" material="Aluminium" X_Y_Z="1300.; 120.; 80." /> +<box name="JD_JOINT1_Pipe_CutBox" material="Aluminium" X_Y_Z="1305.; 100.; 60. " /> + +<subtraction name="JD_JOINT1_Pipe" > + <posXYZ volume="JD_JOINT1_Pipe_MainBox" /> + <posXYZ volume="JD_JOINT1_Pipe_CutBox" /> +</subtraction> + +<box name="JD_JOINT2_Pipe_MainBox" material="Aluminium" X_Y_Z="900.; 120.; 80." /> + +<subtraction name="JD_JOINT2_Pipe" > + <posXYZ volume="JD_JOINT2_Pipe_MainBox" /> + <posXYZ volume="JD_JOINT1_Pipe_CutBox" /> +</subtraction> + +<box name="KM_FRONT_PLATE.1.1" material="ShieldSteel" X_Y_Z="27.; 272.; 120. " /> +<box name="Manifolds_Support_Plate" material="Aluminium" X_Y_Z="9.8; 275.; 175. " /> +<box name="AL_BAR_KM_INCLINED_PLATE" material="Aluminium" X_Y_Z="290.; 38.; 67. " /> + +<composition name="Outer_Spoke_Assembly" > + <posXYZ volume="NSW_F1_spoke" X_Y_Z="0.; 1350.; 0." /> + <posXYZ volume="NSW_F1_spoke_Bot_Plate" X_Y_Z="0.; 795.95; 0." /> + <posXYZ volume="Manifolds_Support" X_Y_Z="0.; 4515.33; 0." /> + <posXYZ volume="Plaque_interface2" X_Y_Z="0.; 1745.; 111.05" /> + <posXYZ volume="Plaque_interface2.1" X_Y_Z="0.; 1745.; -115.05" /> + <posXYZ volume="NSW_SS_spoke_Pillar" X_Y_Z="371.; 3267.85; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="NSW_SS_spoke_Pillar" X_Y_Z="-371.; 3267.85; 0." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="610.52; 4348.24; 154.75" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="322.65; 3049.77; 154.75" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="-610.52; 4348.24; 154.75" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="-322.65; 3049.77; 154.75" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Cale" X_Y_Z="537.79; 4020.21; -118.55" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Cale" X_Y_Z="338.24; 3120.06; -118.55" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Cale" X_Y_Z="-537.79; 4020.21; -118.55" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Cale" X_Y_Z="-338.24; 3120.06; -118.55" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="515.; 4020.2; -154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="315.; 3120.6; -154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="-515.; 4020.2; -154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="-315.; 3120.6; -154.6" /> + <posXYZ volume="Shim_JD" X_Y_Z="515.; 4020.2; -261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="315.; 3120.6; -261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="-515.; 4020.2; -261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="-315.; 3120.6; -261.55" /> + <posXYZ volume="JD_JOINT1_Pipe" X_Y_Z="0.; 4020.2; -207." /> + <posXYZ volume="JD_JOINT2_Pipe" X_Y_Z="0.; 3120.6; -207." /> + <posXYZ volume="KM_FRONT_PLATE.1.1" X_Y_Z="641.41; 4289.16; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="KM_FRONT_PLATE.1.1" X_Y_Z="-641.41; 4289.16; 0." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Manifolds_Support_Plate" X_Y_Z="560.93; 4459.11; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Manifolds_Support_Plate" X_Y_Z="-560.93; 4459.11; 0." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="AL_BAR_KM_INCLINED_PLATE" X_Y_Z="-243.; 4099.25; -228.5" /> +</composition> + +<!-- Outer Spoke Foot --> +<gvxysx name="Plaque_interface2_SpecMain" material="Aluminium" dZ="37."> + <gvxy_point X_Y="182.5; 375."/> + <gvxy_point X_Y="146.5; 213.2"/> + <gvxy_point X_Y="90.; -375."/> +</gvxysx> + +<box name="Plaque_interface2_Spec_CutBox" material="Aluminium" X_Y_Z="160.; 260.; 13. " /> + +<subtraction name="Plaque_interface2_Spec" > + <posXYZ volume="Plaque_interface2_SpecMain" /> + <posXYZ volume="Plaque_interface2_Spec_CutBox" X_Y_Z="-120.94; 337.19; -12.5" rot=" 0. ; 0. ; 12.5" /> +</subtraction> + +<gvxysx name="Plaque_interface2.1_SpecMain" material="Aluminium" dZ="45."> + <gvxy_point X_Y="182.5; 375."/> + <gvxy_point X_Y="146.5; 213.2"/> + <gvxy_point X_Y="90.; -375."/> +</gvxysx> + +<subtraction name="Plaque_interface2.1_Spec" > + <posXYZ volume="Plaque_interface2.1_SpecMain" /> + <posXYZ volume="Plaque_interface2_Spec_CutBox" X_Y_Z="-120.94; 337.19; 16.5" rot=" 0. ; 0. ; 12.5" /> +</subtraction> + +<box name="NSW_SS_spoke_PillarSpec_MainBox" material="ShieldSteel" X_Y_Z="135.; 2818.1; 210. " /> +<box name="NSW_SS_spoke_PillarSpec_CutBox" material="Aluminium" X_Y_Z="91.; 2820.; 166. " /> + +<subtraction name="NSW_SS_spokeSpec_Pillar" > + <posXYZ volume="NSW_SS_spoke_PillarSpec_MainBox" /> + <posXYZ volume="NSW_SS_spoke_PillarSpec_CutBox" /> +</subtraction> + +<box name="Cale_Spec" material="Aluminium" X_Y_Z="135.; 280.; 38.6 " /> +<box name="Spoke_Joint1.2" material="Aluminium" X_Y_Z="66.; 100.; 111.9 " /> + +<box name="BOTTOM_PLATE.1_Horisontal_Plate" material="ShieldSteel" X_Y_Z="29.8; 775.; 495. " /> +<box name="BOTTOM_PLATE.1_Vertical_Main_Plate" material="ShieldSteel" X_Y_Z="460.; 640.; 35. " /> + +<gvxy name="Connecting_Plates2.1" material="Aluminium" dZ="22."> + <gvxy_point X_Y="-252.; 130.65"/> + <gvxy_point X_Y="70.; 130.65"/> + <gvxy_point X_Y="252.; 25.65"/> + <gvxy_point X_Y="258.6; -124.1"/> + <gvxy_point X_Y="108.7; -130.65"/> + <gvxy_point X_Y="-252.; 19.35"/> +</gvxy> + +<box name="Tube_alu_feet_MainBox" material="Aluminium" X_Y_Z="1050.; 135.; 185. " /> +<box name="Tube_alu_feet_CutBox" material="Aluminium" X_Y_Z="1055.; 111.4; 161.4 " /> + +<subtraction name="Tube_alu_feet" > + <posXYZ volume="Tube_alu_feet_MainBox" /> + <posXYZ volume="Tube_alu_feet_CutBox" X_Y_Z="-120.94; 337.19; 16.5" rot=" 0. ; 0. ; 12.5" /> +</subtraction> + +<box name="Fix_nut" material="ShieldSteel" X_Y_Z="50.; 52.; 290. " /> + +<gvxy name="Beam_Interface" material="Aluminium" dZ="300."> + <gvxy_point X_Y="-80.; 73.4"/> + <gvxy_point X_Y="80.; 73.4"/> + <gvxy_point X_Y="80.; -73.4"/> + <gvxy_point X_Y="-80.; 28.5"/> +</gvxy> + +<gvxy name="Beam_Interface2" material="Aluminium" dZ="300."> + <gvxy_point X_Y="-80.; 79.8"/> + <gvxy_point X_Y="80.; 79.8"/> + <gvxy_point X_Y="80.; 12.6"/> + <gvxy_point X_Y="-80.; -79.8"/> +</gvxy> + +<box name="LS_T_Joint" material="ShieldSteel" X_Y_Z="80.; 70.; 134.9 " /> +<box name="LS_T_Joint2" material="ShieldSteel" X_Y_Z="77.; 67.; 147.4 " /> + +<gvxy name="Renfort_Bas1_MainBox" material="Aluminium" dZ="135."> + <gvxy_point X_Y="-337.73; -67.5"/> + <gvxy_point X_Y="-251.72; 67.5"/> + <gvxy_point X_Y="251.72; 67.5"/> + <gvxy_point X_Y="337.27; -67.5"/> +</gvxy> + +<box name="Renfort_Bas1_CutBox" material="Aluminium" X_Y_Z="680.; 115.; 115. " /> + + +<subtraction name="Renfort_Bas1" > + <posXYZ volume="Renfort_Bas1_MainBox" /> + <posXYZ volume="Renfort_Bas1_CutBox" /> +</subtraction> + +<composition name="Outer_Spoke_Assembly_FOOT1" > + <posXYZ volume="NSW_F1_spoke" X_Y_Z="0.; 1350.; 0." /> + <posXYZ volume="NSW_F1_spoke_Bot_Plate" X_Y_Z="0.; 795.95; 0." /> + <posXYZ volume="Plaque_interface2_Spec" X_Y_Z="0.; 1745.; 111.05" /> + <posXYZ volume="Plaque_interface2.1_Spec" X_Y_Z="0.; 1745.; -115.05" /> + <posXYZ volume="NSW_SS_spoke_Pillar" X_Y_Z="371.; 3267.85; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="NSW_SS_spokeSpec_Pillar" X_Y_Z="-385.59; 3333.67; 0." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Shim_JD" X_Y_Z="515.; 4020.2; -261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="315.; 3120.6; -261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="-515.; 4020.2; -261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="-315.; 3120.6; -261.55" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="515.; 4020.2; -154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="315.; 3120.6; -154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="-515.; 4020.2; -154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="-315.; 3120.6; -154.6" /> + <posXYZ volume="Cale" X_Y_Z="537.79; 4020.21; -118.55" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Cale" X_Y_Z="338.24; 3120.06; -118.55" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Cale_Spec" X_Y_Z="-537.79; 4020.21; -124.35" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Cale_Spec" X_Y_Z="-338.24; 3120.06; -124.35" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="JD_JOINT1_Pipe" X_Y_Z="0.; 4020.2; -207." /> + <posXYZ volume="JD_JOINT2_Pipe" X_Y_Z="0.; 3120.6; -207." /> + <posXYZ volume="AL_BAR_KM_INCLINED_PLATE" X_Y_Z="-243.; 4099.25; -228.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="322.65; 3049.77; 154.75" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="610.52; 4348.24; 154.75" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Spoke_Joint1.2" X_Y_Z="-322.65; 3049.28; 161." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Spoke_Joint1.2" X_Y_Z="-610.4; 4347.75; 161." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="KM_FRONT_PLATE.1.1" X_Y_Z="641.41; 4289.16; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="BOTTOM_PLATE.1_Horisontal_Plate" X_Y_Z="-675.29; 4889.64; -29." rot=" 0. ; 0. ; -45." /> + <posXYZ volume="BOTTOM_PLATE.1_Vertical_Main_Plate" X_Y_Z="-491.47; 4727.04; -257.5" rot=" 0. ; 0. ; -45." /> + <posXYZ volume="Connecting_Plates2.1" X_Y_Z="475.73; 4596.28; 103.55" rot=" 0. ; 0. ; -15." /> + <posXYZ volume="Connecting_Plates2.1" X_Y_Z="475.73; 4596.28; -103.55" rot=" 0. ; 0. ; -15." /> + <posXYZ volume="Tube_alu_feet" X_Y_Z="35.49; 4779.63; 0." rot=" 0. ; 0. ; -15." /> + <posXYZ volume="Fix_nut" X_Y_Z="-840.79; 4666.23; -5." rot=" 0. ; 0. ; -45." /> + <posXYZ volume="Fix_nut" X_Y_Z="-443.82; 5063.2; -5." rot=" 0. ; 0. ; -45." /> + <posXYZ volume="Beam_Interface" X_Y_Z="-716.12; 4723.86; 0." rot=" 0. ; 0. ; 45." /> + <posXYZ volume="Beam_Interface2" X_Y_Z="-496.92; 4934.01; 0." rot=" 0. ; 0. ; 45." /> + <posXYZ volume="LS_T_Joint" X_Y_Z="-649.; 4560.58; -172.5" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="LS_T_Joint2" X_Y_Z="-356.49; 4881.55; -166.25" rot=" 0. ; 0. ; 75." /> + <posXYZ volume="Renfort_Bas1" X_Y_Z="-329.24; 4539.98; 0." rot=" 0. ; 0. ; 45." /> +</composition> + +<composition name="Outer_Spoke_Assembly_FOOT2" > + <posXYZ volume="NSW_F1_spoke" X_Y_Z="0.; 1350.; 0." /> + <posXYZ volume="NSW_F1_spoke_Bot_Plate" X_Y_Z="0.; 795.95; 0." /> + <posXYZ volume="Plaque_interface2_Spec" X_Y_Z="0.; 1745.; 111.05" /> + <posXYZ volume="Plaque_interface2.1_Spec" X_Y_Z="0.; 1745.; -115.05" /> + <posXYZ volume="NSW_SS_spoke_Pillar" X_Y_Z="371.; 3267.85; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="NSW_SS_spokeSpec_Pillar" X_Y_Z="-385.59; 3333.67; 0." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Shim_JD" X_Y_Z="515.; 4020.2; 261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="315.; 3120.6; 261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="-515.; 4020.2; 261.55" /> + <posXYZ volume="Shim_JD" X_Y_Z="-315.; 3120.6; 261.55" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="515.; 4020.2; 154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="315.; 3120.6; 154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="-515.; 4020.2; 154.6" /> + <posXYZ volume="JD_JOINT2.1_Plate1" X_Y_Z="-315.; 3120.6; 154.6" /> + <posXYZ volume="Cale" X_Y_Z="537.79; 4020.21; 118.55" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Cale" X_Y_Z="338.24; 3120.06; 118.55" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Cale_Spec" X_Y_Z="-537.79; 4020.21; 124.35" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Cale_Spec" X_Y_Z="-338.24; 3120.06; 124.35" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="JD_JOINT1_Pipe" X_Y_Z="0.; 4020.2; 207." /> + <posXYZ volume="JD_JOINT2_Pipe" X_Y_Z="0.; 3120.6; 207." /> + <posXYZ volume="AL_BAR_KM_INCLINED_PLATE" X_Y_Z="-243.; 4099.25; 228.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="322.65; 3049.77; -154.75" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Spoke_Joint" X_Y_Z="610.52; 4348.24; -154.75" rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="Spoke_Joint1.2" X_Y_Z="-322.65; 3049.28; -161." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="Spoke_Joint1.2" X_Y_Z="-610.4; 4347.75; -161." rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="KM_FRONT_PLATE.1.1" X_Y_Z="641.41; 4289.16; 0." rot=" 0. ; 0. ; -12.5" /> + <posXYZ volume="BOTTOM_PLATE.1_Horisontal_Plate" X_Y_Z="-675.29; 4889.64; 29." rot=" 0. ; 0. ; -45." /> + <posXYZ volume="BOTTOM_PLATE.1_Vertical_Main_Plate" X_Y_Z="-491.47; 4727.04; 257.5" rot=" 0. ; 0. ; -45." /> + <posXYZ volume="Connecting_Plates2.1" X_Y_Z="475.73; 4596.28; -103.55" rot=" 0. ; 0. ; -15." /> + <posXYZ volume="Connecting_Plates2.1" X_Y_Z="475.73; 4596.28; 103.55" rot=" 0. ; 0. ; -15." /> + <posXYZ volume="Tube_alu_feet" X_Y_Z="35.49; 4779.63; 0." rot=" 0. ; 0. ; -15." /> + <posXYZ volume="Fix_nut" X_Y_Z="-840.79; 4666.23; -5." rot=" 0. ; 0. ; -45." /> + <posXYZ volume="Fix_nut" X_Y_Z="-443.82; 5063.2; -5." rot=" 0. ; 0. ; -45." /> + <posXYZ volume="Beam_Interface" X_Y_Z="-716.12; 4723.86; 0." rot=" 0. ; 0. ; 45." /> + <posXYZ volume="Beam_Interface2" X_Y_Z="-496.92; 4934.01; 0." rot=" 0. ; 0. ; 45." /> + <posXYZ volume="LS_T_Joint" X_Y_Z="-649.; 4560.58; 172.5" rot=" 0. ; 0. ; 12.5" /> + <posXYZ volume="LS_T_Joint2" X_Y_Z="-356.49; 4881.55; 166.25" rot=" 0. ; 0. ; 75." /> + <posXYZ volume="Renfort_Bas1" X_Y_Z="-329.24; 4539.98; 0." rot=" 0. ; 0. ; 45." /> +</composition> +<!-- End Outer Spoke Foot --> + + +<composition name="Outer_Spoke" > + <posXYZ volume="Outer_Spoke_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 0." /> + <posXYZ volume="Outer_Spoke_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 45." /> + <posXYZ volume="Outer_Spoke_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 90." /> + <posXYZ volume="Outer_Spoke_Assembly_FOOT1" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 135." /> + <posXYZ volume="Outer_Spoke_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 180." /> + <posXYZ volume="Outer_Spoke_Assembly_FOOT2" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 180. ; 225." /> + <posXYZ volume="Outer_Spoke_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 270." /> + <posXYZ volume="Outer_Spoke_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 315." /> +</composition> +<!-- ********************************************************************************* End Outer Spoke ****************************************************\ +************************************** --> + +<!-- *********************************************************************************** LSO LSI Connection ***********************************************\ +************************************* --> + +<box name="LSO_LSI_connection_Rot" material="ShieldSteel" X_Y_Z="63.; 754.1; 46. " /> + +<composition name="LSO_LSI_connection_Pos" > + <posXYZ volume="LSO_LSI_connection_Rot" X_Y_Z="0.; 2210.09; 0." /> +</composition> + +<composition name="LSO_LSI_Connection" > + <posXYZ volume="LSO_LSI_connection_Pos" X_Y_Z="0.; 0.; 870.2" rot=" 0. ; 0. ; 22.5" /> + <posXYZ volume="LSO_LSI_connection_Pos" X_Y_Z="0.; 0.; 870.2" rot=" 0. ; 0. ; 67.5" /> + <posXYZ volume="LSO_LSI_connection_Pos" X_Y_Z="0.; 0.; 870.2" rot=" 0. ; 0. ; -22.5" /> + <posXYZ volume="LSO_LSI_connection_Pos" X_Y_Z="0.; 0.; 870.2" rot=" 0. ; 0. ; -67.5" /> +</composition> + +<!-- *********************************************************************************** End LSO LSI Connection *******************************************\ +************************************* --> + +<!-- *********************************************************************************** Alignment Bars ***************************************************\ +**************************************** --> + +<!-- SS Bar --> +<tubs name="SS_Bar_Tube" material="Aluminium" Rio_Z="0.; 49.1; 2382." /> + +<composition name="SS_Bar_Assembly" > + <posXYZ volume="SS_Bar_Tube" X_Y_Z="69.2; 3364.6; 0" rot=" 90. ; 0. ; -3.35" /> +</composition> + +<composition name="SS_Bar" > + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 0." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 45." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 90." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 135." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 180." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 225." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 270." /> + <posXYZ volume="SS_Bar_Assembly" X_Y_Z="0.; 0.; 233.2" rot=" 0. ; 0. ; 315." /> +</composition> +<!-- End SS Bar --> + +<!-- LS Bar --> +<tubs name="LS_Bar_Tube" material="Aluminium" Rio_Z="0.; 48.; 2340." /> +<box name="LS_Arm" material="Aluminium" X_Y_Z="1010.; 40.; 50. " /> + +<composition name="LS_Bar_Assembly" > + <posXYZ volume="LS_Bar_Tube" X_Y_Z="1286.4; 3086.18; 0." rot=" 90. ; 0. ; -25." /> + <posXYZ volume="LS_Arm" X_Y_Z="1789.34; 4164.73; 0." rot=" 0. ; 0. ; -25." /> +</composition> + +<composition name="LS_Bar" > + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 0." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 45." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 90." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 135." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 180." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 225." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 270." /> + <posXYZ volume="LS_Bar_Assembly" X_Y_Z="0.; 0.; 697.2" rot=" 0. ; 0. ; 315." /> +</composition> +<!-- End LS Bar --> + +<!-- *********************************************************************************** End Alignment Bars ***********************************************\ +******************************************** --> + + +<composition name="NSW_Aluminum_Structure_and_HUB_Assembly" > + <posXYZ volume="New_Hub" /> + <posXYZ volume="Inner_Spoke" /> + <posXYZ volume="LSO_LSI_Connection" /> + <posXYZ volume="Outer_Spoke" /> + <posXYZ volume="SS_Bar" /> + <posXYZ volume="LS_Bar" /> +</composition> + +<composition name="NSW_Aluminum_Structure_and_HUB_SideA" > + <posXYZ volume="NSW_Aluminum_Structure_and_HUB_Assembly" X_Y_Z="0.; 0.; 6943.8" rot=" 0. ; 0. ; 0." /> +</composition> + +<composition name="NSW_Aluminum_Structure_and_HUB_SideC" > + <posXYZ volume="NSW_Aluminum_Structure_and_HUB_Assembly" X_Y_Z="0.; 0.; -6943.8" rot=" 0. ; 180. ; 0." /> +</composition> + +<composition name="NSW_Aluminum_Structure_and_HUB" > + <posXYZ volume="NSW_Aluminum_Structure_and_HUB_SideA" /> + <posXYZ volume="NSW_Aluminum_Structure_and_HUB_SideC" /> +</composition> + +</section> + +<!-- ===========================================NJD=========================================== --> + +<section name = "NJD Disk" + version = "0.0" + date = "16-11-2016" + author = "Georgian Engineering Team - Niko Tsutskiridze" + top_volume = "NJD_Disk"> + +<!-- NJD Disk --> + +<!-- main disk--> +<tubs name="MD01" material="ShieldSteel" Rio_Z="430.; 4360.; 40." nbPhi="32." /> +<tubs name="MD02" material="ShieldSteel" Rio_Z="430.; 2700.; 48.7" nbPhi="32." /> +<tubs name="MDB01_Cut" material="ShieldSteel" Rio_Z="0.; 840.; 3." nbPhi="32." /> + +<gvxy name="MD03" material="ShieldSteel" dZ="40." > + <gvxy_point X_Y="-3370.; -3950."/> + <gvxy_point X_Y="-3370.; -3880."/> + <gvxy_point X_Y="-3679.5; -2484."/> + <gvxy_point X_Y="-3990.; -1734.39"/> + <gvxy_point X_Y="-2599.16; -3470."/> + <gvxy_point X_Y="-2670.; -3570."/> + <gvxy_point X_Y="-2670.; -3950."/> +</gvxy> + +<subtraction name="MDB01_Un" > + <posXYZ volume="MD01" /> + <posXYZ volume="MDB01_Cut" X_Y_Z=" 0.; 0.; 19.4 " /> +</subtraction> + +<union name="MDB01" > + <posXYZ volume="MDB01_Un" /> + <posXYZ volume="MD03" /> + <posXYZ volume="MD03" rot=" 0.; 180.; 0."/> +</union> +<!-- End main disk--> + + +<!-- Ret.Flux --> +<tubs name="FLUX_Box" material="ShieldSteel" Rio_Z="3800.; 4360.; 39.9" nbPhi="32." /> +<box name="FLUX_Cut_Box" material="ShieldSteel" X_Y_Z="2200.; 400.; 50." /> + +<subtraction name="FLUX" > + <posXYZ volume="FLUX_Box" /> + <posXYZ volume="FLUX_Cut_Box" X_Y_Z=" -1930.; 3430.; 0." /> +</subtraction> +<!-- End Ret.Flux --> + +<!-- FIXING PLATE --> +<box name="FIXING_PLATE" material="ShieldSteel" X_Y_Z="350.; 975.; 40.9" /> +<box name="FIXING_PLATE_Special" material="ShieldSteel" X_Y_Z="350.; 787.5; 40.9" /> + +<composition name="FIXING_PLATE_Pos" > + <posXYZ volume="FIXING_PLATE" X_Y_Z=" 0.; 3252.5; 0." /> +</composition> + +<composition name="FIXING_PLATE_Ass" > + <posXYZ volume="FIXING_PLATE_Special" X_Y_Z=" -1208.8; 2918.31; 0." rot=" 0.; 0.; 22.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 67.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 112.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 157.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 202.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 247.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 292.5" /> + <posXYZ volume="FIXING_PLATE_Pos" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 337.5" /> +</composition> +<!-- End FIXING PLATE --> + +<!-- NJD feet--> +<gvxy name="JF01" material="ShieldSteel" dZ="37.3" > + <gvxy_point X_Y="-3300.; -3950."/> + <gvxy_point X_Y="-3300.; -3480."/> + <gvxy_point X_Y="-3270.; -3450."/> + <gvxy_point X_Y="-2730.; -3450."/> + <gvxy_point X_Y="-2700.; -3480."/> + <gvxy_point X_Y="-2700.; -3950."/> +</gvxy> + +<gvxy name="JF02" material="ShieldSteel" dZ="35." > + <gvxy_point X_Y="-342.4; -3950."/> + <gvxy_point X_Y="-342.4; -3930."/> + <gvxy_point X_Y="-77.4; -3470."/> + <gvxy_point X_Y="-57.4; -3470."/> + <gvxy_point X_Y="-57.4; -3920."/> + <gvxy_point X_Y="-87.4; -3950."/> +</gvxy> + +<gvxy name="JF03" material="ShieldSteel" dZ="48." > + <gvxy_point X_Y="-3370.; -362."/> + <gvxy_point X_Y="-3370.; 704."/> + <gvxy_point X_Y="-3495.; 704."/> + <gvxy_point X_Y="-3495.; 933."/> + <gvxy_point X_Y="-2660.; 933."/> + <gvxy_point X_Y="-2660.; 653."/> + <gvxy_point X_Y="-2700.; 653."/> + <gvxy_point X_Y="-2700.; 523."/> + <gvxy_point X_Y="-2590.; 523."/> + <gvxy_point X_Y="-2590.; -52."/> + <gvxy_point X_Y="-2685.; -52."/> + <gvxy_point X_Y="-2685.; -362."/> +</gvxy> + +<gvxy name="JF04" material="ShieldSteel" dZ="41.6" > + <gvxy_point X_Y="-453.5; -4251.1"/> + <gvxy_point X_Y="-453.5; -4158.1"/> + <gvxy_point X_Y="-603.; -4083.1"/> + <gvxy_point X_Y="-603.; -4038.1"/> + <gvxy_point X_Y="-362.; -4038.1"/> + <gvxy_point X_Y="-362.; -3998.1"/> + <gvxy_point X_Y="883.; -3998.1"/> + <gvxy_point X_Y="883.; -4251.1"/> +</gvxy> + +<gvxy name="JF05" material="ShieldSteel" dZ="356.1" > + <gvxy_point X_Y="-603.; -4048.1"/> + <gvxy_point X_Y="-603.; -4038.1"/> + <gvxy_point X_Y="-362.; -4038.1"/> + <gvxy_point X_Y="-362.; -3998.1"/> + <gvxy_point X_Y="-253.; -3998.1"/> + <gvxy_point X_Y="-253.; -4048.1"/> +</gvxy> + +<box name="JF06" material="ShieldSteel" X_Y_Z="536.; 253.; 71.4" /> + +<!-- Right--> +<composition name="Right_Feet" > + <posXYZ volume="JF01" X_Y_Z=" 0.; 0.; 38.7" rot=" 0.; 0.; 0." /> + <posXYZ volume="JF02" X_Y_Z=" -2802.5; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF02" X_Y_Z=" -3197.5; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF03" X_Y_Z=" 0.; -3974.05; 0." rot=" -90.; 0.; 0." /> + <posXYZ volume="JF04" X_Y_Z=" -2805.2; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF04" X_Y_Z=" -3203.; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF05" X_Y_Z=" -3004.1; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF06" X_Y_Z=" -3000.; -4124.6; -918.75" rot=" 0.; 0.; 0." /> +</composition> +<!-- End Right--> + +<!-- Left--> +<composition name="Left_Feet" > + <posXYZ volume="JF01" X_Y_Z=" 0.; 0.; 38.7" rot=" 0.; 180.; 0." /> + <posXYZ volume="JF02" X_Y_Z=" 2802.5; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF02" X_Y_Z=" 3197.5; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF03" X_Y_Z=" 0.; -3974.05; 0." rot=" -90.; 0.; 180." /> + <posXYZ volume="JF04" X_Y_Z=" 2805.2; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF04" X_Y_Z=" 3203.; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF05" X_Y_Z=" 3004.1; 0.; 0." rot=" 0.; 90.; 0." /> + <posXYZ volume="JF06" X_Y_Z=" 3000.; -4124.6; -918.75" rot=" 0.; 0.; 0." /> +</composition> +<!-- End Right--> +<!-- End NJD feet--> + +<composition name="JDDisk_ASide" > + <posXYZ volume="MDB01" X_Y_Z=" 0.; 0.; 6880." rot=" 0.; 0.; 0." /> + <posXYZ volume="MD02" X_Y_Z=" 0.; 0.; 6835.6" rot=" 0.; 0.;0."/> + <posXYZ volume="FLUX" X_Y_Z=" 0.; 0.; 6840." rot=" 0.; 0.; 0." /> + <posXYZ volume="FIXING_PLATE_Ass" X_Y_Z=" 0.; 0.; 6839.5" rot=" 0.; 0.; 0." /> + <posXYZ volume="Right_Feet" X_Y_Z=" 0.; 0.; 6880." rot=" 0.; 180.; 0." /> + <posXYZ volume="Left_Feet" X_Y_Z=" 0.; 0.; 6880." rot=" 0.; 180.; 0." /> +</composition> + +<composition name="JDDisk_CSide" > + <posXYZ volume="MDB01" X_Y_Z=" 0.; 0.; -6880." rot=" 0.; 180.; 0." /> + <posXYZ volume="MD02" X_Y_Z=" 0.; 0.; -6835.6" rot=" 0.; 0.;0."/> + <posXYZ volume="FLUX" X_Y_Z=" 0.; 0.; -6840." rot=" 0.; 0.; 0." /> + <posXYZ volume="FIXING_PLATE_Ass" X_Y_Z=" 0.; 0.; -6839.5" rot=" 0.; 0.; 0." /> + <posXYZ volume="Right_Feet" X_Y_Z=" 0.; 0.; -6880." rot=" 0.; 0.; 0." /> + <posXYZ volume="Left_Feet" X_Y_Z=" 0.; 0.; -6880." rot=" 0.; 0.; 0." /> +</composition> +<!-- End NJD Disk --> + +<composition name="NJD_Disk" > + <posXYZ volume="JDDisk_ASide" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 0." /> + <posXYZ volume="JDDisk_CSide" X_Y_Z=" 0.; 0.; 0." rot=" 0.; 0.; 0." /> +</composition> + +</section> + +<!-- ==================================================Feet========================================= --> + +<section name = "A Plate" + version = "0.0" + date = "29-05-2017" + author = "Georgian Engineering Team - Niko Tsutskiridze" + top_volume = "A_Plate"> + +<gvxy name="Lateral_Plate_Main" material="ShieldSteel" dZ="21."> + <gvxy_point X_Y="-3300.; -4000."/> + <gvxy_point X_Y="-3548.3; -3235.72"/> + <gvxy_point X_Y="-1458.4; -560.8"/> + <gvxy_point X_Y="73.9; 73.9"/> + <gvxy_point X_Y="-628.9; -1622.8"/> + <gvxy_point X_Y="-818.3; -1544.4"/> + <gvxy_point X_Y="-1558.6; -2491.9"/> + <gvxy_point X_Y="-1427.8; -2980."/> + <gvxy_point X_Y="-0.01; -2980."/> + <gvxy_point X_Y="-0.01; -3280."/> + <gvxy_point X_Y="-1701.9; -3280."/> + <gvxy_point X_Y="-1995.3; -3050.8"/> + <gvxy_point X_Y="-2650.; -3889."/> + <gvxy_point X_Y="-2650.; -4000."/> +</gvxy> + +<tubs name="Lateral_plate_TubeCut" material="ShieldSteel" Rio_Z=" 0. ; 600. ; 25." nbPhi="36." /> + +<subtraction name="Lateral_Plate" > + <posXYZ volume="Lateral_Plate_Main" /> + <posXYZ volume="Lateral_plate_TubeCut" X_Y_Z="-0.01; -0.01; 0." rot=" 0. ; 0. ; 0." /> +</subtraction> + +<tubs name="Anchorage" material="ShieldSteel" Rio_Z=" 0. ; 22.6 ; 577." nbPhi="36." /> + +<gvxy name="Vertical_Top_Plate" material="ShieldSteel" dZ="33."> + <gvxy_point X_Y="-3300.; -3998."/> + <gvxy_point X_Y="-3300.; -3730."/> + <gvxy_point X_Y="-2865.; -3730."/> + <gvxy_point X_Y="-2675.; -3920."/> + <gvxy_point X_Y="-2675.; -3998."/> +</gvxy> + +<box name="Horizontal_Plate" material="ShieldSteel" X_Y_Z="625.; 40.6; 287. " /> + +<composition name="A_Plate_Assembly" > + <posXYZ volume="Lateral_Plate" /> + <posXYZ volume="Lateral_Plate" X_Y_Z="0.; 0.; 0." rot="0. ; 180. ; 0." /> + <posXYZ volume="Anchorage" X_Y_Z="-3447.; -3283.25; -299.01" rot="0. ; 0. ; 0." /> + <posXYZ volume="Anchorage" X_Y_Z="3447.; -3283.25; -299.01" rot="0. ; 0. ; 0." /> + <posXYZ volume="Vertical_Top_Plate" X_Y_Z="0.; 0.; -27.01" rot="0. ; 0. ; 0." /> + <posXYZ volume="Vertical_Top_Plate" X_Y_Z="0.; 0.; -27.01" rot="0. ; 180. ; 0." /> + <posXYZ volume="Horizontal_Plate" X_Y_Z="-2987.5; -3929.7; -187.02" rot="0. ; 0. ; 0." /> + <posXYZ volume="Horizontal_Plate" X_Y_Z="2987.5; -3929.7; -187.02" rot="0. ; 0. ; 0." /> +</composition> + +<composition name="A_Plate_SideA" > + <posXYZ volume="A_Plate_Assembly" X_Y_Z=" 0. ; 0.; 7857.5" /> +</composition> + +<composition name="A_Plate_SideC" > + <posXYZ volume="A_Plate_Assembly" X_Y_Z=" 0. ; 0.; -7857.5" rot="0. ; 180. ; 0." /> +</composition> + +<composition name="A_Plate" > + <posXYZ volume="A_Plate_SideA" /> + <posXYZ volume="A_Plate_SideC" /> +</composition> + +</section> + +<!-- ========== Poisitionning all Volumes in NSW================ --> + +<section name="NewSmallWheels" version="4.3" top_volume="useless" date=" April 20, 2015 " author="Daniel Lellouch"> + +<composition name="NewSmallWheel"> + <posXYZ volume="NSW_sTGC" X_Y_Z="0.;0.;0."/> + <posXYZ volume="NSW_MM" X_Y_Z="0.;0.;0." /> + <posXYZ volume="NSW_Spacer" /> + <posXYZ volume="NSW_Aluminum_Structure_and_HUB" /> + <posXYZ volume="NJD_Disk" /> + <posXYZ volume="A_Plate" /> +</composition> + +</section> + +</AGDD> diff --git a/MuonSpectrometer/MuonOverlay/CscOverlay/CMakeLists.txt b/MuonSpectrometer/MuonOverlay/CscOverlay/CMakeLists.txt index fdbd43473baf0dd1ff54fb3d71f1252b6fd8f901..d73dbd629d76f262046903dbcb2d3d7ae9acee77 100644 --- a/MuonSpectrometer/MuonOverlay/CscOverlay/CMakeLists.txt +++ b/MuonSpectrometer/MuonOverlay/CscOverlay/CMakeLists.txt @@ -34,4 +34,5 @@ atlas_add_component( CscOverlay # Install files from the package: atlas_install_headers( CscOverlay ) atlas_install_joboptions( share/*.py ) +atlas_install_python_modules( python/*.py ) diff --git a/MuonSpectrometer/MuonOverlay/CscOverlay/CscOverlay/CscOverlay.h b/MuonSpectrometer/MuonOverlay/CscOverlay/CscOverlay/CscOverlay.h index 03bc94b8412634af1138efc20c0bb5818d20b08f..f8a57876dad908cbe0df4e54076c7fa44c3d0ea8 100644 --- a/MuonSpectrometer/MuonOverlay/CscOverlay/CscOverlay/CscOverlay.h +++ b/MuonSpectrometer/MuonOverlay/CscOverlay/CscOverlay/CscOverlay.h @@ -82,17 +82,20 @@ private: //Whether the data needs to be fliped by 49-strip for bug#56002 bool needtoflip(const int address) const; - // ---------------------------------------------------------------- + // Copying CscRawDataCollection properties + void copyCscRawDataCollectionProperties(const CscRawDataCollection& sourceColl, CscRawDataCollection& outColl) const; - ServiceHandle<StoreGateSvc> m_storeGateTemp; + // ---------------------------------------------------------------- // jO controllable properties. // "Main" containers are read, have data from "overlay" containers added, // and written out with the original SG keys. - std::string m_mainInputCSC_Name; - std::string m_overlayInputCSC_Name; + SG::ReadHandleKey<CscRawDataContainer> m_inputDataRDOKey{this,"InputDataRDOKey","OriginalEvent_SG+CSCRDO",""}; + SG::ReadHandleKey<CscRawDataContainer> m_inputOverlayRDOKey{this,"InputOverlayRDOKey","BkgEvent_0_SG+CSCRDO",""}; + SG::WriteHandleKey<CscRawDataContainer> m_outputContainerKey{this,"OutputContainerKey","StoreGateSvc+CSCRDO",""}; std::string m_sdo; + const CscIdHelper * m_cscHelper; ToolHandle<ICscCalibTool> m_cscCalibTool; ToolHandle<IMuonDigitizationTool> m_digTool; @@ -100,7 +103,6 @@ private: ToolHandle<IMuonDigitizationTool> m_rdoTool4; ToolHandle<Muon::ICSC_RDO_Decoder> m_cscRdoDecoderTool; bool m_copySDO; - bool m_isByteStream; ServiceHandle <IAtRndmGenSvc> m_rndmSvc; // Random number service CLHEP::HepRandomEngine *m_rndmEngine; // Random number engine used - not init in SiDigitization diff --git a/MuonSpectrometer/MuonOverlay/CscOverlay/python/CscOverlayConfig.py b/MuonSpectrometer/MuonOverlay/CscOverlay/python/CscOverlayConfig.py new file mode 100644 index 0000000000000000000000000000000000000000..f7c5ccdaf6d21cec6de1bd0469b41636831469ba --- /dev/null +++ b/MuonSpectrometer/MuonOverlay/CscOverlay/python/CscOverlayConfig.py @@ -0,0 +1,18 @@ + +def getCscOverlay(name="CscOverlay", **kwargs): + from OverlayCommonAlgs.OverlayFlags import overlayFlags + kwargs.setdefault("InputDataRDOKey", overlayFlags.dataStore()+"+CSCRDO") + kwargs.setdefault("InputOverlayRDOKey", overlayFlags.evtStore()+"+CSCRDO") + kwargs.setdefault("OutputContainerKey", "StoreGateSvc+CSCRDO") + kwargs.setdefault("DigitizationTool", "Csc_OverlayDigitizationTool") + kwargs.setdefault("MakeRDOTool2", "CscDigitToCscRDOTool2") + kwargs.setdefault("MakeRDOTool4", "CscDigitToCscRDOTool4") + from Digitization.DigitizationFlags import digitizationFlags + kwargs.setdefault("RndmSvc", digitizationFlags.rndmSvc.get_Value()) + digitizationFlags.rndmSeedList.addSeed("CscOverlay", 12261551, 245536301 ) + kwargs.setdefault("MCStore", overlayFlags.evtStore()) + kwargs.setdefault("DataStore", overlayFlags.dataStore()) + kwargs.setdefault("CopySDO",not overlayFlags.isDataOverlay()) + + from AthenaCommon import CfgMgr + return CfgMgr.CscOverlay(name,**kwargs) diff --git a/MuonSpectrometer/MuonOverlay/CscOverlay/python/CscOverlayConfigDb.py b/MuonSpectrometer/MuonOverlay/CscOverlay/python/CscOverlayConfigDb.py new file mode 100644 index 0000000000000000000000000000000000000000..34eabc4ad87614490e822064760b97ed30cd7af7 --- /dev/null +++ b/MuonSpectrometer/MuonOverlay/CscOverlay/python/CscOverlayConfigDb.py @@ -0,0 +1,2 @@ +from AthenaCommon.CfgGetter import addAlgorithm +addAlgorithm("CscOverlay.CscOverlayConfig.getCscOverlay", "CscOverlay") diff --git a/MuonSpectrometer/MuonOverlay/CscOverlay/share/CscOverlay_jobOptions.py b/MuonSpectrometer/MuonOverlay/CscOverlay/share/CscOverlay_jobOptions.py index f6cea88cf664b27ca45bac13cdd160f7aa734d0c..3ece6e4c3dbe9cd864405b4ba9e585c5a4711be5 100644 --- a/MuonSpectrometer/MuonOverlay/CscOverlay/share/CscOverlay_jobOptions.py +++ b/MuonSpectrometer/MuonOverlay/CscOverlay/share/CscOverlay_jobOptions.py @@ -1,29 +1,10 @@ from Digitization.DigitizationFlags import digitizationFlags -from AthenaCommon.CfgGetter import getPublicTool -from OverlayCommonAlgs.OverlayFlags import overlayFlags -getPublicTool("CscDigitToCscRDOTool") - -from CscOverlay.CscOverlayConf import CscOverlay -job += CscOverlay() -job.CscOverlay.mainInputCSC_Name = "CSCRDO" -job.CscOverlay.overlayInputCSC_Name = "CSCRDO" -job.CscOverlay.DigitizationTool = getPublicTool("CscDigitizationTool") #CscDigitizationTool -job.CscOverlay.DigitizationTool.EvtStore = job.CscOverlay.MCStore -job.CscOverlay.DigitizationTool.OutputObjectName = overlayFlags.evtStore() + "+CSC_DIGITS" -job.CscOverlay.MakeRDOTool2 = ToolSvc.CscDigitToCscRDOTool.clone("CscDigitToCscRDOTool2") # consider a separate random number stream -job.CscOverlay.MakeRDOTool2.EvtStore = job.CscOverlay.MCStore -job.CscOverlay.MakeRDOTool2.addNoise = False -job.CscOverlay.MakeRDOTool2.NumSamples = 2 -job.CscOverlay.MakeRDOTool4 = ToolSvc.CscDigitToCscRDOTool.clone("CscDigitToCscRDOTool4") # consider a separate random number stream -job.CscOverlay.MakeRDOTool4.EvtStore = job.CscOverlay.MCStore -job.CscOverlay.MakeRDOTool4.addNoise = False -job.CscOverlay.MakeRDOTool4.NumSamples = 4 -job.CscOverlay.RndmSvc = digitizationFlags.rndmSvc.get_Value() +from AthenaCommon.CfgGetter import getAlgorithm +job += getAlgorithm("CscOverlay") +from OverlayCommonAlgs.OverlayFlags import overlayFlags +job.CscOverlay.DigitizationTool.OutputObjectName = overlayFlags.evtStore() + "+CSC_DIGITS" #private tool, so this should work #job.CscOverlay.OutputLevel=VERBOSE #svcMgr.MessageSvc.defaultLimit=100000 - -digitizationFlags.rndmSeedList.addSeed("CscOverlay", 12261551, 245536301 ) - print job.CscOverlay diff --git a/MuonSpectrometer/MuonOverlay/CscOverlay/src/CscOverlay.cxx b/MuonSpectrometer/MuonOverlay/CscOverlay/src/CscOverlay.cxx index db9168e6dc2911d5d702d72bae336885cf53ba6d..252029ad857cdf530ee8e154904706f78545758c 100644 --- a/MuonSpectrometer/MuonOverlay/CscOverlay/src/CscOverlay.cxx +++ b/MuonSpectrometer/MuonOverlay/CscOverlay/src/CscOverlay.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration */ #include "CscOverlay/CscOverlay.h" @@ -27,30 +27,25 @@ constexpr uint16_t MAX_AMPL = 4095; // 12-bit ADC //================================================================ CscOverlay::CscOverlay(const std::string &name, ISvcLocator *pSvcLocator) : MuonOverlayBase(name, pSvcLocator), - m_storeGateTemp("StoreGateSvc/BkgEvent_1_SG", name), - m_cscHelper(0), + m_cscHelper(nullptr), m_cscCalibTool( "CscCalibTool", this), m_digTool("CscDigitizationTool", this ), m_rdoTool2("CscDigitToCscRDOTool2", this ), m_rdoTool4("CscDigitToCscRDOTool4", this ), m_cscRdoDecoderTool ("Muon::CscRDO_Decoder"), m_rndmSvc("AtRndmGenSvc", name ), - m_rndmEngine(0), + m_rndmEngine(nullptr), m_rndmEngineName("CscOverlay") { /** Event DAta Store keys for the 2 data streams to overlay - modifiable in job options */ - declareProperty("TempStore", m_storeGateTemp, "help"); - declareProperty("mainInputCSC_Name", m_mainInputCSC_Name="CSCRDO"); - declareProperty("overlayInputCSC_Name", m_overlayInputCSC_Name="CSCRDO"); declareProperty("CopySDO", m_copySDO=true); declareProperty("DigitizationTool", m_digTool); declareProperty("MakeRDOTool2", m_rdoTool2); declareProperty("MakeRDOTool4", m_rdoTool4); declareProperty("CscRdoDecoderTool", m_cscRdoDecoderTool ); declareProperty("CSCSDO", m_sdo = "CSC_SDO"); - declareProperty("IsByteStream", m_isByteStream = false ); declareProperty("RndmSvc", m_rndmSvc, "Random Number Service used for CscDigitToCscRDOTool" ); declareProperty("RndmEngine", m_rndmEngineName, "Random engine name for CscDigitToCscRDOTool"); @@ -59,173 +54,112 @@ CscOverlay::CscOverlay(const std::string &name, ISvcLocator *pSvcLocator) : //================================================================ StatusCode CscOverlay::overlayInitialize() { - MsgStream msg(msgSvc(), name()); - msg << MSG::INFO <<"CscOverlay initialized"<<endmsg; - - if (m_storeGateTemp.retrieve().isFailure()) { - msg<< MSG::FATAL << "SaveInDetObjects::initialize): StoreGate[temp] service not found !" << endmsg; - return StatusCode::FAILURE; - } - - /** initialize the detectore store service */ - StoreGateSvc* detStore=0; - StatusCode sc = serviceLocator()->service("DetectorStore", detStore); - if (sc.isFailure()) { - msg<< MSG::FATAL << "DetectorStore service not found !" << endmsg; - return StatusCode::FAILURE; - } + ATH_MSG_INFO("CscOverlay initialized"); /** access to the CSC Identifier helper */ - sc = detStore->retrieve(m_cscHelper, "CSCIDHELPER"); - if (sc.isFailure()) { - msg<< MSG::FATAL << "Could not get CscIdHelper !" << endmsg; - return StatusCode::FAILURE; - } - else { - msg<<MSG::DEBUG<<" Found the CscIdHelper. "<<endmsg; - } - + ATH_CHECK(detStore()->retrieve(m_cscHelper, "CSCIDHELPER")); + ATH_MSG_DEBUG(" Found the CscIdHelper. "); + /** CSC calibratin tool for the Condtiions Data base access */ - sc = m_cscCalibTool.retrieve(); - if (sc.isFailure()) { - msg<<MSG::ERROR<< "Can't get handle on CSC calibration tools" << endmsg; - return StatusCode::FAILURE; - } + ATH_CHECK(m_cscCalibTool.retrieve()); // get cscRdoDecoderTool - if (m_cscRdoDecoderTool.retrieve().isFailure()){ - ATH_MSG_ERROR ( "Can't get handle on CSC RDO Decoder tool" ); - return StatusCode::FAILURE; - } - - if (m_digTool.retrieve().isFailure()) { - msg<< MSG::FATAL << "Could not retrieve CSC Digitization Tool!" << endmsg; - return StatusCode::FAILURE; - } - msg<<MSG::DEBUG<<"Retrieved CSC Digitization Tool."<<endmsg; - - if (m_rdoTool2.retrieve().isFailure()) { - msg<< MSG::FATAL << "Could not retrieve CSC Digit -> RDO Tool 2!" << endmsg; - return StatusCode::FAILURE; - } - msg<<MSG::DEBUG<<"Retrieved CSC Digit -> RDO Tool 2."<<endmsg; - - if (m_rdoTool4.retrieve().isFailure()) { - msg<< MSG::FATAL << "Could not retrieve CSC Digit -> RDO Tool 4!" << endmsg; - return StatusCode::FAILURE; - } - msg<<MSG::DEBUG<<"Retrieved CSC Digit -> RDO Tool 4."<<endmsg; + ATH_CHECK(m_cscRdoDecoderTool.retrieve()); + + ATH_CHECK(m_digTool.retrieve()); + ATH_MSG_DEBUG("Retrieved CSC Digitization Tool."); + + ATH_CHECK(m_rdoTool2.retrieve()); + ATH_MSG_DEBUG("Retrieved CSC Digit -> RDO Tool 2."); + + ATH_CHECK(m_rdoTool4.retrieve()); + ATH_MSG_DEBUG("Retrieved CSC Digit -> RDO Tool 4."); //random number initialization - if (!m_rndmSvc.retrieve().isSuccess()) { - msg<<MSG::ERROR<< " Could not initialize Random Number Service" << endmsg; - } + ATH_CHECK(m_rndmSvc.retrieve()); // getting our random numbers stream m_rndmEngine = m_rndmSvc->GetEngine(m_rndmEngineName); - if (m_rndmEngine==0) { - msg<<MSG::ERROR<< "Could not find RndmEngine : " << m_rndmEngineName << endmsg; + if (!m_rndmEngine) { + ATH_MSG_ERROR("Could not find RndmEngine : " << m_rndmEngineName); return StatusCode::FAILURE; } + ATH_CHECK( m_inputDataRDOKey.initialize() ); + ATH_CHECK( m_inputOverlayRDOKey.initialize() ); + ATH_CHECK( m_outputContainerKey.initialize() ); + return StatusCode::SUCCESS; } //================================================================ StatusCode CscOverlay::overlayFinalize() { - MsgStream msg(msgSvc(), name()); - msg <<MSG::INFO << "CscOverlay finalized" << endmsg; + ATH_MSG_INFO("CscOverlay finalized"); return StatusCode::SUCCESS; } //================================================================ StatusCode CscOverlay::overlayExecute() { - MsgStream msg(msgSvc(), name()); - msg<<MSG::DEBUG<<"CscOverlay::execute() begin"<<endmsg; - + ATH_MSG_DEBUG("CscOverlay::execute() begin"); //---------------------------------------------------------------- unsigned int numsamples=0;//to be determined from the data - SG::ReadHandle<CscRawDataContainer> cdata(m_mainInputCSC_Name, m_storeGateData->name()); - SG::ReadHandle<CscRawDataContainer> data_input_CSC(m_mainInputCSC_Name, m_storeGateData->name()); - if ( !m_isByteStream ) - { - if( !cdata.isValid() ) - { - ATH_MSG_WARNING("Could not get real data CSC RDO container \"" << m_mainInputCSC_Name << "\""); - return StatusCode::SUCCESS; - } - if ((cdata->begin()==cdata->end()) || !*(cdata->begin())){ - ATH_MSG_WARNING("Could not get nsamples, cdata empty?"); - //return StatusCode::SUCCESS; - } - else - { - numsamples=cdata->begin()->numSamples(); - } - } + SG::ReadHandle<CscRawDataContainer> inputDataRDO(m_inputDataRDOKey); + if(!inputDataRDO.isValid()) { + ATH_MSG_WARNING("Could not get data CscRawDataContainer \"" << inputDataRDO.name() << "\" in " << inputDataRDO.store()); + return StatusCode::SUCCESS; + } + ATH_MSG_VERBOSE("Found CscRawDataContainer \"" << inputDataRDO.name() << "\" in " << inputDataRDO.store()); + if ((inputDataRDO->begin()==inputDataRDO->end()) || !*(inputDataRDO->begin())){ + ATH_MSG_WARNING("Could not get nsamples, inputDataRDO empty?"); + } else{ - if(!data_input_CSC.isValid()) - { - ATH_MSG_WARNING("Could not get real data CSC RDO container \"" << m_mainInputCSC_Name << "\""); - return StatusCode::SUCCESS; - } - if ((data_input_CSC->begin()==data_input_CSC->end()) || !*(data_input_CSC->begin())) - { - ATH_MSG_WARNING("Could not get nsamples, data_input_CSC empty?"); - //return StatusCode::SUCCESS; - } - else - { - numsamples=data_input_CSC->begin()->numSamples(); - } - } + numsamples=inputDataRDO->begin()->numSamples(); + } /** in the simulation stream, run digitization of the fly and make RDO - this will be used as input to the overlay job */ if ( m_digTool->digitize().isFailure() ) { - msg << MSG::WARNING << "On the fly CSC digitization failed " << endmsg; + ATH_MSG_WARNING("On the fly CSC digitization failed "); return StatusCode::SUCCESS; } - if (numsamples==2){ + if (numsamples==2) { if ( m_rdoTool2->digitize().isFailure() ) { - msg << MSG::WARNING << "On the fly CSC Digit -> RDO 2 failed " << endmsg; + ATH_MSG_WARNING("On the fly CSC Digit -> RDO 2 failed "); return StatusCode::SUCCESS; } - msg << MSG::DEBUG << "Digitizing with 2 samples" << endmsg; + ATH_MSG_DEBUG("Digitizing with 2 samples"); } - else if (numsamples==4){ + else if (numsamples==4) { if ( m_rdoTool4->digitize().isFailure() ) { - msg << MSG::WARNING << "On the fly CSC Digit -> RDO 4 failed " << endmsg; + ATH_MSG_WARNING("On the fly CSC Digit -> RDO 4 failed "); return StatusCode::SUCCESS; } - msg << MSG::DEBUG << "Digitizing with 4 samples" << endmsg; + ATH_MSG_DEBUG("Digitizing with 4 samples"); } else{ - msg << MSG::WARNING << "On the fly CSC Digit -> RDO failed - not 2 or 4 samples!" << endmsg; + ATH_MSG_WARNING("On the fly CSC Digit -> RDO failed - not 2 or 4 samples!"); //return StatusCode::SUCCESS; } - if (numsamples>0){ - msg << MSG::DEBUG << "Retrieving MC input CSC container" << endmsg; - SG::ReadHandle<CscRawDataContainer> ovl_input_CSC(m_overlayInputCSC_Name, m_storeGateMC.name()); - if(!ovl_input_CSC.isValid()) - { - msg << MSG::WARNING << "Could not get CSC RDO from the simulation stream ... " << m_overlayInputCSC_Name << endmsg; - return StatusCode::SUCCESS; - } - + if (numsamples>0) { + ATH_MSG_DEBUG("Retrieving MC input CSC container"); + SG::ReadHandle<CscRawDataContainer> inputOverlayRDO(m_inputOverlayRDOKey); + if(!inputOverlayRDO.isValid()) { + ATH_MSG_WARNING("Could not get overlay CscRawDataContainer \"" << inputOverlayRDO.name() << "\" in " << inputOverlayRDO.store()); + return StatusCode::SUCCESS; + } + ATH_MSG_VERBOSE("Found CscRawOverlayContainer \"" << inputOverlayRDO.name() << "\" in " << inputOverlayRDO.store()); + /* now do the overlay - reading real data from the data stream and reading simulated RDO produced in the previous steps from the simulation stream */ - if ( !m_isByteStream ) this->overlayContainer(cdata.cptr(), ovl_input_CSC.cptr()); - else this->overlayContainer(data_input_CSC.cptr(), ovl_input_CSC.cptr()); + this->overlayContainer(inputDataRDO.cptr(), inputOverlayRDO.cptr()); } - + //---------------------------------------------------------------- - msg<<MSG::DEBUG<<"Processing MC truth data"<<endmsg; - + ATH_MSG_DEBUG("Processing MC truth data"); // Main stream is normally real data without any MC info. // In tests we may use a MC generated file instead of real data. // Remove truth info from the main input stream, if any. @@ -234,11 +168,11 @@ StatusCode CscOverlay::overlayExecute() { // (McEventCollection is done by the base.) // Now copy CSC-specific MC truth objects to the output. - if ( m_copySDO ) + if ( m_copySDO ) { this->copyMuonObjects<CscSimDataCollection>(&*m_storeGateOutput, &*m_storeGateMC, m_sdo); - + } //---------------------------------------------------------------- - msg<<MSG::DEBUG<<"CscOverlay::execute() end"<<endmsg; + ATH_MSG_DEBUG("CscOverlay::execute() end"); return StatusCode::SUCCESS; } @@ -246,25 +180,31 @@ StatusCode CscOverlay::overlayExecute() { void CscOverlay::overlayContainer(const CscRawDataContainer *main, const CscRawDataContainer *overlay) { - MsgStream msg(msgSvc(), name()); - msg << MSG::DEBUG << "overlayContainer<>() begin" << endmsg; + ATH_MSG_DEBUG("overlayContainer<>() begin"); - SG::WriteHandle<CscRawDataContainer> outputContainer(m_mainInputCSC_Name, m_storeGateOutput->name()); - outputContainer = CxxUtils::make_unique<CscRawDataContainer>(); + SG::WriteHandle<CscRawDataContainer> outputContainer(m_outputContainerKey); + if (outputContainer.record(std::make_unique<CscRawDataContainer>()).isFailure()) { + ATH_MSG_ERROR("Failed to record " << m_outputContainerKey); + } /** Add data from the main container to the output one */ CscRawDataContainer::const_iterator p_main = main->begin(); CscRawDataContainer::const_iterator p_main_end = main->end(); - for(; p_main != p_main_end; ) { - - - const CscRawDataCollection *coll_main = *p_main; - if ( outputContainer->addCollection(coll_main, p_main.hashId()).isFailure() ) { - msg << MSG::WARNING << "addCollection failed for main" << endmsg; + const CscRawDataCollection& mainColl(**p_main); + //Deep-copy CscRawDataCollection + //FIXME Write a copy-constructor for CscRawDataCollection!! + auto p_newColl = std::make_unique<CscRawDataCollection>(mainColl.identify()); + this->copyCscRawDataCollectionProperties(mainColl, *p_newColl); + for(auto rawData : **p_main) { + auto newData = std::make_unique<CscRawData>(*rawData); // TODO confirm implicit copy-constructor works as expected + p_newColl->push_back(newData.release()); + } + if ( outputContainer->addCollection(p_newColl.release(), p_main.hashId()).isFailure() ) { + ATH_MSG_WARNING("addCollection failed for main"); } else { - msg << MSG::DEBUG << "data overlayContainer() added overlaid RDO" << endmsg; + ATH_MSG_DEBUG("data overlayContainer() added overlaid RDO"); } ++p_main; } @@ -276,60 +216,38 @@ void CscOverlay::overlayContainer(const CscRawDataContainer *main, for(; p_ovl != p_ovl_end; ) { const CscRawDataCollection *coll_ovl = *p_ovl; - - uint16_t coll_id = (*p_ovl)->identify(); + const uint16_t coll_id = (*p_ovl)->identify(); /** The newly created stuff will go to the output EventStore SG */ - CscRawDataCollection *out_coll = new CscRawDataCollection( coll_id ); + auto out_coll = std::make_unique<CscRawDataCollection>( coll_id ); /** Look for the same ID in the main StoreGate EventStore */ - CscRawDataContainer::const_iterator q = outputContainer->indexFind( coll_id ); + CscRawDataContainer::const_iterator q = outputContainer->indexFind(coll_id); if( q != outputContainer->end() ) { /** Need to merge the collections Retrieve q */ const CscRawDataCollection *coll_data = *q; - - /** copy a few things to the new collection */ - out_coll->set_eventType( coll_data->eventType() ); - out_coll->setRodId ( coll_data->rodId() ); - out_coll->setSubDetectorId ( coll_data->subDetectorId() ); - if ( coll_data->samplingPhase() ) out_coll->set_samplingPhase(); - if ( coll_data->triggerType() ) out_coll->set_triggerType(); - out_coll->set_firstBitSummary( coll_data->firstBitSummary() ); - out_coll->set_scaAddress( coll_data->scaAddress() ); - const std::vector<uint8_t> dataType = coll_data->dataType(); - for ( unsigned int i=0; i<dataType.size(); ++i ) out_coll->addDataType( dataType[i] ); - - this->mergeCollections(out_coll, coll_data, coll_ovl); + this->copyCscRawDataCollectionProperties(*coll_data, *out_coll); + this->mergeCollections(out_coll.get(), coll_data, coll_ovl); /** Here the new collection is created, but not yet registered. Put it in IDC in place of the original collection. */ outputContainer->removeCollection(p_ovl.hashId()); - if(outputContainer->addCollection(out_coll, p_ovl.hashId()).isFailure()) { - msg << MSG::WARNING << "addCollection failed " << endmsg; + if(outputContainer->addCollection(out_coll.release(), p_ovl.hashId()).isFailure()) { + ATH_MSG_WARNING("addCollection failed "); } else { - msg << MSG::DEBUG << "overlayContainer() added overlaid RDO" << endmsg; + ATH_MSG_DEBUG("overlayContainer() added overlaid RDO"); } - } else { /** Copy the complete collection from ovl to output, hopefully preserving the "most derived" type of its raw data */ - - out_coll->set_eventType( coll_ovl->eventType() ); - out_coll->setRodId ( coll_ovl->rodId() ); - out_coll->setSubDetectorId ( coll_ovl->subDetectorId() ); - if ( coll_ovl->samplingPhase() ) out_coll->set_samplingPhase(); - if ( coll_ovl->triggerType() ) out_coll->set_triggerType(); - out_coll->set_firstBitSummary( coll_ovl->firstBitSummary() ); - out_coll->set_scaAddress( coll_ovl->scaAddress() ); - const std::vector<uint8_t> dataType = coll_ovl->dataType(); - for ( unsigned int i=0; i<dataType.size(); ++i ) out_coll->addDataType( dataType[i] ); + this->copyCscRawDataCollectionProperties(*coll_ovl, *out_coll); /** Copy the complete collection from ovl to output, hopefully preserving the "most derived" type of its raw data */ @@ -339,7 +257,7 @@ void CscOverlay::overlayContainer(const CscRawDataContainer *main, /** Put Digit into Collection */ const CscRawData *data = ( *i ); if( !data ) { - msg << MSG::WARNING << "NULL pointer to Digit!" << endmsg; + ATH_MSG_WARNING("NULL pointer to Digit!"); continue; } else{ @@ -348,78 +266,87 @@ void CscOverlay::overlayContainer(const CscRawDataContainer *main, uint32_t hashOffset = data->hashId(); std::vector<uint16_t> all_samples; for (unsigned int j=0; j<width; ++j) { - uint32_t stripHash = hashOffset+j; - double noise = m_cscCalibTool->stripNoise( stripHash, false ); - //double pedestal = m_cscCalibTool->stripPedestal( stripHash, false ); - std::vector<uint16_t> samples; - bool extractSamples = data->samples(j, numSamples, samples); - if (!extractSamples) { - msg << MSG::WARNING << "Unable to extract samples for strip " << j - << " Online Cluster width = " << width - << " for number of Samples = " << numSamples - << " continuing ..." << endmsg; - } else { - for (unsigned int k=0; k<samples.size(); ++k) { - double theNoise = CLHEP::RandGauss::shoot(m_rndmEngine, 0.0, noise); - float adcCount = samples[k] + theNoise; - if ( adcCount > MAX_AMPL ) { - msg<<MSG::DEBUG<< "value out of range (copying over signal): " << adcCount << " " - << " Setting it to max value = " << MAX_AMPL - << " IdentifierHash is " << stripHash <<endmsg; - adcCount = MAX_AMPL; - } - all_samples.push_back( (uint16_t) rint(adcCount) ); - } - } + uint32_t stripHash = hashOffset+j; + double noise = m_cscCalibTool->stripNoise( stripHash, false ); + //double pedestal = m_cscCalibTool->stripPedestal( stripHash, false ); + std::vector<uint16_t> samples; + bool extractSamples = data->samples(j, numSamples, samples); + if (!extractSamples) { + ATH_MSG_WARNING("Unable to extract samples for strip " << j + << " Online Cluster width = " << width + << " for number of Samples = " << numSamples + << " continuing ..."); + } + else { + for (unsigned int k=0; k<samples.size(); ++k) { + double theNoise = CLHEP::RandGauss::shoot(m_rndmEngine, 0.0, noise); + float adcCount = samples[k] + theNoise; + if ( adcCount > MAX_AMPL ) { + ATH_MSG_DEBUG("value out of range (copying over signal): " << adcCount << " " + << " Setting it to max value = " << MAX_AMPL + << " IdentifierHash is " << stripHash); + adcCount = MAX_AMPL; + } + all_samples.push_back( (uint16_t) rint(adcCount) ); + } + } } - CscRawData *rdo = new CscRawData( all_samples, data->address(), data->identify(), data->rpuID(), data->width() ); + auto rdo = std::make_unique<CscRawData>( all_samples, data->address(), data->identify(), data->rpuID(), data->width() ); rdo->setHashID( data->hashId() );//ACH - was "width()" ??? rdo->setTime( data->time() );//ACH - was absent //perform some checks bool good=true; for (unsigned int j=0; j<width; ++j) { - const Identifier channelId = m_cscRdoDecoderTool->channelIdentifier(rdo, j); + const Identifier channelId = m_cscRdoDecoderTool->channelIdentifier(rdo.get(), j); if(!(m_cscHelper->valid(channelId))) { - msg << MSG::WARNING << "Invalid CSC Identifier! - skipping " << channelId << endmsg; + ATH_MSG_WARNING("Invalid CSC Identifier! - skipping " << channelId); good=false; } } if (good){ - out_coll->push_back( rdo ); + out_coll->push_back( rdo.release() ); } - else{ - delete rdo;//coverity demands it - } - } } - + /** The new collection goes to m_storeGateOutput */ - - if(outputContainer->addCollection(out_coll, out_coll->identify()).isFailure()) { - msg << MSG::WARNING << "overlayContainer(): Problem in outputContainer->addCollection(Identifier)" << endmsg; + if(outputContainer->addCollection(out_coll.release(), out_coll->identify()).isFailure()) { + ATH_MSG_WARNING("overlayContainer(): Problem in outputContainer->addCollection(Identifier)"); } else { - msg << MSG::DEBUG << "overlayContainer() added new RDO" << endmsg; + ATH_MSG_DEBUG("overlayContainer() added new RDO"); } } - + ++p_ovl; } - msg << MSG::DEBUG << "overlayContainer<>() end" << endmsg; + ATH_MSG_DEBUG("overlayContainer<>() end"); } + +// Copying CscRawDataCollection properties + void CscOverlay::copyCscRawDataCollectionProperties(const CscRawDataCollection& sourceColl, CscRawDataCollection& outColl) const { + /** copy a few things to the new collection */ + outColl.setIdentifyHash( sourceColl.identifyHash() ); + outColl.set_eventType( sourceColl.eventType() ); + outColl.setRodId ( sourceColl.rodId() ); + outColl.setSubDetectorId ( sourceColl.subDetectorId() ); + if (sourceColl.samplingPhase()) { outColl.set_samplingPhase(); } + if (sourceColl.triggerType()) { outColl.set_triggerType(); } + outColl.set_firstBitSummary( sourceColl.firstBitSummary() ); + outColl.set_scaAddress( sourceColl.scaAddress() ); + for (auto dataType : sourceColl.dataType()) { outColl.addDataType( dataType ); } + } void CscOverlay::spuData( const CscRawDataCollection * coll, const uint16_t spuID, std::vector<const CscRawData*>& data) { - MsgStream msg(msgSvc(), name()); data.clear(); if ( !coll ) return; CscRawDataCollection::const_iterator idata = coll->begin(); CscRawDataCollection::const_iterator edata = coll->end(); for ( ; idata != edata; ++idata ) { if ( (*idata)->rpuID() == spuID ) data.push_back( *idata ); } - msg <<MSG::DEBUG<<"spuData(): made data vector of size "<<data.size()<<" for SPU "<<spuID<<endmsg; + ATH_MSG_DEBUG("spuData(): made data vector of size "<<data.size()<<" for SPU "<<spuID); } bool CscOverlay::needtoflip(const int address) const { @@ -440,9 +367,7 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, const CscRawDataCollection *data_coll, const CscRawDataCollection *ovl_coll) { - - MsgStream msg(msgSvc(), name()); - msg << MSG::DEBUG << "mergeCollection<>() begin" << endmsg; + ATH_MSG_DEBUG("mergeCollection<>() begin"); // number of ADC samples in the both data stream unsigned int nSigSamples = data_coll->numSamples(); @@ -453,14 +378,14 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, unsigned int ovlSamplingTime = ovl_coll->rate(); if ( dataSamplingTime != ovlSamplingTime ) { - msg<< MSG::WARNING << "Overlay of inconsistent data - sampling times not the same " - << dataSamplingTime << " ns " << ovlSamplingTime << " ns" << endmsg; + ATH_MSG_WARNING("Overlay of inconsistent data - sampling times not the same " + << dataSamplingTime << " ns " << ovlSamplingTime << " ns"); return; } if ( nSigSamples != nOvlSamples ) { - msg<< MSG::WARNING << "Overlay of inconsistent data - number of samples not the same " - << nSigSamples << " " << nOvlSamples << endmsg; + ATH_MSG_WARNING("Overlay of inconsistent data - number of samples not the same " + << nSigSamples << " " << nOvlSamples); return; } @@ -492,29 +417,29 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, uint32_t hash = std::min( sigHash, ovlHash ); uint32_t address = std::min( sigAddress, ovlAddress ); if (sigSamples.size()!=0 && ovlSamples.size()!=0 && needtoflip(address)){ - msg <<MSG::DEBUG<<"Looking for overlap of hashes and addresses within witdths because needtoflip"<<endmsg; - msg <<MSG::VERBOSE ; + ATH_MSG_DEBUG("Looking for overlap of hashes and addresses within witdths because needtoflip"); + msg() << MSG::VERBOSE ; std::set<int> sig; int lastindex=-1; for (std::map< int,std::vector<uint16_t> >::const_iterator si=sigSamples.begin(); si!=sigSamples.end(); ++si) { if (si!=sigSamples.begin() && si->first-lastindex!=1) break; lastindex=si->first; - sig.insert(si->first); msg << si->first << " "; + sig.insert(si->first); msg() << si->first << " "; } - msg<<endmsg; + msg()<<endmsg; bool overlap=false; - msg <<MSG::VERBOSE ; + msg() <<MSG::VERBOSE ; for (std::map< int,std::vector<uint16_t> >::const_iterator so=ovlSamples.begin(); so!=ovlSamples.end(); ++so) { //add 1 to beginning and end of list because adjacent counts as overlap - msg << (so->first)-1 << " "; - if (sig.find((so->first)-1)!=sig.end()) {overlap=true; msg << "!!";} - msg << (so->first) << " "; - if (sig.find((so->first))!=sig.end()) {overlap=true; msg << "!!";} - msg << (so->first)+1 << " "; - if (sig.find((so->first)+1)!=sig.end()) {overlap=true; msg << "!!";} + msg() << (so->first)-1 << " "; + if (sig.find((so->first)-1)!=sig.end()) {overlap=true; msg() << "!!";} + msg() << (so->first) << " "; + if (sig.find((so->first))!=sig.end()) {overlap=true; msg() << "!!";} + msg() << (so->first)+1 << " "; + if (sig.find((so->first)+1)!=sig.end()) {overlap=true; msg() << "!!";} } - msg<<endmsg; + msg()<<endmsg; if (!overlap){ - msg <<MSG::DEBUG<<"Taking max of hashes and addresses because needtoflip and no overlap"<<endmsg; + ATH_MSG_DEBUG("Taking max of hashes and addresses because needtoflip and no overlap"); hash = std::max( sigHash, ovlHash ); address = std::max( sigAddress, ovlAddress ); } @@ -526,15 +451,15 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, for (std::map< int,std::vector<uint16_t> >::const_iterator si=ovlSamples.begin(); si!=ovlSamples.end(); ++si){readstrips.insert(si->first);} std::vector<CscRawData*> datums = this->overlay(sigSamples, ovlSamples,address, spuID, out_coll->identify(), hash ); - if ( datums.size()==0 ) { msg<<MSG::WARNING<<"datums is size 0!"<<endmsg; } + if ( datums.size()==0 ) { ATH_MSG_WARNING("datums is size 0!"); } for (unsigned int di=0; di<datums.size(); ++di){ CscRawData* datum=datums[di]; hash = datum->hashId(); address = datum->address(); int stripstart = ( address & 0x000000FF) + 1 + 0; - msg <<MSG::DEBUG<< "Datum in layer="<<j<<" has hash="<<hash<<" address="<<address<<" stripstart="<<stripstart<<", "<< *datum <<endmsg; + ATH_MSG_DEBUG("Datum in layer="<<j<<" has hash="<<hash<<" address="<<address<<" stripstart="<<stripstart<<", "<< *datum ); if (datum->width()==0) { - msg<<MSG::WARNING<< "Datum has 0 width!" <<endmsg; + ATH_MSG_WARNING("Datum has 0 width!"); continue; } @@ -543,7 +468,7 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, int stationEta = ( ((address & 0x00001000) >> 12 ) == 0x0) ? -1 : 1; int stationPhi = ( ( address & 0x0000E000) >> 13 ) + 1; Identifier me= m_cscHelper->elementID(stationName,stationEta,stationPhi); - msg<<MSG::VERBOSE<<"stationName,Eta,Phi="<<stationName<<","<<stationEta<<","<<stationPhi<<" - me="<<me<<endmsg; + ATH_MSG_VERBOSE("stationName,Eta,Phi="<<stationName<<","<<stationEta<<","<<stationPhi<<" - me="<<me); bool good=true; for (unsigned int j=0; j<datum->width(); ++j) { int chamberLayer = ( (address & 0x00000800) >> 11) + 0; @@ -553,24 +478,24 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, int wireLayer = ( (address & 0x00000600) >> 9) + 1; int measuresPhi = ( (address & 0x00000100) >> 8); int strip = ( address & 0x000000FF) + 1 + j; - msg<<MSG::VERBOSE<<"det,chamberlayer,wirelayer,measuresphi,strip="<<det<<","<<chamberLayer<<","<<wireLayer<<","<<measuresPhi<<","<<strip<<endmsg; + ATH_MSG_VERBOSE("det,chamberlayer,wirelayer,measuresphi,strip="<<det<<","<<chamberLayer<<","<<wireLayer<<","<<measuresPhi<<","<<strip); // Added to Online -> Offline id in A side number is opposite bug#56002 if (measuresPhi) { int stationEta = ( ((address & 0x00001000) >> 12 ) == 0x0) ? -1 : 1; if (stationEta>0) { strip = 49-strip; - msg<<MSG::VERBOSE<<"FLIP strip, now strip="<<strip<<endmsg; + ATH_MSG_VERBOSE("FLIP strip, now strip="<<strip); } } insertedstrips.insert(strip);//for checks Identifier mechan= m_cscHelper->channelID(me,chamberLayer,wireLayer,measuresPhi,strip); - msg<<MSG::VERBOSE<<"mechan="<<mechan<<endmsg; + ATH_MSG_VERBOSE("mechan="<<mechan); const Identifier channelId = m_cscRdoDecoderTool->channelIdentifier(datum, j); if(!(m_cscHelper->valid(channelId))) { - msg << MSG::WARNING << "Invalid CSC Identifier in merge! - skipping " << channelId << endmsg; + ATH_MSG_WARNING("Invalid CSC Identifier in merge! - skipping " << channelId ); good=false; } - else{msg << MSG::DEBUG << "Valid CSC Identifier in merge " << channelId << endmsg;} + else{ATH_MSG_DEBUG("Valid CSC Identifier in merge " << channelId);} } if (good){ out_coll->push_back(datum); } else{ continue; } @@ -583,7 +508,7 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, //check if (readstrips!=insertedstrips){ - msg << MSG::WARNING << "Readstrips != Insertedstrips: "<<endmsg; + ATH_MSG_WARNING("Readstrips != Insertedstrips: "); for (std::set<int>::const_iterator i = readstrips.begin(); i!=readstrips.end(); ++i){std::cout<<*i<<" ";} std::cout<<std::endl; for (std::set<int>::const_iterator i = insertedstrips.begin(); i!=insertedstrips.end(); ++i){std::cout<<*i<<" ";} std::cout<<std::endl; } @@ -593,7 +518,7 @@ void CscOverlay::mergeCollections(CscRawDataCollection *out_coll, for (unsigned int i=0; i<10; ++i) out_coll->set_spuCount(i,clusterCounts[i]); for (unsigned int i=0; i<2; ++i) { if (rpuCount[i] != 0) out_coll->addRPU(rpuCount[i]); } // FIXME --- need to be able to reset the dataType - should add a new method to CscRawDataCollection for this - msg<<MSG::DEBUG<<"mergeCollection<>() end "<<endmsg; + ATH_MSG_DEBUG("mergeCollection<>() end "); } uint32_t CscOverlay::stripData ( const std::vector<const CscRawData*>& data, @@ -603,8 +528,7 @@ uint32_t CscOverlay::stripData ( const std::vector<const CscRawData*>& data, const uint16_t spuID, const int gasLayer, bool isdata) { - MsgStream msg(msgSvc(), name()); - msg << MSG::DEBUG << "stripData<>() begin: gasLayer="<<gasLayer<<" spuID="<<spuID<<" isdata="<<isdata<<endmsg; + ATH_MSG_DEBUG("stripData<>() begin: gasLayer="<<gasLayer<<" spuID="<<spuID<<" isdata="<<isdata); samples.clear(); IdContext context = m_cscHelper->channel_context(); @@ -637,7 +561,7 @@ uint32_t CscOverlay::stripData ( const std::vector<const CscRawData*>& data, bool precision = (gasLayer==0) && (!(spuID==4 || spuID==9)); bool check = precision || non_precision; if ( !check ) { - //msg << MSG::DEBUG<<"Not precision or non_precision, skipping layer="<<layer<<", gasLayer="<<gasLayer<<", spuID="<<spuID<<endmsg; + //ATH_MSG_DEBUG("Not precision or non_precision, skipping layer="<<layer<<", gasLayer="<<gasLayer<<", spuID="<<spuID); continue; } @@ -645,7 +569,7 @@ uint32_t CscOverlay::stripData ( const std::vector<const CscRawData*>& data, unsigned int newaddress = datum->address(); //if we're going to later flip the data strip for bug#56002 if (isdata && needtoflip(newaddress)) { - msg << MSG::VERBOSE << "needtoflip in stripdata, newaddress was = "<<newaddress<<", strip was = "<<strip<<endmsg; + ATH_MSG_VERBOSE("needtoflip in stripdata, newaddress was = "<<newaddress<<", strip was = "<<strip); //old way //newaddress= newaddress- (width-1);//apparently need to shift the address to the highest strip @@ -659,7 +583,7 @@ uint32_t CscOverlay::stripData ( const std::vector<const CscRawData*>& data, uint32_t newStrip = uint32_t (49-oldStrip);//starts at 1 strip=strip - oldStrip + newStrip; - msg << MSG::VERBOSE << "needtoflip in stripdata, newaddress now = "<<newaddress<<", strip now = "<<strip<<endmsg; + ATH_MSG_VERBOSE("needtoflip in stripdata, newaddress now = "<<newaddress<<", strip now = "<<strip); } if ( needtoflip(newaddress) ){ @@ -673,27 +597,27 @@ uint32_t CscOverlay::stripData ( const std::vector<const CscRawData*>& data, if ( newaddress < address ) address = newaddress; } - msg << MSG::DEBUG << "stripData(): width="<<width<<" hashOffset="<<hashOffset<<" datumaddress="<<datum->address()<<" layer="<<layer<<" strip="<<strip<<", hash="<<hash<<" address="<<address<<endmsg; + ATH_MSG_DEBUG("stripData(): width="<<width<<" hashOffset="<<hashOffset<<" datumaddress="<<datum->address()<<" layer="<<layer<<" strip="<<strip<<", hash="<<hash<<" address="<<address); for (unsigned int j=0; j<width; ++j) { std::vector<uint16_t> adcs; bool extractSamples = datum->samples(j, numSamples, adcs); if ( !extractSamples ) { - msg << MSG::WARNING << "Unable to extract samples for strip " << j - << " Online Cluster width = " << width << " for number of Samples = " << numSamples << endmsg; + ATH_MSG_WARNING("Unable to extract samples for strip " << j + << " Online Cluster width = " << width << " for number of Samples = " << numSamples); } else { int newstrip = (strip+j); if (false && isdata && needtoflip(address)){ newstrip = strip-j; - msg << MSG::VERBOSE << "needtoflip in stripdata, newstrip is "<<newstrip<<endmsg; + ATH_MSG_VERBOSE("needtoflip in stripdata, newstrip is "<<newstrip); } samples.insert ( std::make_pair( newstrip, adcs) ); } } } - msg << MSG::DEBUG << "stripData<>() end: hash=" << hash << " address=" << address << endmsg; + ATH_MSG_DEBUG("stripData<>() end: hash=" << hash << " address=" << address); return address; } @@ -704,10 +628,9 @@ std::vector<CscRawData*> CscOverlay::overlay( const std::map< int,std::vector<ui const uint16_t collId, const uint32_t hash ) { - MsgStream msg(msgSvc(), name()); - msg << MSG::DEBUG << "overlay<>() begin: hash="<<hash<<" address="<<address<<endmsg; + ATH_MSG_DEBUG("overlay<>() begin: hash="<<hash<<" address="<<address); std::vector<CscRawData*> datas; - CscRawData * rawData = 0; + CscRawData * rawData = nullptr; int max = 192; if ( spuID == 4 || spuID == 9 ) max = 48; std::vector<uint16_t> samples; @@ -723,7 +646,7 @@ std::vector<CscRawData*> CscOverlay::overlay( const std::map< int,std::vector<ui bool used=false; if ( sig != sigSamples.end() && ovl == ovlSamples.end() ) { // real data only - msg << MSG::VERBOSE << "data only for i="<<i<<endmsg; + ATH_MSG_VERBOSE("data only for i="<<i); for ( unsigned int j=0; j<(*sig).second.size(); ++j ) { samples.push_back( (*sig).second.at(j) ); assert((*sig).second.at(j)<=MAX_AMPL); @@ -731,16 +654,16 @@ std::vector<CscRawData*> CscOverlay::overlay( const std::map< int,std::vector<ui width++; used=true; } else if ( sig == sigSamples.end() && ovl != ovlSamples.end() ) { // simulation only - msg << MSG::VERBOSE << "simulation only for i="<<i<<endmsg; + ATH_MSG_VERBOSE("simulation only for i="<<i); int myhashw=myhash+width; if (needtoflip(myaddress)) {myhashw=myhash-width;} double noise = m_cscCalibTool->stripNoise( (myhashw), false );//in ADC counts for ( unsigned int j=0; j<(*ovl).second.size(); ++j ) { double theNoise = CLHEP::RandGauss::shoot(m_rndmEngine, 0.0, noise); float adcCount = (*ovl).second.at(j) + theNoise ;//add noise if ( adcCount > MAX_AMPL ) { - msg << MSG::DEBUG << "value out of range (adding noise): " << adcCount << " " + ATH_MSG_DEBUG("value out of range (adding noise): " << adcCount << " " << " Setting it to max value = " << MAX_AMPL - << " IdentifierHash is " << (myhashw) <<endmsg; + << " IdentifierHash is " << (myhashw)); adcCount = MAX_AMPL; } samples.push_back( (uint16_t) rint(adcCount) ); @@ -748,15 +671,15 @@ std::vector<CscRawData*> CscOverlay::overlay( const std::map< int,std::vector<ui width++; used=true; } else if ( sig != sigSamples.end() && ovl != ovlSamples.end() ) { // real data + MC - msg << MSG::VERBOSE << "data and simulation for i="<<i<<endmsg; + ATH_MSG_VERBOSE("data and simulation for i="<<i); int myhashw=myhash+width; if (needtoflip(myaddress)) {myhashw=myhash-width;} double pedestal = m_cscCalibTool->stripPedestal( (myhashw), false );//in ADC counts for ( unsigned int j=0; j<(*sig).second.size(); ++j ) { float adcCount = (*sig).second.at(j) + (*ovl).second.at(j) - pedestal ;//subtract pedestal only (data already has noise) if ( adcCount > MAX_AMPL ) { - msg << MSG::DEBUG << "value out of range (adding data+MC samples - pedestal): " << adcCount << " " + ATH_MSG_DEBUG("value out of range (adding data+MC samples - pedestal): " << adcCount << " " << " Setting it to max value = " << MAX_AMPL - << " IdentifierHash is " << (myhashw) <<endmsg; + << " IdentifierHash is " << (myhashw)); adcCount = MAX_AMPL; } samples.push_back( (uint16_t) rint(adcCount) ); @@ -777,14 +700,14 @@ std::vector<CscRawData*> CscOverlay::overlay( const std::map< int,std::vector<ui rawData->setHashID(myhash); rawData->setTime(0);//ACH - TODO: should be made significantly more clever! datas.push_back(rawData); - msg << MSG::DEBUG << "overlay<>() add datum: hash="<<myhash<<" address="<<myaddress<<" width="<<width<<endmsg; + ATH_MSG_DEBUG("overlay<>() add datum: hash="<<myhash<<" address="<<myaddress<<" width="<<width); samples.clear(); if (!needtoflip(myaddress)) {myhash+=width; myaddress+=width;} width=0; } } - msg << MSG::DEBUG << "overlay<>() end: CscRawDatas size="<<datas.size()<<endmsg; + ATH_MSG_DEBUG("overlay<>() end: CscRawDatas size="<<datas.size()); return datas; } diff --git a/PhysicsAnalysis/PrimaryDPDMaker/PrimaryDPDMaker/ThinContainers.h b/PhysicsAnalysis/PrimaryDPDMaker/PrimaryDPDMaker/ThinContainers.h index fe8c170d27c1b76b3182355f8dd0a9be26517c7e..bd83e6931267dcbb5d0ebc4ee713845c741171dc 100644 --- a/PhysicsAnalysis/PrimaryDPDMaker/PrimaryDPDMaker/ThinContainers.h +++ b/PhysicsAnalysis/PrimaryDPDMaker/PrimaryDPDMaker/ThinContainers.h @@ -28,66 +28,46 @@ Description: This is a short algorithm to select calorimeter cells that are ******************************************************************************/ -#include <string> -#include <vector> + #include "AthenaBaseComps/AthAlgorithm.h" -#include "EventKernel/INavigable4Momentum.h" #include "AthenaKernel/IThinningSvc.h" -#include "GaudiKernel/Property.h" -#include "GaudiKernel/ServiceHandle.h" #include "StoreGate/StoreGateSvc.h" -#include "AthContainers/DataVector.h" - -#include "CLHEP/Vector/LorentzVector.h" -#include "CLHEP/Vector/ThreeVector.h" +#include "GaudiKernel/ToolHandle.h" -// Needed for TrackParticles -#include "Particle/TrackParticleContainer.h" // Needed for Tracks -#include "TrkTrack/TrackCollection.h" -#include "TrkTrack/Track.h" +#include "TrkTrack/TrackCollection.h" //typedef, cannot fwd include // Needed for the cell IDs #include "Identifier/Identifier.h" +#include "Identifier/IdentifierHash.h" +// #include "CaloEvent/CaloCellContainer.h" #include "CaloEvent/CaloClusterContainer.h" -// Needed for the pixel clusters -#include "InDetReadoutGeometry/PixelDetectorManager.h" -#include "InDetReadoutGeometry/SCT_DetectorManager.h" -#include "InDetReadoutGeometry/TRT_DetectorManager.h" +//following are typedef'ed, cannot fwd include #include "InDetPrepRawData/PixelClusterContainer.h" -#include "InDetPrepRawData/PixelClusterCollection.h" -#include "InDetPrepRawData/PixelCluster.h" #include "InDetPrepRawData/SCT_ClusterContainer.h" -#include "InDetPrepRawData/SCT_ClusterCollection.h" -#include "InDetPrepRawData/SCT_Cluster.h" #include "InDetPrepRawData/TRT_DriftCircleContainer.h" -#include "InDetPrepRawData/TRT_DriftCircleCollection.h" -#include "InDetPrepRawData/TRT_DriftCircle.h" -#include "InDetIdentifier/PixelID.h" // Needed for RegSelSvc -#include "GaudiKernel/ToolHandle.h" -#include "IRegionSelector/RegSelEnums.h" +#include "IRegionSelector/RegSelEnums.h" //contains the DETID enum -typedef InDet::PixelClusterContainer PixelClusterContainer; -typedef InDet::PixelClusterCollection PixelClusterCollection; -typedef InDet::PixelCluster PixelCluster; - -typedef InDet::SCT_ClusterContainer SCT_ClusterContainer; -typedef InDet::SCT_ClusterCollection SCT_ClusterCollection; -typedef InDet::SCT_Cluster SCT_Cluster; - -typedef InDet::TRT_DriftCircleContainer TRT_DriftCircleContainer; -typedef InDet::TRT_DriftCircleCollection TRT_DriftCircleCollection; -typedef InDet::TRT_DriftCircle TRT_DriftCircle; +// +#include <string> +#include <vector> +#include <set> -//class CaloClusterContainer; //Needed for RegSelSvc class IRegSelSvc; class I4Momentum; - +namespace Rec{ + class TrackParticleContainer; +} + +namespace CLHEP{ + class HepLorentzVector; + class Hep3Vector; +} class ThinContainers : public AthAlgorithm { diff --git a/PhysicsAnalysis/PrimaryDPDMaker/src/ThinContainers.cxx b/PhysicsAnalysis/PrimaryDPDMaker/src/ThinContainers.cxx index c2434e36e8635193bd30a34641b0c49d655d6d7f..7d7d0ddd22c924dae208b97bac7d3cfab584b773 100644 --- a/PhysicsAnalysis/PrimaryDPDMaker/src/ThinContainers.cxx +++ b/PhysicsAnalysis/PrimaryDPDMaker/src/ThinContainers.cxx @@ -43,26 +43,27 @@ #include "tauEvent/TauJet.h" #include "JetEvent/JetCollection.h" #include "Particle/TrackParticleContainer.h" -#include "TrkTrack/TrackCollection.h" #include "TrkTrack/Track.h" #include "TrkParameters/TrackParameters.h" #include "TrkTrackSummary/TrackSummary.h" #include "AnalysisTriggerEvent/LVL1_ROI.h" #include "AnalysisTriggerEvent/EmTau_ROI.h" -#include "CaloEvent/CaloCellContainer.h" #include "CaloEvent/CaloCellLinkContainer.h" #include "CaloEvent/CaloCellLink.h" -#include "CaloEvent/CaloClusterContainer.h" #include "CaloEvent/CaloCluster.h" -#include "InDetPrepRawData/PixelClusterContainer.h" + +// Needed for the pixel clusters +#include "InDetReadoutGeometry/PixelDetectorManager.h" +#include "InDetReadoutGeometry/SCT_DetectorManager.h" +#include "InDetReadoutGeometry/TRT_DetectorManager.h" +// #include "InDetPrepRawData/PixelClusterCollection.h" #include "InDetPrepRawData/PixelCluster.h" -#include "InDetPrepRawData/SCT_ClusterContainer.h" #include "InDetPrepRawData/SCT_ClusterCollection.h" #include "InDetPrepRawData/SCT_Cluster.h" -#include "InDetPrepRawData/TRT_DriftCircleContainer.h" #include "InDetPrepRawData/TRT_DriftCircleCollection.h" #include "InDetPrepRawData/TRT_DriftCircle.h" +// #include "InDetReadoutGeometry/TRT_BaseElement.h" #include "InDetRIO_OnTrack/PixelClusterOnTrack.h" @@ -70,7 +71,7 @@ #include "InDetRIO_OnTrack/TRT_DriftCircleOnTrack.h" #include "TrkPseudoMeasurementOnTrack/PseudoMeasurementOnTrack.h" -#include "Identifier/IdentifierHash.h" + // Needed for deltaR calculation (really?) @@ -2109,7 +2110,7 @@ StatusCode ThinContainers::thinPixels(const InDet::PixelClusterContainer* pixelC ++nTotal; ATH_MSG_DEBUG( "There are " << (*pixelItr)->size() << " entries in the PixelClusterContainer!" ); - const PixelClusterCollection *colNext = (*pixelItr); + const InDet::PixelClusterCollection *colNext = (*pixelItr); if (!colNext){ continue; } @@ -2190,7 +2191,7 @@ StatusCode ThinContainers::thinSCTClusters(const InDet::SCT_ClusterContainer* sc ++nTotal; ATH_MSG_DEBUG( "There are " << (*sctItr)->size() << " entries in the SCT_ClusterContainer!" ); - const SCT_ClusterCollection *colNext = (*sctItr); + const InDet::SCT_ClusterCollection *colNext = (*sctItr); if (!colNext){ continue; } @@ -2276,7 +2277,7 @@ StatusCode ThinContainers::thinTRTDriftCircles(const InDet::TRT_DriftCircleConta ++nTotal; ATH_MSG_DEBUG( "There are " << (*trtItr)->size() << " entries in the TRT_DriftCircleContainer!" ); - const TRT_DriftCircleCollection *colNext = (*trtItr); + const InDet::TRT_DriftCircleCollection *colNext = (*trtItr); if (!colNext){ continue; } diff --git a/Projects/AthSimulation/package_filters.txt b/Projects/AthSimulation/package_filters.txt index 21eae91821955f4c57c97e40affe8564c8566294..552cada7658d7e48f2e8f496aa6c08bae9176920 100644 --- a/Projects/AthSimulation/package_filters.txt +++ b/Projects/AthSimulation/package_filters.txt @@ -330,6 +330,7 @@ + Tools/KitValidation + Tools/PathResolver + Tools/PmbCxxUtils ++ Tools/PROCTools + Tools/PyCmt + Tools/PyJobTransforms + Tools/PyUtils diff --git a/Reconstruction/egamma/egammaAlgs/python/egammaSuperClusterBuilder.py b/Reconstruction/egamma/egammaAlgs/python/egammaSuperClusterBuilder.py index d1081903d1875422e85b7c0ed2270b5bc81df76c..144685fb1c78f89bd1d5434d6f6f33fe512ba74e 100644 --- a/Reconstruction/egamma/egammaAlgs/python/egammaSuperClusterBuilder.py +++ b/Reconstruction/egamma/egammaAlgs/python/egammaSuperClusterBuilder.py @@ -9,14 +9,14 @@ from egammaRec.egammaRecFlags import jobproperties # to set jobproperties.egamma from egammaRec import egammaKeys from egammaTools.egammaToolsFactories import \ - EMTrackMatchBuilder, EMConversionBuilder, egammaSwTool, egammaMVATool + EMTrackMatchBuilder, EMConversionBuilder, egammaSwTool, egammaMVASvc electronSuperClusterBuilder = AlgFactory( egammaAlgsConf.electronSuperClusterBuilder, name = 'electronSuperClusterBuilder', InputEgammaRecContainerName=egammaKeys.EgammaRecKey(), SuperElectronRecCollectionName=egammaKeys.ElectronSuperRecKey(), ClusterCorrectionTool=egammaSwTool, - MVACalibTool=egammaMVATool, + MVACalibSvc=egammaMVASvc, EtThresholdCut=1000, TrackMatchBuilderTool = EMTrackMatchBuilder ) @@ -26,6 +26,6 @@ photonSuperClusterBuilder = AlgFactory( egammaAlgsConf.photonSuperClusterBuilder InputEgammaRecContainerName=egammaKeys.EgammaRecKey(), SuperPhotonRecCollectionName=egammaKeys.PhotonSuperRecKey(), ClusterCorrectionTool=egammaSwTool, - MVACalibTool= egammaMVATool, + MVACalibSvc= egammaMVASvc, ConversionBuilderTool = EMConversionBuilder ) diff --git a/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.cxx b/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.cxx index 8c552719ccdd5abee4eaa17d2e67a3c6d64e3fc7..cdf36409929dc77b79ab1802654d8381a87b6023 100644 --- a/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.cxx +++ b/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.cxx @@ -145,10 +145,11 @@ StatusCode egammaSuperClusterBuilder::initialize() { m_clusterCorrectionTool.disable(); } if (m_calibrateClusters) { - ATH_CHECK(m_MVACalibTool.retrieve()); - } else { - m_MVACalibTool.disable(); - } + ATH_CHECK(m_MVACalibSvc.retrieve()); + } + // else { + // m_MVACalibSvc.disable(); + // } return StatusCode::SUCCESS; } @@ -400,7 +401,7 @@ StatusCode egammaSuperClusterBuilder::CalibrateCluster(xAOD::CaloCluster* newClu //So We will need at the end to do the final update in the EMClusterTool //For now apply just cluster info only calibration. if (m_calibrateClusters) { - ATH_CHECK(m_MVACalibTool->execute(newCluster,egType)); + ATH_CHECK(m_MVACalibSvc->execute(*newCluster,egType)); } ATH_MSG_DEBUG("========== cluster only calibration ==== "); ATH_MSG_DEBUG("Cluster Energy after cluster only calibration: "<<newCluster->e()); diff --git a/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.h b/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.h index 609bb223eca09ce7c3d42a10c46bf76abe46052f..d1a57079899017cd169b793da7c330c66bdc3db1 100644 --- a/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.h +++ b/Reconstruction/egamma/egammaAlgs/src/egammaSuperClusterBuilder.h @@ -17,7 +17,7 @@ #include "CaloUtils/CaloCellDetPos.h" #include "xAODEgamma/EgammaEnums.h" #include "egammaInterfaces/IegammaSwTool.h" -#include "egammaMVACalib/IegammaMVATool.h" +#include "egammaInterfaces/IegammaMVASvc.h" /** Base class for electronSuperClusterBuilder and photonSuperClusterBuilder. * The inheritance should be private. This class should never be instantiated @@ -141,9 +141,9 @@ private: Gaudi::Property<bool> m_calibrateClusters {this, "CalibrateClusters", true, "Whether to run cluster calibrations"}; - /** @brief Handle to the MVA calibration Tool **/ - PublicToolHandle<IegammaMVATool> m_MVACalibTool {this, - "MVACalibTool", "egammaMVATool", "calibration tool"}; + /** @brief Handle to the MVA calibration service **/ + ServiceHandle<IegammaMVASvc> m_MVACalibSvc {this, + "MVACalibSvc", "egammaMVASvc", "calibration service"}; /** @brief Tool to handle cluster corrections */ ToolHandle<IegammaSwTool> m_clusterCorrectionTool {this, diff --git a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IegammaMVACalibTool.h b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IegammaMVACalibTool.h new file mode 100644 index 0000000000000000000000000000000000000000..9b8bc9f033924acea650a998e312eeccf7ef62c2 --- /dev/null +++ b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IegammaMVACalibTool.h @@ -0,0 +1,28 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ +#ifndef EGAMMAINTERFACES_iEGAMMAMVACALIBTOOL_H +#define EGAMMAINTERFACES_iEGAMMAMVACALIBTOOL_H + +#include "GaudiKernel/IAlgTool.h" + +// EDM includes +#include "xAODEgamma/EgammaFwd.h" +#include "xAODCaloEvent/CaloClusterFwd.h" + +/** + * @class IegammaMVACalibTool + * @brief A tool used by the egammaMVASvc to help manage the MVAs. + **/ +class IegammaMVACalibTool : virtual public IAlgTool { +public: + DeclareInterfaceID(IegammaMVACalibTool, 1, 0); + + virtual ~IegammaMVACalibTool() override {}; + + virtual float getEnergy(const xAOD::Egamma* eg, + const xAOD::CaloCluster* clus) const = 0; + +}; + +#endif diff --git a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IegammaMVASvc.h b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IegammaMVASvc.h new file mode 100644 index 0000000000000000000000000000000000000000..14525a8bffc539f6fa9a224a11d915a8173a1099 --- /dev/null +++ b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IegammaMVASvc.h @@ -0,0 +1,37 @@ +// Dear Emacs, this is -*- C++ -*- + +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + + +#ifndef EGAMMAINTERFACES_IEGAMMAMVASVC_H +#define EGAMMAINTERFACES_IEGAMMAMVASVC_H + +#include "GaudiKernel/IService.h" + +// EDM includes +#include "xAODEgamma/EgammaFwd.h" +#include "xAODEgamma/EgammaEnums.h" +#include "xAODCaloEvent/CaloClusterFwd.h" + + +class IegammaMVASvc : virtual public IService { +public: + DeclareInterfaceID(IegammaMVASvc, 1, 0); + + virtual ~IegammaMVASvc() override {}; + + /// Standard execute when you have both cluster and eg object + virtual StatusCode execute(xAOD::CaloCluster& cluster, + const xAOD::Egamma& eg) const = 0; + + /// An execute that just has cluster and egType. A converted photon + /// is treated like an unconverted photon since no access to vertex. + virtual StatusCode execute(xAOD::CaloCluster& cluster, + xAOD::EgammaParameters::EgammaType egType) const = 0; + + +}; + +#endif diff --git a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IelectronSuperClusterBuilder.h b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IelectronSuperClusterBuilder.h deleted file mode 100644 index 66d93590d31a7c00984eaf5f339f3038f407725b..0000000000000000000000000000000000000000 --- a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IelectronSuperClusterBuilder.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef EGAMMAINTERFACES_IELECTRONSUPERCLUSTERBUILDER_H -#define EGAMMAINTERFACES_IELECTRONSUPERCLUSTERBUILDER_H - -/** @class IELECTRONSUPERCLUSTERBULDER - Interface for the tool Reconstruction/egamma/egammaTools/electronSuperClusterBuilder - @author David Di Valentino david.di.valentino@cern.ch -CREATED : 21/12/2013 -MODIFIED : -*/ -// INCLUDE HEADER FILES: -#include "GaudiKernel/IAlgTool.h" - -static const InterfaceID IID_IelectronSuperClusterBuilder("IelectronSuperClusterBuilder", 1, 0); - -class IelectronSuperClusterBuilder : virtual public IAlgTool -{ - - public: - /** @brief Virtual destructor*/ - virtual ~IelectronSuperClusterBuilder() {}; - /** @brief AlgTool interface methods */ - static const InterfaceID& interfaceID(); - /** @brief initialize method*/ - virtual StatusCode initialize() = 0; - virtual StatusCode finalize() = 0; - virtual StatusCode execute() = 0; -}; - -inline const InterfaceID& IelectronSuperClusterBuilder::interfaceID() -{ - return IID_IelectronSuperClusterBuilder; -} - -#endif diff --git a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IphotonSuperClusterBuilder.h b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IphotonSuperClusterBuilder.h deleted file mode 100644 index 67ed47ef6296193ebb17edbfa6bc2917073b14ec..0000000000000000000000000000000000000000 --- a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/IphotonSuperClusterBuilder.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef EGAMMAINTERFACES_IPHOTONSUPERCLUSTERBUILDER_H -#define EGAMMAINTERFACES_IPHOTONSUPERCLUSTERBUILDER_H - -#include "GaudiKernel/IAlgTool.h" - -static const InterfaceID IID_IphotonSuperClusterBuilder("IphotonSuperClusterBuilder", 1, 0); - -class IphotonSuperClusterBuilder : virtual public IAlgTool -{ - - public: - /** @brief Virtual destructor*/ - virtual ~IphotonSuperClusterBuilder() {}; - /** @brief AlgTool interface methods */ - static const InterfaceID& interfaceID(); - /** @brief initialize method*/ - virtual StatusCode initialize() = 0; - virtual StatusCode finalize() = 0; - virtual StatusCode execute() = 0; -}; - -inline const InterfaceID& IphotonSuperClusterBuilder::interfaceID() -{ - return IID_IphotonSuperClusterBuilder; -} - -#endif diff --git a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/egammaInterfacesDict.h b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/egammaInterfacesDict.h index 37ab5e39b5eeeecc03ad9f1f80acb3cd9a5d0a9a..fa02a1a3eb53a09b47e2cfd95f29a33bb6433085 100644 --- a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/egammaInterfacesDict.h +++ b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/egammaInterfacesDict.h @@ -38,6 +38,5 @@ #include "egammaInterfaces/IegammaTrkRefitterTool.h" #include "egammaInterfaces/Iegammaqweta1c.h" #include "egammaInterfaces/Iegammaqweta2c.h" -#include "egammaInterfaces/IelectronSuperClusterBuilder.h" -#include "egammaInterfaces/IphotonSuperClusterBuilder.h" +#include "egammaInterfaces/IegammaMVASvc.h" #endif // EGAMMAINTERFACES_EGAMMAINTERFACESDICT_H diff --git a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/selection.xml b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/selection.xml index 790e3a3a4887da8d2deddf9f41fcd98793ec2c7c..d31c2df10d6069bfcbf303450f7432018ef692ec 100644 --- a/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/selection.xml +++ b/Reconstruction/egamma/egammaInterfaces/egammaInterfaces/selection.xml @@ -19,7 +19,6 @@ <class name="IegammaTrkRefitterTool" /> <class name="Iegammaqweta1c" /> <class name="Iegammaqweta2c" /> - <class name="IelectronSuperClusterBuilder" /> - <class name="IphotonSuperClusterBuilder" /> + <class name="IegammaMVASvc" /> </lcgdict> diff --git a/Reconstruction/egamma/egammaMVACalib/CMakeLists.txt b/Reconstruction/egamma/egammaMVACalib/CMakeLists.txt index 0af29ebf67d598aa05fd584b94925a114cd82940..bdb7b3b17405ee0268c4ae20a2f34a15aec8e95d 100644 --- a/Reconstruction/egamma/egammaMVACalib/CMakeLists.txt +++ b/Reconstruction/egamma/egammaMVACalib/CMakeLists.txt @@ -27,6 +27,7 @@ atlas_depends_on_subdirs( Reconstruction/MVAUtils Control/CxxUtils Tools/PathResolver + Reconstruction/egamma/egammaInterfaces ${extra_dep} ) # External dependencies: @@ -44,8 +45,8 @@ atlas_add_library( egammaMVACalibLib if( NOT XAOD_STANDALONE ) atlas_add_component( egammaMVACalib - src/components/*.cxx - LINK_LIBRARIES GaudiKernel egammaMVACalibLib ) + src/*.cxx src/components/*.cxx + LINK_LIBRARIES GaudiKernel egammaMVACalibLib PathResolver MVAUtils ) endif() atlas_add_dictionary( egammaMVACalibDict diff --git a/Reconstruction/egamma/egammaMVACalib/Root/egammaMVAFunctions.cxx b/Reconstruction/egamma/egammaMVACalib/Root/egammaMVAFunctions.cxx new file mode 100644 index 0000000000000000000000000000000000000000..238957c92769ac77641f1dd9a7881e86ecca1d48 --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/Root/egammaMVAFunctions.cxx @@ -0,0 +1,298 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + + +#include "egammaMVACalib/egammaMVAFunctions.h" + +/** + * These functions are for building the maps of functions + **/ + +namespace egammaMVAFunctions +{ + + // forward declarations + void initializeClusterFuncs(funcMap_t& funcLibrary, + const std::string& prefix, + bool useLayerCorrected); + + void initializeEgammaFuncs(funcMap_t& funcLibrary, + const std::string& prefix, + bool useLayerCorrected); + + /// A function to build the map for electrons + std::unique_ptr<funcMap_t> initializeElectronFuncs(bool useLayerCorrected) + { + auto funcLibraryPtr = std::make_unique<funcMap_t>(); + funcMap_t& funcLibrary = *funcLibraryPtr; + + initializeClusterFuncs(funcLibrary, "el", useLayerCorrected); + initializeEgammaFuncs(funcLibrary, "el", useLayerCorrected); + + funcLibrary["el_charge"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return compute_el_charge(*(static_cast<const xAOD::Electron*>(eg))); }; + funcLibrary["el_tracketa"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return compute_el_tracketa(*(static_cast<const xAOD::Electron*>(eg))); }; + funcLibrary["el_trackpt"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return compute_el_trackpt(*(static_cast<const xAOD::Electron*>(eg))); }; + funcLibrary["el_trackz0"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return compute_el_trackz0(*(static_cast<const xAOD::Electron*>(eg))); }; + funcLibrary["el_refittedTrack_qoverp"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return compute_el_refittedTrack_qoverp(*(static_cast<const xAOD::Electron*>(eg))); }; + + return funcLibraryPtr; + } + + /// A function to build the map for uncoverted photons + std::unique_ptr<funcMap_t> initializeUnconvertedPhotonFuncs(bool useLayerCorrected) + { + auto funcLibraryPtr = std::make_unique<funcMap_t>(); + funcMap_t& funcLibrary = *funcLibraryPtr; + + initializeClusterFuncs(funcLibrary, "ph", useLayerCorrected); + initializeEgammaFuncs(funcLibrary, "ph", useLayerCorrected); + + return funcLibraryPtr; + } + + + /// A function to build the map for converted photons + std::unique_ptr<funcMap_t> initializeConvertedPhotonFuncs(bool useLayerCorrected) + { + auto funcLibraryPtr = std::make_unique<funcMap_t>(); + funcMap_t& funcLibrary = *funcLibraryPtr; + + initializeClusterFuncs(funcLibrary, "ph", useLayerCorrected); + initializeEgammaFuncs(funcLibrary, "ph", useLayerCorrected); + + + funcLibrary["ph_Rconv"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*)->float + { return xAOD::EgammaHelpers::conversionRadius(static_cast<const xAOD::Photon*>(eg)); }; + + funcLibrary["convR"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*)->float + { + auto ph = static_cast<const xAOD::Photon*>(eg); + if (compute_ptconv(ph) > 3*CLHEP::GeV) { + return xAOD::EgammaHelpers::conversionRadius(ph); + } else { + return 799.0; + } + }; + funcLibrary["ph_zconv"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return static_cast<const xAOD::Photon*>(eg)->vertex()->position().z(); }; + funcLibrary["ph_pt1conv"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*)->float + { return compute_pt1conv(static_cast<const xAOD::Photon*>(eg)); }; + funcLibrary["ph_pt2conv"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*)->float + { return compute_pt2conv(static_cast<const xAOD::Photon*>(eg)); }; + funcLibrary["ph_ptconv"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return compute_ptconv(static_cast<const xAOD::Photon*>(eg)); }; + + funcLibrary["convPtRatio"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*)->float + { + auto ph = static_cast<const xAOD::Photon*>(eg); + if (xAOD::EgammaHelpers::numberOfSiTracks(ph) == 2) { + auto pt1 = compute_pt1conv(ph); + auto pt2 = compute_pt2conv(ph); + return std::max(pt1, pt2)/(pt1+pt2); + } else { + return 1.0f; + } + }; + + if (useLayerCorrected) { + funcLibrary["convEtOverPt"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*cl)->float + { + auto ph = static_cast<const xAOD::Photon*>(eg); + + float rv = 0.0; + if (xAOD::EgammaHelpers::numberOfSiTracks(ph) == 2) { + rv = std::max(0.0f, compute_correctedcl_Eacc(*cl)/(std::cosh(compute_cl_eta(*cl))*compute_ptconv(ph))); + } + return std::min(rv, 2.0f); + }; + } else { + funcLibrary["convEtOverPt"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*cl)->float + { + auto ph = static_cast<const xAOD::Photon*>(eg); + + float rv = 0.0; + if (xAOD::EgammaHelpers::numberOfSiTracks(ph) == 2) { + rv = std::max(0.0f, compute_rawcl_Eacc(*cl)/(std::cosh(compute_cl_eta(*cl))*compute_ptconv(ph))); + } + return std::min(rv, 2.0f); + }; + } + + return funcLibraryPtr; + } + + + // Initialize the functions that just depend on the cluster. + // This helper function is not meant for external use. + void initializeClusterFuncs(funcMap_t& funcLibrary, + const std::string& prefix, + bool useLayerCorrected) + { + + funcLibrary[prefix + "_cl_eta"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_cl_eta(*cl); }; + funcLibrary[prefix + "_cl_phi"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_cl_phi(*cl); }; + funcLibrary[prefix + "_cl_E"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_cl_e(*cl); }; + funcLibrary[prefix + "_cl_etaCalo"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_cl_etaCalo(*cl); }; + funcLibrary[prefix + "_cl_phiCalo"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_cl_phiCalo(*cl); }; + funcLibrary[prefix + "_cl_E_TileGap3"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return cl->eSample(CaloSampling::TileGap3); }; + + funcLibrary["cellIndexCalo"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return std::floor(std::abs(compute_cl_etaCalo(*cl))/0.025); }; + funcLibrary["phiModCalo"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return ((abs(compute_cl_eta(*cl)) < 1.425) ? + std::fmod(compute_cl_phiCalo(*cl), TMath::Pi()/512) : + std::fmod(compute_cl_phiCalo(*cl), TMath::Pi()/384)); + }; + funcLibrary["etaModCalo"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return std::fmod(std::abs(compute_cl_etaCalo(*cl)), 0.025); }; + funcLibrary["dPhiTG3"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return std::fmod(2.*TMath::Pi()+compute_cl_phi(*cl),TMath::Pi()/32.)-TMath::Pi()/64.0; }; + + if (useLayerCorrected) { + funcLibrary[prefix + "_rawcl_Es0"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_Es0(*cl); }; + funcLibrary[prefix + "_rawcl_Es1"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_Es1(*cl); }; + funcLibrary[prefix + "_rawcl_Es2"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_Es2(*cl); }; + funcLibrary[prefix + "_rawcl_Es3"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_Es3(*cl); }; + funcLibrary[prefix + "_rawcl_Eacc"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_Eacc(*cl); }; + funcLibrary[prefix + "_rawcl_f0"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_f0(*cl); }; + funcLibrary[prefix + "_rawcl_calibHitsShowerDepth"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_calibHitsShowerDepth(*cl); }; + funcLibrary["R12"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_correctedcl_Es1(*cl)/compute_correctedcl_Es2(*cl); }; + funcLibrary["fTG3"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return cl->eSample(CaloSampling::TileGap3)/compute_correctedcl_Eacc(*cl); }; + } else { + funcLibrary[prefix + "_rawcl_Es0"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_Es0(*cl); }; + funcLibrary[prefix + "_rawcl_Es1"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_Es1(*cl); }; + funcLibrary[prefix + "_rawcl_Es2"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_Es2(*cl); }; + funcLibrary[prefix + "_rawcl_Es3"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_Es3(*cl); }; + funcLibrary[prefix + "_rawcl_Eacc"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_Eacc(*cl); }; + funcLibrary[prefix + "_rawcl_f0"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_f0(*cl); }; + funcLibrary[prefix + "_rawcl_calibHitsShowerDepth"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_calibHitsShowerDepth(*cl); }; + funcLibrary["R12"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return compute_rawcl_Es1(*cl)/compute_rawcl_Es2(*cl); }; + funcLibrary["fTG3"] = [](const xAOD::Egamma*, const xAOD::CaloCluster* cl) + { return cl->eSample(CaloSampling::TileGap3)/compute_rawcl_Eacc(*cl); }; + } + } + + // Initialize the variables that just depend on egamma. + // This helper function is not meant for external use. + void initializeEgammaFuncs(funcMap_t& funcLibrary, + const std::string& prefix, + bool /* useLayerCorrected */) + { + funcLibrary[prefix + "_e011"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e011); }; + funcLibrary[prefix + "_e033"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e033); }; + funcLibrary[prefix + "_e132"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e132); }; + funcLibrary[prefix + "_e1152"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e1152); }; + funcLibrary[prefix + "_ethad1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::ethad1); }; + funcLibrary[prefix + "_ethad"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::ethad); }; + funcLibrary[prefix + "_f1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::f1); }; + funcLibrary[prefix + "_f3"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::f3); }; + funcLibrary[prefix + "_f1core"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::f1core); }; + funcLibrary[prefix + "_f3core"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::f3core); }; + funcLibrary[prefix + "_e233"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e233); }; + funcLibrary[prefix + "_e235"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e235); }; + funcLibrary[prefix + "_e255"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e255); }; + funcLibrary[prefix + "_e237"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e237); }; + funcLibrary[prefix + "_e277"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e277); }; + funcLibrary[prefix + "_e333"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e333); }; + funcLibrary[prefix + "_e335"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e335); }; + funcLibrary[prefix + "_e337"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e337); }; + funcLibrary[prefix + "_e377"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e377); }; + funcLibrary[prefix + "_weta1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::weta1); }; + funcLibrary[prefix + "_weta2"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::weta2); }; + funcLibrary[prefix + "_e2ts1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e2ts1); }; + funcLibrary[prefix + "_e2tsts1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::e2tsts1); }; + funcLibrary[prefix + "_fracs1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::fracs1); }; + funcLibrary[prefix + "_widths1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::widths1); }; + funcLibrary[prefix + "_widths2"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::widths2); }; + funcLibrary[prefix + "_poscs1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::poscs1); }; + funcLibrary[prefix + "_poscs2"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::poscs2); }; + funcLibrary[prefix + "_asy1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::asy1); }; + funcLibrary[prefix + "_pos"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::pos); }; + funcLibrary[prefix + "_pos7"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::pos7); }; + funcLibrary[prefix + "_barys1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::barys1); }; + funcLibrary[prefix + "_wtots1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::wtots1); }; + funcLibrary[prefix + "_emins1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::emins1); }; + funcLibrary[prefix + "_emaxs1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::emaxs1); }; + funcLibrary[prefix + "_r33over37allcalo"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::r33over37allcalo); }; + funcLibrary[prefix + "_ecore"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::ecore); }; + funcLibrary[prefix + "_Reta"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::Reta); }; + funcLibrary[prefix + "_Rphi"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::Rphi); }; + funcLibrary[prefix + "_Eratio"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::Eratio); }; + funcLibrary[prefix + "_Rhad"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::Rhad); }; + funcLibrary[prefix + "_Rhad1"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::Rhad1); }; + funcLibrary[prefix + "_DeltaE"] = [](const xAOD::Egamma* eg, const xAOD::CaloCluster*) + { return eg->showerShapeValue(xAOD::EgammaParameters::DeltaE); }; + + } +} diff --git a/Reconstruction/egamma/egammaMVACalib/Root/egammaMVATree.cxx b/Reconstruction/egamma/egammaMVACalib/Root/egammaMVATree.cxx index 616457074a21a392d8eddbc8fcf197ad40d29c69..2f924a55e220e5768912a0abb195115eda2188fe 100644 --- a/Reconstruction/egamma/egammaMVACalib/Root/egammaMVATree.cxx +++ b/Reconstruction/egamma/egammaMVACalib/Root/egammaMVATree.cxx @@ -21,7 +21,7 @@ #include "egammaMVACalib/egammaMVATree.h" -using namespace egammaMVATreeHelpers; +using namespace egammaMVAFunctions; //ClassImp(egammaMVATreeEgamma) //#ifdef ROOTCORE diff --git a/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVAFunctions.h b/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVAFunctions.h new file mode 100644 index 0000000000000000000000000000000000000000..a66bd2ca6fb9ed56c0aaaa8eaa4719c8a50d3103 --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVAFunctions.h @@ -0,0 +1,304 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef EGAMMAMVACALIB_EGAMMAMVAFUNCTIONS +#define EGAMMAMVACALIB_EGAMMAMVAFUNCTIONS + +#include "xAODEgamma/Egamma.h" +#include "xAODEgamma/Electron.h" +#include "xAODEgamma/Photon.h" +#include "xAODEgamma/EgammaxAODHelpers.h" +#include "xAODEgamma/PhotonxAODHelpers.h" +#include "xAODCaloEvent/CaloCluster.h" +#include "egammaMVALayerDepth.h" + +// for the ConversionHelper (deprecated?) +#include <AsgTools/AsgMessaging.h> + +#include "TLorentzVector.h" + +#include <functional> +#include <string> +#include <unordered_map> +#include <cmath> +#include <memory> +#include <stdexcept> + + +/** + * These functions are for calculating variables used by the + * MVA calibration + **/ + +namespace egammaMVAFunctions +{ + // inline functions to avoid duplicates problem during linking (and performance) + // cluster functions + // REMEMBER to add the functions using corrected layer energies + inline float compute_cl_eta(const xAOD::CaloCluster& cluster) { return cluster.eta(); } + inline float compute_cl_phi(const xAOD::CaloCluster& cluster) { return cluster.phi(); } + inline float compute_cl_e(const xAOD::CaloCluster& cluster) { return cluster.e(); } + inline float compute_cl_etaCalo(const xAOD::CaloCluster& cluster) { + double tmp = 0.; + if(! (cluster.retrieveMoment(xAOD::CaloCluster::ETACALOFRAME, tmp))) { + throw std::runtime_error("etaCalo not found in CaloCluster object"); + } + return tmp; + } + inline float compute_cl_phiCalo(const xAOD::CaloCluster& cluster) { + double tmp = 0.; + if(! (cluster.retrieveMoment(xAOD::CaloCluster::PHICALOFRAME, tmp))) { + throw std::runtime_error("phiCalo not found in CaloCluster object"); + } + return tmp; + } + inline float compute_cl_etas1(const xAOD::CaloCluster& cluster) { return cluster.etaBE(1); } + inline float compute_cl_etas2(const xAOD::CaloCluster& cluster) { return cluster.etaBE(2); } + inline float compute_rawcl_Es0(const xAOD::CaloCluster& cl) { return cl.energyBE(0); } + /*inline std::function<float(const xAOD::CaloCluster&)> compute_rawcl_Es0_auto(bool use_corrected) + { + if (use_corrected) return [](const xAOD::CaloCluster& cl) { return cl.energyBE(0); }; + else return [](const xAOD::CaloCluster& cl) { return cl.energyBE(0); }; + }*/ + inline float compute_rawcl_Es1(const xAOD::CaloCluster& cl) { return cl.energyBE(1); } + inline float compute_rawcl_Es2(const xAOD::CaloCluster& cl) { return cl.energyBE(2); } + inline float compute_rawcl_Es3(const xAOD::CaloCluster& cl) { return cl.energyBE(3); } + + inline float compute_correctedcl_Es0(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es0") ? cl.auxdataConst<double>("correctedcl_Es0") : cl.energyBE(0); } + inline float compute_correctedcl_Es1(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es1") ? cl.auxdataConst<double>("correctedcl_Es1") : cl.energyBE(1); } + inline float compute_correctedcl_Es2(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es2") ? cl.auxdataConst<double>("correctedcl_Es2") : cl.energyBE(2); } + inline float compute_correctedcl_Es3(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es3") ? cl.auxdataConst<double>("correctedcl_Es3") : cl.energyBE(3); } + + inline float compute_rawcl_Eacc(const xAOD::CaloCluster& cl) { return cl.energyBE(1) + cl.energyBE(2) + cl.energyBE(3); } + inline float compute_rawcl_f0(const xAOD::CaloCluster& cl) { return cl.energyBE(0) / (cl.energyBE(1) + cl.energyBE(2) + cl.energyBE(3)); } + + inline float compute_correctedcl_Eacc(const xAOD::CaloCluster& cl) { return compute_correctedcl_Es1(cl) + compute_correctedcl_Es2(cl) + compute_correctedcl_Es3(cl); } + inline float compute_correctedcl_f0(const xAOD::CaloCluster& cl) { return compute_correctedcl_Es0(cl) / (compute_correctedcl_Eacc(cl)); } + + + inline float compute_calibHitsShowerDepth(const std::array<float, 4>& cl, float eta) + { + const std::array<float, 4> radius(get_MVAradius(eta)); + + // loop unrolling + const float denominator = cl[0] + cl[1] + cl[2] + cl[3]; + if (denominator == 0) return 0.; + + return (radius[0] * cl[0] + + radius[1] * cl[1] + + radius[2] * cl[2] + + radius[3] * cl[3]) / denominator; + } + + inline float compute_rawcl_calibHitsShowerDepth(const xAOD::CaloCluster& cl) + { + const std::array<float, 4> cluster_array {{ compute_rawcl_Es0(cl), + compute_rawcl_Es1(cl), + compute_rawcl_Es2(cl), + compute_rawcl_Es3(cl) }}; + return compute_calibHitsShowerDepth(cluster_array, compute_cl_eta(cl)); + } + + inline float compute_correctedcl_calibHitsShowerDepth(const xAOD::CaloCluster& cl) { + const std::array<float, 4> cluster_array {{ compute_correctedcl_Es0(cl), + compute_correctedcl_Es1(cl), + compute_correctedcl_Es2(cl), + compute_correctedcl_Es3(cl) }}; + return compute_calibHitsShowerDepth(cluster_array, compute_cl_eta(cl)); + } + + + + + // electron functions + inline float compute_el_charge(const xAOD::Electron& el) { return el.charge(); } + inline float compute_el_tracketa(const xAOD::Electron& el) { return el.trackParticle()->eta(); } + inline float compute_el_trackpt(const xAOD::Electron& el) { return el.trackParticle()->pt(); } + inline float compute_el_trackz0(const xAOD::Electron& el) { return el.trackParticle()->z0(); } + inline float compute_el_refittedTrack_qoverp(const xAOD::Electron& el) { return el.trackParticle()->qOverP(); } + inline int compute_el_author(const xAOD::Electron& el) { return el.auxdata<unsigned short int>("author"); } + + + // photon functions + inline int compute_ph_convFlag(const xAOD::Photon& ph) { + const auto original = xAOD::EgammaHelpers::conversionType(&ph); + if (original == 3) return 2; + else if (original != 0) return 1; + else return original; + } + + // a utility function + inline float getPtAtFirstMeasurement(const xAOD::TrackParticle* tp) + { + if (!tp) return 0; + for (unsigned int i = 0; i < tp->numberOfParameters(); ++i) { + if (tp->parameterPosition(i) == xAOD::FirstMeasurement) { + return hypot(tp->parameterPX(i), tp->parameterPY(i)); + } + } + return tp->pt(); + } + + // define a few without using conversion helper + + /// This ptconv function uses the vertex decorations + inline float compute_ptconv_decor(const xAOD::Photon* ph) + { + static const SG::AuxElement::Accessor<float> accPx("px"); + static const SG::AuxElement::Accessor<float> accPy("py"); + + auto vx = ph->vertex(); + return vx ? std::hypot(accPx(*vx), accPy(*vx)) : 0.0; + } + + /// This ptconv is the old one used by MVACalib + inline float compute_ptconv(const xAOD::Photon* ph) + { + auto vx = ph->vertex(); + if (!vx) return 0.0; + + TLorentzVector sum; + if (vx->trackParticle(0)) sum += vx->trackParticle(0)->p4(); + if (vx->trackParticle(1)) sum += vx->trackParticle(1)->p4(); + return sum.Perp(); + } + + inline float compute_pt1conv(const xAOD::Photon* ph) + { + static const SG::AuxElement::Accessor<float> accPt1("pt1"); + + const xAOD::Vertex* vx = ph->vertex(); + if (!vx) return 0.0; + if (accPt1.isAvailable(*vx)) { + return accPt1(*vx); + } else { + return getPtAtFirstMeasurement(vx->trackParticle(0)); + } + } + + inline float compute_pt2conv(const xAOD::Photon* ph) + { + static const SG::AuxElement::Accessor<float> accPt2("pt2"); + + const xAOD::Vertex* vx = ph->vertex(); + if (!vx) return 0.0; + if (accPt2.isAvailable(*vx)) { + return accPt2(*vx); + } else { + return getPtAtFirstMeasurement(vx->trackParticle(1)); + } + } + + // The functions to return the dictionaries of functions, + // i.e., the variable name to function + + /// Define the map type since it's long + using funcMap_t = std::unordered_map<std::string, + std::function<float(const xAOD::Egamma*, const xAOD::CaloCluster*)> >; + + /// A function to build the map for electrons + std::unique_ptr<funcMap_t> initializeElectronFuncs(bool useLayerCorrected); + + /// A function to build the map for uncoverted photons + std::unique_ptr<funcMap_t> initializeUnconvertedPhotonFuncs(bool useLayerCorrected); + + /// A function to build the map for converted photons + std::unique_ptr<funcMap_t> initializeConvertedPhotonFuncs(bool useLayerCorrected); + + + /// The ConversionHelper struct used by egammaMVATree + /// but not the functions in the dictionaries above. + /// (Might want to consider deprecating) + struct ConversionHelper + { + ConversionHelper(const xAOD::Photon* ph) + : m_vertex(ph ? ph->vertex() : nullptr), + m_tp0(m_vertex ? m_vertex->trackParticle(0) : nullptr), + m_tp1(m_vertex ? m_vertex->trackParticle(1) : nullptr), + m_pt1conv(0.), m_pt2conv(0.) + { + static asg::AsgMessaging static_msg("ConversionHelper"); + static_msg.msg(MSG::DEBUG) << "init conversion helper"; + if (!m_vertex) return; + + static SG::AuxElement::Accessor<float> accPt1("pt1"); + static SG::AuxElement::Accessor<float> accPt2("pt2"); + if (accPt1.isAvailable(*m_vertex) && accPt2.isAvailable(*m_vertex)) + { + m_pt1conv = accPt1(*m_vertex); + m_pt2conv = accPt2(*m_vertex); + } + else + { + static_msg.msg(MSG::WARNING) << "pt1/pt2 not available, will approximate from first measurements"; + m_pt1conv = getPtAtFirstMeasurement(m_tp0); + m_pt2conv = getPtAtFirstMeasurement(m_tp1); + } + } + + ConversionHelper(const xAOD::Photon& ph) + : ConversionHelper(&ph) { } // delegating constr + + inline float ph_Rconv() const { return m_vertex ? hypot(m_vertex->position().x(), m_vertex->position().y()) : 0; } + inline float ph_zconv() const { return m_vertex ? m_vertex->position().z() : 0.; } + inline int ph_convtrk1nPixHits() const { + if (!m_tp0) { return 0; } + uint8_t hits = 0; + if (m_tp0->summaryValue(hits, xAOD::numberOfPixelHits)) { return hits; } + else { + static asg::AsgMessaging static_msg("ConversionHelper"); + static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfPixelHits"; + return 0; + } + } + inline int ph_convtrk2nPixHits() const { + if (!m_tp1) return 0; + uint8_t hits; + if (m_tp1->summaryValue(hits, xAOD::numberOfPixelHits)) { return hits; } + else { + static asg::AsgMessaging static_msg("ConversionHelper"); + static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfPixelHits"; + return 0; + } + } + inline int ph_convtrk1nSCTHits() const { + if (!m_tp0) { return 0; } + uint8_t hits; + if (m_tp0->summaryValue(hits, xAOD::numberOfSCTHits)) { return hits; } + else { + static asg::AsgMessaging static_msg("ConversionHelper"); + static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfSCTHits"; + return 0; + } + } + inline int ph_convtrk2nSCTHits() const { + if (!m_tp1) { return 0; } + uint8_t hits; + if (m_tp1->summaryValue(hits, xAOD::numberOfSCTHits)) { return hits; } + else { + static asg::AsgMessaging static_msg("ConversionHelper"); + static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfSCTHits"; + return 0; + } + } + inline float ph_pt1conv() const { return m_pt1conv; } + inline float ph_pt2conv() const { return m_pt2conv; } + inline float ph_ptconv() const { + // TODO: evaluate if move to this new definition, by now keep the previous one + // to be consistent with the training + // return m_vertex ? xAOD::EgammaHelpers::momentumAtVertex(*m_vertex).perp() : 0.; + TLorentzVector sum; + if (m_tp0) sum += m_tp0->p4(); + if (m_tp1) sum += m_tp1->p4(); + return sum.Perp(); + } + private: + const xAOD::Vertex* m_vertex; + const xAOD::TrackParticle* m_tp0; + const xAOD::TrackParticle* m_tp1; + float m_pt1conv, m_pt2conv; + }; +} + +#endif diff --git a/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVATree.h b/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVATree.h index 939b4cc43e46f210fa5bdf290a3ab6212a898668..966aae7f6ed7e5c299a0456eec8bee994ba21916 100644 --- a/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVATree.h +++ b/Reconstruction/egamma/egammaMVACalib/egammaMVACalib/egammaMVATree.h @@ -27,7 +27,8 @@ #include <AsgTools/AsgMessaging.h> -#include <egammaMVACalib/egammaMVALayerDepth.h> +#include "egammaMVACalib/egammaMVALayerDepth.h" +#include "egammaMVACalib/egammaMVAFunctions.h" @@ -154,8 +155,6 @@ public: template<> const float* egammaMVATreeEgamma::get_ptr<float>(const std::string&) const; template<> const int* egammaMVATreeEgamma::get_ptr<int>(const std::string&) const; -namespace egammaMVATreeHelpers { struct ConversionHelper; } - class egammaMVATreePhoton : public egammaMVATreeEgamma { public: @@ -174,8 +173,8 @@ private: void init_variables(const std::set<std::string>& variables); typedef std::tuple<std::string, std::function<float(const xAOD::Photon&)>, float> FloatElement; //! typedef std::tuple<std::string, std::function<int(const xAOD::Photon&)>, int> IntElement; //! - typedef std::tuple<std::string, std::function<float(const egammaMVATreeHelpers::ConversionHelper&)>, float> FloatElementConv; //! - typedef std::tuple<std::string, std::function<int(const egammaMVATreeHelpers::ConversionHelper&)>, int> IntElementConv; //! + typedef std::tuple<std::string, std::function<float(const egammaMVAFunctions::ConversionHelper&)>, float> FloatElementConv; //! + typedef std::tuple<std::string, std::function<int(const egammaMVAFunctions::ConversionHelper&)>, int> IntElementConv; //! std::vector<FloatElement> m_functions_float_from_photon; //! std::vector<IntElement> m_functions_int_from_photon; //! std::vector<FloatElementConv> m_functions_float_from_ConversionHelper; //! @@ -227,203 +226,5 @@ public: template<> const float* egammaMVATreePhoton::get_ptr<float>(const std::string&) const; template<> const int* egammaMVATreePhoton::get_ptr<int>(const std::string&) const; -/** inline functions to compute quantities **/ -namespace egammaMVATreeHelpers -{ - // inline functions to avoid duplicates problem during linking (and performance) - // cluster functions - // REMEMBER to add the functions using corrected layer energies - inline float compute_cl_eta(const xAOD::CaloCluster& cluster) { return cluster.eta(); } - inline float compute_cl_phi(const xAOD::CaloCluster& cluster) { return cluster.phi(); } - inline float compute_cl_e(const xAOD::CaloCluster& cluster) { return cluster.e(); } - inline float compute_cl_etaCalo(const xAOD::CaloCluster& cluster) { - double tmp = 0.; - if(! (cluster.retrieveMoment(xAOD::CaloCluster::ETACALOFRAME, tmp))) { - throw std::runtime_error("etaCalo not found in CaloCluster object"); - } - return tmp; - } - inline float compute_cl_phiCalo(const xAOD::CaloCluster& cluster) { - double tmp = 0.; - if(! (cluster.retrieveMoment(xAOD::CaloCluster::PHICALOFRAME, tmp))) { - throw std::runtime_error("phiCalo not found in CaloCluster object"); - } - return tmp; - } - inline float compute_cl_etas1(const xAOD::CaloCluster& cluster) { return cluster.etaBE(1); } - inline float compute_cl_etas2(const xAOD::CaloCluster& cluster) { return cluster.etaBE(2); } - inline float compute_rawcl_Es0(const xAOD::CaloCluster& cl) { return cl.energyBE(0); } - /*inline std::function<float(const xAOD::CaloCluster&)> compute_rawcl_Es0_auto(bool use_corrected) - { - if (use_corrected) return [](const xAOD::CaloCluster& cl) { return cl.energyBE(0); }; - else return [](const xAOD::CaloCluster& cl) { return cl.energyBE(0); }; - }*/ - inline float compute_rawcl_Es1(const xAOD::CaloCluster& cl) { return cl.energyBE(1); } - inline float compute_rawcl_Es2(const xAOD::CaloCluster& cl) { return cl.energyBE(2); } - inline float compute_rawcl_Es3(const xAOD::CaloCluster& cl) { return cl.energyBE(3); } - - inline float compute_correctedcl_Es0(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es0") ? cl.auxdataConst<double>("correctedcl_Es0") : cl.energyBE(0); } - inline float compute_correctedcl_Es1(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es1") ? cl.auxdataConst<double>("correctedcl_Es1") : cl.energyBE(1); } - inline float compute_correctedcl_Es2(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es2") ? cl.auxdataConst<double>("correctedcl_Es2") : cl.energyBE(2); } - inline float compute_correctedcl_Es3(const xAOD::CaloCluster& cl) { return cl.isAvailable<double>("correctedcl_Es3") ? cl.auxdataConst<double>("correctedcl_Es3") : cl.energyBE(3); } - - inline float compute_rawcl_Eacc(const xAOD::CaloCluster& cl) { return cl.energyBE(1) + cl.energyBE(2) + cl.energyBE(3); } - inline float compute_rawcl_f0(const xAOD::CaloCluster& cl) { return cl.energyBE(0) / (cl.energyBE(1) + cl.energyBE(2) + cl.energyBE(3)); } - - inline float compute_correctedcl_Eacc(const xAOD::CaloCluster& cl) { return compute_correctedcl_Es1(cl) + compute_correctedcl_Es2(cl) + compute_correctedcl_Es3(cl); } - inline float compute_correctedcl_f0(const xAOD::CaloCluster& cl) { return compute_correctedcl_Es0(cl) / (compute_correctedcl_Eacc(cl)); } - - - inline float compute_calibHitsShowerDepth(const std::array<float, 4>& cl, float eta) - { - const std::array<float, 4> radius(get_MVAradius(eta)); - - // loop unrolling - const float denominator = cl[0] + cl[1] + cl[2] + cl[3]; - if (denominator == 0) return 0.; - - return (radius[0] * cl[0] - + radius[1] * cl[1] - + radius[2] * cl[2] - + radius[3] * cl[3]) / denominator; - } - - inline float compute_rawcl_calibHitsShowerDepth(const xAOD::CaloCluster& cl) - { - const std::array<float, 4> cluster_array {{ compute_rawcl_Es0(cl), - compute_rawcl_Es1(cl), - compute_rawcl_Es2(cl), - compute_rawcl_Es3(cl) }}; - return compute_calibHitsShowerDepth(cluster_array, compute_cl_eta(cl)); - } - - inline float compute_correctedcl_calibHitsShowerDepth(const xAOD::CaloCluster& cl) { - const std::array<float, 4> cluster_array {{ compute_correctedcl_Es0(cl), - compute_correctedcl_Es1(cl), - compute_correctedcl_Es2(cl), - compute_correctedcl_Es3(cl) }}; - return compute_calibHitsShowerDepth(cluster_array, compute_cl_eta(cl)); - } - - - - - // electron functions - inline float compute_el_charge(const xAOD::Electron& el) { return el.charge(); } - inline float compute_el_tracketa(const xAOD::Electron& el) { return el.trackParticle()->eta(); } - inline float compute_el_trackpt(const xAOD::Electron& el) { return el.trackParticle()->pt(); } - inline float compute_el_trackz0(const xAOD::Electron& el) { return el.trackParticle()->z0(); } - inline float compute_el_refittedTrack_qoverp(const xAOD::Electron& el) { return el.trackParticle()->qOverP(); } - inline int compute_el_author(const xAOD::Electron& el) { return el.auxdata<unsigned short int>("author"); } - - - // photon functions - inline int compute_ph_convFlag(const xAOD::Photon& ph) { - const auto original = xAOD::EgammaHelpers::conversionType(&ph); - if (original == 3) return 2; - else if (original != 0) return 1; - else return original; - } - - struct ConversionHelper - { - ConversionHelper(const xAOD::Photon* ph) - : m_vertex(ph ? ph->vertex() : nullptr), - m_tp0(m_vertex ? m_vertex->trackParticle(0) : nullptr), - m_tp1(m_vertex ? m_vertex->trackParticle(1) : nullptr), - m_pt1conv(0.), m_pt2conv(0.) - { - static asg::AsgMessaging static_msg("ConversionHelper"); - static_msg.msg(MSG::DEBUG) << "init conversion helper"; - if (!m_vertex) return; - - static SG::AuxElement::Accessor<float> accPt1("pt1"); - static SG::AuxElement::Accessor<float> accPt2("pt2"); - if (accPt1.isAvailable(*m_vertex) && accPt2.isAvailable(*m_vertex)) - { - m_pt1conv = accPt1(*m_vertex); - m_pt2conv = accPt2(*m_vertex); - } - else - { - static_msg.msg(MSG::WARNING) << "pt1/pt2 not available, will approximate from first measurements"; - m_pt1conv = getPtAtFirstMeasurement(m_tp0); - m_pt2conv = getPtAtFirstMeasurement(m_tp1); - } - } - - ConversionHelper(const xAOD::Photon& ph) - : ConversionHelper(&ph) { } // delegating constr - - inline float ph_Rconv() const { return m_vertex ? hypot(m_vertex->position().x(), m_vertex->position().y()) : 0; } - inline float ph_zconv() const { return m_vertex ? m_vertex->position().z() : 0.; } - inline int ph_convtrk1nPixHits() const { - if (!m_tp0) { return 0; } - uint8_t hits = 0; - if (m_tp0->summaryValue(hits, xAOD::numberOfPixelHits)) { return hits; } - else { - static asg::AsgMessaging static_msg("ConversionHelper"); - static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfPixelHits"; - return 0; - } - } - inline int ph_convtrk2nPixHits() const { - if (!m_tp1) return 0; - uint8_t hits; - if (m_tp1->summaryValue(hits, xAOD::numberOfPixelHits)) { return hits; } - else { - static asg::AsgMessaging static_msg("ConversionHelper"); - static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfPixelHits"; - return 0; - } - } - inline int ph_convtrk1nSCTHits() const { - if (!m_tp0) { return 0; } - uint8_t hits; - if (m_tp0->summaryValue(hits, xAOD::numberOfSCTHits)) { return hits; } - else { - static asg::AsgMessaging static_msg("ConversionHelper"); - static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfSCTHits"; - return 0; - } - } - inline int ph_convtrk2nSCTHits() const { - if (!m_tp1) { return 0; } - uint8_t hits; - if (m_tp1->summaryValue(hits, xAOD::numberOfSCTHits)) { return hits; } - else { - static asg::AsgMessaging static_msg("ConversionHelper"); - static_msg.msg(MSG::WARNING) << "cannot read xAOD::numberOfSCTHits"; - return 0; - } - } - inline float ph_pt1conv() const { return m_pt1conv; } - inline float ph_pt2conv() const { return m_pt2conv; } - inline float ph_ptconv() const { - // TODO: evaluate if move to this new definition, by now keep the previous one - // to be consistent with the training - // return m_vertex ? xAOD::EgammaHelpers::momentumAtVertex(*m_vertex).perp() : 0.; - TLorentzVector sum; - if (m_tp0) sum += m_tp0->p4(); - if (m_tp1) sum += m_tp1->p4(); - return sum.Perp(); - } - private: - float getPtAtFirstMeasurement(const xAOD::TrackParticle* tp) const - { - if (!tp) return 0; - for (unsigned int i = 0; i < tp->numberOfParameters(); ++i) - if (tp->parameterPosition(i) == xAOD::FirstMeasurement) - return hypot(tp->parameterPX(i), tp->parameterPY(i)); - static asg::AsgMessaging static_msg("ConversionHelper"); - static_msg.msg(MSG::WARNING) << "Could not find first parameter, return pt at perigee"; - return tp->pt(); - } - const xAOD::Vertex* m_vertex; - const xAOD::TrackParticle* m_tp0; - const xAOD::TrackParticle* m_tp1; - float m_pt1conv, m_pt2conv; - }; -} #endif diff --git a/Reconstruction/egamma/egammaMVACalib/python/TrigEgammaMVACalibFactories.py b/Reconstruction/egamma/egammaMVACalib/python/TrigEgammaMVACalibFactories.py new file mode 100644 index 0000000000000000000000000000000000000000..1071ebe8771108d51b5420fd67302cb9d3453e66 --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/python/TrigEgammaMVACalibFactories.py @@ -0,0 +1,40 @@ +# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration + +__doc__ = "Tool and service factories to instantiate MVA calibration for trigger" +__author__ = "Jovan Mitrevski" + + +from egammaRec.Factories import ToolFactory, ServiceFactory + +import logging +mlog = logging.getLogger ('TrigEgammaMVACalibFactories') + +from egammaMVACalib import egammaMVACalibConf +from TriggerMenu.egamma.EgammaSliceFlags import EgammaSliceFlags +mlog.info("MVA version version %s"%EgammaSliceFlags.calibMVAVersion() ) +mlog.info("Cluster Correction version %s"%EgammaSliceFlags.clusterCorrectionVersion() ) +EgammaSliceFlags.calibMVAVersion.set_On() + +import cppyy +cppyy.loadDictionary('xAODEgammaDict') +from ROOT import xAOD + + +TrigElectronMVATool = ToolFactory(egammaMVACalibConf.egammaMVACalibTool, + name = "TrigElectronMVATool", + ParticleType = xAOD.EgammaParameters.electron, + folder=EgammaSliceFlags.calibMVAVersion(), + use_layer_corrected = False) + +TrigPhotonMVATool = ToolFactory(egammaMVACalibConf.egammaMVACalibTool, + name = "TrigPhotonMVATool", + ParticleType = xAOD.EgammaParameters.unconvertedPhoton, + folder=EgammaSliceFlags.calibMVAVersion(), + use_layer_corrected = False) + + +TrigEgammaMVASvc = ServiceFactory(egammaMVACalibConf.egammaMVASvc, name = "TrigEgammaMVASvc", + ElectronTool = TrigElectronMVATool, + UnconvertedPhotonTool = TrigPhotonMVATool) + +del mlog diff --git a/Reconstruction/egamma/egammaMVACalib/python/egammaMVACalibFactories.py b/Reconstruction/egamma/egammaMVACalib/python/egammaMVACalibFactories.py new file mode 100644 index 0000000000000000000000000000000000000000..bf1b8081a07ca68fb9d67220a8a6ac8adc017b7b --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/python/egammaMVACalibFactories.py @@ -0,0 +1,33 @@ +# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration + +__doc__ = "Tool and service factories to instantiate MVA calibration" +__author__ = "Jovan Mitrevski" + + +from egammaRec.Factories import ToolFactory, ServiceFactory + +from egammaMVACalib import egammaMVACalibConf +from egammaRec.egammaRecFlags import jobproperties +import cppyy +cppyy.loadDictionary('xAODEgammaDict') +from ROOT import xAOD + +electronMVATool = ToolFactory(egammaMVACalibConf.egammaMVACalibTool, + name = "electronMVATool", + ParticleType = xAOD.EgammaParameters.electron, + folder=jobproperties.egammaRecFlags.calibMVAVersion()) + +unconvPhotonMVATool = ToolFactory(egammaMVACalibConf.egammaMVACalibTool, + name = "unconvPhotonMVATool", + ParticleType = xAOD.EgammaParameters.unconvertedPhoton, + folder=jobproperties.egammaRecFlags.calibMVAVersion()) + +convertedPhotonMVATool = ToolFactory(egammaMVACalibConf.egammaMVACalibTool, + name = "convertePhotonMVATool", + ParticleType = xAOD.EgammaParameters.convertedPhoton, + folder=jobproperties.egammaRecFlags.calibMVAVersion()) + +egammaMVASvc = ServiceFactory(egammaMVACalibConf.egammaMVASvc, + ElectronTool = electronMVATool, + UnconvertedPhotonTool = unconvPhotonMVATool, + ConvertedPhotonTool = convertedPhotonMVATool) diff --git a/Reconstruction/egamma/egammaMVACalib/src/components/egammaMVACalib_entries.cxx b/Reconstruction/egamma/egammaMVACalib/src/components/egammaMVACalib_entries.cxx index 37a5a6fa8cfb9003076cfb1214326957e96896d1..c9ef57c023ee945435da627ca4961440faba2886 100644 --- a/Reconstruction/egamma/egammaMVACalib/src/components/egammaMVACalib_entries.cxx +++ b/Reconstruction/egamma/egammaMVACalib/src/components/egammaMVACalib_entries.cxx @@ -1,4 +1,8 @@ #include "egammaMVACalib/egammaMVATool.h" +#include "../egammaMVASvc.h" +#include "../egammaMVACalibTool.h" DECLARE_COMPONENT( egammaMVATool ) +DECLARE_COMPONENT( egammaMVASvc ) +DECLARE_COMPONENT( egammaMVACalibTool ) diff --git a/Reconstruction/egamma/egammaMVACalib/src/egammaMVACalibTool.cxx b/Reconstruction/egamma/egammaMVACalib/src/egammaMVACalibTool.cxx new file mode 100644 index 0000000000000000000000000000000000000000..a7b84937cf19d195b2a504ddfde588b0caeff915 --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/src/egammaMVACalibTool.cxx @@ -0,0 +1,278 @@ + /* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + +#include "egammaMVACalibTool.h" + +#include "PathResolver/PathResolver.h" + +#include "TFile.h" +#include "TMath.h" + +#include <cmath> + + +egammaMVACalibTool::egammaMVACalibTool(const std::string& type, const std::string& name, const IInterface* parent) : + base_class(type, name, parent) +{ +} + +egammaMVACalibTool::~egammaMVACalibTool() +{ +} + +StatusCode egammaMVACalibTool::initialize() +{ + + ATH_MSG_DEBUG("Initializing with particle " << m_particleType); + + if (m_shiftType == MEAN10TOTRUE) { + ATH_MSG_DEBUG("Using Mean10 shift"); + } else if (m_shiftType == NOSHIFT) { + ATH_MSG_DEBUG("Not using a shift"); + } else { + ATH_MSG_FATAL("Unsupported shift: " << m_shiftType); + return StatusCode::FAILURE; + } + + // get the BDTs + ATH_MSG_DEBUG("get BDTs in folder: " << m_folder); + switch (m_particleType) { + case xAOD::EgammaParameters::electron: + { + std::unique_ptr<egammaMVAFunctions::funcMap_t> funcLibraryPtr = + egammaMVAFunctions::initializeElectronFuncs(m_useLayerCorrected); + ATH_CHECK(setupBDT(*funcLibraryPtr, + PathResolverFindCalibFile(m_folder + "/MVACalib_electron.weights.root"))); + } + break; + case xAOD::EgammaParameters::unconvertedPhoton: + { + std::unique_ptr<egammaMVAFunctions::funcMap_t> funcLibraryPtr = + egammaMVAFunctions::initializeUnconvertedPhotonFuncs(m_useLayerCorrected); + ATH_CHECK(setupBDT(*funcLibraryPtr, + PathResolverFindCalibFile(m_folder + "/MVACalib_unconvertedPhoton.weights.root"))); + } + break; + case xAOD::EgammaParameters::convertedPhoton: + { + std::unique_ptr<egammaMVAFunctions::funcMap_t> funcLibraryPtr = + egammaMVAFunctions::initializeConvertedPhotonFuncs(m_useLayerCorrected); + ATH_CHECK(setupBDT(*funcLibraryPtr, + PathResolverFindCalibFile(m_folder + "/MVACalib_convertedPhoton.weights.root"))); + } + break; + default: + ATH_MSG_FATAL("Particle type not set properly: " << m_particleType); + return StatusCode::FAILURE; + } + + return StatusCode::SUCCESS; +} + +StatusCode egammaMVACalibTool::finalize() +{ + return StatusCode::SUCCESS; +} + +StatusCode egammaMVACalibTool::setupBDT(const egammaMVAFunctions::funcMap_t& funcLibrary, + std::string fileName) +{ + + ATH_MSG_DEBUG("Trying to open " << fileName); + + std::unique_ptr<TFile> f(TFile::Open(fileName.c_str())); + if (!f || f->IsZombie() ) { + ATH_MSG_FATAL("Could not open file: " << fileName); + return StatusCode::FAILURE; + } + + // Load hPoly + TH2Poly *hPoly = nullptr; + f->GetObject("hPoly", hPoly); + if (!hPoly) { + ATH_MSG_FATAL("Could not find hPoly"); + return StatusCode::FAILURE; + } + + m_hPoly.reset(static_cast<TH2Poly*>(hPoly->Clone())); + m_hPoly->SetDirectory(0); + + // Load variables + TObjArray *variablesTmp = nullptr; + f->GetObject("variables", variablesTmp); + if (!variablesTmp) { + ATH_MSG_FATAL("Could not find variables"); + return StatusCode::FAILURE; + } + auto variables = std::unique_ptr<TObjArray>(variablesTmp); + variables->SetOwner(); // to delete the objects when d-tor is called + + // Load shifts + TObjArray *shiftsTmp = nullptr; + f->GetObject("shifts", shiftsTmp); + if (!shiftsTmp) { + ATH_MSG_FATAL("Could not find shifts"); + return StatusCode::FAILURE; + } + auto shifts = std::unique_ptr<TObjArray>(shiftsTmp); + shifts->SetOwner(); // to delete the objects when d-tor is called + + // Load trees + TObjArray *treesTmp = nullptr; + std::unique_ptr<TObjArray> trees; + f->GetObject("trees", treesTmp); + if (treesTmp) { + trees = std::unique_ptr<TObjArray>(treesTmp); + trees->SetOwner(); // to delete the objects when d-tor is called + ATH_MSG_DEBUG("setupBDT " << "BDTs read from TObjArray"); + } else { + ATH_MSG_DEBUG("setupBDT " << "Reading trees individually"); + trees = std::make_unique<TObjArray>(); + trees->SetOwner(); // to delete the objects when d-tor is called + for (int i = 0; i < variables->GetEntries(); ++i) + { + TTree *tree = nullptr; + f->GetObject(Form("BDT%d", i), tree); + if (tree) tree->SetCacheSize(0); + trees->AddAtAndExpand(tree, i); + } + } + + // Ensure the objects have (the same number of) entries + if (!trees->GetEntries() || !(trees->GetEntries() == variables->GetEntries())) { + ATH_MSG_FATAL("Tree has size " << trees->GetEntries() + << " while variables has size " << variables->GetEntries()); + return StatusCode::FAILURE; + } + + // Loop simultaneously over trees, variables and shifts + // Define the BDTs, the list of variables and the shift for each BDT + TObjString *str2, *shift; + TTree *tree; + TIter nextTree(trees.get()); + TIter nextVariables(variables.get()); + TIter nextShift(shifts.get()); + for (int i=0; (tree = (TTree*) nextTree()) && ((TObjString*) nextVariables()); ++i) + { + m_BDTs.emplace_back(tree); + + std::vector<std::function<float(const xAOD::Egamma*, const xAOD::CaloCluster*)> > funcs; + // Loop over variables, which are separated by comma + char separator_var = ';'; + if (getString(variables->At(i)).Index(";") < 1) separator_var = ','; // old versions + std::unique_ptr<TObjArray> tokens(getString(variables->At(i)).Tokenize(separator_var)); + TIter nextVar(tokens.get()); + while ((str2 = (TObjString*) nextVar())) + { + const TString& varName = getString(str2); + if (!varName.Length()) { + ATH_MSG_FATAL("There was an empty variable name!"); + return StatusCode::FAILURE; + } + try { + funcs.push_back(funcLibrary.at(varName.Data())); + } catch(const std::out_of_range& e) { + ATH_MSG_FATAL("Could not find formula for variable " << varName << ", error: " << e.what()); + return StatusCode::FAILURE; + } + } + m_funcs.push_back(std::move(funcs)); + + if (m_shiftType == MEAN10TOTRUE) { + shift = (TObjString*) nextShift(); + const TString& shiftFormula = getString(shift); + m_shifts.emplace_back("", shiftFormula); + } + } + return StatusCode::SUCCESS; + +} + +const TString& egammaMVACalibTool::getString(TObject* obj) const +{ + TObjString *objS = dynamic_cast<TObjString*>(obj); + if (!objS) { + throw std::runtime_error("egammaMVACalibTool::getString was passed something that was not a string object"); + } + return objS->GetString(); +} + +float egammaMVACalibTool::getEnergy(const xAOD::Egamma* eg, + const xAOD::CaloCluster* clus) const +{ + + ATH_MSG_DEBUG("calling getEnergy with cluster (" << clus << ") and eg (" << eg <<")"); + + + if (!clus && eg) { + clus = eg->caloCluster(); + } + if (!clus) { + ATH_MSG_FATAL("The cluster pointer must not be null!"); + throw std::runtime_error("egammaMVACalibTool::getEnergy called with a null cluster"); + return 0.0; + } + + // find the bin of BDT + + const auto initEnergy = (m_useLayerCorrected ? + egammaMVAFunctions::compute_correctedcl_Eacc(*clus) : + egammaMVAFunctions::compute_rawcl_Eacc(*clus)); + + const auto energyVarGeV = (initEnergy / std::cosh(clus->eta())) / CLHEP::GeV; + const auto etaVar = std::abs(clus->eta()); + + const auto bin = m_hPoly->FindBin(etaVar, energyVarGeV) - 1; // poly bins are shifted by one + + ATH_MSG_DEBUG("Using bin: " << bin); + + // select the bdt and funcsions. (shifts are done later if needed) + const auto& bdt = m_BDTs[bin]; + const auto& funcs = m_funcs[bin]; + + const size_t sz = funcs.size(); + + // could consider adding std::array support to the BDTs + std::vector<float> vars(sz); + + for (size_t i = 0; i < sz; i++) { + vars[i] = funcs[i](eg,clus); + } + + // evaluate the BDT response + const float mvaOutput = bdt.GetResponse(vars); + + // what to do if the MVA response is 0; + if (mvaOutput == 0.) { + if (m_clusterEif0) { + return clus->e(); + } else { + return 0.; + } + } + + // calcluate the unshifted energy + const auto energy = (m_calibrationType == fullCalibration) ? + mvaOutput : (initEnergy * mvaOutput); + + ATH_MSG_DEBUG("energy after MVA = " << energy); + + if (m_shiftType == NOSHIFT) { + // if no shift, just return the unshifted energy + return energy; + } + + // have to do a shift if here. It's based on the corrected Et in GeV + const auto etGeV = (energy / std::cosh(clus->eta())) / CLHEP::GeV; + + // evaluate the TFormula associated with the bin + const auto shift = m_shifts[bin].Eval(etGeV); + ATH_MSG_DEBUG("shift = " << shift); + if (shift > 0.5) { + return energy / shift; + } else { + ATH_MSG_WARNING("Shift value too small: " << shift << "; not applying shift"); + return energy; + } +} diff --git a/Reconstruction/egamma/egammaMVACalib/src/egammaMVACalibTool.h b/Reconstruction/egamma/egammaMVACalib/src/egammaMVACalibTool.h new file mode 100644 index 0000000000000000000000000000000000000000..6c04bf07461ec82805a373bfa72222497bb9b2ad --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/src/egammaMVACalibTool.h @@ -0,0 +1,99 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ +#ifndef EGAMMAMVACALIB_EGAMMAMVACALIBTOOL_H +#define EGAMMAMVACALIB_EGAMMAMVACALIBTOOL_H + +// Package includes +#include "egammaInterfaces/IegammaMVACalibTool.h" +#include "xAODEgamma/EgammaEnums.h" +#include "xAODEgamma/Electron.h" +#include "xAODEgamma/Photon.h" +#include "xAODCaloEvent/CaloCluster.h" +#include "MVAUtils/BDT.h" +#include "egammaMVACalib/egammaMVAFunctions.h" + +// Framework includes +#include "AthenaBaseComps/AthAlgTool.h" +#include "TH2Poly.h" +#include "TObject.h" +#include "TString.h" +#include "TFormula.h" +#include "TTree.h" + +// STL includes +#include <string> +#include <memory> +#include <functional> + + +/** + * @class egammaMVACalibTool + * @brief A tool used by the egammaMVASvc to help manage the MVAs. + **/ +class egammaMVACalibTool : public extends<AthAlgTool, IegammaMVACalibTool> { +public: + egammaMVACalibTool(const std::string& type, const std::string& name, const IInterface* parent); + virtual ~egammaMVACalibTool() override; + + virtual StatusCode initialize() override; + virtual StatusCode finalize() override; + + enum CalibrationType {correctEcluster, correctEaccordion, + fullCalibration, NCalibrationTypes }; + + enum ShiftType {NOSHIFT=0, PEAKTOTRUE, MEANTOTRUE, MEDIANTOTRUE, + MEAN10TOTRUE, MEAN20TOTRUE, MEDIAN10TOTRUE, MEDIAN20TOTRUE, + NSHIFTCORRECTIONS}; + + float getEnergy(const xAOD::Egamma* eg, + const xAOD::CaloCluster* clus) const override final; + +private: + Gaudi::Property<int> m_particleType {this, + "ParticleType", xAOD::EgammaParameters::electron, + "What type of particle do we use"}; + + Gaudi::Property<int> m_shiftType {this, + "ShiftType", MEAN10TOTRUE, + "Shift corrections to apply to value"}; + + Gaudi::Property<int> m_calibrationType {this, + "CalibrationType", correctEaccordion, + "What type of calibration to apply"}; + + Gaudi::Property<bool> m_clusterEif0 {this, + "useClusterIf0", true, + "Use cluster energy if MVA response is 0"}; + + /// string with folder for weight files + Gaudi::Property<std::string> m_folder {this, + "folder", "", + "string with folder for weight files"}; + + Gaudi::Property<bool> m_useLayerCorrected {this, + "use_layer_corrected", false, + "whether to use layer corrections"}; + + /// A TH2Poly used to extract bin numbers. Note there is an offset of 1 + std::unique_ptr<TH2Poly> m_hPoly; + + /// Where the BDTs are stored + std::vector<MVAUtils::BDT> m_BDTs; + + /// where the pointers to the funcs to calculate the vars per BDT + std::vector<std::vector<std::function<float(const xAOD::Egamma*, const xAOD::CaloCluster*)> > > m_funcs; + + /// shifts for mean10 + std::vector<TFormula> m_shifts; + + /// a function called by initialize to setup the BDT, funcs, and shifts. + StatusCode setupBDT(const egammaMVAFunctions::funcMap_t& funcLibrary, + std::string fileName); + + /// a utility to get a TString out of an TObjString pointer + const TString& getString(TObject* obj) const; + +}; + +#endif diff --git a/Reconstruction/egamma/egammaMVACalib/src/egammaMVASvc.cxx b/Reconstruction/egamma/egammaMVACalib/src/egammaMVASvc.cxx new file mode 100644 index 0000000000000000000000000000000000000000..62d42a0dc5ea84a407754426c5ccb900162ba40f --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/src/egammaMVASvc.cxx @@ -0,0 +1,149 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + +#include <memory> + +#include "egammaMVASvc.h" +#include "xAODEgamma/Egamma.h" +#include "xAODEgamma/EgammaDefs.h" +#include "xAODEgamma/Electron.h" +#include "xAODEgamma/Photon.h" +#include "xAODCaloEvent/CaloCluster.h" +#include "xAODEgamma/EgammaxAODHelpers.h" +#include "xAODTracking/Vertex.h" +#include "xAODTracking/TrackParticle.h" +#include "xAODTracking/TrackingPrimitives.h" +#include "PathResolver/PathResolver.h" + +egammaMVASvc::egammaMVASvc(const std::string& name, ISvcLocator* svc) : + base_class( name, svc ) +{ +} + +StatusCode egammaMVASvc::initialize() +{ + ATH_MSG_DEBUG("In initialize of " << name() << "..." ); + + if (m_mvaElectron.isEnabled()) { + ATH_MSG_DEBUG("Retrieving mvaElectron"); + ATH_CHECK(m_mvaElectron.retrieve()); + } else { + ATH_MSG_DEBUG("Disabling mvaElectron"); + m_mvaElectron.disable(); + } + + if (m_mvaUnconvertedPhoton.isEnabled()) { + ATH_MSG_DEBUG("Retrieving mvaUnconvertedPhoton"); + ATH_CHECK(m_mvaUnconvertedPhoton.retrieve()); + } else { + ATH_MSG_DEBUG("Disabling mvaUnconvertedPhoton"); + m_mvaUnconvertedPhoton.disable(); + } + + if (m_mvaConvertedPhoton.isEnabled()) { + ATH_MSG_DEBUG("Retrieving mvaConvertedPhoton"); + ATH_CHECK(m_mvaConvertedPhoton.retrieve()); + } else { + ATH_MSG_DEBUG("Disabling mvaConvertedPhoton"); + m_mvaConvertedPhoton.disable(); + } + + return StatusCode::SUCCESS; +} + + +StatusCode egammaMVASvc::finalize(){ + ATH_MSG_DEBUG( "in finalize" ); + return StatusCode::SUCCESS; +} + +StatusCode egammaMVASvc::execute(xAOD::CaloCluster& cluster, + const xAOD::Egamma& eg) const +{ + + ATH_MSG_DEBUG("calling execute with cluster and eg"); + + float mvaE = 0.0; + + if (xAOD::EgammaHelpers::isElectron(&eg)) { + if (m_mvaElectron.isEnabled()) { + mvaE = m_mvaElectron->getEnergy(&eg, &cluster); + } else { + ATH_MSG_FATAL("Trying to calibrate an electron, but disabled"); + return StatusCode::FAILURE; + } + } else if (xAOD::EgammaHelpers::isConvertedPhoton(&eg) && + xAOD::EgammaHelpers::conversionRadius(static_cast<const xAOD::Photon*>(&eg)) < m_maxConvR) { + if (m_mvaConvertedPhoton.isEnabled()) { + mvaE = m_mvaConvertedPhoton->getEnergy(&eg, &cluster); + } else { + ATH_MSG_FATAL("Trying to calibrate a converted photon, but disabled"); + return StatusCode::FAILURE; + } + } else if (xAOD::EgammaHelpers::isPhoton(&eg)) { + if (m_mvaUnconvertedPhoton.isEnabled()) { + mvaE = m_mvaUnconvertedPhoton->getEnergy(&eg, &cluster); + } else { + ATH_MSG_FATAL("Trying to calibrate an unconverted photon, but disabled"); + return StatusCode::FAILURE; + } + } else { + ATH_MSG_FATAL("Egamma object is of unsupported type"); + return StatusCode::FAILURE; + } + + ATH_MSG_DEBUG( "Calculated MVA calibrated energy = " << mvaE ); + if (mvaE > eg.m()) { + cluster.setCalE(mvaE); + } + else { + ATH_MSG_DEBUG("MVA energy (" << mvaE << ") < particle mass (" + << eg.m() << "), setting e = cluster energy (" << cluster.e() << ")"); + cluster.setCalE(cluster.e()); + } + return StatusCode::SUCCESS; +} + +StatusCode egammaMVASvc::execute(xAOD::CaloCluster& cluster, + xAOD::EgammaParameters::EgammaType egType) const +{ + + ATH_MSG_DEBUG("calling execute with cluster and egType (" << egType <<")"); + + float mvaE = 0.0; + switch (egType) { + case xAOD::EgammaParameters::electron: + if (m_mvaElectron.isEnabled()) { + mvaE = m_mvaElectron->getEnergy(nullptr, &cluster); + } else { + ATH_MSG_FATAL("Trying to calibrate an electron, but disabled"); + return StatusCode::FAILURE; + } + break; + case xAOD::EgammaParameters::convertedPhoton: + case xAOD::EgammaParameters::unconvertedPhoton: + // treat converted photons like unconverted photons since don't have access to vertex + if (m_mvaUnconvertedPhoton.isEnabled()) { + mvaE = m_mvaUnconvertedPhoton->getEnergy(nullptr, &cluster); + } else { + ATH_MSG_FATAL("Trying to calibrate an unconverted photon, but disabled"); + return StatusCode::FAILURE; + } + break; + default: + ATH_MSG_FATAL("Egamma object is of unsupported type"); + return StatusCode::FAILURE; + } + + ATH_MSG_DEBUG( "Calculated MVA calibrated energy = " << mvaE ); + if (mvaE > 0) { + cluster.setCalE(mvaE); + } + else { + ATH_MSG_DEBUG("MVA energy (" << mvaE << ") < 0, setting e = cluster energy (" + << cluster.e() << ")"); + cluster.setCalE(cluster.e()); + } + return StatusCode::SUCCESS; +} diff --git a/Reconstruction/egamma/egammaMVACalib/src/egammaMVASvc.h b/Reconstruction/egamma/egammaMVACalib/src/egammaMVASvc.h new file mode 100644 index 0000000000000000000000000000000000000000..728e6a58d5de909f4aef78975dcf27d7d7e5c725 --- /dev/null +++ b/Reconstruction/egamma/egammaMVACalib/src/egammaMVASvc.h @@ -0,0 +1,64 @@ +// Dear Emacs, this is -*- C++ -*- + +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + + +#ifndef EGAMMAMVACALIB_EGAMMAMVASVC_H +#define EGAMMAMVACALIB_EGAMMAMVASVC_H + +#include <string> +#include <set> + +#include "egammaInterfaces/IegammaMVASvc.h" +#include "egammaInterfaces/IegammaMVACalibTool.h" +#include "AthenaBaseComps/AthService.h" + +class egammaMVASvc : public extends1<AthService, IegammaMVASvc> +{ +public: + /** Constructor */ + egammaMVASvc( const std::string& name, ISvcLocator* svc ); + + virtual ~egammaMVASvc() override {}; + + /** @brief initialize method*/ + virtual StatusCode initialize() override; + + /** @brief finalize method*/ + virtual StatusCode finalize() override; + + /** Main execute. We need to calibrate the cluster. + Use full egamma object instead of Type + As we employ further variables than the ones present in the cluster + This method needs to be valid also for reconstruction + */ + + StatusCode execute(xAOD::CaloCluster& cluster, + const xAOD::Egamma& eg) const override final; + + StatusCode execute(xAOD::CaloCluster& cluster, + xAOD::EgammaParameters::EgammaType egType) const override final; + +private: + + /// MVA tool for electron + ToolHandle<IegammaMVACalibTool> m_mvaElectron {this, + "ElectronTool", "", "Tool to handle MVA trees for electrons"}; + + /// MVA tool for uncovnerted photon + ToolHandle<IegammaMVACalibTool> m_mvaUnconvertedPhoton {this, + "UnconvertedPhotonTool", "", "Tool to handle MVA trees for unconverted photons"}; + + /// MVA tool for converted photon + ToolHandle<IegammaMVACalibTool> m_mvaConvertedPhoton {this, + "ConvertedPhotonTool", "", "Tool to handle MVA trees for converted photons"}; + + Gaudi::Property<float> m_maxConvR {this, + "MaxConvRadius", 800.0, + "The maximum conversion radius for a photon to be considered converted"}; + +}; + +#endif diff --git a/Reconstruction/egamma/egammaRec/python/Factories.py b/Reconstruction/egamma/egammaRec/python/Factories.py index b055df233560b25db39a876e08c799d7f15e76f3..9f1cf598be2f4b83c7b2ceafce4497f46b22810c 100644 --- a/Reconstruction/egamma/egammaRec/python/Factories.py +++ b/Reconstruction/egamma/egammaRec/python/Factories.py @@ -9,8 +9,9 @@ def factoriesInfo ( log): logFactories = logging.getLogger( 'Factories' ) logFactories.info(log) +# tools def isAlreadyInToolSvc( name ): - "isAlreadyInToolSvc ( mane of the tool ) --> check if the tool with name is already in the service" + "isAlreadyInToolSvc ( name of the tool ) --> check if the tool with name is already in the service" from AthenaCommon.AppMgr import ToolSvc if hasattr(ToolSvc, name): return True @@ -28,6 +29,27 @@ def addToToolSvc( tool ): ToolSvc += tool return tool +# services +def isAlreadyInServiceMgr( name ): + "isAlreadyInServiceMgr ( mane of the service ) --> check if the service with name is already in the manager" + from AthenaCommon.AppMgr import ServiceMgr + if hasattr(ServiceMgr, name): + return True + else: + return False + +def getFromServiceMgr( name ): + "getFromServiceMgr ( name of the service ) --> Get the service from manager by name " + from AthenaCommon.AppMgr import ServiceMgr + return getattr (ServiceMgr,name) + +def addToServiceMgr( service ): + "addToServiceMgr( service ) --> add service to ServiceMgr" + from AthenaCommon.AppMgr import ServiceMgr + ServiceMgr += service + return service + +# algs def isAlreadyInTopSequence( name ): "isAlreadyInTopSequence ( mane of the alg ) --> check if the alg with name is already in the Alg sequence" from AthenaCommon.AlgSequence import AlgSequence @@ -146,7 +168,7 @@ class Factory: # Call FcnWrapper or ToolFactory parameters # (or if they are inside a list, for ToolHandleArray) - classes = (FcnWrapper, ToolFactory, PublicToolFactory) + classes = (FcnWrapper, ToolFactory, PublicToolFactory, ServiceFactory) for paramName, value in params.items(): if isinstance(value, classes) or \ (isinstance(value, list) and any(isinstance(v, classes) for v in value) ): @@ -221,6 +243,20 @@ class PublicToolFactory( Factory ): else : factoriesInfo("Tool with name ==> %s already in ToolSvc, use existing instance" % obj.getFullName() ) +class ServiceFactory( Factory ): + """ServiceFactory: to instantiate services. Adds to ServiceMgr. See Factory""" + + def __init__(self, iclass, **defaults ): + self.iclass = iclass + self.defaults = dict({'doAdd': True}, **defaults) + + def add(self, obj): + if not isAlreadyInServiceMgr(obj.getName()): + factoriesInfo("Adding new Service ===> %s" % obj.getFullName()) + addToServiceMgr(obj) + else : + factoriesInfo("Service with name ==> %s already in ServiceMgr, use existing instance" % obj.getFullName() ) + class AlgFactory( Factory ): """AlgFactory: to instantiate algs and add them to TopSequence. See Factory""" def __init__(self, iclass, **defaults ): diff --git a/Reconstruction/egamma/egammaTools/python/egammaToolsFactories.py b/Reconstruction/egamma/egammaTools/python/egammaToolsFactories.py index db7a1494b7f7cfe7d322005710a71e9da02612e8..9c52a1e9c838d94729da37e9316521df7b9d03b4 100644 --- a/Reconstruction/egamma/egammaTools/python/egammaToolsFactories.py +++ b/Reconstruction/egamma/egammaTools/python/egammaToolsFactories.py @@ -4,7 +4,7 @@ __doc__ = "ToolFactories to instantiate all egammaTools with default configurati __author__ = "Bruno Lenzi" import egammaToolsConf -from egammaRec.Factories import FcnWrapper, ToolFactory, PublicToolFactory, FullNameWrapper +from egammaRec.Factories import FcnWrapper, ToolFactory, FullNameWrapper from egammaRec import egammaKeys from egammaRec.egammaRecFlags import jobproperties # to set jobproperties.egammaRecFlags from RecExConfig.RecFlags import rec @@ -48,16 +48,14 @@ def configureClusterCorrections(swTool): egammaSwTool = ToolFactory(egammaToolsConf.egammaSwTool, postInit=[configureClusterCorrections]) -from egammaMVACalib import egammaMVACalibConf -egammaMVATool = PublicToolFactory(egammaMVACalibConf.egammaMVATool, - folder=jobproperties.egammaRecFlags.calibMVAVersion()) +from egammaMVACalib.egammaMVACalibFactories import egammaMVASvc EMClusterTool = ToolFactory(egammaToolsConf.EMClusterTool, OutputClusterContainerName = egammaKeys.outputClusterKey(), OutputTopoSeededClusterContainerName = egammaKeys.outputTopoSeededClusterKey(), ClusterCorrectionTool = egammaSwTool, doSuperCluster = jobproperties.egammaRecFlags.doSuperclusters(), - MVACalibTool= egammaMVATool + MVACalibSvc = egammaMVASvc ) diff --git a/Reconstruction/egamma/egammaTools/src/EMClusterTool.cxx b/Reconstruction/egamma/egammaTools/src/EMClusterTool.cxx index 7582c6b6db2ed134e10b75d3aae8321b2a4f44d2..5e51ea410505f7d1d36bd1ac55cd8b2e24ac2a68 100644 --- a/Reconstruction/egamma/egammaTools/src/EMClusterTool.cxx +++ b/Reconstruction/egamma/egammaTools/src/EMClusterTool.cxx @@ -59,12 +59,12 @@ StatusCode EMClusterTool::initialize() { // Get the cluster correction tool - if(m_MVACalibTool.retrieve().isFailure()) { - ATH_MSG_ERROR("Failed to retrieve " << m_MVACalibTool); + if(m_MVACalibSvc.retrieve().isFailure()) { + ATH_MSG_ERROR("Failed to retrieve " << m_MVACalibSvc); return StatusCode::SUCCESS; } else { - ATH_MSG_DEBUG("Retrieved tool " << m_MVACalibTool); + ATH_MSG_DEBUG("Retrieved tool " << m_MVACalibSvc); } ATH_MSG_DEBUG("Initialization successful"); @@ -205,7 +205,7 @@ xAOD::CaloCluster* EMClusterTool::makeNewCluster(const xAOD::CaloCluster& cluste } xAOD::CaloCluster *newCluster = makeNewCluster(cluster, cluSize); - if (newCluster && m_MVACalibTool->execute(newCluster,eg).isFailure()){ + if (newCluster && m_MVACalibSvc->execute(*newCluster,*eg).isFailure()){ ATH_MSG_ERROR("Problem executing MVA cluster tool"); } return newCluster; @@ -242,7 +242,7 @@ xAOD::CaloCluster* EMClusterTool::makeNewSuperCluster(const xAOD::CaloCluster& c // xAOD::CaloCluster* newClus = new xAOD::CaloCluster(cluster); if(m_applySuperClusters){ - if (newClus && m_MVACalibTool->execute(newClus,eg).isFailure()){ + if (newClus && m_MVACalibSvc->execute(*newClus,*eg).isFailure()){ ATH_MSG_ERROR("Problem executing MVA cluster tool"); } } diff --git a/Reconstruction/egamma/egammaTools/src/EMClusterTool.h b/Reconstruction/egamma/egammaTools/src/EMClusterTool.h index 5007c500bf6b1e5d183a9c26b212671cf83980f5..0d1e8fbea81980bf329ca360826ab274d480b0de 100644 --- a/Reconstruction/egamma/egammaTools/src/EMClusterTool.h +++ b/Reconstruction/egamma/egammaTools/src/EMClusterTool.h @@ -12,7 +12,7 @@ #include "egammaBaseTool.h" #include "egammaInterfaces/IegammaSwTool.h" -#include "egammaMVACalib/IegammaMVATool.h" +#include "egammaInterfaces/IegammaMVASvc.h" #include "xAODCaloEvent/CaloCluster.h" // cannot use CaloClusterFwd b/c of ClusterSize #include "xAODCaloEvent/CaloClusterContainer.h" @@ -109,9 +109,9 @@ class EMClusterTool : public AthAlgTool, virtual public IEMClusterTool { * name taken from containter name */ SG::WriteHandleKey<CaloClusterCellLinkContainer> m_outputTopoSeededClusterContainerCellLinkKey; - /** Handle to the MVA calibration Tool **/ - PublicToolHandle<IegammaMVATool> m_MVACalibTool {this, - "MVACalibTool", "egammaMVATool", "calibration tool"}; + /** Handle to the MVA calibration service **/ + ServiceHandle<IegammaMVASvc> m_MVACalibSvc {this, + "MVACalibSvc", "egammaMVASvc", "calibration service"}; /** @brief Name of the input electron container **/ std::string m_electronContainerName; diff --git a/Simulation/Digitization/CMakeLists.txt b/Simulation/Digitization/CMakeLists.txt index d3d7351189b57ab8e06a2a52f09c9375479639fb..98037e1a5f72e0b800387883a644bc38e530a430 100644 --- a/Simulation/Digitization/CMakeLists.txt +++ b/Simulation/Digitization/CMakeLists.txt @@ -14,3 +14,7 @@ atlas_install_python_modules( python/*.py ) atlas_install_joboptions( share/*.py share/jobOpts/*.py ) atlas_install_runtime( data/*.ascii test/Digitization_TestConfiguration.xml ) +atlas_add_test(test_MC16a_Digi_tf_configuration + SCRIPT test/test_MC16a_Digi_tf_configuration.py + PROPERTIES TIMEOUT 300 + PROPERTIES RESOURCE_LOCK DigiTf) diff --git a/Simulation/Digitization/test/test_MC16a_Digi_tf_configuration.py b/Simulation/Digitization/test/test_MC16a_Digi_tf_configuration.py new file mode 100755 index 0000000000000000000000000000000000000000..9e4525789d7dd5af7f422304010ea511bde5e6f9 --- /dev/null +++ b/Simulation/Digitization/test/test_MC16a_Digi_tf_configuration.py @@ -0,0 +1,345 @@ +#!/usr/bin/env python + +import pickle +import subprocess +import unittest + + +class TestDigitizationMC16a(unittest.TestCase): + + @classmethod + def setUpClass(cls): + config_picklefilename = 'DigitizationMC16a_config.pkl' + command = [ + 'Digi_tf.py', + '--athenaopts', '"--config-only={}"'.format(config_picklefilename), + '--inputHITSFile', '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/valid1.410000.PowhegPythiaEvtGen_P2012_ttbar_hdamp172p5_nonallhad.simul.HITS.e4993_s3091/HITS.10504490._000425.pool.root.1', + '--conditionsTag', 'default:OFLCOND-MC16-SDR-16', + '--geometryVersion', 'default:ATLAS-R2-2016-01-00-01', + '--inputHighPtMinbiasHitsFile', '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/mc16_13TeV.361239.Pythia8EvtGen_A3NNPDF23LO_minbias_inelastic_high.merge.HITS.e4981_s3087_s3089/HITS.10501933._000005.pool.root.1', + '--inputLowPtMinbiasHitsFile', '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/mc16_13TeV.361238.Pythia8EvtGen_A3NNPDF23LO_minbias_inelastic_low.merge.HITS.e4981_s3087_s3089/HITS.10501925._000003.pool.root.1', + '--jobNumber', '1', + '--maxEvents', '25', + '--numberOfCavernBkg', '0', + '--numberOfHighPtMinBias', '0.116075313', + '--numberOfLowPtMinBias', '44.3839246425', + '--outputRDOFile', 'mc16a_ttbar.RDO.pool.root', + '--digiSteeringConf', 'StandardSignalOnlyTruth', + '--postExec', 'all:CfgMgr.MessageSvc().setError+=["HepMcParticleLink"]', 'ToolSvc.LArAutoCorrTotalToolDefault.deltaBunch=1', + '--postInclude', 'default:PyJobTransforms/UseFrontier.py', + '--pileupFinalBunch', '6', + '--preExec', 'all:from AthenaCommon.BeamFlags import jobproperties;jobproperties.Beam.numberOfCollisions.set_Value_and_Lock(20.0);from LArROD.LArRODFlags import larRODFlags;larRODFlags.NumberOfCollisions.set_Value_and_Lock(20);larRODFlags.nSamples.set_Value_and_Lock(4);larRODFlags.doOFCPileupOptimization.set_Value_and_Lock(True);larRODFlags.firstSample.set_Value_and_Lock(0);larRODFlags.useHighestGainAutoCorr.set_Value_and_Lock(True)', + '--preInclude', 'HITtoRDO:Digitization/ForceUseOfPileUpTools.py,SimulationJobOptions/preInclude.PileUpBunchTrainsMC15_2015_25ns_Config1.py,RunDependentSimData/configLumi_run284500_mc16a.py', + '--skipEvents', '0', + # would otherwise fail due to missing RDO file: + '--outputFileValidation', 'False', + ] + subprocess.check_call(command) + + with open(config_picklefilename) as picklefile: + job_config_dict = pickle.load(picklefile) + + cls._job_config_dict = job_config_dict + + def _assert_Algorithm_property_unordered_equal(self, + algorithm_name, + property_name, + expected_property_value): + algconfigdict = self._job_config_dict[algorithm_name] + actual_property_value_as_str = algconfigdict[property_name] + # need to evaluate to obtain actual Python object + actual_property_value = eval(actual_property_value_as_str) + expected_property_value_sorted = sorted(expected_property_value) + actual_property_value_sorted = sorted(actual_property_value) + + failure_message = "{algorithm}.{property} has a different " \ + "value than expected!\n" \ + "expected (sorted):\n" \ + " {expected}\n" \ + "actual (sorted):\n" \ + " {actual}".format( + algorithm=algorithm_name, + property=property_name, + expected=expected_property_value_sorted, + actual=actual_property_value_sorted) + self.assertEqual(expected_property_value_sorted, + actual_property_value_sorted, + failure_message) + + + def _assert_Algorithm_property_ordered_equal(self, + algorithm_name, + property_name, + expected_property_value): + algconfigdict = self._job_config_dict[algorithm_name] + actual_property_value_as_str = algconfigdict[property_name] + # need to evaluate to obtain actual Python object + actual_property_value = eval(actual_property_value_as_str) + + failure_message = "{algorithm}.{property} has a different " \ + "value than expected!\n" \ + "expected:\n" \ + " {expected}\n" \ + "actual:\n" \ + " {actual}".format( + algorithm=algorithm_name, + property=property_name, + expected=str(expected_property_value), + actual=str(actual_property_value)) + self.assertEqual(expected_property_value, + actual_property_value, + failure_message) + + + def _assert_Algorithm_property_equal(self, + algorithm_name, + property_name, + expected_property_value): + algconfigdict = self._job_config_dict[algorithm_name] + actual_property_value = algconfigdict[property_name] + + failure_message = "{algorithm}.{property} has a different " \ + "value than expected!\n" \ + "expected:\n" \ + " {expected}\n" \ + "actual:\n" \ + " {actual}".format( + algorithm=algorithm_name, + property=property_name, + expected=str(expected_property_value), + actual=str(actual_property_value)) + self.assertEqual(str(expected_property_value), + str(actual_property_value), + failure_message) + + + def _detailed_ConfigurablePropertiesCheck(self, + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties): + testedConfigurableDict = self._job_config_dict[tested_configurable_name] + actual_list = testedConfigurableDict.keys() + expected_property_value_sorted = sorted(expected_property_list) + actual_property_value_sorted = sorted(actual_list) + + failure_message = "{configurable}.keys() has a different " \ + "value than expected!\n" \ + "expected (sorted):\n" \ + " {expected}\n" \ + "actual (sorted):\n" \ + " {actual}".format( + configurable=tested_configurable_name, + expected=expected_property_value_sorted, + actual=actual_property_value_sorted) + self.assertEqual(expected_property_value_sorted, + actual_property_value_sorted, + failure_message) + + for key, value in expected_nonstring_properties.iteritems(): + expected_Property = eval(value) + self._assert_Algorithm_property_equal( + tested_configurable_name, + key, + expected_Property) + + for key, value in expected_string_properties.iteritems(): + expected_Property = value + self._assert_Algorithm_property_equal( + tested_configurable_name, + key, + expected_Property) + + + def test___PileUpToolsAlg_is_second_in_AthAlgSeq(self): + expected_AlgSequence = ['TimingAlg/DigiTimerBegin', 'PileUpToolsAlg/StandardSignalOnlyTruthPileUpToolsAlg', 'LArRawChannelBuilder/LArRawChannelBuilder', 'LArDigitThinner/LArDigitThinner', 'TileDigitsMaker/TileDigitsMaker', 'TileRawChannelMaker/TileRChMaker', 'TileRawChannelToL2/TileRawChannelToL2', 'CscDigitToCscRDO/CscDigitToCscRDO', 'MdtDigitToMdtRDO/MdtDigitToMdtRDO', 'RpcDigitToRpcRDO/RpcDigitToRpcRDO', 'TgcDigitToTgcRDO/TgcDigitToTgcRDO', 'LArTTL1Maker/LArTTL1Maker', 'TileHitToTTL1/TileHitToTTL1', 'TilePulseForTileMuonReceiver/TilePulseForTileMuonReceiver', 'TileMuonReceiverDecision/TileMuonReceiverDecision', 'AthenaOutputStream/StreamRDO'] + ath_alg_seqence_as_str = self._job_config_dict['AthAlgSeq']['Members'] + # need to evaluate to obtain actual Python object + ath_alg_seqence_list = eval(ath_alg_seqence_as_str) + + actual_2nd_ath_alg_sequence_entry = ath_alg_seqence_list[1] + print ath_alg_seqence_list + expected_2nd_ath_alg_sequence_entry = "PileUpToolsAlg/StandardSignalOnlyTruthPileUpToolsAlg" + self.assertEqual(expected_2nd_ath_alg_sequence_entry, + actual_2nd_ath_alg_sequence_entry) + self.assertEqual(expected_AlgSequence, ath_alg_seqence_list) + + + def test___StandardSignalOnlyTruthPileUpToolsAlg_PileUpTools(self): + expected_PileUpTools = ['MergeMcEventCollTool/SignalOnlyMcEventCollTool','MergeTruthJetsTool/MergeTruthJetsTool','MergeTrackRecordCollTool/MergeTrackRecordCollTool','MergeCalibHitsTool/MergeCalibHitsTool','BCM_DigitizationTool/BCM_DigitizationTool','PixelDigitizationTool/PixelDigitizationTool','SCT_DigitizationTool/SCT_DigitizationTool','TRTDigitizationTool/TRTDigitizationTool','LArPileUpTool/LArPileUpTool','TileHitVecToCntTool/TileHitVecToCntTool','CscDigitizationTool/CscDigitizationTool','MdtDigitizationTool/MdtDigitizationTool','RpcDigitizationTool/RpcDigitizationTool','TgcDigitizationTool/TgcDigitizationTool','MergeRecoTimingObjTool/MergeRecoTimingObjTool'] + self._assert_Algorithm_property_unordered_equal( + 'StandardSignalOnlyTruthPileUpToolsAlg', + 'PileUpTools', + expected_PileUpTools) + + + def test___MergeTruthJetsTool_properties(self): + tested_configurable_name = 'ToolSvc.MergeTruthJetsTool' + expected_property_list = ['DetStore', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'LastXing'] + expected_nonstring_properties = {'LastXing': '100', 'FirstXing': '-500'} + expected_string_properties = {} # Not checking any specific property values + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___MergeTrackRecordCollTool_properties(self): + tested_configurable_name = 'ToolSvc.MergeTrackRecordCollTool' + expected_property_list = ['DetStore', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'LastXing'] + expected_nonstring_properties = {'LastXing': '1', 'FirstXing': '-1'} + expected_string_properties = {} # Not checking any specific property values + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___MergeCalibHitsTool_properties(self): + tested_configurable_name = 'ToolSvc.MergeCalibHitsTool' + expected_property_list = ['DetStore', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'LastXing'] + expected_nonstring_properties = {'LastXing': '1', 'FirstXing': '-1'} + expected_string_properties = {} # Not checking any specific property values + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___BCM_DigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.BCM_DigitizationTool' + expected_property_list = ['DetStore', 'EffDistanceParam', 'EffSharpnessParam', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'HitCollName', 'LastXing', 'MIPDeposit', 'ModNoise', 'ModSignal', 'NinoThr', 'RndmSvc', 'TimeDelay'] + expected_nonstring_properties = {'LastXing': '0', 'FirstXing': '-25'} + expected_string_properties = {'HitCollName': 'BCMHits'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___SignalOnlyMcEventCollTool_properties(self): + tested_configurable_name = 'ToolSvc.SignalOnlyMcEventCollTool' + expected_property_list = ['KeepUnstable', 'SaveInTimeMinBias', 'AddBackgroundCollisionVertices', 'zRange', 'TruthCollKey', 'OnlySaveSignalTruth', 'OutOfTimeAbsEtaMax', 'rRange', 'CompressOutputCollection', 'ExtraOutputs', 'AbsEtaMax', 'LastXing', 'SaveOutOfTimeMinBias', 'ExtraInputs', 'DetStore', 'SaveCavernBackground', 'FirstXing', 'SaveRestOfMinBias', 'EvtStore', 'HighTimeToKeep', 'LowTimeToKeep'] + expected_nonstring_properties = {'KeepUnstable': 'False', 'SaveInTimeMinBias': 'True', 'AddBackgroundCollisionVertices': 'True', 'zRange': '200.0', 'OnlySaveSignalTruth': 'True', 'OutOfTimeAbsEtaMax': '3.0', 'rRange': '20.0', 'CompressOutputCollection': 'False', 'ExtraOutputs': '[]', 'AbsEtaMax': '5.0', 'LastXing': '0', 'SaveOutOfTimeMinBias': 'True', 'ExtraInputs': '[]', 'SaveCavernBackground': 'True', 'FirstXing': '0', 'SaveRestOfMinBias': 'False', 'HighTimeToKeep': '50.5', 'LowTimeToKeep': '-50.5'} + expected_string_properties = {'TruthCollKey': 'TruthEvent'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___PixelDigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.PixelDigitizationTool' + expected_property_list = ['ChargeTools', 'DetStore', 'EnergyDepositionTool', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'FrontEndSimTools', 'HardScatterSplittingMode', 'InputObjectName', 'LastXing', 'MergeSvc', 'RndmEngine', 'RndmSvc'] + expected_nonstring_properties = {'LastXing': '25', 'FirstXing': '-25'} + expected_string_properties = {'InputObjectName': 'PixelHits'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___SCT_DigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.SCT_DigitizationTool' + expected_property_list = ['BarrelOnly', 'DetStore', 'EnableHits', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'FrontEnd', 'HardScatterSplittingMode', 'InputObjectName', 'LastXing', 'MergeSvc', 'OutputObjectName', 'OutputSDOName', 'RndmSvc', 'SurfaceChargesGenerator'] + expected_nonstring_properties = {'LastXing': '25', 'FirstXing': '-50'} + expected_string_properties = {'InputObjectName': 'SCT_Hits', 'OutputObjectName': 'SCT_RDOs', 'OutputSDOName': 'SCT_SDO_Map'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___TRTDigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.TRTDigitizationTool' + expected_property_list = ['DetStore', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'HardScatterSplittingMode', 'InDetTRTStrawStatusSummarySvc', 'LastXing', 'MergeSvc', 'OutputObjectName', 'OutputSDOName', 'Override_TrtRangeCutProperty', 'PAI_Tool_Ar', 'PAI_Tool_Kr', 'PAI_Tool_Xe', 'RndmSvc', 'SimDriftTimeTool', 'TRT_StrawNeighbourSvc'] + expected_nonstring_properties = {'LastXing': '50', 'FirstXing': '-50'} + expected_string_properties = {'OutputObjectName': 'TRT_RDOs', 'OutputSDOName': 'TRT_SDO_Map'} # No Input name property + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___LArPileUpTool_properties(self): + tested_configurable_name = 'ToolSvc.LArPileUpTool' + expected_property_list = ['ADC2MeVTool', 'AutoCorrNoiseTool', 'BadChannelTool', 'DetStore', 'DigitContainer', 'EmBarrelHitContainerName', 'EmEndCapHitContainerName', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'ForWardHitContainerName', 'HecHitContainerName', 'HighGainThreshFCAL', 'LastXing', 'MaskingTool', 'NoiseOnOff', 'Nsamples', 'RndmEvtOverlay', 'RndmSvc', 'TriggerTimeToolName', 'firstSample', 'useLArFloat'] + expected_nonstring_properties = {'LastXing': '101', 'FirstXing': '-751', 'Nsamples': '4', 'EmBarrelHitContainerName': '["LArHitEMB"]', 'EmEndCapHitContainerName': '["LArHitEMEC"]', 'ForWardHitContainerName': '["LArHitFCAL"]', 'HecHitContainerName': '["LArHitHEC"]'} + expected_string_properties = {'DigitContainer': 'LArDigitContainer_MC'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___TileHitVecToCntTool_properties(self): + tested_configurable_name = 'ToolSvc.TileHitVecToCntTool' + expected_property_list = ['DetStore', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'LastXing', 'PileUp', 'RndmSvc', 'TileHitContainer', 'TileHitVectors', 'TileInfoName', 'TriggerTimeTool'] + expected_nonstring_properties = {'LastXing': '150', 'FirstXing': '-200', 'TileHitVectors': '["TileHitVec", "MBTSHits"]'} + expected_string_properties = {'TileHitContainer': 'TileHitCnt'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___CscDigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.CscDigitizationTool' + expected_property_list = ['DetStore', 'DriftVelocity', 'ElectronEnergy', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'InputObjectName', 'LastXing', 'NewDigitEDM', 'OutputObjectName', 'RndmEngine', 'RndmSvc', 'WindowLowerOffset', 'WindowUpperOffset', 'amplification', 'cscCalibTool', 'isPileUp', 'pedestal'] + expected_nonstring_properties = {'LastXing': '175', 'FirstXing': '-375'} + expected_string_properties = {'InputObjectName': 'CSC_Hits', 'OutputObjectName': 'CSC_DIGITS'} + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___MdtDigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.MdtDigitizationTool' + expected_property_list = ['DetStore', 'DigitizationTool', 'DiscardEarlyHits', 'DoQballCharge', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'LastXing', 'MDTCondSummarySvc', 'MaskedStations', 'MdtCalibrationDbSvc', 'RndmEngine', 'RndmSvc', 'TwinRndmEngine', 'TwinRndmSvc', 'UseDeadChamberSvc', 'UseTof'] + expected_nonstring_properties = {'LastXing': '150', 'FirstXing': '-800'} + expected_string_properties = {} # Not checking any specific property values + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___RpcDigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.RpcDigitizationTool' + expected_property_list = ['ClusterSize1_2uncorr', 'ClusterSize_fromCOOL', 'CutProjectedTracks', 'DeadTime', 'DetStore', 'DumpFromDbFirst', 'EfficiencyPatchForBMShighEta', 'Efficiency_fromCOOL', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'FracClusterSize1_A', 'FracClusterSize1_C', 'FracClusterSize2_A', 'FracClusterSize2_C', 'FracClusterSizeTail_A', 'FracClusterSizeTail_C', 'IgnoreRunDependentConfig', 'LastXing', 'MeanClusterSizeTail_A', 'MeanClusterSizeTail_C', 'OnlyEtaEff_A', 'OnlyEtaEff_C', 'OnlyPhiEff_A', 'OnlyPhiEff_C', 'PanelId_OFF_fromlist', 'PanelId_OK_fromlist', 'PatchForRpcTime', 'PatchForRpcTimeShift', 'PhiAndEtaEff_A', 'PhiAndEtaEff_C', 'PrintCalibrationVector', 'RPCCondSummarySvc', 'RPCInfoFromDb', 'RndmEngine', 'RndmSvc', 'testbeam_clustersize', 'turnON_clustersize', 'turnON_efficiency'] + expected_nonstring_properties = {'LastXing': '125', 'FirstXing': '-150'} + expected_string_properties = {} # Not checking any specific property values + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + + def test___TgcDigitizationTool_properties(self): + tested_configurable_name = 'ToolSvc.TgcDigitizationTool' + expected_property_list = ['DetStore', 'EvtStore', 'ExtraInputs', 'ExtraOutputs', 'FirstXing', 'LastXing', 'RndmEngine', 'RndmSvc'] + expected_nonstring_properties = {'LastXing': '75', 'FirstXing': '-50'} + expected_string_properties = {} # Not checking any specific property values + self._detailed_ConfigurablePropertiesCheck( + tested_configurable_name, + expected_property_list, + expected_nonstring_properties, + expected_string_properties) + + +if __name__ == '__main__': + unittest.main() diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx index 321751e746333c378a1f498afec136d4d2c21805..55f73b931aefb5b0f9f943076aa12e1c58375ccc 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx @@ -77,21 +77,17 @@ StatusCode MergeCalibHitsTool::processBunchXing(int bunchXing, ++iEvt; continue; } - StoreGateSvc& seStore(*iEvt->ptr()->evtStore()); + // loop over containers for (unsigned int iHitContainer=0;iHitContainer<m_CalibrationHitContainer.size();++iHitContainer) { ATH_MSG_VERBOSE ( " Bunch Crossing: " <<bunchXing << ". Process CalibrationHit container " << m_CalibrationHitContainer[iHitContainer] ); const CaloCalibrationHitContainer* hitCont; - // if container not there, do nothing - if (seStore.contains<CaloCalibrationHitContainer>(m_CalibrationHitContainer[iHitContainer])) { - if( !seStore.retrieve(hitCont, m_CalibrationHitContainer[iHitContainer]).isSuccess()) { - ATH_MSG_ERROR ( " Failed to retrieve CalibrationHitContainer called " << m_CalibrationHitContainer[iHitContainer] ); - } - } - else { - ATH_MSG_VERBOSE ( " Cannot find CalibrationHitContainer called " << m_CalibrationHitContainer[iHitContainer] ); - continue; + if (!m_pMergeSvc->retrieveSingleSubEvtData(m_CalibrationHitContainer[iHitContainer], hitCont, + bunchXing, iEvt).isSuccess()){ + ATH_MSG_ERROR("CaloCalibrationHitContainer not found for event key " << m_CalibrationHitContainer[iHitContainer]); + return StatusCode::FAILURE; } + //if this is the first SubEvent for this Event then create the hitContainers; if(m_firstSubEvent) { m_outputContainers[iHitContainer] = new CaloCalibrationHitContainer(m_CalibrationHitContainer[iHitContainer]); diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx index fbf752c0800889e880432820b326390a37ecda80..e8ea7f7d5ab46849f2a8c4d4c9098f8e076ce63c 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx @@ -52,21 +52,16 @@ StatusCode MergeGenericMuonSimHitCollTool::processBunchXing(int bunchXing, ATH_MSG_VERBOSE ( "processBunchXing()" ); SubEventIterator iEvt(bSubEvents); while (iEvt != eSubEvents) { - StoreGateSvc& seStore(*iEvt->ptr()->evtStore()); // loop over containers for (unsigned int iHitContainer=0;iHitContainer<m_SimHitContainerNames.size();++iHitContainer) { ATH_MSG_VERBOSE ( " Bunch Crossing: " <<bunchXing << ". Process GenericMuonSimHitCollection " << m_SimHitContainerNames[iHitContainer] ); const GenericMuonSimHitCollection* hitCont; - // if container not there, do nothing - if (seStore.contains<GenericMuonSimHitCollection>(m_SimHitContainerNames[iHitContainer])) { - if( !seStore.retrieve(hitCont, m_SimHitContainerNames[iHitContainer]).isSuccess()) { - ATH_MSG_ERROR ( " Failed to retrieve GenericMuonSimHitCollection called " << m_SimHitContainerNames[iHitContainer] ); - } - } - else { - ATH_MSG_VERBOSE ( " Cannot find GenericMuonSimHitCollection called " << m_SimHitContainerNames[iHitContainer] ); - continue; + if (!m_pMergeSvc->retrieveSingleSubEvtData(m_SimHitContainerNames[iHitContainer], hitCont, + bunchXing, iEvt).isSuccess()){ + ATH_MSG_ERROR("GenericMuonSimHitCollection not found for event key " << m_SimHitContainerNames[iHitContainer]); + return StatusCode::FAILURE; } + //if this is the first SubEvent for this Event then create the hitContainers; if(m_firstSubEvent) { m_outputContainers[iHitContainer] = new GenericMuonSimHitCollection(m_SimHitContainerNames[iHitContainer]); diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.cxx index fc8719dd88560421dee382b6885190d87204e7e1..2a14429a165ac2df98214457c4fb28a94d3dbf90 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.cxx @@ -26,7 +26,7 @@ StatusCode MergeHijingParsTool::prepareEvent(unsigned int nInputEvents) { return StatusCode::SUCCESS; } -StatusCode MergeHijingParsTool::processBunchXing(int, +StatusCode MergeHijingParsTool::processBunchXing(int bunchXing, SubEventIterator bSubEvents, SubEventIterator eSubEvents) { @@ -39,44 +39,44 @@ StatusCode MergeHijingParsTool::processBunchXing(int, SubEventIterator iEvt = bSubEvents; for (; iEvt!=eSubEvents; iEvt++) { - StoreGateSvc& seStore(*bSubEvents->ptr()->evtStore()); - if (seStore.contains<HijingEventParams>(m_outputObject.name())) - { - const HijingEventParams *hijing_pars(nullptr); - ATH_CHECK(seStore.retrieve(hijing_pars, m_outputObject.name())); - // create new container for overlayed event - m_outputObject = CxxUtils::make_unique<HijingEventParams>(hijing_pars->get_np(), - hijing_pars->get_nt(), - hijing_pars->get_n0(), - hijing_pars->get_n01(), - hijing_pars->get_n10(), - hijing_pars->get_n11(), - hijing_pars->get_natt(), - hijing_pars->get_jatt(), - hijing_pars->get_b(), - hijing_pars->get_bphi()); - // FIXME Why is there no copy constructor for this class?! - // add in setting Psi angles manually. - for(int n=1;n<7;++n) - { - m_outputObject->set_psi(n,hijing_pars->get_psi(n)); - } + const HijingEventParams *hijing_pars(nullptr); + if (m_pMergeSvc->retrieveSingleSubEvtData(m_outputObject.name(), hijing_pars, + bunchXing, iEvt).isSuccess()){ + + + m_outputObject = CxxUtils::make_unique<HijingEventParams>(hijing_pars->get_np(), + hijing_pars->get_nt(), + hijing_pars->get_n0(), + hijing_pars->get_n01(), + hijing_pars->get_n10(), + hijing_pars->get_n11(), + hijing_pars->get_natt(), + hijing_pars->get_jatt(), + hijing_pars->get_b(), + hijing_pars->get_bphi()); + // FIXME Why is there no copy constructor for this class?! + // add in setting Psi angles manually. + for(int n=1;n<7;++n) + { + m_outputObject->set_psi(n,hijing_pars->get_psi(n)); + } + + if(m_firstSubEvent) + { + ATH_MSG_DEBUG( "processBunchXing: copied original event HijingEventParams" ); + } + else + { + ATH_MSG_DEBUG( "processBunchXing: copied background event HijingEventParams" ); + } + return StatusCode::SUCCESS; + } - if(m_firstSubEvent) - { - ATH_MSG_DEBUG( "processBunchXing: copied original event HijingEventParams" ); - } - else - { - ATH_MSG_DEBUG( "processBunchXing: copied background event HijingEventParams" ); - } - return StatusCode::SUCCESS; - } if(m_firstSubEvent) - { - ATH_MSG_VERBOSE("processBunchXing: No HijingEventParams found in the signal eventStore." ); - m_firstSubEvent=false; - } + { + ATH_MSG_VERBOSE("processBunchXing: No HijingEventParams found in the signal eventStore." ); + m_firstSubEvent=false; + } } return StatusCode::SUCCESS; } diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx index 138a6bec92dbcb1c4f106577d9a0ab977e0a24b6..2f3150cfce8f9f3a6cb0ae0f1ba52874c349e930 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx @@ -272,7 +272,7 @@ StatusCode MergeMcEventCollTool::processAllSubEvents() { return StatusCode::SUCCESS; } -StatusCode MergeMcEventCollTool::processBunchXing(int /*bunchXing*/, +StatusCode MergeMcEventCollTool::processBunchXing(int bunchXing, SubEventIterator bSubEvents, SubEventIterator eSubEvents) { @@ -280,14 +280,13 @@ StatusCode MergeMcEventCollTool::processBunchXing(int /*bunchXing*/, SubEventIterator iEvt(bSubEvents); //loop over the McEventCollections (each one assumed to containing exactly one GenEvent) of the various input events while (iEvt != eSubEvents) { - StoreGateSvc& seStore(*iEvt->ptr()->evtStore()); const McEventCollection *pMEC(NULL); - //FIXME Should I be using m_truthCollKey in the retrieve method? - if (!seStore.retrieve(pMEC, m_truthCollKey.value()).isSuccess()) { - ATH_MSG_ERROR ("processBunchXing: SubEvt McEventCollection NOT FOUND in StoreGate " << seStore.name() ); + if (!m_pMergeSvc->retrieveSingleSubEvtData(m_truthCollKey.value(), pMEC, + bunchXing, iEvt).isSuccess()){ + ATH_MSG_ERROR("McEventCollection not found for event key " << m_truthCollKey.value()); return StatusCode::FAILURE; } - ATH_MSG_DEBUG ("processBunchXing: SubEvt McEventCollection from StoreGate " << seStore.name() ); + if (!processEvent(pMEC,iEvt->time(),iEvt->index()).isSuccess()) { ATH_MSG_ERROR ("processBunchXing: Failed to process McEventCollection." ); return StatusCode::FAILURE; diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.cxx index 0f65f160719a9b753cd2add127480ed19cf30533..70781b11eff69773d2bfd0035601dbaf8a063327 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeRecoTimingObjTool.cxx @@ -37,13 +37,12 @@ StatusCode MergeRecoTimingObjTool::processBunchXing(int bunchXing, { if (bSubEvents != eSubEvents) { - StoreGateSvc& seStore(*bSubEvents->ptr()->evtStore()); - if(seStore.contains<RecoTimingObj>(m_recTimingObjKey.value())) - { - const RecoTimingObj *oldColl(0); - CHECK(seStore.retrieve(oldColl, m_recTimingObjKey.value())); - CHECK(processRecoTimingObj(oldColl)); - } + const RecoTimingObj *oldColl(0); + if (m_pMergeSvc->retrieveSingleSubEvtData(m_recTimingObjKey.value(), oldColl, + bunchXing, bSubEvents).isSuccess()) + { + CHECK(processRecoTimingObj(oldColl)); + } else { ATH_MSG_DEBUG ( "processBunchXing: No RecoTimingObj found." ); diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx index e23468924bdd5255c706f31fdfc3bfc95638660d..5e32c46ebf435394d9d4a6a8bde318199492a89f 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx @@ -37,19 +37,19 @@ StatusCode MergeTrackRecordCollTool::processBunchXing(int bunchXing, { if (bSubEvents != eSubEvents) { - StoreGateSvc& seStore(*bSubEvents->ptr()->evtStore()); const TrackRecordCollection* oldColl(0); - if (seStore.retrieve(oldColl, m_trRecCollKey.value()).isSuccess()) - { - TrackRecordCollection* newColl = new TrackRecordCollection(); - for(auto trcit : *oldColl) - { - newColl->push_back( TrackRecord(trcit) ); - } - CHECK(evtStore()->record(newColl, m_trRecCollKey)); - ATH_MSG_DEBUG( "processBunchXing: copied original event TrackRecordCollection" ); - m_firstSubEvent=false; - } + if (m_pMergeSvc->retrieveSingleSubEvtData(m_trRecCollKey.value(), oldColl, + bunchXing, bSubEvents).isSuccess()) + { + TrackRecordCollection* newColl = new TrackRecordCollection(); + for(auto trcit : *oldColl) + { + newColl->push_back( TrackRecord(trcit) ); + } + CHECK(evtStore()->record(newColl, m_trRecCollKey)); + ATH_MSG_DEBUG( "processBunchXing: copied original event TrackRecordCollection" ); + m_firstSubEvent=false; + } else { ATH_MSG_ERROR ( "processBunchXing: TimedTruthList is empty" ); @@ -60,9 +60,10 @@ StatusCode MergeTrackRecordCollTool::processBunchXing(int bunchXing, ATH_MSG_ERROR ( "processBunchXing: Can not find TimedTruthList" ); } } - + return StatusCode::SUCCESS; } + StatusCode MergeTrackRecordCollTool::mergeEvent() { //Nothing to do here; diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx index 2a4e56cebbb49821c8ccd771a25a775bf9d018c5..a0dcbd754f4b6b8ad4706096361ee98c82d7c1f0 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx @@ -64,13 +64,11 @@ StatusCode MergeTruthJetsTool::processBunchXing(int bunchXing, SubEventIterator iEvt(bSubEvents); while (iEvt != eSubEvents) { - StoreGateSvc& seStore(*iEvt->ptr()->evtStore()); const xAOD::JetContainer* inputJetContainer = 0; - if (seStore.contains<xAOD::JetContainer>(m_inputJetCollKey)) - { + if (m_pMergeSvc->retrieveSingleSubEvtData(m_inputJetCollKey, inputJetContainer, + bunchXing, bSubEvents).isSuccess()) + { ATH_MSG_VERBOSE("Found an xAOD::JetContainer in storeGate."); - inputJetContainer = seStore.retrieve<const xAOD::JetContainer>(m_inputJetCollKey); - //Back-compatibility with inputs which contain old JetCollections if ( inputJetContainer==0 ) { ATH_MSG_ERROR("Unable to retrieve input jet container: " << m_inputJetCollKey); diff --git a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/CMakeLists.txt b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/CMakeLists.txt index e06103e300fe4124bc3c688305c91a8a786e6bfb..f80aa38c7ab43fc44f7b0c7f3efa4d24bcfcaad1 100644 --- a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/CMakeLists.txt +++ b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/CMakeLists.txt @@ -61,6 +61,7 @@ atlas_add_root_dictionary( ISF_FastCaloSimEvent _dictSource ISF_FastCaloSimEvent/TFCSHistoLateralShapeParametrization.h ISF_FastCaloSimEvent/TFCSLateralShapeParametrizationHitNumberFromE.h ISF_FastCaloSimEvent/TFCSHitCellMapping.h + ISF_FastCaloSimEvent/TFCSHitCellMappingFCal.h ISF_FastCaloSimEvent/TFCSHitCellMappingWiggle.h ISF_FastCaloSimEvent/TFCSHitCellMappingWiggleEMB.h ISF_FastCaloSimEvent/TFCSExtrapolationState.h diff --git a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/LinkDef.h b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/LinkDef.h index 92fb2e0c0a1f8f15fae8b1f21f30963117c37700..0d81d35cc1e9b82246b8a3754532c06a0f638293 100644 --- a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/LinkDef.h +++ b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/LinkDef.h @@ -41,6 +41,7 @@ #include "ISF_FastCaloSimEvent/TFCSHistoLateralShapeParametrization.h" #include "ISF_FastCaloSimEvent/TFCSLateralShapeParametrizationHitNumberFromE.h" #include "ISF_FastCaloSimEvent/TFCSHitCellMapping.h" +#include "ISF_FastCaloSimEvent/TFCSHitCellMappingFCal.h" #include "ISF_FastCaloSimEvent/TFCSHitCellMappingWiggle.h" #include "ISF_FastCaloSimEvent/TFCSHitCellMappingWiggleEMB.h" @@ -145,6 +146,7 @@ #pragma link C++ class TFCSHistoLateralShapeParametrization+; #pragma link C++ class TFCSLateralShapeParametrizationHitNumberFromE+; #pragma link C++ class TFCSHitCellMapping+; +#pragma link C++ class TFCSHitCellMappingFCal+; #pragma link C++ class TFCSHitCellMappingWiggle+; #pragma link C++ class TFCSHitCellMappingWiggleEMB+; diff --git a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMapping.h b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMapping.h index 301d8d22c738b093a01a3a2e750b847bcef39b42..7620f5f311e6da8f69159c2f7605e02714dfba7d 100644 --- a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMapping.h +++ b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMapping.h @@ -21,9 +21,9 @@ public: void Print(Option_t *option) const; -private: +protected: ICaloGeometry* m_geo; //! do not persistify - +private: ClassDef(TFCSHitCellMapping,1) //TFCSHitCellMapping }; diff --git a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMappingFCal.h b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMappingFCal.h new file mode 100644 index 0000000000000000000000000000000000000000..4aee99d8e7e95e5167162f201ee1bcefce9283a5 --- /dev/null +++ b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSHitCellMappingFCal.h @@ -0,0 +1,26 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef TFCSHitCellMappingFCal_h +#define TFCSHitCellMappingFCal_h + +#include "ISF_FastCaloSimEvent/TFCSHitCellMapping.h" + +class ICaloGeometry; + +class TFCSHitCellMappingFCal:public TFCSHitCellMapping { +public: + TFCSHitCellMappingFCal(const char* name=nullptr, const char* title=nullptr, ICaloGeometry* geo=nullptr):TFCSHitCellMapping(name,title,geo){} + + virtual void simulate_hit(Hit& hit,TFCSSimulationState& simulstate,const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol); + +private: + ClassDef(TFCSHitCellMappingFCal,1) //TFCSHitCellMapping +}; + +#if defined(__ROOTCLING__) && defined(__FastCaloSimStandAlone__) +#pragma link C++ class TFCSHitCellMappingFCal+; +#endif + +#endif diff --git a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSLateralShapeParametrizationHitBase.h b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSLateralShapeParametrizationHitBase.h index 32c0feb5ee8db4f9941f2b8dabc10432daf15863..f53cbc785e794d77b4b8e15463a172e7443dbc62 100644 --- a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSLateralShapeParametrizationHitBase.h +++ b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/ISF_FastCaloSimEvent/TFCSLateralShapeParametrizationHitBase.h @@ -19,15 +19,41 @@ public: class Hit { public: - Hit():m_eta(0),m_phi(0),m_E(0) {}; // for hits with the same energy, m_E should normalized to E(layer)/nhit - Hit(float eta, float phi, float E):m_eta(eta),m_phi(phi),m_E(E) {}; + Hit():m_eta_x(0.),m_phi_y(0.),m_z(0.),m_E(0.) {}; // for hits with the same energy, m_E should normalized to E(layer)/nhit + Hit(float eta, float phi, float E):m_eta_x(eta),m_phi_y(phi),m_E(E) {}; + Hit(float x, float y, float z, float E):m_eta_x(x),m_phi_y(y),m_z(z),m_E(E) {}; + + inline void setEtaPhiE(float eta,float phi, float E){ + m_eta_x=eta; + m_phi_y=phi; + m_E=E; + } + inline void setXYZE(float x,float y,float z, float E){ + m_eta_x=x; + m_phi_y=y; + m_z=z; + m_E=E; + } - float& eta() {return m_eta;}; - float& phi() {return m_phi;}; - float& E() {return m_E;}; + inline void reset(){ + m_eta_x=0.; + m_phi_y=0.; + m_z=0.; + m_E=0.; + } + + inline float& eta() {return m_eta_x;}; + inline float& phi() {return m_phi_y;}; + inline float& x() {return m_eta_x;}; + inline float& y() {return m_phi_y;}; + inline float& E() {return m_E;}; + inline float& z() {return m_z;} private: - float m_eta,m_phi,m_E; + float m_eta_x; // eta for barrel and end-cap, x for FCal + float m_phi_y; // phi for barrel and end-cap, y for FCal + float m_z; + float m_E; }; /// simulated one hit position with some energy. As last step in TFCSLateralShapeParametrizationHitChain::simulate, diff --git a/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/src/TFCSHitCellMappingFCal.cxx b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/src/TFCSHitCellMappingFCal.cxx new file mode 100644 index 0000000000000000000000000000000000000000..7f493482b30e213507d36a4309abf37033e3c3e3 --- /dev/null +++ b/Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimEvent/src/TFCSHitCellMappingFCal.cxx @@ -0,0 +1,24 @@ +/* + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration +*/ + +#include "ISF_FastCaloSimEvent/TFCSHitCellMappingFCal.h" +#include "ISF_FastCaloSimEvent/ICaloGeometry.h" +#include "ISF_FastCaloSimEvent/TFCSSimulationState.h" + +//============================================= +//======= TFCSHitCellMappingFCal ========= +//============================================= + + +void TFCSHitCellMappingFCal::simulate_hit(Hit& hit,TFCSSimulationState& simulstate,const TFCSTruthState* /*truth*/, const TFCSExtrapolationState* /*extrapol*/) +{ + int cs=calosample(); + const CaloDetDescrElement* cellele=m_geo->getFCalDDE(cs,hit.x(),hit.y(),hit.z()); + ATH_MSG_DEBUG("HIT: cellele="<<cellele<<" E="<<hit.E()<<" cs="<<cs<<" x="<<hit.x()<<" y="<<hit.y() << " z="<<hit.z()); + if(cellele) { + simulstate.deposit(cellele,hit.E()); + } else { + ATH_MSG_ERROR("TFCSLateralShapeParametrizationHitCellMapping::simulate_hit: cellele="<<cellele<<" E="<<hit.E()<<" cs="<<cs<<" eta="<<hit.eta()<<" phi="<<hit.phi()); + } +} diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/CMakeLists.txt b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/CMakeLists.txt index 0b991a0ad1520600dbeb13ee4321236e3df0e0f1..5d7fa6d075d7c48f38f5314fce37cf6a15ef1334 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/CMakeLists.txt +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/CMakeLists.txt @@ -7,22 +7,20 @@ atlas_subdir( ISF_FatrasServices ) # Declare the package's dependencies: atlas_depends_on_subdirs( PUBLIC + GaudiKernel + PRIVATE Control/AthenaBaseComps DetectorDescription/AtlasDetDescr - GaudiKernel + Simulation/ISF/ISF_Core/ISF_Event Simulation/ISF/ISF_Core/ISF_Interfaces - Tracking/TrkEvent/TrkTrack - PRIVATE - Control/StoreGate - Simulation/ISF/ISF_Core/ISF_Event ) + Tracking/TrkEvent/TrkTrack ) # Component(s) in the package: atlas_add_component( ISF_FatrasServices src/*.cxx src/components/*.cxx - LINK_LIBRARIES AthenaBaseComps AtlasDetDescr GaudiKernel ISF_Interfaces TrkTrack StoreGateLib SGtests ISF_Event ) + LINK_LIBRARIES AthenaBaseComps AtlasDetDescr GaudiKernel ISF_Interfaces TrkTrack ISF_Event ) # Install files from the package: -atlas_install_headers( ISF_FatrasServices ) atlas_install_python_modules( python/*.py ) diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.cxx index 85514beda5ce582213c422e8c8149316e752f69a..319a19550669baba5e7371531e5a7491e4d1f6a3 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.cxx @@ -1,16 +1,10 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration */ -/////////////////////////////////////////////////////////////////// -// TransportSimSvc.cxx, (c) ATLAS Detector software -/////////////////////////////////////////////////////////////////// - // class header include -#include "ISF_FatrasServices/FatrasSimSvc.h" +#include "FatrasSimSvc.h" -// StoreGate -#include "StoreGate/StoreGateSvc.h" // Remaining ISF include #include "ISF_Interfaces/IParticleBroker.h" #include "ISF_Interfaces/ITruthSvc.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/ISF_FatrasServices/FatrasSimSvc.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.h similarity index 88% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasServices/ISF_FatrasServices/FatrasSimSvc.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.h index d5b90aade602df82cc5034cafbd5e49c4fff9985..c53e33fe61f02c43554341f578b4fa99fd3ab014 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/ISF_FatrasServices/FatrasSimSvc.h +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/FatrasSimSvc.h @@ -1,11 +1,7 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration */ -/////////////////////////////////////////////////////////////////// -// FatrasSimSvc.h, (c) ATLAS Detector software -/////////////////////////////////////////////////////////////////// - #ifndef ISF_FATRASSIMSVC_H #define ISF_FATRASSIMSVC_H 1 diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/components/ISF_FatrasServices_entries.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/components/ISF_FatrasServices_entries.cxx index 7ccfb3c6d84b676b6d2b948e5f95989cb36e4206..b7fba9de56c774ad6259a8f2cbce818b967842bf 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/components/ISF_FatrasServices_entries.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasServices/src/components/ISF_FatrasServices_entries.cxx @@ -1,4 +1,4 @@ -#include "ISF_FatrasServices/FatrasSimSvc.h" +#include "../FatrasSimSvc.h" DECLARE_COMPONENT( iFatras::FatrasSimSvc ) diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/CMakeLists.txt b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/CMakeLists.txt index b415599308271e9090890db74bad3befaccac11a..99d0352b18117a9bf6362a7350f29d3c428d2a82 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/CMakeLists.txt +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/CMakeLists.txt @@ -7,31 +7,31 @@ atlas_subdir( ISF_FatrasTools ) # Declare the package's dependencies: atlas_depends_on_subdirs( PUBLIC + GaudiKernel + PRIVATE Control/AthenaBaseComps Control/AthenaKernel + Control/StoreGate + DetectorDescription/AtlasDetDescr DetectorDescription/GeoPrimitives Event/EventPrimitives - GaudiKernel - Simulation/Barcode/BarcodeInterfaces + Simulation/Barcode/BarcodeEvent + Simulation/FastSimulation/FastSimulationEvent Simulation/ISF/ISF_Core/ISF_Event Simulation/ISF/ISF_Core/ISF_Interfaces Simulation/ISF/ISF_Fatras/ISF_FatrasInterfaces + Tracking/TrkDetDescr/TrkDetDescrInterfaces Tracking/TrkDetDescr/TrkDetDescrUtils Tracking/TrkDetDescr/TrkGeometry - Tracking/TrkEvent/TrkEventPrimitives - Tracking/TrkEvent/TrkParameters - Tracking/TrkExtrapolation/TrkExInterfaces - Tracking/TrkExtrapolation/TrkExUtils - PRIVATE - Control/StoreGate - DetectorDescription/AtlasDetDescr - Simulation/FastSimulation/FastSimulationEvent - Tracking/TrkDetDescr/TrkDetDescrInterfaces Tracking/TrkDetDescr/TrkSurfaces Tracking/TrkDetDescr/TrkVolumes + Tracking/TrkEvent/TrkEventPrimitives Tracking/TrkEvent/TrkMaterialOnTrack Tracking/TrkEvent/TrkNeutralParameters - Tracking/TrkEvent/TrkTrack ) + Tracking/TrkEvent/TrkParameters + Tracking/TrkEvent/TrkTrack + Tracking/TrkExtrapolation/TrkExInterfaces + Tracking/TrkExtrapolation/TrkExUtils ) # External dependencies: find_package( CLHEP ) @@ -44,8 +44,3 @@ atlas_add_component( ISF_FatrasTools src/components/*.cxx INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS} LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel GeoPrimitives EventPrimitives GaudiKernel ISF_Event ISF_Interfaces ISF_FatrasInterfaces TrkDetDescrUtils TrkGeometry TrkEventPrimitives TrkParameters TrkExInterfaces TrkExUtils StoreGateLib SGtests AtlasDetDescr TrkDetDescrInterfaces TrkSurfaces TrkVolumes TrkMaterialOnTrack TrkNeutralParameters TrkTrack ) - -# Install files from the package: -atlas_install_headers( ISF_FatrasTools ) - - diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/EnergyLossSamplerBetheHeitler.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/EnergyLossSamplerBetheHeitler.cxx index 34f9d0ff55bca218bc5f17e5c8aeb43487338243..95393d247010b923d0bee1a812bc2b764b44b854 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/EnergyLossSamplerBetheHeitler.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/EnergyLossSamplerBetheHeitler.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header include -#include "ISF_FatrasTools/EnergyLossSamplerBetheHeitler.h" +#include "EnergyLossSamplerBetheHeitler.h" #include "TrkGeometry/MaterialProperties.h" #include "TrkMaterialOnTrack/EnergyLoss.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/EnergyLossSamplerBetheHeitler.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/EnergyLossSamplerBetheHeitler.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/EnergyLossSamplerBetheHeitler.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/EnergyLossSamplerBetheHeitler.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/HadIntProcessorParametric.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/HadIntProcessorParametric.cxx index 97aa171bf8fa2c777c2af853713f6bf2a46ec2a9..5231ca399fbb62e6d821243fb77e9576f9168d76 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/HadIntProcessorParametric.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/HadIntProcessorParametric.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/HadIntProcessorParametric.h" +#include "HadIntProcessorParametric.h" // Gaudi Kernel #include "GaudiKernel/IRndmGenSvc.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/HadIntProcessorParametric.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/HadIntProcessorParametric.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/HadIntProcessorParametric.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/HadIntProcessorParametric.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McEnergyLossUpdator.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McEnergyLossUpdator.cxx index 85719ae4611e85edb3860efa95dff284c5104eb6..14d76d2aa560e01b69de51293ff6a871f603cc11 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McEnergyLossUpdator.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McEnergyLossUpdator.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/McEnergyLossUpdator.h" +#include "McEnergyLossUpdator.h" // Trk #include "TrkGeometry/MaterialProperties.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McEnergyLossUpdator.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McEnergyLossUpdator.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McEnergyLossUpdator.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McEnergyLossUpdator.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.cxx index e3a57797efd254d7023be2d9b6b3368ae4ea7fa8..741e382213e26ef79f4bbaa3510b8bdaba85ee88 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/McMaterialEffectsEngine.h" +#include "McMaterialEffectsEngine.h" // Gaudi Kernel #include "GaudiKernel/DataSvc.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McMaterialEffectsEngine.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McMaterialEffectsEngine.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McMaterialEffectsEngine.icc b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.icc similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McMaterialEffectsEngine.icc rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsEngine.icc diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsUpdator.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsUpdator.cxx index 4297514fde3060937061969c4da12e9d1dc37eb7..3216f49aa9e2121be456fa3829ea08b91a21cd01 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsUpdator.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsUpdator.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/McMaterialEffectsUpdator.h" +#include "McMaterialEffectsUpdator.h" // Gaudi Kernel #include "GaudiKernel/IRndmGenSvc.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McMaterialEffectsUpdator.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsUpdator.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/McMaterialEffectsUpdator.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/McMaterialEffectsUpdator.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGaussianMixture.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGaussianMixture.cxx index 4e1179dc45308117f50f46993399017036a6d36e..7603844b25baa1ef9a1b5c92ee3640faad79536b 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGaussianMixture.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGaussianMixture.cxx @@ -9,7 +9,7 @@ // Trk include #include "TrkGeometry/MaterialProperties.h" -#include "ISF_FatrasTools/MultipleScatteringSamplerGaussianMixture.h" +#include "MultipleScatteringSamplerGaussianMixture.h" #include "CLHEP/Random/RandGaussZiggurat.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/MultipleScatteringSamplerGaussianMixture.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGaussianMixture.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/MultipleScatteringSamplerGaussianMixture.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGaussianMixture.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGeneralMixture.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGeneralMixture.cxx index ea1e844267fbcad7cf836c477ed35b45c2c244ad..e0370add52c0570026f9f7fbf47cc09c83822d4c 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGeneralMixture.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGeneralMixture.cxx @@ -9,7 +9,7 @@ // Trk include #include "TrkGeometry/MaterialProperties.h" -#include "ISF_FatrasTools/MultipleScatteringSamplerGeneralMixture.h" +#include "MultipleScatteringSamplerGeneralMixture.h" #include "CLHEP/Random/RandGaussZiggurat.h" // static particle masses diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/MultipleScatteringSamplerGeneralMixture.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGeneralMixture.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/MultipleScatteringSamplerGeneralMixture.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerGeneralMixture.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerHighland.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerHighland.cxx index be924a5c4a5f011835714ab7ffddaf55b219bdd4..4ba5f6613dde5f61eafce441ecfa876ac469e14d 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerHighland.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerHighland.cxx @@ -10,7 +10,7 @@ #include "TrkGeometry/MaterialProperties.h" #include "TrkExUtils/MaterialInteraction.h" -#include "ISF_FatrasTools/MultipleScatteringSamplerHighland.h" +#include "MultipleScatteringSamplerHighland.h" #include "CLHEP/Random/RandGaussZiggurat.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/MultipleScatteringSamplerHighland.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerHighland.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/MultipleScatteringSamplerHighland.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/MultipleScatteringSamplerHighland.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhotonConversionTool.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhotonConversionTool.cxx index 0556e87b46ac46fb8f39710d8baf04210d138c62..68978e0f7eb48fd0d13b30b503faed1d2ea69bd5 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhotonConversionTool.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhotonConversionTool.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/PhotonConversionTool.h" +#include "PhotonConversionTool.h" // Gaudi Kernel #include "GaudiKernel/RndmGenerators.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/PhotonConversionTool.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhotonConversionTool.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/PhotonConversionTool.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhotonConversionTool.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhysicsValidationTool.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhysicsValidationTool.cxx index 68155a453ef17d890849781110f019dfa16f5ed6..18ffc3801b18d0497fb26aabfc967a55a7d399a0 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhysicsValidationTool.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhysicsValidationTool.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/PhysicsValidationTool.h" +#include "PhysicsValidationTool.h" // Tracking #include "TrkParameters/TrackParameters.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/PhysicsValidationTool.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhysicsValidationTool.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/PhysicsValidationTool.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/PhysicsValidationTool.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/ProcessSamplingTool.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/ProcessSamplingTool.cxx index 0670b68872d0d1c464ec9b5bb01d650242aed7e5..c26dc4bb3749461d3ea76e4cdd7aca7b72b35c9b 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/ProcessSamplingTool.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/ProcessSamplingTool.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/ProcessSamplingTool.h" +#include "ProcessSamplingTool.h" // Tracking #include "TrkParameters/TrackParameters.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/ProcessSamplingTool.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/ProcessSamplingTool.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/ProcessSamplingTool.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/ProcessSamplingTool.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportEngine.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportEngine.cxx index 15d3c9cf1791dffe5bc248944d43f767b7e68cde..4cf9e151bff1f8cd2128613e4874744d77ea5988 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportEngine.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportEngine.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/TransportEngine.h" +#include "TransportEngine.h" // Tracking #include "TrkTrack/Track.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/TransportEngine.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportEngine.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/TransportEngine.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportEngine.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportTool.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportTool.cxx index 1202f66962ecaaf8e5202e4cb5e4ec9e5bbc6f48..fcfdeeaf37af66d75bcedfcac76940ccc71b0368 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportTool.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportTool.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasTools/TransportTool.h" +#include "TransportTool.h" // Tracking #include "TrkTrack/Track.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/TransportTool.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportTool.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasTools/ISF_FatrasTools/TransportTool.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/TransportTool.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/components/ISF_FatrasTools_entries.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/components/ISF_FatrasTools_entries.cxx index f0e4cc717256c0f5025122b018679f852657ead1..66844392052c6a84e7a69fb85000e5d7d54dc769 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/components/ISF_FatrasTools_entries.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasTools/src/components/ISF_FatrasTools_entries.cxx @@ -1,17 +1,17 @@ -#include "ISF_FatrasTools/TransportTool.h" -#include "ISF_FatrasTools/TransportEngine.h" -#include "ISF_FatrasTools/McMaterialEffectsUpdator.h" -#include "ISF_FatrasTools/McMaterialEffectsEngine.h" -#include "ISF_FatrasTools/HadIntProcessorParametric.h" -#include "ISF_FatrasTools/McEnergyLossUpdator.h" -#include "ISF_FatrasTools/EnergyLossSamplerBetheHeitler.h" -#include "ISF_FatrasTools/PhotonConversionTool.h" -#include "ISF_FatrasTools/ProcessSamplingTool.h" -#include "ISF_FatrasTools/PhysicsValidationTool.h" +#include "../TransportTool.h" +#include "../TransportEngine.h" +#include "../McMaterialEffectsUpdator.h" +#include "../McMaterialEffectsEngine.h" +#include "../HadIntProcessorParametric.h" +#include "../McEnergyLossUpdator.h" +#include "../EnergyLossSamplerBetheHeitler.h" +#include "../PhotonConversionTool.h" +#include "../ProcessSamplingTool.h" +#include "../PhysicsValidationTool.h" -#include "ISF_FatrasTools/MultipleScatteringSamplerHighland.h" -#include "ISF_FatrasTools/MultipleScatteringSamplerGaussianMixture.h" -#include "ISF_FatrasTools/MultipleScatteringSamplerGeneralMixture.h" +#include "../MultipleScatteringSamplerHighland.h" +#include "../MultipleScatteringSamplerGaussianMixture.h" +#include "../MultipleScatteringSamplerGeneralMixture.h" DECLARE_COMPONENT( iFatras::TransportTool ) DECLARE_COMPONENT( iFatras::TransportEngine ) diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/CMakeLists.txt b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/CMakeLists.txt index 5cf3a65ff979e1855261836adda5bf3e3a2131d8..8fc1f042a414fd4bdfe548997bbc525c0bd1056a 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/CMakeLists.txt +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/CMakeLists.txt @@ -7,19 +7,15 @@ atlas_subdir( ISF_FatrasToolsID ) # Declare the package's dependencies: atlas_depends_on_subdirs( PUBLIC + GaudiKernel + PRIVATE Control/AthenaBaseComps Control/AthenaKernel Control/AthContainers - DetectorDescription/Identifier - GaudiKernel - InnerDetector/InDetSimEvent - Simulation/ISF/ISF_Fatras/ISF_FatrasInterfaces - Tracking/TrkEvent/TrkParameters - Tracking/TrkExtrapolation/TrkExInterfaces - PRIVATE Control/StoreGate DetectorDescription/AtlasDetDescr DetectorDescription/IdDictDetDescr + DetectorDescription/Identifier InnerDetector/InDetConditions/InDetConditionsSummaryService InnerDetector/InDetConditions/TRT_ConditionsServices InnerDetector/InDetDetDescr/InDetIdentifier @@ -27,15 +23,19 @@ atlas_depends_on_subdirs( PUBLIC InnerDetector/InDetRecEvent/InDetPrepRawData InnerDetector/InDetRecEvent/InDetRIO_OnTrack InnerDetector/InDetRecTools/SiClusterizationTool + InnerDetector/InDetSimEvent Simulation/ISF/ISF_Core/ISF_Event Simulation/ISF/ISF_Core/ISF_Interfaces Simulation/ISF/ISF_Fatras/ISF_FatrasDetDescrModel + Simulation/ISF/ISF_Fatras/ISF_FatrasInterfaces Tracking/TrkDetDescr/TrkDetElementBase Tracking/TrkDetDescr/TrkSurfaces Tracking/TrkEvent/TrkEventPrimitives Tracking/TrkEvent/TrkMeasurementBase + Tracking/TrkEvent/TrkParameters Tracking/TrkEvent/TrkRIO_OnTrack Tracking/TrkEvent/TrkTrack + Tracking/TrkExtrapolation/TrkExInterfaces Tracking/TrkExtrapolation/TrkExUtils Tracking/TrkTools/TrkToolInterfaces ) @@ -50,6 +50,3 @@ atlas_add_component( ISF_FatrasToolsID INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} AthenaBaseComps AthenaKernel AthContainers Identifier GaudiKernel InDetSimEvent ISF_FatrasInterfaces TrkParameters TrkExInterfaces StoreGateLib SGtests AtlasDetDescr IdDictDetDescr TRT_ConditionsServicesLib InDetIdentifier InDetReadoutGeometry InDetPrepRawData InDetRIO_OnTrack SiClusterizationToolLib ISF_Event ISF_Interfaces ISF_FatrasDetDescrModel TrkDetElementBase TrkSurfaces TrkEventPrimitives TrkMeasurementBase TrkRIO_OnTrack TrkTrack TrkExUtils TrkToolInterfaces ) -# Install files from the package: -atlas_install_headers( ISF_FatrasToolsID ) - diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorSilicon.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorSilicon.cxx index 21e814fe76161da208c822b522ef40dfcec9ffa2..60a60761571a4332a982bf8955f4dcffe2953198 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorSilicon.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorSilicon.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasToolsID/HitCreatorSilicon.h" +#include "HitCreatorSilicon.h" // ISF #include "ISF_Event/ISFParticle.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/ISF_FatrasToolsID/HitCreatorSilicon.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorSilicon.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/ISF_FatrasToolsID/HitCreatorSilicon.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorSilicon.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorTRT.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorTRT.cxx index 4d3a050b5753cc477f3b6d69055866a256607503..4eff6c174dfae2862fa60e7c64518a44d6708c99 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorTRT.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorTRT.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasToolsID/HitCreatorTRT.h" +#include "HitCreatorTRT.h" // Framework #include "GaudiKernel/ISvcLocator.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/ISF_FatrasToolsID/HitCreatorTRT.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorTRT.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/ISF_FatrasToolsID/HitCreatorTRT.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/HitCreatorTRT.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/SimHitCreatorID.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/SimHitCreatorID.cxx index ec73b4705620dec6621e8f4e91825f27a627f8cd..a3ce49f010e00332aeb7b4e9f2f523fe6a03fd95 100755 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/SimHitCreatorID.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/SimHitCreatorID.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasToolsID/SimHitCreatorID.h" +#include "SimHitCreatorID.h" // iFatras && ISF #include "ISF_FatrasInterfaces/IHitCreator.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/ISF_FatrasToolsID/SimHitCreatorID.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/SimHitCreatorID.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/ISF_FatrasToolsID/SimHitCreatorID.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/SimHitCreatorID.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/components/ISF_FatrasToolsID_entries.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/components/ISF_FatrasToolsID_entries.cxx index 5f87ab8c189a50816c41249fdcfd59a5e3bdcaff..f9f71afc802fc9fdc30152a4ff1d3db37ea81fa4 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/components/ISF_FatrasToolsID_entries.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsID/src/components/ISF_FatrasToolsID_entries.cxx @@ -1,6 +1,6 @@ -#include "ISF_FatrasToolsID/SimHitCreatorID.h" -#include "ISF_FatrasToolsID/HitCreatorSilicon.h" -#include "ISF_FatrasToolsID/HitCreatorTRT.h" +#include "../SimHitCreatorID.h" +#include "../HitCreatorSilicon.h" +#include "../HitCreatorTRT.h" DECLARE_COMPONENT( iFatras::SimHitCreatorID ) DECLARE_COMPONENT( iFatras::HitCreatorSilicon ) diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/CMakeLists.txt b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/CMakeLists.txt index 4813143033f1c074eec4818be2c2e26c8bb1fea9..aff51d5f82ef7dcf4cb9adc5079c2b76be16985b 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/CMakeLists.txt +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/CMakeLists.txt @@ -7,21 +7,21 @@ atlas_subdir( ISF_FatrasToolsMS ) # Declare the package's dependencies: atlas_depends_on_subdirs( PUBLIC + GaudiKernel + PRIVATE Control/AthenaBaseComps Control/AthenaKernel DetectorDescription/Identifier - GaudiKernel - MuonSpectrometer/MuonSimEvent - Simulation/ISF/ISF_Fatras/ISF_FatrasInterfaces - Tracking/TrkEvent/TrkParameters - Tracking/TrkExtrapolation/TrkExInterfaces - PRIVATE MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry MuonSpectrometer/MuonIdHelpers MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools + MuonSpectrometer/MuonSimEvent Simulation/ISF/ISF_Core/ISF_Event Simulation/ISF/ISF_Core/ISF_Interfaces - Tracking/TrkEvent/TrkTrack ) + Simulation/ISF/ISF_Fatras/ISF_FatrasInterfaces + Tracking/TrkEvent/TrkParameters + Tracking/TrkEvent/TrkTrack + Tracking/TrkExtrapolation/TrkExInterfaces ) # External dependencies: find_package( CLHEP ) @@ -33,6 +33,3 @@ atlas_add_component( ISF_FatrasToolsMS INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS} LINK_LIBRARIES ${CLHEP_LIBRARIES} AthenaBaseComps AthenaKernel Identifier GaudiKernel MuonSimEvent ISF_FatrasInterfaces TrkParameters TrkExInterfaces MuonReadoutGeometry MuonIdHelpersLib ISF_Event ISF_Interfaces TrkTrack ) -# Install files from the package: -atlas_install_headers( ISF_FatrasToolsMS ) - diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/SimHitCreatorMS.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/SimHitCreatorMS.cxx index e4243da59403b599c736e1c460650ea5a1763a48..ebaf8b73d09492ae04ebdf8781b23758f38881a3 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/SimHitCreatorMS.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/SimHitCreatorMS.cxx @@ -7,7 +7,7 @@ /////////////////////////////////////////////////////////////////// // class header -#include "ISF_FatrasToolsMS/SimHitCreatorMS.h" +#include "SimHitCreatorMS.h" // ISF includes #include "ISF_Event/ISFParticle.h" diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/ISF_FatrasToolsMS/SimHitCreatorMS.h b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/SimHitCreatorMS.h similarity index 100% rename from Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/ISF_FatrasToolsMS/SimHitCreatorMS.h rename to Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/SimHitCreatorMS.h diff --git a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/components/FatrasToolsMS_entries.cxx b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/components/FatrasToolsMS_entries.cxx index bced6b2e84dcff8b2880145bb85d9508820f0bb1..825c110624358bf31840cd03d70301269f3482ad 100644 --- a/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/components/FatrasToolsMS_entries.cxx +++ b/Simulation/ISF/ISF_Fatras/ISF_FatrasToolsMS/src/components/FatrasToolsMS_entries.cxx @@ -1,4 +1,4 @@ -#include "ISF_FatrasToolsMS/SimHitCreatorMS.h" +#include "../SimHitCreatorMS.h" DECLARE_COMPONENT( iFatras::SimHitCreatorMS ) diff --git a/Simulation/RunDependentSim/RunDependentSimData/share/configLumi_run310000.py b/Simulation/RunDependentSim/RunDependentSimData/share/configLumi_run310000.py new file mode 100644 index 0000000000000000000000000000000000000000..6ef4ed7b55e96f42b38eab14ecb9ee0e83fb6e69 --- /dev/null +++ b/Simulation/RunDependentSim/RunDependentSimData/share/configLumi_run310000.py @@ -0,0 +1,124 @@ +#################### +## File configLumi_run310000.py: autogenerated configuration file from command +##../athena/Simulation/RunDependentSim/RunDependentSimComps/share/RunDepProfileGenerator.py -r 310000 -s 1550000000 -c 2000 -o configLumi_run310000.py -e {0.5:1,1.5:1,2.5:1,3.5:1,4.5:1,5.5:1,6.5:1,7.5:1,8.5:1,9.5:1,10.5:1,11.5:2,12.5:2,13.5:4,14.5:6,15.5:8,16.5:12,17.5:15,18.5:20,19.5:24,20.5:29,21.5:34,22.5:38,23.5:41,24.5:45,25.5:47,26.5:49,27.5:51,28.5:53,29.5:55,30.5:56,31.5:57,32.5:58,33.5:59,34.5:60,35.5:60,36.5:60,37.5:60,38.5:61,39.5:61,40.5:61,41.5:61,42.5:60,43.5:59,44.5:57,45.5:55,46.5:53,47.5:50,48.5:47,49.5:43,50.5:40,51.5:36,52.5:32,53.5:29,54.5:25,55.5:22,56.5:18,57.5:16,58.5:13,59.5:11,60.5:9,61.5:7,62.5:6,63.5:5,64.5:4,65.5:3,66.5:3,67.5:2,68.5:2,69.5:2,70.5:2,71.5:1,72.5:1,73.5:1,74.5:1,75.5:1,76.5:1,77.5:1,78.5:1,79.5:1,80.5:1,81.5:1,82.5:1,83.5:1,84.5:1,85.5:1,86.5:1,87.5:1,88.5:1,89.5:1,90.5:1,91.5:1,92.5:1,93.5:1,94.5:1,95.5:1,96.5:1,97.5:1,98.5:1,99.5:1} +## Created on Thu Jul 12 17:10:50 2018 +#################### +#Run-dependent digi job configuration file. +#RunDependentSimData/OverrideRunLBLumiDigitConfig.py + +#We need to be able to adjust for different dataset sizes. +if not 'ScaleTaskLength' in dir(): ScaleTaskLength = 1 +_evts = lambda x: int(ScaleTaskLength * x) + +if not 'logging' in dir(): import logging +digilog = logging.getLogger('Digi_trf') +digilog.info('doing RunLumiOverride configuration from file.') +JobMaker=[ + {'run':310000, 'lb':1, 'starttstamp':1550000000, 'dt':0.000, 'evts':_evts(1), 'mu':0.500, 'force_new':False}, + {'run':310000, 'lb':2, 'starttstamp':1550000060, 'dt':0.000, 'evts':_evts(1), 'mu':1.500, 'force_new':False}, + {'run':310000, 'lb':3, 'starttstamp':1550000120, 'dt':0.000, 'evts':_evts(1), 'mu':2.500, 'force_new':False}, + {'run':310000, 'lb':4, 'starttstamp':1550000180, 'dt':0.000, 'evts':_evts(1), 'mu':3.500, 'force_new':False}, + {'run':310000, 'lb':5, 'starttstamp':1550000240, 'dt':0.000, 'evts':_evts(1), 'mu':4.500, 'force_new':False}, + {'run':310000, 'lb':6, 'starttstamp':1550000300, 'dt':0.000, 'evts':_evts(1), 'mu':5.500, 'force_new':False}, + {'run':310000, 'lb':7, 'starttstamp':1550000360, 'dt':0.000, 'evts':_evts(1), 'mu':6.500, 'force_new':False}, + {'run':310000, 'lb':8, 'starttstamp':1550000420, 'dt':0.000, 'evts':_evts(1), 'mu':7.500, 'force_new':False}, + {'run':310000, 'lb':9, 'starttstamp':1550000480, 'dt':0.000, 'evts':_evts(1), 'mu':8.500, 'force_new':False}, + {'run':310000, 'lb':10, 'starttstamp':1550000540, 'dt':0.000, 'evts':_evts(1), 'mu':9.500, 'force_new':False}, + {'run':310000, 'lb':11, 'starttstamp':1550000600, 'dt':0.000, 'evts':_evts(1), 'mu':10.500, 'force_new':False}, + {'run':310000, 'lb':12, 'starttstamp':1550000660, 'dt':0.000, 'evts':_evts(2), 'mu':11.500, 'force_new':False}, + {'run':310000, 'lb':13, 'starttstamp':1550000720, 'dt':0.000, 'evts':_evts(2), 'mu':12.500, 'force_new':False}, + {'run':310000, 'lb':14, 'starttstamp':1550000780, 'dt':0.000, 'evts':_evts(4), 'mu':13.500, 'force_new':False}, + {'run':310000, 'lb':15, 'starttstamp':1550000840, 'dt':0.000, 'evts':_evts(6), 'mu':14.500, 'force_new':False}, + {'run':310000, 'lb':16, 'starttstamp':1550000900, 'dt':0.000, 'evts':_evts(8), 'mu':15.500, 'force_new':False}, + {'run':310000, 'lb':17, 'starttstamp':1550000960, 'dt':0.000, 'evts':_evts(12), 'mu':16.500, 'force_new':False}, + {'run':310000, 'lb':18, 'starttstamp':1550001020, 'dt':0.000, 'evts':_evts(15), 'mu':17.500, 'force_new':False}, + {'run':310000, 'lb':19, 'starttstamp':1550001080, 'dt':0.000, 'evts':_evts(20), 'mu':18.500, 'force_new':False}, + {'run':310000, 'lb':20, 'starttstamp':1550001140, 'dt':0.000, 'evts':_evts(24), 'mu':19.500, 'force_new':False}, + {'run':310000, 'lb':21, 'starttstamp':1550001200, 'dt':0.000, 'evts':_evts(29), 'mu':20.500, 'force_new':False}, + {'run':310000, 'lb':22, 'starttstamp':1550001260, 'dt':0.000, 'evts':_evts(34), 'mu':21.500, 'force_new':False}, + {'run':310000, 'lb':23, 'starttstamp':1550001320, 'dt':0.000, 'evts':_evts(38), 'mu':22.500, 'force_new':False}, + {'run':310000, 'lb':24, 'starttstamp':1550001380, 'dt':0.000, 'evts':_evts(41), 'mu':23.500, 'force_new':False}, + {'run':310000, 'lb':25, 'starttstamp':1550001440, 'dt':0.000, 'evts':_evts(45), 'mu':24.500, 'force_new':False}, + {'run':310000, 'lb':26, 'starttstamp':1550001500, 'dt':0.000, 'evts':_evts(47), 'mu':25.500, 'force_new':False}, + {'run':310000, 'lb':27, 'starttstamp':1550001560, 'dt':0.000, 'evts':_evts(49), 'mu':26.500, 'force_new':False}, + {'run':310000, 'lb':28, 'starttstamp':1550001620, 'dt':0.000, 'evts':_evts(51), 'mu':27.500, 'force_new':False}, + {'run':310000, 'lb':29, 'starttstamp':1550001680, 'dt':0.000, 'evts':_evts(53), 'mu':28.500, 'force_new':False}, + {'run':310000, 'lb':30, 'starttstamp':1550001740, 'dt':0.000, 'evts':_evts(55), 'mu':29.500, 'force_new':False}, + {'run':310000, 'lb':31, 'starttstamp':1550001800, 'dt':0.000, 'evts':_evts(56), 'mu':30.500, 'force_new':False}, + {'run':310000, 'lb':32, 'starttstamp':1550001860, 'dt':0.000, 'evts':_evts(57), 'mu':31.500, 'force_new':False}, + {'run':310000, 'lb':33, 'starttstamp':1550001920, 'dt':0.000, 'evts':_evts(58), 'mu':32.500, 'force_new':False}, + {'run':310000, 'lb':34, 'starttstamp':1550001980, 'dt':0.000, 'evts':_evts(59), 'mu':33.500, 'force_new':False}, + {'run':310000, 'lb':35, 'starttstamp':1550002040, 'dt':0.000, 'evts':_evts(60), 'mu':34.500, 'force_new':False}, + {'run':310000, 'lb':36, 'starttstamp':1550002100, 'dt':0.000, 'evts':_evts(60), 'mu':35.500, 'force_new':False}, + {'run':310000, 'lb':37, 'starttstamp':1550002160, 'dt':0.000, 'evts':_evts(60), 'mu':36.500, 'force_new':False}, + {'run':310000, 'lb':38, 'starttstamp':1550002220, 'dt':0.000, 'evts':_evts(60), 'mu':37.500, 'force_new':False}, + {'run':310000, 'lb':39, 'starttstamp':1550002280, 'dt':0.000, 'evts':_evts(61), 'mu':38.500, 'force_new':False}, + {'run':310000, 'lb':40, 'starttstamp':1550002340, 'dt':0.000, 'evts':_evts(61), 'mu':39.500, 'force_new':False}, + {'run':310000, 'lb':41, 'starttstamp':1550002400, 'dt':0.000, 'evts':_evts(61), 'mu':40.500, 'force_new':False}, + {'run':310000, 'lb':42, 'starttstamp':1550002460, 'dt':0.000, 'evts':_evts(61), 'mu':41.500, 'force_new':False}, + {'run':310000, 'lb':43, 'starttstamp':1550002520, 'dt':0.000, 'evts':_evts(60), 'mu':42.500, 'force_new':False}, + {'run':310000, 'lb':44, 'starttstamp':1550002580, 'dt':0.000, 'evts':_evts(59), 'mu':43.500, 'force_new':False}, + {'run':310000, 'lb':45, 'starttstamp':1550002640, 'dt':0.000, 'evts':_evts(57), 'mu':44.500, 'force_new':False}, + {'run':310000, 'lb':46, 'starttstamp':1550002700, 'dt':0.000, 'evts':_evts(55), 'mu':45.500, 'force_new':False}, + {'run':310000, 'lb':47, 'starttstamp':1550002760, 'dt':0.000, 'evts':_evts(53), 'mu':46.500, 'force_new':False}, + {'run':310000, 'lb':48, 'starttstamp':1550002820, 'dt':0.000, 'evts':_evts(50), 'mu':47.500, 'force_new':False}, + {'run':310000, 'lb':49, 'starttstamp':1550002880, 'dt':0.000, 'evts':_evts(47), 'mu':48.500, 'force_new':False}, + {'run':310000, 'lb':50, 'starttstamp':1550002940, 'dt':0.000, 'evts':_evts(43), 'mu':49.500, 'force_new':False}, + {'run':310000, 'lb':51, 'starttstamp':1550003000, 'dt':0.000, 'evts':_evts(40), 'mu':50.500, 'force_new':False}, + {'run':310000, 'lb':52, 'starttstamp':1550003060, 'dt':0.000, 'evts':_evts(36), 'mu':51.500, 'force_new':False}, + {'run':310000, 'lb':53, 'starttstamp':1550003120, 'dt':0.000, 'evts':_evts(32), 'mu':52.500, 'force_new':False}, + {'run':310000, 'lb':54, 'starttstamp':1550003180, 'dt':0.000, 'evts':_evts(29), 'mu':53.500, 'force_new':False}, + {'run':310000, 'lb':55, 'starttstamp':1550003240, 'dt':0.000, 'evts':_evts(25), 'mu':54.500, 'force_new':False}, + {'run':310000, 'lb':56, 'starttstamp':1550003300, 'dt':0.000, 'evts':_evts(22), 'mu':55.500, 'force_new':False}, + {'run':310000, 'lb':57, 'starttstamp':1550003360, 'dt':0.000, 'evts':_evts(18), 'mu':56.500, 'force_new':False}, + {'run':310000, 'lb':58, 'starttstamp':1550003420, 'dt':0.000, 'evts':_evts(16), 'mu':57.500, 'force_new':False}, + {'run':310000, 'lb':59, 'starttstamp':1550003480, 'dt':0.000, 'evts':_evts(13), 'mu':58.500, 'force_new':False}, + {'run':310000, 'lb':60, 'starttstamp':1550003540, 'dt':0.000, 'evts':_evts(11), 'mu':59.500, 'force_new':False}, + {'run':310000, 'lb':61, 'starttstamp':1550003600, 'dt':0.000, 'evts':_evts(9), 'mu':60.500, 'force_new':False}, + {'run':310000, 'lb':62, 'starttstamp':1550003660, 'dt':0.000, 'evts':_evts(7), 'mu':61.500, 'force_new':False}, + {'run':310000, 'lb':63, 'starttstamp':1550003720, 'dt':0.000, 'evts':_evts(6), 'mu':62.500, 'force_new':False}, + {'run':310000, 'lb':64, 'starttstamp':1550003780, 'dt':0.000, 'evts':_evts(5), 'mu':63.500, 'force_new':False}, + {'run':310000, 'lb':65, 'starttstamp':1550003840, 'dt':0.000, 'evts':_evts(4), 'mu':64.500, 'force_new':False}, + {'run':310000, 'lb':66, 'starttstamp':1550003900, 'dt':0.000, 'evts':_evts(3), 'mu':65.500, 'force_new':False}, + {'run':310000, 'lb':67, 'starttstamp':1550003960, 'dt':0.000, 'evts':_evts(3), 'mu':66.500, 'force_new':False}, + {'run':310000, 'lb':68, 'starttstamp':1550004020, 'dt':0.000, 'evts':_evts(2), 'mu':67.500, 'force_new':False}, + {'run':310000, 'lb':69, 'starttstamp':1550004080, 'dt':0.000, 'evts':_evts(2), 'mu':68.500, 'force_new':False}, + {'run':310000, 'lb':70, 'starttstamp':1550004140, 'dt':0.000, 'evts':_evts(2), 'mu':69.500, 'force_new':False}, + {'run':310000, 'lb':71, 'starttstamp':1550004200, 'dt':0.000, 'evts':_evts(2), 'mu':70.500, 'force_new':False}, + {'run':310000, 'lb':72, 'starttstamp':1550004260, 'dt':0.000, 'evts':_evts(1), 'mu':71.500, 'force_new':False}, + {'run':310000, 'lb':73, 'starttstamp':1550004320, 'dt':0.000, 'evts':_evts(1), 'mu':72.500, 'force_new':False}, + {'run':310000, 'lb':74, 'starttstamp':1550004380, 'dt':0.000, 'evts':_evts(1), 'mu':73.500, 'force_new':False}, + {'run':310000, 'lb':75, 'starttstamp':1550004440, 'dt':0.000, 'evts':_evts(1), 'mu':74.500, 'force_new':False}, + {'run':310000, 'lb':76, 'starttstamp':1550004500, 'dt':0.000, 'evts':_evts(1), 'mu':75.500, 'force_new':False}, + {'run':310000, 'lb':77, 'starttstamp':1550004560, 'dt':0.000, 'evts':_evts(1), 'mu':76.500, 'force_new':False}, + {'run':310000, 'lb':78, 'starttstamp':1550004620, 'dt':0.000, 'evts':_evts(1), 'mu':77.500, 'force_new':False}, + {'run':310000, 'lb':79, 'starttstamp':1550004680, 'dt':0.000, 'evts':_evts(1), 'mu':78.500, 'force_new':False}, + {'run':310000, 'lb':80, 'starttstamp':1550004740, 'dt':0.000, 'evts':_evts(1), 'mu':79.500, 'force_new':False}, + {'run':310000, 'lb':81, 'starttstamp':1550004800, 'dt':0.000, 'evts':_evts(1), 'mu':80.500, 'force_new':False}, + {'run':310000, 'lb':82, 'starttstamp':1550004860, 'dt':0.000, 'evts':_evts(1), 'mu':81.500, 'force_new':False}, + {'run':310000, 'lb':83, 'starttstamp':1550004920, 'dt':0.000, 'evts':_evts(1), 'mu':82.500, 'force_new':False}, + {'run':310000, 'lb':84, 'starttstamp':1550004980, 'dt':0.000, 'evts':_evts(1), 'mu':83.500, 'force_new':False}, + {'run':310000, 'lb':85, 'starttstamp':1550005040, 'dt':0.000, 'evts':_evts(1), 'mu':84.500, 'force_new':False}, + {'run':310000, 'lb':86, 'starttstamp':1550005100, 'dt':0.000, 'evts':_evts(1), 'mu':85.500, 'force_new':False}, + {'run':310000, 'lb':87, 'starttstamp':1550005160, 'dt':0.000, 'evts':_evts(1), 'mu':86.500, 'force_new':False}, + {'run':310000, 'lb':88, 'starttstamp':1550005220, 'dt':0.000, 'evts':_evts(1), 'mu':87.500, 'force_new':False}, + {'run':310000, 'lb':89, 'starttstamp':1550005280, 'dt':0.000, 'evts':_evts(1), 'mu':88.500, 'force_new':False}, + {'run':310000, 'lb':90, 'starttstamp':1550005340, 'dt':0.000, 'evts':_evts(1), 'mu':89.500, 'force_new':False}, + {'run':310000, 'lb':91, 'starttstamp':1550005400, 'dt':0.000, 'evts':_evts(1), 'mu':90.500, 'force_new':False}, + {'run':310000, 'lb':92, 'starttstamp':1550005460, 'dt':0.000, 'evts':_evts(1), 'mu':91.500, 'force_new':False}, + {'run':310000, 'lb':93, 'starttstamp':1550005520, 'dt':0.000, 'evts':_evts(1), 'mu':92.500, 'force_new':False}, + {'run':310000, 'lb':94, 'starttstamp':1550005580, 'dt':0.000, 'evts':_evts(1), 'mu':93.500, 'force_new':False}, + {'run':310000, 'lb':95, 'starttstamp':1550005640, 'dt':0.000, 'evts':_evts(1), 'mu':94.500, 'force_new':False}, + {'run':310000, 'lb':96, 'starttstamp':1550005700, 'dt':0.000, 'evts':_evts(1), 'mu':95.500, 'force_new':False}, + {'run':310000, 'lb':97, 'starttstamp':1550005760, 'dt':0.000, 'evts':_evts(1), 'mu':96.500, 'force_new':False}, + {'run':310000, 'lb':98, 'starttstamp':1550005820, 'dt':0.000, 'evts':_evts(1), 'mu':97.500, 'force_new':False}, + {'run':310000, 'lb':99, 'starttstamp':1550005880, 'dt':0.000, 'evts':_evts(1), 'mu':98.500, 'force_new':False}, + {'run':310000, 'lb':100, 'starttstamp':1550005940, 'dt':0.000, 'evts':_evts(1), 'mu':99.500, 'force_new':False}, +#--> end hiding +] + +include('RunDependentSimData/configCommon.py') + +#cleanup python memory +if not "RunDMC_testing_configuration" in dir(): + del JobMaker diff --git a/TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.cxx b/TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.cxx old mode 100755 new mode 100644 index 9442df20423cdd21b1a2a4095c1616e988637ed1..32f0013dbdd2cd89cff0f76e6bf1bd6950ed4764 --- a/TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.cxx +++ b/TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.cxx @@ -2,10 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_BeamInstrumentation.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" +#include "CBNTAA_BeamInstrumentation.h" #include "TBEvent/TBScintillatorCont.h" #include "TBEvent/TBBPCCont.h" @@ -75,10 +72,6 @@ StatusCode CBNTAA_BeamInstrumentation::CBNT_initialize() { ATH_MSG_DEBUG ( "in initialize()" ); - IToolSvc* toolSvc = nullptr; - ATH_CHECK( service( "ToolSvc",toolSvc ) ); - - const unsigned nScint=m_scint_names.size(); addBranch("Beam_sNames",m_scint_ntnames); for (unsigned i=0;i<nScint;i++) { diff --git a/TestBeam/TBRec/TBRec/CBNTAA_BeamInstrumentation.h b/TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.h old mode 100755 new mode 100644 similarity index 93% rename from TestBeam/TBRec/TBRec/CBNTAA_BeamInstrumentation.h rename to TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.h index e426c5401ae52edabd116987415c3d701bee11ca..bc824fbb86c30274f0677b4f79c782769bb8e42a --- a/TestBeam/TBRec/TBRec/CBNTAA_BeamInstrumentation.h +++ b/TestBeam/TBRec/src/CBNTAA_BeamInstrumentation.h @@ -2,11 +2,9 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNT_BEAM_H -#define CBNT_BEAM_H +#ifndef TBREC_CBNTAA_BEAMINSTRUMENTATION_H +#define TBREC_CBNTAA_BEAMINSTRUMENTATION_H -#include "GaudiKernel/NTuple.h" -#include "GaudiKernel/SmartDataPtr.h" #include "CBNT_TBRecBase.h" #include <fstream> #include <string> diff --git a/TestBeam/TBRec/src/CBNTAA_TBADCRaw.cxx b/TestBeam/TBRec/src/CBNTAA_TBADCRaw.cxx old mode 100755 new mode 100644 index 9f222c13379d5b1dc0631d3208666bdefebc9a3d..736f13869e746fc555cd126910c5b40781043f12 --- a/TestBeam/TBRec/src/CBNTAA_TBADCRaw.cxx +++ b/TestBeam/TBRec/src/CBNTAA_TBADCRaw.cxx @@ -2,11 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_TBADCRaw.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" -#include "GaudiKernel/MsgStream.h" +#include "CBNTAA_TBADCRaw.h" #include "TBEvent/TBADCRawCont.h" #include <vector> @@ -27,9 +23,6 @@ StatusCode CBNTAA_TBADCRaw::CBNT_initialize() { ATH_MSG_DEBUG ( "in initialize()" ); - IToolSvc* toolSvc = nullptr; - ATH_CHECK( service( "ToolSvc",toolSvc ) ); - addBranch("TBADCRaw",m_adc); return StatusCode::SUCCESS; diff --git a/TestBeam/TBRec/TBRec/CBNTAA_TBADCRaw.h b/TestBeam/TBRec/src/CBNTAA_TBADCRaw.h old mode 100755 new mode 100644 similarity index 94% rename from TestBeam/TBRec/TBRec/CBNTAA_TBADCRaw.h rename to TestBeam/TBRec/src/CBNTAA_TBADCRaw.h index 171d39abb1369df319abd835ce626ec9276bb6f1..836c4b8942472ca5ea5e560e629732597d8c820b --- a/TestBeam/TBRec/TBRec/CBNTAA_TBADCRaw.h +++ b/TestBeam/TBRec/src/CBNTAA_TBADCRaw.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNT_TBADCRAW_H -#define CBNT_TBADCRAW_H +#ifndef TBREC_CBNTAA_TBADCRAW_H +#define TBREC_CBNTAA_TBADCRAW_H #include "GaudiKernel/NTuple.h" #include "GaudiKernel/SmartDataPtr.h" diff --git a/TestBeam/TBRec/src/CBNTAA_TBInfo.cxx b/TestBeam/TBRec/src/CBNTAA_TBInfo.cxx old mode 100755 new mode 100644 index 918e78476c12c1be3022349559bce0277066797e..413f1fbc2333191d60c8e0d64415f1a3be10cdd7 --- a/TestBeam/TBRec/src/CBNTAA_TBInfo.cxx +++ b/TestBeam/TBRec/src/CBNTAA_TBInfo.cxx @@ -2,15 +2,12 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_TBInfo.h" +#include "CBNTAA_TBInfo.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/ISvcLocator.h" #include "GaudiKernel/IToolSvc.h" #include "StoreGate/StoreGate.h" #include "StoreGate/StoreGateSvc.h" -#include "StoreGate/DataHandle.h" #include "CaloGeoHelpers/CaloPhiRange.h" #include "TBCaloGeometry/TBCaloCoordinate.h" diff --git a/TestBeam/TBRec/TBRec/CBNTAA_TBInfo.h b/TestBeam/TBRec/src/CBNTAA_TBInfo.h old mode 100755 new mode 100644 similarity index 96% rename from TestBeam/TBRec/TBRec/CBNTAA_TBInfo.h rename to TestBeam/TBRec/src/CBNTAA_TBInfo.h index b282f8d0853a315be0681726653685e2dc47fba3..3e06d50bcca46f11baae317fa533c7cc90bc5391 --- a/TestBeam/TBRec/TBRec/CBNTAA_TBInfo.h +++ b/TestBeam/TBRec/src/CBNTAA_TBInfo.h @@ -2,11 +2,10 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNTAA_TBInfo_H -#define CBNTAA_TBInfo_H +#ifndef TBREC_CBNTAA_TBINFO_H +#define TBREC_CBNTAA_TBINFO_H #include "CBNT_TBRecBase.h" -#include "GaudiKernel/NTuple.h" #include <vector> class TBCaloCoordinate; diff --git a/TestBeam/TBRec/src/CBNTAA_TBScint.cxx b/TestBeam/TBRec/src/CBNTAA_TBScint.cxx index bd7cf6c85603946fd5acab3bf45d30dd09d5695d..cbdec9f486709b68eeaa7af1aa425622298b47de 100644 --- a/TestBeam/TBRec/src/CBNTAA_TBScint.cxx +++ b/TestBeam/TBRec/src/CBNTAA_TBScint.cxx @@ -2,10 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_TBScint.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" +#include "CBNTAA_TBScint.h" #include "LArG4TBSimEvent/LArG4H6FrontHitCollection.h" #include <fstream> diff --git a/TestBeam/TBRec/TBRec/CBNTAA_TBScint.h b/TestBeam/TBRec/src/CBNTAA_TBScint.h similarity index 92% rename from TestBeam/TBRec/TBRec/CBNTAA_TBScint.h rename to TestBeam/TBRec/src/CBNTAA_TBScint.h index 7dac53375b140d8e33aa075fce558d5b778bc0c1..730afc207fe73b44404d870f15e42ebe7687c28f 100644 --- a/TestBeam/TBRec/TBRec/CBNTAA_TBScint.h +++ b/TestBeam/TBRec/src/CBNTAA_TBScint.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNTAA_TBSCINT_H -#define CBNTAA_TBSCINT_H +#ifndef TBREC_CBNTAA_TBSCINT_H +#define TBREC_CBNTAA_TBSCINT_H #include "GaudiKernel/NTuple.h" #include "GaudiKernel/SmartDataPtr.h" diff --git a/TestBeam/TBRec/src/CBNTAA_TBTDCRaw.cxx b/TestBeam/TBRec/src/CBNTAA_TBTDCRaw.cxx old mode 100755 new mode 100644 index 2bd9a1c9722a0d83f67ddc992b7e4a85e65a5952..c61cd95d7bdfce7111c75d54e5f90557279840df --- a/TestBeam/TBRec/src/CBNTAA_TBTDCRaw.cxx +++ b/TestBeam/TBRec/src/CBNTAA_TBTDCRaw.cxx @@ -2,11 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_TBTDCRaw.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" - +#include "CBNTAA_TBTDCRaw.h" #include "TBEvent/TBTDCRawCont.h" #include <vector> @@ -30,9 +26,6 @@ StatusCode CBNTAA_TBTDCRaw::CBNT_initialize() { ATH_MSG_DEBUG ( "in initialize()" ); - IToolSvc* toolSvc = nullptr; - ATH_CHECK( service( "ToolSvc",toolSvc ) ); - addBranch("TBTDCRaw",m_tdc); addBranch("TBTDCRaw_underThreshold",m_underThreshold); diff --git a/TestBeam/TBRec/TBRec/CBNTAA_TBTDCRaw.h b/TestBeam/TBRec/src/CBNTAA_TBTDCRaw.h old mode 100755 new mode 100644 similarity index 94% rename from TestBeam/TBRec/TBRec/CBNTAA_TBTDCRaw.h rename to TestBeam/TBRec/src/CBNTAA_TBTDCRaw.h index 4f688a1c33804886cec2188009fdd7cf4e5588c9..9e7d267d68a2b0b488d26dae2fdbc48143c004ed --- a/TestBeam/TBRec/TBRec/CBNTAA_TBTDCRaw.h +++ b/TestBeam/TBRec/src/CBNTAA_TBTDCRaw.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNT_TBTDCRAW_H -#define CBNT_TBTDCRAW_H +#ifndef TBREC_CBNTAA_TBTDCRAW_H +#define TBREC_CBNTAA_TBTDCRAW_H #include "GaudiKernel/NTuple.h" #include "GaudiKernel/SmartDataPtr.h" diff --git a/TestBeam/TBRec/src/CBNTAA_TBTPValidation.cxx b/TestBeam/TBRec/src/CBNTAA_TBTPValidation.cxx old mode 100755 new mode 100644 index ccc5cc79375f073ae2de2282de6e2171a2301d4b..2300e08b95f4f84f878281820e73eb554041c0b9 --- a/TestBeam/TBRec/src/CBNTAA_TBTPValidation.cxx +++ b/TestBeam/TBRec/src/CBNTAA_TBTPValidation.cxx @@ -2,10 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_TBTPValidation.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" +#include "CBNTAA_TBTPValidation.h" #include "TBEvent/TBADCRawCont.h" #include "TBEvent/TBTDCRawCont.h" @@ -231,9 +228,6 @@ StatusCode CBNTAA_TBTPValidation::CBNT_initialize() { ATH_MSG_DEBUG ( "in initialize()" ); - IToolSvc* toolSvc = nullptr; - ATH_CHECK( service( "ToolSvc",toolSvc ) ); - // TBADCRawCont addBranch("TBTPValid_TBADCRaw_m_adc",m_adc); addBranch("TBTPValid_TBADCRaw_tbDetectorName",m_tbDetectorName_TBADCRawCont); diff --git a/TestBeam/TBRec/TBRec/CBNTAA_TBTPValidation.h b/TestBeam/TBRec/src/CBNTAA_TBTPValidation.h old mode 100755 new mode 100644 similarity index 98% rename from TestBeam/TBRec/TBRec/CBNTAA_TBTPValidation.h rename to TestBeam/TBRec/src/CBNTAA_TBTPValidation.h index 30386d7a3ce83497efab51c3800aeaa33eead862..0b620e90f3a92f2ccb033300994161bff1565478 --- a/TestBeam/TBRec/TBRec/CBNTAA_TBTPValidation.h +++ b/TestBeam/TBRec/src/CBNTAA_TBTPValidation.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNTAA_TBTPVALIDATION_H -#define CBNTAA_TBTPVALIDATION_H +#ifndef TBREC_CBNTAA_TBTPVALIDATION_H +#define TBREC_CBNTAA_TBTPVALIDATION_H #include "GaudiKernel/NTuple.h" #include "GaudiKernel/SmartDataPtr.h" diff --git a/TestBeam/TBRec/src/CBNTAA_TBTrack.cxx b/TestBeam/TBRec/src/CBNTAA_TBTrack.cxx index a4a623f1a64341df7dde4b89852f044ae421351b..c799eafd540bac97a53edaa397a13b890427e97d 100644 --- a/TestBeam/TBRec/src/CBNTAA_TBTrack.cxx +++ b/TestBeam/TBRec/src/CBNTAA_TBTrack.cxx @@ -2,16 +2,13 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNTAA_TBTrack.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" +#include "CBNTAA_TBTrack.h" #include "TBEvent/TBEventInfo.h" #include "TBEvent/TBTrack.h" +#include "PathResolver/PathResolver.h" #include <fstream> #include <string> -#include "PathResolver/PathResolver.h" CBNTAA_TBTrack::CBNTAA_TBTrack(const std::string & name, ISvcLocator * pSvcLocator) : @@ -33,9 +30,6 @@ CBNTAA_TBTrack::CBNTAA_TBTrack(const std::string & name, ISvcLocator * pSvcLocat StatusCode CBNTAA_TBTrack::CBNT_initialize() { ATH_MSG_DEBUG ( "in initialize()" ); - IToolSvc* toolSvc = nullptr; - ATH_CHECK( service("ToolSvc",toolSvc) ); - // Add beam track parameters addBranch("bm_x", m_beam_coor_x, "bm_x/f"); addBranch("bm_y", m_beam_coor_y, "bm_y/f"); diff --git a/TestBeam/TBRec/TBRec/CBNTAA_TBTrack.h b/TestBeam/TBRec/src/CBNTAA_TBTrack.h similarity index 95% rename from TestBeam/TBRec/TBRec/CBNTAA_TBTrack.h rename to TestBeam/TBRec/src/CBNTAA_TBTrack.h index 42c0b919b73e9ea65b8a66f8f81bff3eefb51e76..6d46a2593869affb014b7e768a6ab6d67af1ea29 100644 --- a/TestBeam/TBRec/TBRec/CBNTAA_TBTrack.h +++ b/TestBeam/TBRec/src/CBNTAA_TBTrack.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNTAA_TBTRACK_H -#define CBNTAA_TBTRACK_H +#ifndef TBREC_CBNTAA_TBTRACK_H +#define TBREC_CBNTAA_TBTRACK_H #include "GaudiKernel/NTuple.h" #include "GaudiKernel/SmartDataPtr.h" diff --git a/TestBeam/TBRec/src/CBNT_BeamInstrumentation.cxx b/TestBeam/TBRec/src/CBNT_BeamInstrumentation.cxx old mode 100755 new mode 100644 index eeb0646b0ca3be728846d90394fdea682cd799f1..81313b272680391ec80647c5a8997e2d3c483056 --- a/TestBeam/TBRec/src/CBNT_BeamInstrumentation.cxx +++ b/TestBeam/TBRec/src/CBNT_BeamInstrumentation.cxx @@ -2,10 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNT_BeamInstrumentation.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/INTupleSvc.h" +#include "CBNT_BeamInstrumentation.h" #include "TBEvent/TBScintillatorCont.h" #include "TBEvent/TBBPCCont.h" diff --git a/TestBeam/TBRec/TBRec/CBNT_BeamInstrumentation.h b/TestBeam/TBRec/src/CBNT_BeamInstrumentation.h old mode 100755 new mode 100644 similarity index 95% rename from TestBeam/TBRec/TBRec/CBNT_BeamInstrumentation.h rename to TestBeam/TBRec/src/CBNT_BeamInstrumentation.h index 59ab41d2d181f72a2905c277d00f4ca4483030d1..c44a17a89069a5c75689164217ab616a0450167a --- a/TestBeam/TBRec/TBRec/CBNT_BeamInstrumentation.h +++ b/TestBeam/TBRec/src/CBNT_BeamInstrumentation.h @@ -2,10 +2,9 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNT_BEAM_H -#define CBNT_BEAM_H +#ifndef TBREC_CBNT_BEAM_H +#define TBREC_CBNT_BEAM_H -#include "GaudiKernel/SmartDataPtr.h" #include "CBNT_TBRecBase.h" #include <fstream> #include <string> diff --git a/TestBeam/TBRec/src/CBNT_CaloH6.cxx b/TestBeam/TBRec/src/CBNT_CaloH6.cxx old mode 100755 new mode 100644 index 704b211d090ab6f7af9e66cfc7ffd7e6546dcfb9..1429de8253d324f421c85706df03d294253ca3e6 --- a/TestBeam/TBRec/src/CBNT_CaloH6.cxx +++ b/TestBeam/TBRec/src/CBNT_CaloH6.cxx @@ -12,15 +12,7 @@ //# # //##################################################### -#include "TBRec/CBNT_CaloH6.h" - -#include "GaudiKernel/SmartDataPtr.h" -#include "GaudiKernel/INTupleSvc.h" -#include "GaudiKernel/ISvcLocator.h" -#include "GaudiKernel/ListItem.h" - -#include "StoreGate/StoreGate.h" -#include "StoreGate/StoreGateSvc.h" +#include "CBNT_CaloH6.h" #include "CaloIdentifier/CaloCell_ID.h" #include "CaloEvent/CaloCellContainer.h" @@ -33,7 +25,6 @@ #include "Identifier/Identifier.h" -#include <list> CBNT_CaloH6::CBNT_CaloH6(const std::string & name, ISvcLocator * pSvcLocator) : CBNT_TBRecBase(name, pSvcLocator), diff --git a/TestBeam/TBRec/TBRec/CBNT_CaloH6.h b/TestBeam/TBRec/src/CBNT_CaloH6.h old mode 100755 new mode 100644 similarity index 96% rename from TestBeam/TBRec/TBRec/CBNT_CaloH6.h rename to TestBeam/TBRec/src/CBNT_CaloH6.h index 633ddfcfc0fd330db3ab3a6767c46f3ec2368c0b..3bb767da063c80d3b46014ae1f29629bf3a73ee0 --- a/TestBeam/TBRec/TBRec/CBNT_CaloH6.h +++ b/TestBeam/TBRec/src/CBNT_CaloH6.h @@ -12,10 +12,9 @@ //# # //###################################################### -#ifndef CBNT_CALOH6_H -#define CBNT_CALOH6_H +#ifndef TBREC_CBNT_CALOH6_H +#define TBREC_CBNT_CALOH6_H -#include "GaudiKernel/NTuple.h" #include "GaudiKernel/ToolHandle.h" #include "CBNT_TBRecBase.h" diff --git a/TestBeam/TBRec/src/CBNT_TBRecBase.cxx b/TestBeam/TBRec/src/CBNT_TBRecBase.cxx index b2fd2501c5baf937c4e0b06cc33b4e7c64c68bd2..a78ea073161913655c40412b3f9bc255ca9f196a 100644 --- a/TestBeam/TBRec/src/CBNT_TBRecBase.cxx +++ b/TestBeam/TBRec/src/CBNT_TBRecBase.cxx @@ -2,10 +2,11 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNT_TBRecBase.h" +#include "CBNT_TBRecBase.h" #include "LArIdentifier/LArOnlineID.h" #include "CaloIdentifier/CaloIdManager.h" +#include "GaudiKernel/ITHistSvc.h" CBNT_TBRecBase::CBNT_TBRecBase(const std::string& name, ISvcLocator* pSvcLocator): diff --git a/TestBeam/TBRec/TBRec/CBNT_TBRecBase.h b/TestBeam/TBRec/src/CBNT_TBRecBase.h similarity index 94% rename from TestBeam/TBRec/TBRec/CBNT_TBRecBase.h rename to TestBeam/TBRec/src/CBNT_TBRecBase.h index e8c2e2fcfc9e6e743ed196e7a650d9384c6d09e9..4cf7ba0c65a490d460610a65f7380139b0337d1c 100644 --- a/TestBeam/TBRec/TBRec/CBNT_TBRecBase.h +++ b/TestBeam/TBRec/src/CBNT_TBRecBase.h @@ -3,12 +3,10 @@ */ //Dear emacs, this is -*-c++-*- -#ifndef CBNT_TBRECBASE_H -#define CBNT_TBRECBASE_H +#ifndef TBREC_CBNT_TBRECBASE_H +#define TBREC_CBNT_TBRECBASE_H #include "AthenaBaseComps/AthAlgorithm.h" -//#include "GaudiKernel/NTuple.h" -#include "GaudiKernel/ITHistSvc.h" #include "GaudiKernel/ToolHandle.h" #include "LArCabling/LArCablingService.h" diff --git a/TestBeam/TBRec/src/CBNT_Timing.cxx b/TestBeam/TBRec/src/CBNT_Timing.cxx old mode 100755 new mode 100644 index 52480759fefd47002e54bc38272bbfffe411b5ff..9136e9c703eb2f9fb1e0cfc19cd1f720e3272add --- a/TestBeam/TBRec/src/CBNT_Timing.cxx +++ b/TestBeam/TBRec/src/CBNT_Timing.cxx @@ -2,11 +2,9 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNT_Timing.h" +#include "CBNT_Timing.h" #include "CLHEP/Units/SystemOfUnits.h" -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/NTuple.h" #include "CaloEvent/CaloCell.h" #include "CaloEvent/CaloCellContainer.h" diff --git a/TestBeam/TBRec/TBRec/CBNT_Timing.h b/TestBeam/TBRec/src/CBNT_Timing.h old mode 100755 new mode 100644 similarity index 96% rename from TestBeam/TBRec/TBRec/CBNT_Timing.h rename to TestBeam/TBRec/src/CBNT_Timing.h index 1cae276e107e89f92c3d97527fcc3da9e8e87c55..5ac2a4d31b2e218b7ce73c574ac83fcbba24cfbb --- a/TestBeam/TBRec/TBRec/CBNT_Timing.h +++ b/TestBeam/TBRec/src/CBNT_Timing.h @@ -2,10 +2,9 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNT_TIMING_H -#define CBNT_TIMING_H +#ifndef TBREC_CBNT_TIMING_H +#define TBREC_CBNT_TIMING_H -#include "GaudiKernel/NTuple.h" #include "GaudiKernel/ToolHandle.h" #include "CBNT_TBRecBase.h" #include "CaloGeoHelpers/CaloSampling.h" diff --git a/TestBeam/TBRec/src/CBNT_UpstreamMat.cxx b/TestBeam/TBRec/src/CBNT_UpstreamMat.cxx old mode 100755 new mode 100644 index 12249dd71fc54085a4bbe2ff0dcf82ca1db19782..d0539d0fee9a03799a43ec74850b3e4ff081575f --- a/TestBeam/TBRec/src/CBNT_UpstreamMat.cxx +++ b/TestBeam/TBRec/src/CBNT_UpstreamMat.cxx @@ -2,9 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/CBNT_UpstreamMat.h" +#include "CBNT_UpstreamMat.h" -#include "StoreGate/StoreGate.h" #include "StoreGate/StoreGateSvc.h" #include "GaudiKernel/MsgStream.h" diff --git a/TestBeam/TBRec/TBRec/CBNT_UpstreamMat.h b/TestBeam/TBRec/src/CBNT_UpstreamMat.h old mode 100755 new mode 100644 similarity index 89% rename from TestBeam/TBRec/TBRec/CBNT_UpstreamMat.h rename to TestBeam/TBRec/src/CBNT_UpstreamMat.h index b1d901ce41bc29494771af2da99ae4bf156ac9de..74eba111a8ff4ca94685d9ec73394842fa1993f2 --- a/TestBeam/TBRec/TBRec/CBNT_UpstreamMat.h +++ b/TestBeam/TBRec/src/CBNT_UpstreamMat.h @@ -2,11 +2,10 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CBNT_UPSTREAMMAT_H -#define CBNT_UPSTREAMMAT_H +#ifndef TBREC_CBNT_UPSTREAMMAT_H +#define TBREC_CBNT_UPSTREAMMAT_H #include "CBNT_TBRecBase.h" -#include "GaudiKernel/NTuple.h" #include <string> class StoreGateSvc; diff --git a/TestBeam/TBRec/src/ImpactInCalo.cxx b/TestBeam/TBRec/src/ImpactInCalo.cxx old mode 100755 new mode 100644 index bab95c27e9239e2a281f60081207dc039d50dd0c..03019859034d309f15c1b2b8bf228788de59f8ad --- a/TestBeam/TBRec/src/ImpactInCalo.cxx +++ b/TestBeam/TBRec/src/ImpactInCalo.cxx @@ -3,7 +3,7 @@ */ -#include "TBRec/ImpactInCalo.h" +#include "ImpactInCalo.h" #include <iostream> diff --git a/TestBeam/TBRec/TBRec/ImpactInCalo.h b/TestBeam/TBRec/src/ImpactInCalo.h old mode 100755 new mode 100644 similarity index 98% rename from TestBeam/TBRec/TBRec/ImpactInCalo.h rename to TestBeam/TBRec/src/ImpactInCalo.h index 8a31996edf30736581835f2ed1badff04cb5773a..785ceb29310ba71047f021dd7a9558bb95d55c15 --- a/TestBeam/TBRec/TBRec/ImpactInCalo.h +++ b/TestBeam/TBRec/src/ImpactInCalo.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef IMPACTINCALO_H -#define IMPACTINCALO_H +#ifndef TBREC_IMPACTINCALO_H +#define TBREC_IMPACTINCALO_H /************************************************************************* Package: File: ImpactInCalo.h diff --git a/TestBeam/TBRec/src/ImpactInCaloCollection.cxx b/TestBeam/TBRec/src/ImpactInCaloCollection.cxx old mode 100755 new mode 100644 index 0f576382677747524c063618d6ee10b54c17837a..89fd871012496f7437717088f309811737ae312c --- a/TestBeam/TBRec/src/ImpactInCaloCollection.cxx +++ b/TestBeam/TBRec/src/ImpactInCaloCollection.cxx @@ -3,8 +3,8 @@ */ -#include "TBRec/ImpactInCaloCollection.h" -#include "TBRec/ImpactInCalo.h" +#include "ImpactInCaloCollection.h" +#include "ImpactInCalo.h" void ImpactInCaloCollection::print() const{ ImpactInCaloCollection::const_iterator iter; diff --git a/TestBeam/TBRec/TBRec/ImpactInCaloCollection.h b/TestBeam/TBRec/src/ImpactInCaloCollection.h old mode 100755 new mode 100644 similarity index 80% rename from TestBeam/TBRec/TBRec/ImpactInCaloCollection.h rename to TestBeam/TBRec/src/ImpactInCaloCollection.h index db872843c3c4cead73e7abe5ea7229da6483388e..5f4317b4396b011b37c18e330f7e07cb1395b9de --- a/TestBeam/TBRec/TBRec/ImpactInCaloCollection.h +++ b/TestBeam/TBRec/src/ImpactInCaloCollection.h @@ -2,12 +2,12 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef IMPACTINCALOCOLLECTION_H -#define IMPACTINCALOCOLLECTION_H +#ifndef TBREC_IMPACTINCALOCOLLECTION_H +#define TBREC_IMPACTINCALOCOLLECTION_H #include "AthContainers/DataVector.h" #include "AthenaKernel/CLASS_DEF.h" -#include "TBRec/ImpactInCalo.h" +#include "ImpactInCalo.h" //class ImpactInCalo; class ImpactInCaloCollection : public DataVector<ImpactInCalo> { diff --git a/TestBeam/TBRec/src/TBAlgoSequencer.cxx b/TestBeam/TBRec/src/TBAlgoSequencer.cxx old mode 100755 new mode 100644 index e446f1ea79aea8bd56ce220c69e7e9240022537d..f10becf0d506dece97304217cb0f12bff0fa2c8e --- a/TestBeam/TBRec/src/TBAlgoSequencer.cxx +++ b/TestBeam/TBRec/src/TBAlgoSequencer.cxx @@ -3,14 +3,9 @@ */ -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" +#include "TBAlgoSequencer.h" #include "GaudiKernel/ListItem.h" -#include "TBRec/TBAlgoSequencer.h" - #include <string> #include <map> #include <iostream> diff --git a/TestBeam/TBRec/TBRec/TBAlgoSequencer.h b/TestBeam/TBRec/src/TBAlgoSequencer.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBAlgoSequencer.h rename to TestBeam/TBRec/src/TBAlgoSequencer.h diff --git a/TestBeam/TBRec/src/TBBPCRec.cxx b/TestBeam/TBRec/src/TBBPCRec.cxx old mode 100755 new mode 100644 index 0afe4bd65ffb6f08db4cda9f4f87686cd61a123f..2d56d0015f4d972ddd1e4f6318f7cfb426341622 --- a/TestBeam/TBRec/src/TBBPCRec.cxx +++ b/TestBeam/TBRec/src/TBBPCRec.cxx @@ -3,9 +3,7 @@ */ -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/Property.h" +#include "TBBPCRec.h" #include "PathResolver/PathResolver.h" @@ -16,8 +14,6 @@ #include <fstream> #include <math.h> -#include "TBRec/TBBPCRec.h" - // static const AlgFactory<TBBPCRec> s_factory; // const IAlgFactory& TBBPCRecFactory = s_factory; diff --git a/TestBeam/TBRec/TBRec/TBBPCRec.h b/TestBeam/TBRec/src/TBBPCRec.h old mode 100755 new mode 100644 similarity index 97% rename from TestBeam/TBRec/TBRec/TBBPCRec.h rename to TestBeam/TBRec/src/TBBPCRec.h index 917f1ab88b7965ab366b2f52d69e9f3c89357442..76d12acd6643cbc1da61356b5411ade78ec951a5 --- a/TestBeam/TBRec/TBRec/TBBPCRec.h +++ b/TestBeam/TBRec/src/TBBPCRec.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBREC_TBBPCREC -#define TBREC_TBBPCREC +#ifndef TBREC_TBBPCREC_H +#define TBREC_TBBPCREC_H /////////////////////////////////////////////////////////////////////////////// // // // This algorithm controls event flow and reconstruction and monitoring // diff --git a/TestBeam/TBRec/src/TBBeamQuality.cxx b/TestBeam/TBRec/src/TBBeamQuality.cxx old mode 100755 new mode 100644 index 8ae8c9ee36ad62dd462ccf60d6b45122134ee246..e3f49973828e8b4e1d0c67e4386e42bba71d7fd1 --- a/TestBeam/TBRec/src/TBBeamQuality.cxx +++ b/TestBeam/TBRec/src/TBBeamQuality.cxx @@ -13,18 +13,10 @@ //##################################################### -#include "GaudiKernel/Algorithm.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" -#include "GaudiKernel/ListItem.h" - -#include "StoreGate/StoreGate.h" -#include "StoreGate/StoreGateSvc.h" +#include "TBBeamQuality.h" +#include "TBBeamQualityTool.h" #include "TBEvent/TBEventInfo.h" -#include "TBRec/TBBeamQualityTool.h" -#include "TBRec/TBBeamQuality.h" - TBBeamQuality::TBBeamQuality(const std::string& name, ISvcLocator* pService) diff --git a/TestBeam/TBRec/TBRec/TBBeamQuality.h b/TestBeam/TBRec/src/TBBeamQuality.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBBeamQuality.h rename to TestBeam/TBRec/src/TBBeamQuality.h diff --git a/TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.cxx b/TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.cxx old mode 100755 new mode 100644 index ab71de0924b84534fe72a6c879847552b990b315..ece802cfa872e24a683c0aa5cb4c7106b839a661 --- a/TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.cxx +++ b/TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.cxx @@ -13,16 +13,10 @@ //##################################################### -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" -#include "GaudiKernel/AlgTool.h" - -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/Property.h" +#include "TBBeamQualityDoubleHitsTool.h" #include "TBEvent/TBScintillatorCont.h" #include "TBEvent/TBScintillator.h" -#include "TBRec/TBBeamQualityDoubleHitsTool.h" #include <string> #include <ios> diff --git a/TestBeam/TBRec/TBRec/TBBeamQualityDoubleHitsTool.h b/TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.h old mode 100755 new mode 100644 similarity index 91% rename from TestBeam/TBRec/TBRec/TBBeamQualityDoubleHitsTool.h rename to TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.h index e8edf152d21e26cd67a0eb87b46f493f59367fbb..b5a4492356a1276bca97801fb848c9f96f8dd3a0 --- a/TestBeam/TBRec/TBRec/TBBeamQualityDoubleHitsTool.h +++ b/TestBeam/TBRec/src/TBBeamQualityDoubleHitsTool.h @@ -12,10 +12,10 @@ //# Last Modified: Feb 7/2005 # //##################################################### -#ifndef TBBEAMQUALITYDOUBLEHITSTOOL_H -#define TBBEAMQUALITYDOUBLEHITSTOOL_H +#ifndef TBREC_TBBEAMQUALITYDOUBLEHITSTOOL_H +#define TBREC_TBBEAMQUALITYDOUBLEHITSTOOL_H -#include "TBRec/TBBeamQualityTool.h" +#include "TBBeamQualityTool.h" #include <string> #include <vector> diff --git a/TestBeam/TBRec/src/TBBeamQualityEMFractionTool.cxx b/TestBeam/TBRec/src/TBBeamQualityEMFractionTool.cxx old mode 100755 new mode 100644 index bbca3303ce25008adf6cfa4356adede13ab166c5..88d4fb110275e7bffd8aabaac356b5de0cfbf104 --- a/TestBeam/TBRec/src/TBBeamQualityEMFractionTool.cxx +++ b/TestBeam/TBRec/src/TBBeamQualityEMFractionTool.cxx @@ -12,23 +12,12 @@ //# # //##################################################### -#include "TBRec/TBBeamQualityEMFractionTool.h" - -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" -#include "GaudiKernel/AlgTool.h" - -#include "GaudiKernel/ListItem.h" -#include "GaudiKernel/Property.h" - -#include "StoreGate/StoreGate.h" -#include "StoreGate/StoreGateSvc.h" +#include "TBBeamQualityEMFractionTool.h" #include "CaloIdentifier/CaloCell_ID.h" #include "CaloEvent/CaloCellContainer.h" #include "Identifier/Identifier.h" -#include <list> TBBeamQualityEMFractionTool::TBBeamQualityEMFractionTool(const std::string& name, const std::string& type, diff --git a/TestBeam/TBRec/TBRec/TBBeamQualityEMFractionTool.h b/TestBeam/TBRec/src/TBBeamQualityEMFractionTool.h old mode 100755 new mode 100644 similarity index 97% rename from TestBeam/TBRec/TBRec/TBBeamQualityEMFractionTool.h rename to TestBeam/TBRec/src/TBBeamQualityEMFractionTool.h index a6cd7cddf2df004062071df4ae66cd76e0860df3..27c67b0191e661cf880c2e8c41f5500128831f31 --- a/TestBeam/TBRec/TBRec/TBBeamQualityEMFractionTool.h +++ b/TestBeam/TBRec/src/TBBeamQualityEMFractionTool.h @@ -15,7 +15,7 @@ #ifndef TBBEAMQUALITYEMFRACTIONTOOL_H #define TBBEAMQUALITYEMFRACTIONTOOL_H -#include "TBRec/TBBeamQualityTool.h" +#include "TBBeamQualityTool.h" //#include "LArDetDescr/LArDetDescrManager.h" diff --git a/TestBeam/TBRec/src/TBBeamQualityMC.cxx b/TestBeam/TBRec/src/TBBeamQualityMC.cxx index 52479b4c2508ccf2c49d26125afe4c5769f160a1..e6aa098e864fbdbe408cced90b3a32bb3c778af2 100644 --- a/TestBeam/TBRec/src/TBBeamQualityMC.cxx +++ b/TestBeam/TBRec/src/TBBeamQualityMC.cxx @@ -2,17 +2,16 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBBeamQualityMC.h" -#include "StoreGate/StoreGateSvc.h" +#include "TBBeamQualityMC.h" #include "TBEvent/TBEventInfo.h" #include "TBEvent/TBTrack.h" #include "LArG4TBSimEvent/LArG4H6FrontHitCollection.h" #include "CaloEvent/CaloClusterContainer.h" +#include "PathResolver/PathResolver.h" #include <fstream> #include <string> #include <math.h> -#include "PathResolver/PathResolver.h" TBBeamQualityMC::TBBeamQualityMC(const std::string & name, ISvcLocator * pSvcLocator) : diff --git a/TestBeam/TBRec/TBRec/TBBeamQualityMC.h b/TestBeam/TBRec/src/TBBeamQualityMC.h old mode 100755 new mode 100644 similarity index 92% rename from TestBeam/TBRec/TBRec/TBBeamQualityMC.h rename to TestBeam/TBRec/src/TBBeamQualityMC.h index 1caea4f57a7e0701a927f1c79a3797061f79c3fb..3b5ff9278c61f5c445c1bf6846beff28c54f4fba --- a/TestBeam/TBRec/TBRec/TBBeamQualityMC.h +++ b/TestBeam/TBRec/src/TBBeamQualityMC.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBBEAMQUALITYMC_H -#define TBBEAMQUALITYMC_H +#ifndef TBREC_TBBEAMQUALITYMC_H +#define TBREC_TBBEAMQUALITYMC_H #include "AthenaBaseComps/AthAlgorithm.h" #include <vector> diff --git a/TestBeam/TBRec/src/TBBeamQualityMuonToolH6.cxx b/TestBeam/TBRec/src/TBBeamQualityMuonToolH6.cxx old mode 100755 new mode 100644 index cabca65d2cdeaacda5b9b5c5e3625eb2673e61ff..1516c5b3f62fdc58ab7cabccfb3a596741bcc1c7 --- a/TestBeam/TBRec/src/TBBeamQualityMuonToolH6.cxx +++ b/TestBeam/TBRec/src/TBBeamQualityMuonToolH6.cxx @@ -12,17 +12,11 @@ //# Last Modofied: Nov 18/2004 # //##################################################### -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" -#include "GaudiKernel/AlgTool.h" - -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/Property.h" +#include "TBBeamQualityMuonToolH6.h" // TRIGGERS #include "TBEvent/TBTriggerPatternUnit.h" -#include "TBRec/TBBeamQualityMuonToolH6.h" #include <string> #include <ios> diff --git a/TestBeam/TBRec/TBRec/TBBeamQualityMuonToolH6.h b/TestBeam/TBRec/src/TBBeamQualityMuonToolH6.h old mode 100755 new mode 100644 similarity index 91% rename from TestBeam/TBRec/TBRec/TBBeamQualityMuonToolH6.h rename to TestBeam/TBRec/src/TBBeamQualityMuonToolH6.h index 577a6c80238292a2beaf424b9d5eb82142c06f19..a85f39c2b49f86c3da97dae62919316af801d939 --- a/TestBeam/TBRec/TBRec/TBBeamQualityMuonToolH6.h +++ b/TestBeam/TBRec/src/TBBeamQualityMuonToolH6.h @@ -12,10 +12,10 @@ //# Last Modified: Nov 18/2004 # //##################################################### -#ifndef TBBEAMQUALITYMUONTOOLH6_H -#define TBBEAMQUALITYMUONTOOLH6_H +#ifndef TBREC_TBBEAMQUALITYMUONTOOLH6_H +#define TBREC_TBBEAMQUALITYMUONTOOLH6_H -#include "TBRec/TBBeamQualityTool.h" +#include "TBBeamQualityTool.h" #include <string> #include <vector> diff --git a/TestBeam/TBRec/src/TBBeamQualityTool.cxx b/TestBeam/TBRec/src/TBBeamQualityTool.cxx old mode 100755 new mode 100644 index dceb40f4e1e92cdcdc1e7f156997a044c05d1fc4..d05f6e2af113f9ea779dca43bc8b2d5973c529d2 --- a/TestBeam/TBRec/src/TBBeamQualityTool.cxx +++ b/TestBeam/TBRec/src/TBBeamQualityTool.cxx @@ -13,12 +13,7 @@ //##################################################### -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" - -#include "TBRec/TBBeamQualityTool.h" +#include "TBBeamQualityTool.h" #include <string> #include <vector> diff --git a/TestBeam/TBRec/TBRec/TBBeamQualityTool.h b/TestBeam/TBRec/src/TBBeamQualityTool.h old mode 100755 new mode 100644 similarity index 94% rename from TestBeam/TBRec/TBRec/TBBeamQualityTool.h rename to TestBeam/TBRec/src/TBBeamQualityTool.h index 6e57d18d2642f6004bcdd7b2e7bbf133ac748f5c..05c856c7a83731d13667bc8471df96bacd813296 --- a/TestBeam/TBRec/TBRec/TBBeamQualityTool.h +++ b/TestBeam/TBRec/src/TBBeamQualityTool.h @@ -12,8 +12,8 @@ //# Last Modified: Nov 18/2004 # //##################################################### -#ifndef TBBEAMQUALITYTOOL_H -#define TBBEAMQUALITYTOOL_H +#ifndef TBREC_TBBEAMQUALITYTOOL_H +#define TBREC_TBBEAMQUALITYTOOL_H #include "AthenaBaseComps/AthAlgTool.h" diff --git a/TestBeam/TBRec/src/TBBeamQualityTrackingTool.cxx b/TestBeam/TBRec/src/TBBeamQualityTrackingTool.cxx old mode 100755 new mode 100644 index d060cebbacd8432c0dc2469e9b7b49e80b4250df..2bd0968d5824120f5506dd9acbceb246dd95654f --- a/TestBeam/TBRec/src/TBBeamQualityTrackingTool.cxx +++ b/TestBeam/TBRec/src/TBBeamQualityTrackingTool.cxx @@ -12,17 +12,9 @@ //# Last Modified: Jun 30/2005 # //##################################################### -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" -#include "GaudiKernel/AlgTool.h" - -#include "StoreGate/StoreGateSvc.h" -#include "GaudiKernel/Property.h" - +#include "TBBeamQualityTrackingTool.h" #include "TBEvent/TBTrack.h" -#include "TBRec/TBBeamQualityTrackingTool.h" - #include <string> #include <ios> #include <algorithm> diff --git a/TestBeam/TBRec/TBRec/TBBeamQualityTrackingTool.h b/TestBeam/TBRec/src/TBBeamQualityTrackingTool.h old mode 100755 new mode 100644 similarity index 91% rename from TestBeam/TBRec/TBRec/TBBeamQualityTrackingTool.h rename to TestBeam/TBRec/src/TBBeamQualityTrackingTool.h index 0f2e80a93fa73605a9f0874c35493326626fbdd0..e3db4890befba13b3d95aff1400a0695b03409e6 --- a/TestBeam/TBRec/TBRec/TBBeamQualityTrackingTool.h +++ b/TestBeam/TBRec/src/TBBeamQualityTrackingTool.h @@ -12,10 +12,10 @@ //# Last Modified: Jun 30/2005 # //##################################################### -#ifndef TBBEAMQUALITYTRACKINGTOOL_H -#define TBBEAMQUALITYTRACKINGTOOL_H +#ifndef TBREC_TBBEAMQUALITYTRACKINGTOOL_H +#define TBREC_TBBEAMQUALITYTRACKINGTOOL_H -#include "TBRec/TBBeamQualityTool.h" +#include "TBBeamQualityTool.h" #include <string> #include <vector> diff --git a/TestBeam/TBRec/src/TBCellContainerFillerTool.cxx b/TestBeam/TBRec/src/TBCellContainerFillerTool.cxx index 2686f895e1c9d091a70988f5f6add8cd4c588022..46cbfa08febfadc0ac4f7e71947cedd85d9c8a5d 100644 --- a/TestBeam/TBRec/src/TBCellContainerFillerTool.cxx +++ b/TestBeam/TBRec/src/TBCellContainerFillerTool.cxx @@ -2,14 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBCellContainerFillerTool.h" - -#include "GaudiKernel/Service.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" -#include "GaudiKernel/ListItem.h" - -#include "StoreGate/StoreGateSvc.h" +#include "TBCellContainerFillerTool.h" #include "CaloEvent/CaloCellContainer.h" #include "CaloIdentifier/CaloCell_ID.h" diff --git a/TestBeam/TBRec/TBRec/TBCellContainerFillerTool.h b/TestBeam/TBRec/src/TBCellContainerFillerTool.h similarity index 92% rename from TestBeam/TBRec/TBRec/TBCellContainerFillerTool.h rename to TestBeam/TBRec/src/TBCellContainerFillerTool.h index 1089b5c2c70bc44d1509958beedfabdbb74370e2..a9d19e210851ce3f263360b351568e81f417e95c 100644 --- a/TestBeam/TBRec/TBRec/TBCellContainerFillerTool.h +++ b/TestBeam/TBRec/src/TBCellContainerFillerTool.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CALOREC_TBCellContainerFillerTool_H -#define CALOREC_TBCellContainerFillerTool_H +#ifndef TBREC_TBCELLCONTAINERFILLERTOOL_H +#define TBREC_TBCELLCONTAINERFILLERTOOL_H #include "AthenaBaseComps/AthAlgTool.h" //#include "CaloUtils/ICaloCellMakerTool.h" diff --git a/TestBeam/TBRec/src/TBCellNoiseCorrection.cxx b/TestBeam/TBRec/src/TBCellNoiseCorrection.cxx index 4d1ad9683f4342e8526b6b2ae54b7a18ab7c0b72..b0732dda36d26d89977183cbc8a9f58d632d4afd 100644 --- a/TestBeam/TBRec/src/TBCellNoiseCorrection.cxx +++ b/TestBeam/TBRec/src/TBCellNoiseCorrection.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBCellNoiseCorrection.h" +#include "TBCellNoiseCorrection.h" #include "CaloDetDescr/CaloDetDescrElement.h" #include "CaloEvent/CaloCell.h" @@ -10,8 +10,6 @@ #include "PathResolver/PathResolver.h" -#include "GaudiKernel/IIncidentSvc.h" -#include "GaudiKernel/Incident.h" #include "CLHEP/Random/RandFlat.h" #include <TFile.h> diff --git a/TestBeam/TBRec/TBRec/TBCellNoiseCorrection.h b/TestBeam/TBRec/src/TBCellNoiseCorrection.h similarity index 95% rename from TestBeam/TBRec/TBRec/TBCellNoiseCorrection.h rename to TestBeam/TBRec/src/TBCellNoiseCorrection.h index 8c650eb427815c0aa1dcea76a01ac4002615f157..b5c053e1e9b4c07d0e452fdf19c998088b407c46 100644 --- a/TestBeam/TBRec/TBRec/TBCellNoiseCorrection.h +++ b/TestBeam/TBRec/src/TBCellNoiseCorrection.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBREC_TBCellNoiseCorrection_H -#define TBREC_TBCellNoiseCorrection_H +#ifndef TBREC_TBCELLNOISECORRECTION_H +#define TBREC_TBCELLNOISECORRECTION_H /******************************************************************** NAME: TBCellNoiseCorrection.cxx PACKAGE: offline/TestBeam/TBRec diff --git a/TestBeam/TBRec/src/TBClusterMaker.cxx b/TestBeam/TBRec/src/TBClusterMaker.cxx index 61927bfa32c4dbec685d3b621468726542cbbf84..68150d4599047bdf67ad4a8d277c115afc840ee0 100644 --- a/TestBeam/TBRec/src/TBClusterMaker.cxx +++ b/TestBeam/TBRec/src/TBClusterMaker.cxx @@ -2,14 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// Gaudi -#include "GaudiKernel/ISvcLocator.h" -#include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/ListItem.h" +#include "TBClusterMaker.h" -#include "StoreGate/StoreGateSvc.h" #include "CLHEP/Units/SystemOfUnits.h" #include "CaloDetDescr/CaloDetDescrManager.h" #include "CaloGeoHelpers/CaloPhiRange.h" @@ -24,8 +18,7 @@ #include "xAODCaloEvent/CaloClusterKineHelper.h" #include "CaloGeoHelpers/proxim.h" #include "CaloUtils/CaloClusterStoreHelper.h" - -#include "TBRec/TBClusterMaker.h" +#include "GaudiKernel/ListItem.h" //############################################################################# diff --git a/TestBeam/TBRec/TBRec/TBClusterMaker.h b/TestBeam/TBRec/src/TBClusterMaker.h similarity index 98% rename from TestBeam/TBRec/TBRec/TBClusterMaker.h rename to TestBeam/TBRec/src/TBClusterMaker.h index 24d42760d1fef0d45a8b9221946ac2a8d9edde86..324934822271451a7cbd1cb15bb3e2e7c790f0b4 100644 --- a/TestBeam/TBRec/TBRec/TBClusterMaker.h +++ b/TestBeam/TBRec/src/TBClusterMaker.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBCLUSTERMAKER_H -#define TBCLUSTERMAKER_H +#ifndef TBREC_TBCLUSTERMAKER_H +#define TBREC_TBCLUSTERMAKER_H /** * @class TBClusterMaker * @version \$Id: TBClusterMaker.h,v 1.2 2009-04-17 09:51:30 pavol Exp $ diff --git a/TestBeam/TBRec/src/TBDMContainerSplitter.cxx b/TestBeam/TBRec/src/TBDMContainerSplitter.cxx index 488c26f6b073ad2f9a36f5ab58d37d707748fc43..efc9fe09836ec203d217340f35f200bca6d9df35 100644 --- a/TestBeam/TBRec/src/TBDMContainerSplitter.cxx +++ b/TestBeam/TBRec/src/TBDMContainerSplitter.cxx @@ -2,17 +2,11 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/ISvcLocator.h" -#include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/ListItem.h" +#include "TBDMContainerSplitter.h" -#include "StoreGate/StoreGateSvc.h" #include "CaloDmDetDescr/CaloDmDescrManager.h" #include "CaloSimEvent/CaloCalibrationHitContainer.h" -#include "TBRec/TBDMContainerSplitter.h" - TBDMContainerSplitter::TBDMContainerSplitter(const std::string& name, ISvcLocator* pSvcLocator) : AthAlgorithm(name, pSvcLocator), diff --git a/TestBeam/TBRec/TBRec/TBDMContainerSplitter.h b/TestBeam/TBRec/src/TBDMContainerSplitter.h similarity index 92% rename from TestBeam/TBRec/TBRec/TBDMContainerSplitter.h rename to TestBeam/TBRec/src/TBDMContainerSplitter.h index 43ebdf455f19c788b01ab78fe120c49fd6f15f70..eaaa0562ba0ae7b90447de80cb3525eaa0d273d6 100644 --- a/TestBeam/TBRec/TBRec/TBDMContainerSplitter.h +++ b/TestBeam/TBRec/src/TBDMContainerSplitter.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBDMCONTAINERSPLITTER -#define TBDMCONTAINERSPLITTER +#ifndef TBREC_TBDMCONTAINERSPLITTER_H +#define TBREC_TBDMCONTAINERSPLITTER_H // // class TBDMContainerSplitter diff --git a/TestBeam/TBRec/src/TBECLArRawChannelBuilder.cxx b/TestBeam/TBRec/src/TBECLArRawChannelBuilder.cxx index 0d1048456770b7ca3b8da50e756a9fdf762eee47..c5a1cf2a50b668aadd7238dbd4ca3caa6fdea2ef 100644 --- a/TestBeam/TBRec/src/TBECLArRawChannelBuilder.cxx +++ b/TestBeam/TBRec/src/TBECLArRawChannelBuilder.cxx @@ -2,8 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBECLArRawChannelBuilder.h" -#include "StoreGate/StoreGateSvc.h" +#include "TBECLArRawChannelBuilder.h" #include "CaloDetDescr/CaloDetDescrManager.h" #include "CaloIdentifier/CaloCell_ID.h" diff --git a/TestBeam/TBRec/TBRec/TBECLArRawChannelBuilder.h b/TestBeam/TBRec/src/TBECLArRawChannelBuilder.h similarity index 97% rename from TestBeam/TBRec/TBRec/TBECLArRawChannelBuilder.h rename to TestBeam/TBRec/src/TBECLArRawChannelBuilder.h index b2313b2ceffc855b299429209d7318ae7bc736b2..348042fe0d2238bf9e94734ddce5fe2f70ad731c 100644 --- a/TestBeam/TBRec/TBRec/TBECLArRawChannelBuilder.h +++ b/TestBeam/TBRec/src/TBECLArRawChannelBuilder.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBECLARRAWCHANNELBUILDER -#define TBECLARRAWCHANNELBUILDER +#ifndef TBREC_TBECLARRAWCHANNELBUILDER_H +#define TBREC_TBECLARRAWCHANNELBUILDER_H #include "AthenaBaseComps/AthAlgorithm.h" #include "GaudiKernel/ToolHandle.h" diff --git a/TestBeam/TBRec/src/TBEMECCellEtaCorrection.cxx b/TestBeam/TBRec/src/TBEMECCellEtaCorrection.cxx index ffe7d59341207526f455b2d5bb029de752cd154f..eaeab8c89ae012bee1dfdf4475d0fab886c2ae87 100644 --- a/TestBeam/TBRec/src/TBEMECCellEtaCorrection.cxx +++ b/TestBeam/TBRec/src/TBEMECCellEtaCorrection.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBEMECCellEtaCorrection.h" +#include "TBEMECCellEtaCorrection.h" // INCLUDE LAr header files: diff --git a/TestBeam/TBRec/TBRec/TBEMECCellEtaCorrection.h b/TestBeam/TBRec/src/TBEMECCellEtaCorrection.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBEMECCellEtaCorrection.h rename to TestBeam/TBRec/src/TBEMECCellEtaCorrection.h diff --git a/TestBeam/TBRec/src/TBEMECXTalkToyModel.cxx b/TestBeam/TBRec/src/TBEMECXTalkToyModel.cxx old mode 100755 new mode 100644 index 7c06f6e901ed89a6922cca579781c337263771e7..59ea1221a4bd2bcadb877058ecb7149b10eba95a --- a/TestBeam/TBRec/src/TBEMECXTalkToyModel.cxx +++ b/TestBeam/TBRec/src/TBEMECXTalkToyModel.cxx @@ -16,10 +16,7 @@ PURPOSE: A simple toy model to simulate longitudinal cross-talk ********************************************************************/ -#include "TBRec/TBEMECXTalkToyModel.h" - -#include "StoreGate/StoreGateSvc.h" - +#include "TBEMECXTalkToyModel.h" #include "CaloEvent/CaloCellContainer.h" #include "CaloEvent/CaloCell.h" diff --git a/TestBeam/TBRec/TBRec/TBEMECXTalkToyModel.h b/TestBeam/TBRec/src/TBEMECXTalkToyModel.h old mode 100755 new mode 100644 similarity index 94% rename from TestBeam/TBRec/TBRec/TBEMECXTalkToyModel.h rename to TestBeam/TBRec/src/TBEMECXTalkToyModel.h index f4713b0031bb7cf83ff8c5a1bd4eb8d3b9de7bb4..18252de837f647f162b108ac69c82736a4682e36 --- a/TestBeam/TBRec/TBRec/TBEMECXTalkToyModel.h +++ b/TestBeam/TBRec/src/TBEMECXTalkToyModel.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef CALOREC_TBEMECXTALKTOYMODEL_H -#define CALOREC_TBEMECXTALKTOYMODEL_H +#ifndef TBREC_TBEMECXTALKTOYMODEL_H +#define TBREC_TBEMECXTALKTOYMODEL_H class StoreGateSvc; #include "AthenaBaseComps/AthAlgTool.h" diff --git a/TestBeam/TBRec/src/TBEventInfoStreamerTool.cxx b/TestBeam/TBRec/src/TBEventInfoStreamerTool.cxx old mode 100755 new mode 100644 index 86c38d2b4abbb15bb608ba9e300609761a51b329..7476e2799fe80f9a50103a22f60a2bbd302dd42c --- a/TestBeam/TBRec/src/TBEventInfoStreamerTool.cxx +++ b/TestBeam/TBRec/src/TBEventInfoStreamerTool.cxx @@ -2,12 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" - -#include "TBRec/TBEventInfoStreamerTool.h" +#include "TBEventInfoStreamerTool.h" #include "TBEvent/TBEventInfo.h" #include <string> diff --git a/TestBeam/TBRec/TBRec/TBEventInfoStreamerTool.h b/TestBeam/TBRec/src/TBEventInfoStreamerTool.h old mode 100755 new mode 100644 similarity index 94% rename from TestBeam/TBRec/TBRec/TBEventInfoStreamerTool.h rename to TestBeam/TBRec/src/TBEventInfoStreamerTool.h index 0c5c8c820b932b2f4279ad04f0b8b440ee414fab..22a5590edd1a3ecd15a24ac7d3657024440997e1 --- a/TestBeam/TBRec/TBRec/TBEventInfoStreamerTool.h +++ b/TestBeam/TBRec/src/TBEventInfoStreamerTool.h @@ -5,7 +5,7 @@ #ifndef TBREC_TBEVENTINFOSTREAMERTOOL_H #define TBREC_TBEVENTINFOSTREAMERTOOL_H -#include "TBRec/TBEventStreamerTool.h" +#include "TBEventStreamerTool.h" #include <string> #include <vector> diff --git a/TestBeam/TBRec/src/TBEventStreamer.cxx b/TestBeam/TBRec/src/TBEventStreamer.cxx old mode 100755 new mode 100644 index 5ae7572bb38679481e30a92cc34abbac43c0357d..e2c7c22986e2504a322d1e4eceb90bf667ac1851 --- a/TestBeam/TBRec/src/TBEventStreamer.cxx +++ b/TestBeam/TBRec/src/TBEventStreamer.cxx @@ -3,14 +3,8 @@ */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" -#include "GaudiKernel/ListItem.h" - -#include "StoreGate/StoreGateSvc.h" - -#include "TBRec/TBEventStreamerTool.h" -#include "TBRec/TBEventStreamer.h" +#include "TBEventStreamerTool.h" +#include "TBEventStreamer.h" TBEventStreamer::TBEventStreamer(const std::string& name, ISvcLocator* pService) diff --git a/TestBeam/TBRec/TBRec/TBEventStreamer.h b/TestBeam/TBRec/src/TBEventStreamer.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBEventStreamer.h rename to TestBeam/TBRec/src/TBEventStreamer.h diff --git a/TestBeam/TBRec/src/TBEventStreamerTool.cxx b/TestBeam/TBRec/src/TBEventStreamerTool.cxx old mode 100755 new mode 100644 index c41587ca26943f304085dbe8f5898185682cd4d0..026db78245461d049173cc50d1197f041853e300 --- a/TestBeam/TBRec/src/TBEventStreamerTool.cxx +++ b/TestBeam/TBRec/src/TBEventStreamerTool.cxx @@ -2,13 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" - -#include "TBRec/TBEventStreamerTool.h" - +#include "TBEventStreamerTool.h" #include <string> TBEventStreamerTool::TBEventStreamerTool(const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBEventStreamerTool.h b/TestBeam/TBRec/src/TBEventStreamerTool.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBEventStreamerTool.h rename to TestBeam/TBRec/src/TBEventStreamerTool.h diff --git a/TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.cxx b/TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.cxx old mode 100755 new mode 100644 index bec48ed2bbe19b4ddfda2dbc7530e96e5412f2a4..b8085890e1afe019634a0515f2fa4f3e627088d1 --- a/TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.cxx +++ b/TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.cxx @@ -8,10 +8,7 @@ // //**************************************************************************** -#include "TBRec/TBExtrapolTrackToCaloTool.h" - -#include "GaudiKernel/Property.h" - +#include "TBExtrapolTrackToCaloTool.h" #include <vector> // Stuff needed for the extrapolation : diff --git a/TestBeam/TBRec/TBRec/TBExtrapolTrackToCaloTool.h b/TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.h old mode 100755 new mode 100644 similarity index 99% rename from TestBeam/TBRec/TBRec/TBExtrapolTrackToCaloTool.h rename to TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.h index 7e09da8c5c382b2be9f37a95a96c767b89c44256..6da14524e866a8a6a7a45904153ab4934591d140 --- a/TestBeam/TBRec/TBRec/TBExtrapolTrackToCaloTool.h +++ b/TestBeam/TBRec/src/TBExtrapolTrackToCaloTool.h @@ -10,8 +10,8 @@ // // *************************************************************************** -#ifndef TRACKTOCALO_TBEXTRAPOLTRACKTOCALO_H -#define TRACKTOCALO_TBEXTRAPOLTRACKTOCALO_H +#ifndef TBREC_TBEXTRAPOLTRACKTOCALO_H +#define TBREC_TBEXTRAPOLTRACKTOCALO_H //#include "ITrackToCalo/IExtrapolTrackToCaloTool.h" //#include "RecoToolInterfaces/IExtrapolateToCaloTool.h" diff --git a/TestBeam/TBRec/src/TBLArRawChannelBuilder.cxx b/TestBeam/TBRec/src/TBLArRawChannelBuilder.cxx old mode 100755 new mode 100644 index 4379693e1d1c8ffdf087f3bdcf7480eb0fee0a3a..647517b037bee55e57ba5bd33df32077bfe1acba --- a/TestBeam/TBRec/src/TBLArRawChannelBuilder.cxx +++ b/TestBeam/TBRec/src/TBLArRawChannelBuilder.cxx @@ -2,8 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBLArRawChannelBuilder.h" -#include "StoreGate/StoreGateSvc.h" +#include "TBLArRawChannelBuilder.h" #include "LArIdentifier/LArOnlineID.h" #include <cmath> diff --git a/TestBeam/TBRec/TBRec/TBLArRawChannelBuilder.h b/TestBeam/TBRec/src/TBLArRawChannelBuilder.h old mode 100755 new mode 100644 similarity index 95% rename from TestBeam/TBRec/TBRec/TBLArRawChannelBuilder.h rename to TestBeam/TBRec/src/TBLArRawChannelBuilder.h index be2e8cdc8e97221254e8a0d217f77d4ef607a55c..57ef0dbd68e7fdfabb3258d51ef7036b11ac89c0 --- a/TestBeam/TBRec/TBRec/TBLArRawChannelBuilder.h +++ b/TestBeam/TBRec/src/TBLArRawChannelBuilder.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBLARRAWCHANNELBUILDER -#define TBLARRAWCHANNELBUILDER +#ifndef TBREC_TBLARRAWCHANNELBUILDER_H +#define TBREC_TBLARRAWCHANNELBUILDER_H #include "AthenaBaseComps/AthAlgorithm.h" #include "GaudiKernel/IToolSvc.h" diff --git a/TestBeam/TBRec/src/TBMWPCRec.cxx b/TestBeam/TBRec/src/TBMWPCRec.cxx old mode 100755 new mode 100644 index 2303357e1030ba9394488a5fc70afd87fbdf6115..105c2df2b596b7aa299db2c215f47740cd46eb2d --- a/TestBeam/TBRec/src/TBMWPCRec.cxx +++ b/TestBeam/TBRec/src/TBMWPCRec.cxx @@ -3,17 +3,7 @@ */ -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/Property.h" - -#include "TBRec/TBMWPCRec.h" - -// static const AlgFactory<TBMWPCRec> s_factory; -// const IAlgFactory& TBMWPCRecFactory = s_factory; - - - +#include "TBMWPCRec.h" TBMWPCRec::TBMWPCRec(const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBMWPCRec.h b/TestBeam/TBRec/src/TBMWPCRec.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBMWPCRec.h rename to TestBeam/TBRec/src/TBMWPCRec.h diff --git a/TestBeam/TBRec/src/TBNoiseWrite.cxx b/TestBeam/TBRec/src/TBNoiseWrite.cxx index 266dadd64434298f3ae10db39bc07191cf5926b8..decaa9becc089d1737b5a5aad6bab4a9555a7cf3 100644 --- a/TestBeam/TBRec/src/TBNoiseWrite.cxx +++ b/TestBeam/TBRec/src/TBNoiseWrite.cxx @@ -8,24 +8,18 @@ // author: A.Minaenko // date: 08/05/2008 -#include "GaudiKernel/ISvcLocator.h" -#include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/ListItem.h" +#include "TBNoiseWrite.h" #include "PathResolver/PathResolver.h" #include <TFile.h> #include <TTree.h> -#include "StoreGate/StoreGate.h" #include "CaloEvent/CaloCell.h" #include "CaloEvent/CaloCellContainer.h" #include "TBEvent/TBEventInfo.h" -#include "TBRec/TBNoiseWrite.h" - #include <fstream> TBNoiseWrite::TBNoiseWrite(const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBNoiseWrite.h b/TestBeam/TBRec/src/TBNoiseWrite.h similarity index 97% rename from TestBeam/TBRec/TBRec/TBNoiseWrite.h rename to TestBeam/TBRec/src/TBNoiseWrite.h index fbb90e524827ee4837592e640ac650baf965561e..417deb40991074019073b4a30f5b2cc649afae99 100644 --- a/TestBeam/TBRec/TBRec/TBNoiseWrite.h +++ b/TestBeam/TBRec/src/TBNoiseWrite.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBNOISEWRITE -#define TBNOISEWRITE +#ifndef TBREC_TBNOISEWRITE_H +#define TBREC_TBNOISEWRITE_H // // class TBNoiseWrite diff --git a/TestBeam/TBRec/src/TBPartIDCherenkovMuTag.cxx b/TestBeam/TBRec/src/TBPartIDCherenkovMuTag.cxx old mode 100755 new mode 100644 index ec5200ddf9d4446323af7e70e91a5f4cc2db21a0..2f66c7aad7a7067b22eb7a6497486402a1840cf3 --- a/TestBeam/TBRec/src/TBPartIDCherenkovMuTag.cxx +++ b/TestBeam/TBRec/src/TBPartIDCherenkovMuTag.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "TBRec/TBPartIDCherenkovMuTag.h" +#include "TBPartIDCherenkovMuTag.h" #include "TBEvent/TBIdentifiedParticle.h" #include "TBEvent/TBScintillatorCont.h" diff --git a/TestBeam/TBRec/TBRec/TBPartIDCherenkovMuTag.h b/TestBeam/TBRec/src/TBPartIDCherenkovMuTag.h old mode 100755 new mode 100644 similarity index 85% rename from TestBeam/TBRec/TBRec/TBPartIDCherenkovMuTag.h rename to TestBeam/TBRec/src/TBPartIDCherenkovMuTag.h index fe7ced1a6f3c1617b4ae11a6ca55547ec0370096..af136d4cca5cae6dbfcb11b68b29251b4631f311 --- a/TestBeam/TBRec/TBRec/TBPartIDCherenkovMuTag.h +++ b/TestBeam/TBRec/src/TBPartIDCherenkovMuTag.h @@ -4,11 +4,10 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBPARTICLEIDCHERENKOVMUTAG -#define TBPARTICLEIDCHERENKOVMUTAG +#ifndef TBREC_TBPARTICLEIDCHERENKOVMUTAG_H +#define TBREC_TBPARTICLEIDCHERENKOVMUTAG_H #include "AthenaBaseComps/AthAlgorithm.h" -#include "StoreGate/StoreGateSvc.h" class TBPartIDCherenkovMuTag : public AthAlgorithm { diff --git a/TestBeam/TBRec/src/TBPatternUnitStreamerTool.cxx b/TestBeam/TBRec/src/TBPatternUnitStreamerTool.cxx old mode 100755 new mode 100644 index c46375a0cd87f254f03dfba3149c59f15fbd6306..b7865f70450d4ac2261443c1e18918d2213f9a11 --- a/TestBeam/TBRec/src/TBPatternUnitStreamerTool.cxx +++ b/TestBeam/TBRec/src/TBPatternUnitStreamerTool.cxx @@ -2,21 +2,13 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" +#include "TBPatternUnitStreamerTool.h" #include "TBEvent/TBTriggerPatternUnit.h" #include "TBEvent/TBEventInfo.h" -#include "TBRec/TBPatternUnitStreamerTool.h" - #include <string> - -//#include <iomanip> #include <ios> -//#include <iomanip> TBPatternUnitStreamerTool::TBPatternUnitStreamerTool(const std::string& name, const std::string& type, diff --git a/TestBeam/TBRec/TBRec/TBPatternUnitStreamerTool.h b/TestBeam/TBRec/src/TBPatternUnitStreamerTool.h old mode 100755 new mode 100644 similarity index 98% rename from TestBeam/TBRec/TBRec/TBPatternUnitStreamerTool.h rename to TestBeam/TBRec/src/TBPatternUnitStreamerTool.h index 867ed5241bd341082473a0c66de77f1313669fec..d82e35f54959c88bfcca6ab6910370e535280438 --- a/TestBeam/TBRec/TBRec/TBPatternUnitStreamerTool.h +++ b/TestBeam/TBRec/src/TBPatternUnitStreamerTool.h @@ -24,7 +24,7 @@ * \date June 20, 2004 - first implementation */ -#include "TBRec/TBEventStreamerTool.h" +#include "TBEventStreamerTool.h" #include <string> #include <map> diff --git a/TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.cxx b/TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.cxx old mode 100755 new mode 100644 index 4dcbd680c33492576577356539fc8171bc608be7..687b3e0be329851a49eee30c534ce44f338c5be6 --- a/TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.cxx +++ b/TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.cxx @@ -2,20 +2,11 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" - +#include "TBPatternUnitStreamerToolH8.h" #include "TBEvent/TBTriggerPatternUnit.h" - -#include "TBRec/TBPatternUnitStreamerToolH8.h" - #include <string> - -//#include <iomanip> #include <ios> -//#include <iomanip> + TBPatternUnitStreamerToolH8::TBPatternUnitStreamerToolH8( const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBPatternUnitStreamerToolH8.h b/TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.h old mode 100755 new mode 100644 similarity index 98% rename from TestBeam/TBRec/TBRec/TBPatternUnitStreamerToolH8.h rename to TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.h index 67555b208c15b8e5aea1a047e2122fa98f833c9b..e3a2c04af8b4839ee32afd5b0cb803ddfd2861dd --- a/TestBeam/TBRec/TBRec/TBPatternUnitStreamerToolH8.h +++ b/TestBeam/TBRec/src/TBPatternUnitStreamerToolH8.h @@ -24,7 +24,7 @@ * \date July 28, 2004 - copy of TBPatternUnitStreamerTool adapted for H8 */ -#include "TBRec/TBEventStreamerTool.h" +#include "TBEventStreamerTool.h" #include <string> #include <map> diff --git a/TestBeam/TBRec/src/TBPhaseRec.cxx b/TestBeam/TBRec/src/TBPhaseRec.cxx old mode 100755 new mode 100644 index 2989133e8be1c153034c515ba5a93c9ae58fb349..f2c6cc12ac45a419e237bb80ff8c20a88342dd34 --- a/TestBeam/TBRec/src/TBPhaseRec.cxx +++ b/TestBeam/TBRec/src/TBPhaseRec.cxx @@ -3,15 +3,11 @@ */ -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/Property.h" +#include "TBPhaseRec.h" #include "EventInfo/EventInfo.h" #include "EventInfo/EventID.h" -#include "TBRec/TBPhaseRec.h" - #include "TBEvent/TBTDCRaw.h" #include "TBEvent/TBTDCRawCont.h" #include "TBEvent/TBPhase.h" diff --git a/TestBeam/TBRec/TBRec/TBPhaseRec.h b/TestBeam/TBRec/src/TBPhaseRec.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBPhaseRec.h rename to TestBeam/TBRec/src/TBPhaseRec.h diff --git a/TestBeam/TBRec/src/TBPhaseStreamerTool.cxx b/TestBeam/TBRec/src/TBPhaseStreamerTool.cxx old mode 100755 new mode 100644 index 7d2f5f17bbfe26f92cdcf9ede29d85468f8c5923..27f74eb3c3daf72604b8fc44f24b3f28ac3e567e --- a/TestBeam/TBRec/src/TBPhaseStreamerTool.cxx +++ b/TestBeam/TBRec/src/TBPhaseStreamerTool.cxx @@ -2,13 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" +#include "TBPhaseStreamerTool.h" #include "TBEvent/TBPhase.h" -#include "TBRec/TBPhaseStreamerTool.h" - #include <string> #include <ios> diff --git a/TestBeam/TBRec/TBRec/TBPhaseStreamerTool.h b/TestBeam/TBRec/src/TBPhaseStreamerTool.h old mode 100755 new mode 100644 similarity index 96% rename from TestBeam/TBRec/TBRec/TBPhaseStreamerTool.h rename to TestBeam/TBRec/src/TBPhaseStreamerTool.h index d916924a909b8419749e34d11f2e213fea1df73e..728162d3e8328685e2dabc7aa7cf8a2622347b53 --- a/TestBeam/TBRec/TBRec/TBPhaseStreamerTool.h +++ b/TestBeam/TBRec/src/TBPhaseStreamerTool.h @@ -19,7 +19,7 @@ * \date February 10, 2005 - first implementation */ -#include "TBRec/TBEventStreamerTool.h" +#include "TBEventStreamerTool.h" #include <string> #include <map> diff --git a/TestBeam/TBRec/src/TBPlaneTrackingAlgo.cxx b/TestBeam/TBRec/src/TBPlaneTrackingAlgo.cxx old mode 100755 new mode 100644 index b2a1218bf8cbf532f21f37eef618c5562213fbc1..11c249d5b36b789151818c05d0557e05def2dce3 --- a/TestBeam/TBRec/src/TBPlaneTrackingAlgo.cxx +++ b/TestBeam/TBRec/src/TBPlaneTrackingAlgo.cxx @@ -2,11 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/StatusCode.h" - -#include "PathResolver/PathResolver.h" - -#include "TBRec/TBPlaneTrackingAlgo.h" +#include "TBPlaneTrackingAlgo.h" #include "TBEvent/TBHitPlaneCont.h" #include "TBEvent/TBBPCCont.h" #include "TBEvent/TBHitPlane.h" @@ -15,6 +11,7 @@ #include "EventInfo/EventInfo.h" #include "EventInfo/EventID.h" +#include "PathResolver/PathResolver.h" #include <vector> #include <iostream> diff --git a/TestBeam/TBRec/TBRec/TBPlaneTrackingAlgo.h b/TestBeam/TBRec/src/TBPlaneTrackingAlgo.h old mode 100755 new mode 100644 similarity index 97% rename from TestBeam/TBRec/TBRec/TBPlaneTrackingAlgo.h rename to TestBeam/TBRec/src/TBPlaneTrackingAlgo.h index 1574c9380efcc9dbbb6dfc57d64e9a88e1607db5..711cb606a6b6a9ef774a884b3822ca181953bdd0 --- a/TestBeam/TBRec/TBRec/TBPlaneTrackingAlgo.h +++ b/TestBeam/TBRec/src/TBPlaneTrackingAlgo.h @@ -2,11 +2,10 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBPLANETRACKINGALGO_H -#define TBPLANETRACKINGALGO_H +#ifndef TBREC_TBPLANETRACKINGALGO_H +#define TBREC_TBPLANETRACKINGALGO_H #include "AthenaBaseComps/AthAlgorithm.h" -#include "StoreGate/StoreGateSvc.h" #include "TBEvent/TBHitPlaneCont.h" diff --git a/TestBeam/TBRec/src/TBPreScalerStreamerTool.cxx b/TestBeam/TBRec/src/TBPreScalerStreamerTool.cxx old mode 100755 new mode 100644 index 9a1a5317ab41fe400236079353cc3857baeb2357..d86120a46d874de44760e296cf54194cae7b5146 --- a/TestBeam/TBRec/src/TBPreScalerStreamerTool.cxx +++ b/TestBeam/TBRec/src/TBPreScalerStreamerTool.cxx @@ -2,13 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Service.h" - -#include "StoreGate/StoreGateSvc.h" - -#include "TBRec/TBEventStreamerTool.h" -#include "TBRec/TBPreScalerStreamerTool.h" +#include "TBEventStreamerTool.h" +#include "TBPreScalerStreamerTool.h" // already included in TBPreScalerStreamerTool.h //#include "CLHEP/Random/RanluxEngine.h" diff --git a/TestBeam/TBRec/TBRec/TBPreScalerStreamerTool.h b/TestBeam/TBRec/src/TBPreScalerStreamerTool.h old mode 100755 new mode 100644 similarity index 96% rename from TestBeam/TBRec/TBRec/TBPreScalerStreamerTool.h rename to TestBeam/TBRec/src/TBPreScalerStreamerTool.h index 249ca9a609f0de26ff032f5670f1d569a0662518..56a18444425ecda2478ccb438d77583977a710ab --- a/TestBeam/TBRec/TBRec/TBPreScalerStreamerTool.h +++ b/TestBeam/TBRec/src/TBPreScalerStreamerTool.h @@ -5,7 +5,7 @@ #ifndef TBREC_TBPRESCALERSTREAMERTOOL_H #define TBREC_TBPRESCALERSTREAMERTOOL_H -#include "TBRec/TBEventStreamerTool.h" +#include "TBEventStreamerTool.h" // This is needed for migration to CLHEP 1.9 // (Forward declarations of CLHEP classes will give rise to an error...) diff --git a/TestBeam/TBRec/src/TBScintillatorRec.cxx b/TestBeam/TBRec/src/TBScintillatorRec.cxx old mode 100755 new mode 100644 index e2e904f17769e60ee543caa9365e93dbf45cf075..114d5fe1a25f4bd73ad93a8bfeb663f9e61bd4b3 --- a/TestBeam/TBRec/src/TBScintillatorRec.cxx +++ b/TestBeam/TBRec/src/TBScintillatorRec.cxx @@ -3,19 +3,11 @@ */ -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/Property.h" - -#include "TBRec/TBScintillatorRec.h" +#include "TBScintillatorRec.h" #include "TBEvent/TBScintillatorCont.h" #include "TBEvent/TBScintillatorRawCont.h" -// static const AlgFactory<TBScintillatorRec> s_factory; -// const IAlgFactory& TBScintillatorRecFactory = s_factory; - - TBScintillatorRec::TBScintillatorRec(const std::string& name, ISvcLocator* pSvcLocator) : diff --git a/TestBeam/TBRec/TBRec/TBScintillatorRec.h b/TestBeam/TBRec/src/TBScintillatorRec.h old mode 100755 new mode 100644 similarity index 95% rename from TestBeam/TBRec/TBRec/TBScintillatorRec.h rename to TestBeam/TBRec/src/TBScintillatorRec.h index b0a63af49ebfd41223dfd18587c8e19966e10f6f..50e7ca3bf6700c0a28f96384b04001c3f366c290 --- a/TestBeam/TBRec/TBRec/TBScintillatorRec.h +++ b/TestBeam/TBRec/src/TBScintillatorRec.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBREC_TBSCINTREC -#define TBREC_TBSCINTREC +#ifndef TBREC_TBSCINTREC_H +#define TBREC_TBSCINTREC_H /////////////////////////////////////////////////////////////////////////////// // // // This algorithm controls event flow and reconstruction and monitoring // diff --git a/TestBeam/TBRec/src/TBTailCatcherRec.cxx b/TestBeam/TBRec/src/TBTailCatcherRec.cxx old mode 100755 new mode 100644 index 262566a7185cfeb978191af83e32528eedbb9de4..cb87906e5bfbdbee081bf38f7e2be2d737d34329 --- a/TestBeam/TBRec/src/TBTailCatcherRec.cxx +++ b/TestBeam/TBRec/src/TBTailCatcherRec.cxx @@ -2,18 +2,9 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#define WTC_ADC_MAX 1024 -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/Property.h" - -#include "TBRec/TBTailCatcherRec.h" - -// static const AlgFactory<TBObjectRecoAlgo> s_factory; -// const IAlgFactory& TBObjectRecoAlgoFactory = s_factory; - - +#include "TBTailCatcherRec.h" +#define WTC_ADC_MAX 1024 TBTailCatcherRec::TBTailCatcherRec(const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBTailCatcherRec.h b/TestBeam/TBRec/src/TBTailCatcherRec.h old mode 100755 new mode 100644 similarity index 94% rename from TestBeam/TBRec/TBRec/TBTailCatcherRec.h rename to TestBeam/TBRec/src/TBTailCatcherRec.h index ebf776183fe5166db568e22c319975e5559160a8..37963627f0e2db3d2d4276bab06ab874925078d5 --- a/TestBeam/TBRec/TBRec/TBTailCatcherRec.h +++ b/TestBeam/TBRec/src/TBTailCatcherRec.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBREC_TBTAILCATCHERREC -#define TBREC_TBTAILCATCHERREC +#ifndef TBREC_TBTAILCATCHERREC_H +#define TBREC_TBTAILCATCHERREC_H /////////////////////////////////////////////////////////////////////////////// // // // This algorithm controls event flow and reconstruction and monitoring // diff --git a/TestBeam/TBRec/src/TBTrackInfoFromTag.cxx b/TestBeam/TBRec/src/TBTrackInfoFromTag.cxx index 7ab588b3cd3ecbe959069408c15d1da414522222..05cc2ea64dff6fcc6d1c0e3ff799e2a5e3eb55e3 100644 --- a/TestBeam/TBRec/src/TBTrackInfoFromTag.cxx +++ b/TestBeam/TBRec/src/TBTrackInfoFromTag.cxx @@ -3,11 +3,7 @@ */ -#include "StoreGate/StoreGateSvc.h" - -#include "GaudiKernel/Property.h" - -#include "TBRec/TBTrackInfoFromTag.h" +#include "TBTrackInfoFromTag.h" // template functions for copying the contents of a 1- and 2-dim array into a vector diff --git a/TestBeam/TBRec/TBRec/TBTrackInfoFromTag.h b/TestBeam/TBRec/src/TBTrackInfoFromTag.h similarity index 95% rename from TestBeam/TBRec/TBRec/TBTrackInfoFromTag.h rename to TestBeam/TBRec/src/TBTrackInfoFromTag.h index 733c980ca862e21f90be705d2261c1033f3909df..0b93269bc2d07923779d78e0c0a57180ea950d49 100644 --- a/TestBeam/TBRec/TBRec/TBTrackInfoFromTag.h +++ b/TestBeam/TBRec/src/TBTrackInfoFromTag.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBTrackInfoFromTag_H -#define TBTrackInfoFromTag_H +#ifndef TBREC_TBTRACKINFOFROMTAG_H +#define TBREC_TBTRACKINFOFROMTAG_H /////////////////////////////////////////////////////////////////////////////// // // // MWPC Reconstruction algorithm. Based on code for 2002 TestBeam // @@ -45,8 +45,8 @@ class TChain; class TFile; class TString; -#include "TBRec/TileRec_h1000.h" -#include "TBRec/TB_tree.h" +#include "TileRec_h1000.h" +#include "TB_tree.h" class TBTrackInfoFromTag : public AthAlgorithm diff --git a/TestBeam/TBRec/src/TBTrackToCaloAlg.cxx b/TestBeam/TBRec/src/TBTrackToCaloAlg.cxx old mode 100755 new mode 100644 index 718fafc34220695cbb93bc7f2625cc74923951e4..24600bfffc9922301bf7dec373be02d08beba544 --- a/TestBeam/TBRec/src/TBTrackToCaloAlg.cxx +++ b/TestBeam/TBRec/src/TBTrackToCaloAlg.cxx @@ -7,12 +7,10 @@ // Implementation file for class TBTrackToCaloAlg /////////////////////////////////////////////////////////////////// -#include "TBRec/TBTrackToCaloAlg.h" -#include "TBRec/TBExtrapolTrackToCaloTool.h" +#include "TBTrackToCaloAlg.h" +#include "TBExtrapolTrackToCaloTool.h" // Gaudi includes -#include "StoreGate/StoreGate.h" -#include "StoreGate/StoreGateSvc.h" #include "GaudiKernel/IToolSvc.h" // Tracking includes @@ -37,7 +35,7 @@ //#include "ITrackToCalo/IExtrapolTrackToCaloTool.h" //#include "RecoToolInterfaces/IExtrapolateToCaloTool.h" -#include "TBRec/ImpactInCaloCollection.h" +#include "ImpactInCaloCollection.h" #include "AthenaKernel/Units.h" diff --git a/TestBeam/TBRec/TBRec/TBTrackToCaloAlg.h b/TestBeam/TBRec/src/TBTrackToCaloAlg.h old mode 100755 new mode 100644 similarity index 98% rename from TestBeam/TBRec/TBRec/TBTrackToCaloAlg.h rename to TestBeam/TBRec/src/TBTrackToCaloAlg.h index 708e4d6a59baf29b95f7b035fb6e38f27df311d4..d1091ab64ddc8ca8e7f2edb2e98b6ba8790938ad --- a/TestBeam/TBRec/TBRec/TBTrackToCaloAlg.h +++ b/TestBeam/TBRec/src/TBTrackToCaloAlg.h @@ -10,8 +10,8 @@ /////////////////////////////////////////////////////////////////// -#ifndef TESTLARDETDESCR_TESTTRACKTOCALO_H -#define TESTLARDETDESCR_TESTTRACKTOCALO_H +#ifndef TBREC_TBTRACKTOCALOALG_H +#define TBREC_TBTRACKTOCALOALG_H // Base class #include "AthenaBaseComps/AthAlgorithm.h" diff --git a/TestBeam/TBRec/src/TBTree_CaloClusterH6.cxx b/TestBeam/TBRec/src/TBTree_CaloClusterH6.cxx index d85bc684b62e5c3316a57258b5076fd4d6499fb4..9b0d22af30720a7b97855cf2637f2575a4f91fa9 100644 --- a/TestBeam/TBRec/src/TBTree_CaloClusterH6.cxx +++ b/TestBeam/TBRec/src/TBTree_CaloClusterH6.cxx @@ -7,8 +7,9 @@ // author: A.Minaenko // date: 25/07/2006 -#include "GaudiKernel/ISvcLocator.h" -#include "GaudiKernel/StatusCode.h" +#include "TBTree_CaloClusterH6.h" +#include "TBRec/TBH6RunHeader.h" + #include "GaudiKernel/IToolSvc.h" #include "GaudiKernel/ListItem.h" @@ -17,8 +18,6 @@ #include <TFile.h> #include <TTree.h> -#include "StoreGate/StoreGate.h" - #include "CaloDetDescr/CaloDetDescrManager.h" #include "CaloIdentifier/CaloCell_ID.h" #include "CaloIdentifier/CaloIdManager.h" @@ -41,9 +40,6 @@ #include "TBEvent/TBTrack.h" #include "TBEvent/TBTailCatcher.h" -#include "TBRec/TBH6RunHeader.h" -#include "TBRec/TBTree_CaloClusterH6.h" - #include <fstream> TBTree_CaloClusterH6::TBTree_CaloClusterH6(const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBTree_CaloClusterH6.h b/TestBeam/TBRec/src/TBTree_CaloClusterH6.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBTree_CaloClusterH6.h rename to TestBeam/TBRec/src/TBTree_CaloClusterH6.h diff --git a/TestBeam/TBRec/src/TBXCryYTableRead.cxx b/TestBeam/TBRec/src/TBXCryYTableRead.cxx index 907cd83f4f00397b0b28cd19a617f03a45c6e5eb..4b751997f8d5f26c33e6a5348138bbcb8aa56614 100644 --- a/TestBeam/TBRec/src/TBXCryYTableRead.cxx +++ b/TestBeam/TBRec/src/TBXCryYTableRead.cxx @@ -4,15 +4,9 @@ // class TBXCryYTableRead -#include "GaudiKernel/ISvcLocator.h" -#include "GaudiKernel/StatusCode.h" -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/IToolSvc.h" -#include "GaudiKernel/ListItem.h" +#include "TBXCryYTableRead.h" #include "PathResolver/PathResolver.h" -#include "StoreGate/StoreGate.h" #include "TBEvent/TBEventInfo.h" -#include "TBRec/TBXCryYTableRead.h" #include <fstream> TBXCryYTableRead::TBXCryYTableRead(const std::string& name, diff --git a/TestBeam/TBRec/TBRec/TBXCryYTableRead.h b/TestBeam/TBRec/src/TBXCryYTableRead.h similarity index 94% rename from TestBeam/TBRec/TBRec/TBXCryYTableRead.h rename to TestBeam/TBRec/src/TBXCryYTableRead.h index 9cb58647db98135f0cf9b0817378bf97e067f3ec..b0e75692a5d7b208013c05e3a37200896d434a81 100644 --- a/TestBeam/TBRec/TBRec/TBXCryYTableRead.h +++ b/TestBeam/TBRec/src/TBXCryYTableRead.h @@ -2,8 +2,8 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#ifndef TBXCRYYTABLEREAD -#define TBXCRYYTABLEREAD +#ifndef TBREC_TBXCRYYTABLEREAD_H +#define TBREC_TBXCRYYTABLEREAD_H // // class TBXCryYTableRead // diff --git a/TestBeam/TBRec/src/TBXMLCaloCellWriterTool.cxx b/TestBeam/TBRec/src/TBXMLCaloCellWriterTool.cxx old mode 100755 new mode 100644 index 9231fdb27274a4103e817a3a3403c6c5bc53109d..6c584eecfb5ff8d1a93fd347004fffa91e9e722d --- a/TestBeam/TBRec/src/TBXMLCaloCellWriterTool.cxx +++ b/TestBeam/TBRec/src/TBXMLCaloCellWriterTool.cxx @@ -3,16 +3,17 @@ */ +#include "TBXMLWriterToolBase.h" +#include "TBXMLCaloCellWriterTool.h" +#include "TBXMLWriter.h" + #include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/AlgTool.h" #include "CLHEP/Units/SystemOfUnits.h" #include "Identifier/Identifier.h" #include "Identifier/IdentifierHash.h" -#include "StoreGate/StoreGateSvc.h" - #include "CaloDetDescr/CaloDetDescrManager.h" #include "CaloDetDescr/CaloDetDescrElement.h" @@ -23,9 +24,6 @@ #include "CaloEvent/CaloCell.h" #include "CaloEvent/CaloCellContainer.h" -#include "TBRec/TBXMLWriterToolBase.h" -#include "TBRec/TBXMLCaloCellWriterTool.h" -#include "TBRec/TBXMLWriter.h" #include "boost/io/ios_state.hpp" #include <iostream> diff --git a/TestBeam/TBRec/TBRec/TBXMLCaloCellWriterTool.h b/TestBeam/TBRec/src/TBXMLCaloCellWriterTool.h old mode 100755 new mode 100644 similarity index 97% rename from TestBeam/TBRec/TBRec/TBXMLCaloCellWriterTool.h rename to TestBeam/TBRec/src/TBXMLCaloCellWriterTool.h index 82d068682b2cd9436a93cd8b4acde619db9be1a6..c4afbb7d363a1dd2eb4199d795838f13da83d5e1 --- a/TestBeam/TBRec/TBRec/TBXMLCaloCellWriterTool.h +++ b/TestBeam/TBRec/src/TBXMLCaloCellWriterTool.h @@ -11,7 +11,7 @@ #include "CaloIdentifier/CaloCell_ID.h" #include "CaloGeoHelpers/CaloSampling.h" -#include "TBRec/TBXMLWriterToolBase.h" +#include "TBXMLWriterToolBase.h" #include <iostream> #include <vector> diff --git a/TestBeam/TBRec/src/TBXMLEventWriterTool.cxx b/TestBeam/TBRec/src/TBXMLEventWriterTool.cxx old mode 100755 new mode 100644 index 5bf10c4353b2a35a4d45bf0e4b79911102952196..630320f320670a8547f10732fde7f3f8a2f22f43 --- a/TestBeam/TBRec/src/TBXMLEventWriterTool.cxx +++ b/TestBeam/TBRec/src/TBXMLEventWriterTool.cxx @@ -3,11 +3,9 @@ */ -#include "GaudiKernel/AlgTool.h" - -#include "TBRec/TBXMLWriterToolBase.h" -#include "TBRec/TBXMLEventWriterTool.h" -#include "TBRec/TBXMLWriter.h" +#include "TBXMLWriterToolBase.h" +#include "TBXMLEventWriterTool.h" +#include "TBXMLWriter.h" #include <string> diff --git a/TestBeam/TBRec/TBRec/TBXMLEventWriterTool.h b/TestBeam/TBRec/src/TBXMLEventWriterTool.h old mode 100755 new mode 100644 similarity index 96% rename from TestBeam/TBRec/TBRec/TBXMLEventWriterTool.h rename to TestBeam/TBRec/src/TBXMLEventWriterTool.h index efb411e36497d7c44f31a5108bb77af75c85db01..2d54842ece1c967718f4507110c9aa32cf3488d6 --- a/TestBeam/TBRec/TBRec/TBXMLEventWriterTool.h +++ b/TestBeam/TBRec/src/TBXMLEventWriterTool.h @@ -8,7 +8,7 @@ /// \brief writes out event header /////////////////////////////////////////////////////////////////////////////// -#include "TBRec/TBXMLWriterToolBase.h" +#include "TBXMLWriterToolBase.h" #include <iostream> #include <string> diff --git a/TestBeam/TBRec/src/TBXMLWriter.cxx b/TestBeam/TBRec/src/TBXMLWriter.cxx old mode 100755 new mode 100644 index 99e03e8be4f47e494d632df6a16a687f16386eba..cb43e1baf02fa041c096ac9ff653fe5fffc4383b --- a/TestBeam/TBRec/src/TBXMLWriter.cxx +++ b/TestBeam/TBRec/src/TBXMLWriter.cxx @@ -3,21 +3,15 @@ */ -// Gaudi -#include "GaudiKernel/MsgStream.h" -#include "GaudiKernel/Property.h" -#include "GaudiKernel/ListItem.h" +#include "TBXMLWriterToolBase.h" +#include "TBXMLWriter.h" -// StoreGate services -#include "StoreGate/StoreGateSvc.h" // event #include "EventInfo/EventInfo.h" #include "EventInfo/EventID.h" -// TBRec includes -#include "TBRec/TBXMLWriterToolBase.h" -#include "TBRec/TBXMLWriter.h" +#include "GaudiKernel/ListItem.h" #include <string> #include <vector> diff --git a/TestBeam/TBRec/TBRec/TBXMLWriter.h b/TestBeam/TBRec/src/TBXMLWriter.h similarity index 100% rename from TestBeam/TBRec/TBRec/TBXMLWriter.h rename to TestBeam/TBRec/src/TBXMLWriter.h diff --git a/TestBeam/TBRec/src/TBXMLWriterToolBase.cxx b/TestBeam/TBRec/src/TBXMLWriterToolBase.cxx old mode 100755 new mode 100644 index 78fcb75cbd41fdd539a6fc2dd0563bf99d5ded01..89d679c689ea9d0acb7e6fd0cb616062643cbe9b --- a/TestBeam/TBRec/src/TBXMLWriterToolBase.cxx +++ b/TestBeam/TBRec/src/TBXMLWriterToolBase.cxx @@ -3,7 +3,7 @@ */ -#include "TBRec/TBXMLWriterToolBase.h" +#include "TBXMLWriterToolBase.h" #include <iostream> #include <string> diff --git a/TestBeam/TBRec/TBRec/TBXMLWriterToolBase.h b/TestBeam/TBRec/src/TBXMLWriterToolBase.h old mode 100755 new mode 100644 similarity index 97% rename from TestBeam/TBRec/TBRec/TBXMLWriterToolBase.h rename to TestBeam/TBRec/src/TBXMLWriterToolBase.h index 88e2be4c8972176957a10bbe36c1cc2cdc0eb613..764fbc18ec09cdb0e951427715b7f13205dd5017 --- a/TestBeam/TBRec/TBRec/TBXMLWriterToolBase.h +++ b/TestBeam/TBRec/src/TBXMLWriterToolBase.h @@ -8,13 +8,8 @@ /// \brief base class for XML writer tools for 2004 event display /////////////////////////////////////////////////////////////////////////////// -#include "GaudiKernel/MsgStream.h" #include "AthenaBaseComps/AthAlgTool.h" - -#include "StoreGate/StoreGateSvc.h" - #include <iostream> - #include <vector> #include <string> diff --git a/TestBeam/TBRec/src/TB_tree.cxx b/TestBeam/TBRec/src/TB_tree.cxx index f23ce3e28d66c3b7e8e562843a5e1b30fc1d4abf..5c2dcc1a8fe01bdf421a4ac230c503bd26d914b9 100644 --- a/TestBeam/TBRec/src/TB_tree.cxx +++ b/TestBeam/TBRec/src/TB_tree.cxx @@ -2,8 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#define TB_tree_cxx -#include "TBRec/TB_tree.h" +#include "TB_tree.h" TB_tree::TB_tree(TTree *tree) : fChain(0), diff --git a/TestBeam/TBRec/TBRec/TB_tree.h b/TestBeam/TBRec/src/TB_tree.h similarity index 99% rename from TestBeam/TBRec/TBRec/TB_tree.h rename to TestBeam/TBRec/src/TB_tree.h index 67b1390cac686c8cb0892a5c112c88b47b01e349..c0c9c6a4b7768bc51896a3f413e1adb96d652234 100644 --- a/TestBeam/TBRec/TBRec/TB_tree.h +++ b/TestBeam/TBRec/src/TB_tree.h @@ -9,8 +9,8 @@ // found on file: cbnt_RecExTB_Combined_1207_2102095.0.root ////////////////////////////////////////////////////////// -#ifndef TB_tree_h -#define TB_tree_h +#ifndef TBREC_TB_TREE_H +#define TBREC_TB_TREE_H #include "AthenaKernel/CLASS_DEF.h" diff --git a/TestBeam/TBRec/src/TileRec_h1000.cxx b/TestBeam/TBRec/src/TileRec_h1000.cxx index 09db502f34c6aaf212969e5f9f536e0aef2d2073..c8ea33320a5847aee93aa0bba2a47aa83ed61750 100644 --- a/TestBeam/TBRec/src/TileRec_h1000.cxx +++ b/TestBeam/TBRec/src/TileRec_h1000.cxx @@ -2,8 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -#define TileRec_h1000_cxx -#include "TBRec/TileRec_h1000.h" +#include "TileRec_h1000.h" TileRec_h1000::TileRec_h1000(TTree *tree) : fChain(0), diff --git a/TestBeam/TBRec/TBRec/TileRec_h1000.h b/TestBeam/TBRec/src/TileRec_h1000.h similarity index 99% rename from TestBeam/TBRec/TBRec/TileRec_h1000.h rename to TestBeam/TBRec/src/TileRec_h1000.h index 3ab6f91eeb097a2d2f4584ede576cb6bfbe2eb9e..4c1e1a0e66476187332a42e039552871b89f4b1a 100644 --- a/TestBeam/TBRec/TBRec/TileRec_h1000.h +++ b/TestBeam/TBRec/src/TileRec_h1000.h @@ -9,8 +9,8 @@ // found on file: cbnt_RecExTB_Combined_1207_2102095.0.root ////////////////////////////////////////////////////////// -#ifndef TileRec_h1000_h -#define TileRec_h1000_h +#ifndef TBREC_TILEREC_H1000_H +#define TBREC_TILEREC_H1000_H #include "AthenaKernel/CLASS_DEF.h" diff --git a/TestBeam/TBRec/src/components/TBRec_entries.cxx b/TestBeam/TBRec/src/components/TBRec_entries.cxx index ad9244c6747758fab254200294956e6497d7159f..541cc7dd36462c69aa01f4a1a1793da5b9bbfd14 100644 --- a/TestBeam/TBRec/src/components/TBRec_entries.cxx +++ b/TestBeam/TBRec/src/components/TBRec_entries.cxx @@ -1,52 +1,52 @@ -#include "TBRec/TBAlgoSequencer.h" +#include "../TBAlgoSequencer.h" -#include "TBRec/TBXMLWriter.h" -#include "TBRec/TBXMLEventWriterTool.h" -#include "TBRec/TBXMLCaloCellWriterTool.h" -#include "TBRec/TBBPCRec.h" -#include "TBRec/TBMWPCRec.h" -#include "TBRec/TBScintillatorRec.h" -#include "TBRec/TBTailCatcherRec.h" -#include "TBRec/TBPlaneTrackingAlgo.h" -#include "TBRec/TBPhaseRec.h" -#include "TBRec/TBLArRawChannelBuilder.h" -#include "TBRec/TBECLArRawChannelBuilder.h" -#include "TBRec/TBEventStreamer.h" -#include "TBRec/TBPatternUnitStreamerTool.h" -#include "TBRec/TBPatternUnitStreamerToolH8.h" -#include "TBRec/TBEventInfoStreamerTool.h" -#include "TBRec/TBPreScalerStreamerTool.h" -#include "TBRec/CBNTAA_BeamInstrumentation.h" -#include "TBRec/CBNTAA_TBADCRaw.h" -#include "TBRec/CBNTAA_TBTDCRaw.h" -#include "TBRec/CBNTAA_TBInfo.h" -#include "TBRec/CBNTAA_TBTrack.h" -#include "TBRec/CBNTAA_TBScint.h" -#include "TBRec/CBNT_Timing.h" -#include "TBRec/CBNT_CaloH6.h" -#include "TBRec/CBNT_UpstreamMat.h" -#include "TBRec/TBPartIDCherenkovMuTag.h" -#include "TBRec/TBBeamQuality.h" -#include "TBRec/TBBeamQualityTool.h" -#include "TBRec/TBBeamQualityDoubleHitsTool.h" -#include "TBRec/TBBeamQualityMuonToolH6.h" -#include "TBRec/TBBeamQualityEMFractionTool.h" -#include "TBRec/TBBeamQualityTrackingTool.h" -#include "TBRec/TBPhaseStreamerTool.h" -#include "TBRec/TBEMECCellEtaCorrection.h" -#include "TBRec/TBClusterMaker.h" -#include "TBRec/TBTree_CaloClusterH6.h" -#include "TBRec/TBNoiseWrite.h" -#include "TBRec/TBCellNoiseCorrection.h" -#include "TBRec/TBCellContainerFillerTool.h" -#include "TBRec/CBNTAA_TBTPValidation.h" -#include "TBRec/TBTrackInfoFromTag.h" -#include "TBRec/TBBeamQualityMC.h" -#include "TBRec/TBXCryYTableRead.h" -#include "TBRec/TBDMContainerSplitter.h" -#include "TBRec/TBEMECXTalkToyModel.h" -#include "TBRec/TBExtrapolTrackToCaloTool.h" -#include "TBRec/TBTrackToCaloAlg.h" +#include "../TBXMLWriter.h" +#include "../TBXMLEventWriterTool.h" +#include "../TBXMLCaloCellWriterTool.h" +#include "../TBBPCRec.h" +#include "../TBMWPCRec.h" +#include "../TBScintillatorRec.h" +#include "../TBTailCatcherRec.h" +#include "../TBPlaneTrackingAlgo.h" +#include "../TBPhaseRec.h" +#include "../TBLArRawChannelBuilder.h" +#include "../TBECLArRawChannelBuilder.h" +#include "../TBEventStreamer.h" +#include "../TBPatternUnitStreamerTool.h" +#include "../TBPatternUnitStreamerToolH8.h" +#include "../TBEventInfoStreamerTool.h" +#include "../TBPreScalerStreamerTool.h" +#include "../CBNTAA_BeamInstrumentation.h" +#include "../CBNTAA_TBADCRaw.h" +#include "../CBNTAA_TBTDCRaw.h" +#include "../CBNTAA_TBInfo.h" +#include "../CBNTAA_TBTrack.h" +#include "../CBNTAA_TBScint.h" +#include "../CBNT_Timing.h" +#include "../CBNT_CaloH6.h" +#include "../CBNT_UpstreamMat.h" +#include "../TBPartIDCherenkovMuTag.h" +#include "../TBBeamQuality.h" +#include "../TBBeamQualityTool.h" +#include "../TBBeamQualityDoubleHitsTool.h" +#include "../TBBeamQualityMuonToolH6.h" +#include "../TBBeamQualityEMFractionTool.h" +#include "../TBBeamQualityTrackingTool.h" +#include "../TBPhaseStreamerTool.h" +#include "../TBEMECCellEtaCorrection.h" +#include "../TBClusterMaker.h" +#include "../TBTree_CaloClusterH6.h" +#include "../TBNoiseWrite.h" +#include "../TBCellNoiseCorrection.h" +#include "../TBCellContainerFillerTool.h" +#include "../CBNTAA_TBTPValidation.h" +#include "../TBTrackInfoFromTag.h" +#include "../TBBeamQualityMC.h" +#include "../TBXCryYTableRead.h" +#include "../TBDMContainerSplitter.h" +#include "../TBEMECXTalkToyModel.h" +#include "../TBExtrapolTrackToCaloTool.h" +#include "../TBTrackToCaloAlg.h" DECLARE_COMPONENT( TBXMLWriter ) DECLARE_COMPONENT( TBAlgoSequencer ) diff --git a/Tools/PyJobTransforms/python/trfArgClasses.py b/Tools/PyJobTransforms/python/trfArgClasses.py index 54946e52ab2c38b5381e7fffbb8e13ee9ad9fb66..1ee21b953cbafbd22033b4534c265de1d7ce7337 100644 --- a/Tools/PyJobTransforms/python/trfArgClasses.py +++ b/Tools/PyJobTransforms/python/trfArgClasses.py @@ -21,7 +21,7 @@ msg = logging.getLogger(__name__) import PyJobTransforms.trfExceptions as trfExceptions -from PyJobTransforms.trfFileUtils import athFileInterestingKeys, AthenaLiteFileInfo, NTUPEntries, HISTEntries, urlType, ROOTGetSize +from PyJobTransforms.trfFileUtils import athFileInterestingKeys, AthenaLiteFileInfo, NTUPEntries, HISTEntries, PRWEntries, urlType, ROOTGetSize from PyJobTransforms.trfUtils import call, cliToKey from PyJobTransforms.trfExitCodes import trfExit as trfExit from PyJobTransforms.trfDecorators import timelimited @@ -1578,14 +1578,26 @@ class argNTUPFile(argFile): 'file_guid': self._generateGUID, 'integrity': self._getIntegrity, }) - - + + if name and 'NTUP_PILEUP' in name: + self._metadataKeys.update({ + 'sumOfWeights': self._getNumberOfEvents, + }) + def _getNumberOfEvents(self, files): msg.debug('Retrieving event count for NTUP files {0}'.format(files)) if self._treeNames is None: - msg.debug('treeNames is set to None - event count undefined for this NTUP') for fname in files: - self._fileMetadata[fname]['nentries'] = 'UNDEFINED' + # Attempt to treat this as a pileup reweighting file + myEntries = PRWEntries(fileName=fname) + if myEntries is not None: + self._fileMetadata[fname]['nentries'] = myEntries + if self.name and 'NTUP_PILEUP' in self.name: + myEntries = PRWEntries(fileName=fname, integral=True) + self._fileMetadata[fname]['sumOfWeights'] = myEntries + else: + msg.debug('treeNames is set to None - event count undefined for this NTUP') + self._fileMetadata[fname]['nentries'] = 'UNDEFINED' else: for fname in files: try: @@ -1718,6 +1730,70 @@ class argHepEvtAsciiFile(argFile): msg.error('Event count for file {0} failed: {1!s}'.format(fname, e)) self._fileMetadata[fname]['nentries'] = None +## @brief LHE ASCII file +class argLHEFile(argFile): + def __init__(self, value=list(), io = 'output', type=None, splitter=',', runarg=True, multipleOK=None, name=None): + super(argLHEFile, self).__init__(value=value, io=io, type=type, splitter=splitter, runarg=runarg, multipleOK=multipleOK, + name=name) + + self._metadataKeys.update({ + 'nentries': self._getNumberOfEvents, + 'lheSumOfPosWeights': self._getWeightedEvents, + 'lheSumOfNegWeights': 0, + }) + + def _getNumberOfEvents(self, files): + msg.debug('Retrieving event count for LHE file {0}'.format(files)) + import tarfile + for fname in files: + # Attempt to treat this as a pileup reweighting file + try : + tar = tarfile.open(fname, "r:gz") + lhecount = 0 + for untar in tar.getmembers(): + fileTXT = tar.extractfile(untar) + if fileTXT is not None : + lines = fileTXT.read() + lhecount = lines.find('/event') + + self._fileMetadata[fname]['nentries'] = lhecount + except : + msg.debug('Entries is set to None - event count undefined for this LHE') + self._fileMetadata[fname]['nentries'] = 'UNDEFINED' + + def _getWeightedEvents(self, files): + msg.debug('Retrieving weight count for LHE file {0}'.format(files)) + import tarfile + import re + + for fname in files: + weightPos = 0 + weightNeg = 0 + try : + tar = tarfile.open(fname, "r:gz") + for untar in tar.getmembers(): + fileTXT = tar.extractfile(untar) + next = False + if fileTXT is not None : + lines = fileTXT.readlines() + for line in lines : + if next : + try : + w = float(re.sub(' +',' ',line).split(" ")[2]) + if w > 0 : weightPos += w + else : weightNeg += abs(w) + except : + pass + next = False + if "<event" in line : + next = True + + self._fileMetadata[fname]['lheSumOfPosWeights'] = weightPos + self._fileMetadata[fname]['lheSumOfNegWeights'] = weightNeg + except : + msg.debug('Entries is set to None - negative fraction count undefined for this LHE') + self._fileMetadata[fname]['lheSumOfPosWeights'] = 'UNDEFINED' + self._fileMetadata[fname]['lheSumOfNegWeights'] = 'UNDEFINED' ## @brief Base class for substep arguments # @details Sets up a dictionary with {substep1: value1, substep2: value2, ...} diff --git a/Tools/PyJobTransforms/python/trfArgs.py b/Tools/PyJobTransforms/python/trfArgs.py index a8b8f1669209eb109c398d6a0d6fbf35f25bb3b8..e35e36141934c196796052144455c4b91b456a43 100644 --- a/Tools/PyJobTransforms/python/trfArgs.py +++ b/Tools/PyJobTransforms/python/trfArgs.py @@ -475,8 +475,8 @@ def addExtraDPDTypes(parser, pick=None, transform=None, multipleOK=False, NTUPMe msg.debug('Adding DPD {0} ({1}, {2}, {3}, {4})'.format(dpd.name, dpd.type, dpd.substeps, dpd.treeNames, dpd.argclass)) # NTUPs are a bit special as they can take a treeName to count events if issubclass(dpd.argclass, trfArgClasses.argNTUPFile): - parser.add_argument('--output' + dpd.name + 'File', - type=argFactory(dpd.argclass, multipleOK=multipleOK, type=dpd.type, treeNames=dpd.treeNames), + parser.add_argument('--output' + dpd.name + 'File', + type=argFactory(dpd.argclass, name=dpd.name.upper(), multipleOK=multipleOK, type=dpd.type, treeNames=dpd.treeNames), group = 'Additional DPDs', metavar=dpd.name.upper(), help=dpd.help if dpd.help else 'DPD output {0} file'.format(dpd.name)) else: diff --git a/Tools/PyJobTransforms/python/trfFileUtils.py b/Tools/PyJobTransforms/python/trfFileUtils.py index 0735647bc6e21510d2e6f66557ba577b448a30da..b76fba42e416069e581d1243ac69895b047b3b71 100644 --- a/Tools/PyJobTransforms/python/trfFileUtils.py +++ b/Tools/PyJobTransforms/python/trfFileUtils.py @@ -212,6 +212,48 @@ def NTUPEntries(fileName, treeNames): return numberOfEntries +## @brief Determines number of entries in PRW file +# @param fileName Path to the PRW file. +# @param integral Returns sum of weights if true +# @return +# - Number of entries. +# - Sum of weights if integral is true. +# - @c None if the determination failed. +# @note Use the PyCmt forking decorator to ensure that ROOT is run completely within +# a child process and will not 'pollute' the parent python process with unthread-safe +# bits of code (otherwise strange hangs are observed on subsequent uses of ROOT) +@_decos.forking +def PRWEntries(fileName, integral=False): + + root = import_root() + + fname = root.TFile.Open(fileName, 'READ') + + if not (isinstance(fname, root.TFile) and fname.IsOpen()): + return None + + rundir = None + + for key in fname.GetListOfKeys(): + if key.GetName()=='PileupReweighting': + rundir = fname.Get('PileupReweighting') + break + # Not PRW... + + if rundir is None: return None + + total = 0 + for key in rundir.GetListOfKeys(): + if 'pileup' in key.GetName(): + msg.debug('Working on file '+fileName+' histo '+key.GetName()) + if integral: + total += rundir.Get(key.GetName()).Integral() + else: + total += rundir.Get(key.GetName()).GetEntries() + # Was not one of our histograms + return total + + ## @brief Get the size of a file via ROOT's TFile # @details Use TFile.Open to retrieve a ROOT filehandle, which will # deal with all non-posix filesystems. Return the GetSize() value. diff --git a/Tracking/TrkDetDescr/TrkGeometry/CMakeLists.txt b/Tracking/TrkDetDescr/TrkGeometry/CMakeLists.txt index 84207b9d4e21c743e0fec1fd9bbddc0bba18e50d..5fca33de8b83d15804b855b945748a459bf51b7a 100644 --- a/Tracking/TrkDetDescr/TrkGeometry/CMakeLists.txt +++ b/Tracking/TrkDetDescr/TrkGeometry/CMakeLists.txt @@ -9,9 +9,7 @@ atlas_subdir( TrkGeometry ) atlas_depends_on_subdirs( PUBLIC Control/AthenaBaseComps Control/AthenaKernel - Control/CLIDSvc - Control/DataModel - Control/SGTools + Control/AthContainers DetectorDescription/GeoPrimitives GaudiKernel Tracking/TrkDetDescr/TrkDetDescrUtils @@ -34,12 +32,12 @@ atlas_add_library( TrkGeometry PUBLIC_HEADERS TrkGeometry INCLUDE_DIRS ${EIGEN_INCLUDE_DIRS} PRIVATE_INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} - LINK_LIBRARIES ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel DataModel SGTools GeoPrimitives GaudiKernel TrkDetDescrUtils TrkGeometrySurfaces TrkSurfaces TrkVolumes TrkEventPrimitives TrkNeutralParameters TrkParameters + LINK_LIBRARIES ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel AthContainers GeoPrimitives GaudiKernel TrkDetDescrUtils TrkGeometrySurfaces TrkSurfaces TrkVolumes TrkEventPrimitives TrkNeutralParameters TrkParameters PRIVATE_LINK_LIBRARIES ${ROOT_LIBRARIES} EventPrimitives ) atlas_add_dictionary( TrkGeometryDict TrkGeometry/TrkGeometryDict.h TrkGeometry/selection.xml INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS} - LINK_LIBRARIES ${ROOT_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel DataModel SGTools GeoPrimitives GaudiKernel TrkDetDescrUtils TrkGeometrySurfaces TrkSurfaces TrkVolumes TrkEventPrimitives TrkNeutralParameters TrkParameters EventPrimitives TrkGeometry ) + LINK_LIBRARIES ${ROOT_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel AthContainers GeoPrimitives GaudiKernel TrkDetDescrUtils TrkGeometrySurfaces TrkSurfaces TrkVolumes TrkEventPrimitives TrkNeutralParameters TrkParameters EventPrimitives TrkGeometry ) diff --git a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/ElementTable.h b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/ElementTable.h index bcaac9c8c7bc6a28e75cde19fc6c80628d2c97cc..1cc9007752daa57917b8c74e3f5b475997e0a3c6 100644 --- a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/ElementTable.h +++ b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/ElementTable.h @@ -11,10 +11,10 @@ #include "TrkGeometry/Material.h" +#include "AthenaKernel/CLASS_DEF.h" #include <vector> #include <climits> #include <memory> -#include "CLIDSvc/CLASS_DEF.h" class MsgStream; diff --git a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialCollection.h b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialCollection.h index 65c444b465b931974b3e7109b1bd4c97a9318f15..84da1e882aecc3b026ae964bdff8fa3e8ac555ae 100644 --- a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialCollection.h +++ b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialCollection.h @@ -11,8 +11,8 @@ // Trk & Gaudi #include "TrkGeometry/LayerMaterialProperties.h" -#include "DataModel/DataVector.h" -#include "CLIDSvc/CLASS_DEF.h" +#include "AthContainers/DataVector.h" +#include "AthenaKernel/CLASS_DEF.h" namespace Trk { @@ -22,4 +22,4 @@ namespace Trk { CLASS_DEF( Trk::LayerMaterialCollection, 1264846423, 1 ) -#endif \ No newline at end of file +#endif diff --git a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialMap.h b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialMap.h index 179223b79331e640e6733cebf0823bc780c8c674..c7963b00ceea2b280b84a3efd27f01ba59e3ba3b 100644 --- a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialMap.h +++ b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/LayerMaterialMap.h @@ -15,7 +15,7 @@ #include "TrkDetDescrUtils/SharedObject.h" #include "TrkGeometry/LayerMaterialProperties.h" #include "TrkGeometry/ElementTable.h" -#include "CLIDSvc/CLASS_DEF.h" +#include "AthenaKernel/CLASS_DEF.h" namespace Trk { @@ -101,4 +101,4 @@ CLASS_DEF( Trk::LayerMaterialMap, 142190734, 1 ) // 142190734 Trk::LayerMaterialMap None -#endif \ No newline at end of file +#endif diff --git a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/MaterialStepCollection.h b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/MaterialStepCollection.h index 503e4f8d71c1174555eb77fa810a29f9309d1220..e48a456d3a5545ba82574c4be4d96103723c3512 100755 --- a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/MaterialStepCollection.h +++ b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/MaterialStepCollection.h @@ -10,8 +10,8 @@ #define TRKGEOMETRY_MATERIALSTEPCOLLECTION_H #include "TrkGeometry/MaterialStep.h" -#include "DataModel/DataVector.h" -#include "CLIDSvc/CLASS_DEF.h" +#include "AthContainers/DataVector.h" +#include "AthenaKernel/CLASS_DEF.h" namespace Trk { typedef DataVector<Trk::MaterialStep> MaterialStepCollection; diff --git a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrackingGeometry.h b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrackingGeometry.h index 03c2858d573fe94aba7f958cf9eafa4bf4bcb6da..965a66b9fdbcfc0344141ba13edd634c275852f3 100755 --- a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrackingGeometry.h +++ b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrackingGeometry.h @@ -15,7 +15,7 @@ #include "TrkGeometry/TrackingVolume.h" #include "TrkDetDescrUtils/GeometrySignature.h" // CLASS DEF -#include "CLIDSvc/CLASS_DEF.h" +#include "AthenaKernel/CLASS_DEF.h" // STL #include <map> // ATH_MSG macros diff --git a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrkGeometryDict.h b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrkGeometryDict.h index 943c52d56de477bf24bb45e2ee4564bdb5c2c8b0..3eed206381115b5586fdec9c8dc18471eb1e5640 100755 --- a/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrkGeometryDict.h +++ b/Tracking/TrkDetDescr/TrkGeometry/TrkGeometry/TrkGeometryDict.h @@ -7,7 +7,7 @@ #include "TrkGeometry/MaterialStep.h" #include "TrkGeometry/Layer.h" -#include "DataModel/DataVector.h" +#include "AthContainers/DataVector.h" namespace TrkDetDetDescrPoolRegister { /** the standard vector of MaterialStep */ diff --git a/Tracking/TrkEvent/TrkCaloClusterROI/CMakeLists.txt b/Tracking/TrkEvent/TrkCaloClusterROI/CMakeLists.txt index bbacb6928b0bfa02cfe747515d75f0c35bc96f92..1b2f586192be70447bdca08a62b7101f53b1b324 100644 --- a/Tracking/TrkEvent/TrkCaloClusterROI/CMakeLists.txt +++ b/Tracking/TrkEvent/TrkCaloClusterROI/CMakeLists.txt @@ -7,9 +7,8 @@ atlas_subdir( TrkCaloClusterROI ) # Declare the package's dependencies: atlas_depends_on_subdirs( PUBLIC - Control/CLIDSvc - Control/DataModel - Control/SGTools + Control/AthContainers + Control/AthenaKernel DetectorDescription/GeoPrimitives Event/EventPrimitives PRIVATE @@ -26,6 +25,6 @@ atlas_add_library( TrkCaloClusterROI PUBLIC_HEADERS TrkCaloClusterROI INCLUDE_DIRS ${EIGEN_INCLUDE_DIRS} PRIVATE_INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} - LINK_LIBRARIES ${EIGEN_LIBRARIES} DataModel SGTools GeoPrimitives EventPrimitives + LINK_LIBRARIES ${EIGEN_LIBRARIES} AthContainers GeoPrimitives EventPrimitives PRIVATE_LINK_LIBRARIES ${ROOT_LIBRARIES} TrkSurfaces TrkEventPrimitives ) diff --git a/Tracking/TrkEvent/TrkCaloClusterROI/TrkCaloClusterROI/CaloClusterROI_Collection.h b/Tracking/TrkEvent/TrkCaloClusterROI/TrkCaloClusterROI/CaloClusterROI_Collection.h index 15691e462e2dd2e15eb2164cb960d9c96c725dfe..76b28541c5454e77ba8598cc86d1e63b463758cc 100644 --- a/Tracking/TrkEvent/TrkCaloClusterROI/TrkCaloClusterROI/CaloClusterROI_Collection.h +++ b/Tracking/TrkEvent/TrkCaloClusterROI/TrkCaloClusterROI/CaloClusterROI_Collection.h @@ -6,8 +6,8 @@ #define TRKCALOCLUSTERROI_COLLECTION_H -#include "DataModel/DataVector.h" -#include "CLIDSvc/CLASS_DEF.h" +#include "AthContainers/DataVector.h" +#include "AthenaKernel/CLASS_DEF.h" #include "TrkCaloClusterROI/CaloClusterROI.h" diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx index 11687e7dc14ddde144834614e2c3a90f8d8e22ef..f7e96d53eb0aea8b89c39727e09b71b24ce471fb 100755 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx @@ -57,8 +57,6 @@ TrigCaloCellMakerMT::TrigCaloCellMakerMT(const std::string& name, ISvcLocator* p : AthAlgorithm(name, pSvcLocator), m_counter(0), m_dataAccessSvc( "TrigCaloDataAccessSvc/TrigCaloDataAccessSvc", name ), - m_caloCellContainer(NULL), - m_trigCaloQuality(NULL), m_fullScanEnabled(false), m_trustRoiLimits(false), m_createRoiForID(false), diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.h b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.h index 196f733c96af740e9fae01ed77564601f7d4caed..87b1eee3d9dc010dd28181aed1f83ec5dd3d7218 100755 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.h +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.h @@ -65,7 +65,6 @@ class TrigCaloCellMakerMT : public AthAlgorithm { int m_neta, m_nphi; /** Prescale factor for persistency **/ - unsigned int m_persistencyPSF; std::string m_persistencyKey; unsigned int m_counter; @@ -112,14 +111,6 @@ class TrigCaloCellMakerMT : public AthAlgorithm { "output TrigCaloQuality"}; - /** Produced Calorimeter Cell Container. */ - CaloCellContainer* m_caloCellContainer; - - - /** data preparation error */ - // unsigned int m_conversionError[6]; - TrigCaloQuality * m_trigCaloQuality; - // double m_EtaL2, m_PhiL2; bool m_fullScanEnabled; diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx index d284d1d363c9733883aa57914793691496818600..0dbb0a15a9311f30bab45a3ade09abbe64e9bfa5 100644 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx @@ -59,8 +59,7 @@ class ISvcLocator; // TrigCaloClusterMakerMT::TrigCaloClusterMakerMT(const std::string& name, ISvcLocator* pSvcLocator) : AthAlgorithm(name, pSvcLocator), - m_pCaloClusterContainer(NULL), - m_pTrigCaloQuality(NULL) + m_pCaloClusterContainer(NULL) { // Eta and Phi size of the RoI window... diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.h b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.h index aeff6f449608571b282c6bc5334e98e337f3c82d..18ad1df9a59ec99d87695365c6298704bc62e98b 100644 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.h +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.h @@ -58,7 +58,6 @@ class TrigCaloClusterMakerMT : public AthAlgorithm { std::vector<CaloClusterCollectionProcessor*> m_clusterMakerPointers; //pointers to tools std::vector<CaloClusterProcessor*> m_clusterCorrectionPointers; //pointers to tools xAOD::CaloClusterContainer* m_pCaloClusterContainer; - TrigCaloQuality* m_pTrigCaloQuality; // double m_Eta; // double m_Phi; diff --git a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py index c1d7f42972897a9a57170933bb3a58ea464fb35c..3c3f60136a59946aef4711383cca7c53f5459f2a 100644 --- a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py +++ b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py @@ -136,12 +136,9 @@ TrigEMShowerBuilder = EMShowerBuilder.copyPublic( ) from TriggerMenu.egamma.EgammaSliceFlags import EgammaSliceFlags -from egammaMVACalib import egammaMVACalibConf mlog.info("MVA version version %s"%EgammaSliceFlags.calibMVAVersion() ) mlog.info("Cluster Correction version %s"%EgammaSliceFlags.clusterCorrectionVersion() ) EgammaSliceFlags.calibMVAVersion.set_On() -TrigEgammaMVACalibTool = PublicToolFactory(egammaMVACalibConf.egammaMVATool,name="TrigEgammaMVACalibTool", - folder=EgammaSliceFlags.calibMVAVersion(),use_layer_corrected = False) from TrigCaloRec.TrigCaloRecConf import TrigCaloClusterMaker diff --git a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavBaseTool.h b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavBaseTool.h index d44ff092a34e892cb8021e07e571d9b0f0fb1107..850ed18d98bd213822bbd8bbcc3d891768e8324b 100755 --- a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavBaseTool.h +++ b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavBaseTool.h @@ -30,7 +30,6 @@ #include "xAODCaloEvent/CaloClusterAuxContainer.h" #include "xAODJet/JetContainer.h" #include "xAODTrigger/EmTauRoIContainer.h" -#include "egammaMVACalib/IegammaMVATool.h" #include "EgammaAnalysisInterfaces/IAsgElectronIsEMSelector.h" #include "EgammaAnalysisInterfaces/IAsgPhotonIsEMSelector.h" #include "EgammaAnalysisInterfaces/IAsgElectronLikelihoodTool.h" @@ -39,7 +38,6 @@ namespace Trig{ class FeatureContainer; } -class IegammaMVATool; class TrigEgammaNavBaseTool : public TrigEgammaAnalysisBaseTool, diff --git a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavTPBaseTool.h b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavTPBaseTool.h index 27a7c801734a429928ecbdc59420a950b9072ee4..317521db5d47f6ac02bc32ebd26abb8ec1f37e78 100644 --- a/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavTPBaseTool.h +++ b/Trigger/TrigAnalysis/TrigEgammaAnalysisTools/TrigEgammaAnalysisTools/TrigEgammaNavTPBaseTool.h @@ -29,7 +29,6 @@ #include "xAODCaloEvent/CaloClusterAuxContainer.h" #include "xAODJet/JetContainer.h" #include "xAODTrigger/EmTauRoIContainer.h" -#include "egammaMVACalib/IegammaMVATool.h" #include "EgammaAnalysisInterfaces/IAsgElectronIsEMSelector.h" #include "EgammaAnalysisInterfaces/IAsgPhotonIsEMSelector.h" #include "EgammaAnalysisInterfaces/IAsgElectronLikelihoodTool.h" @@ -37,7 +36,6 @@ namespace Trig{ class FeatureContainer; } -class IegammaMVATool; class TrigEgammaNavTPBaseTool : public TrigEgammaAnalysisBaseTool, diff --git a/Trigger/TrigFTK/TrigFTKSim/share/skeleton.AOD_FTK_Creator.py b/Trigger/TrigFTK/TrigFTKSim/share/skeleton.AOD_FTK_Creator.py index f295b0dd522df8985b5bf00dd83a4954be9a5c18..2b38375bd4513b1cbf96d2273a85950ae9a8dc0e 100755 --- a/Trigger/TrigFTK/TrigFTKSim/share/skeleton.AOD_FTK_Creator.py +++ b/Trigger/TrigFTK/TrigFTKSim/share/skeleton.AOD_FTK_Creator.py @@ -20,7 +20,11 @@ if hasattr(runArgs,"preInclude"): from AthenaCommon.AthenaCommonFlags import athenaCommonFlags -athenaCommonFlags.FilesInput = runArgs.inputRDO_FTKFile +if hasattr(runArgs,"inputRDO_FTKFile"): + athenaCommonFlags.FilesInput = runArgs.inputRDO_FTKFile + +elif hasattr(runArgs,"inputBS_FTKFile"): + athenaCommonFlags.FilesInput = runArgs.inputBS_FTKFile if hasattr(runArgs,"maxEvents"): ftkLog.info("Setting number of events: %d" % runArgs.maxEvents) diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/TrigEgammaHypo/TrigEFCaloCalibFex.h b/Trigger/TrigHypothesis/TrigEgammaHypo/TrigEgammaHypo/TrigEFCaloCalibFex.h index 03c7c966fa1269647453951194e2895e2a9755c1..f2c25b87b07713b0ff008d3410148058b7712c06 100755 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/TrigEgammaHypo/TrigEFCaloCalibFex.h +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/TrigEgammaHypo/TrigEFCaloCalibFex.h @@ -32,8 +32,9 @@ #include "xAODCaloEvent/CaloClusterContainer.h" #include "CaloUtils/CaloCellDetPos.h" +#include "egammaInterfaces/IegammaMVASvc.h" + class TrigCaloQuality; -class IegammaMVATool; /** * \class TrigEFCaloCalibFex * \brief TrigEFCaloCalibFex is a Trigger Fex Algorithm that retrieves the EF xAODCaloCluster @@ -61,13 +62,13 @@ class TrigEFCaloCalibFex : public HLT::FexAlgo { // to set Accept-All mode bool m_acceptAll; bool m_applyMVACalib; - std::string m_egType; + int m_egType; std::string m_persKey; // Cluster container key xAOD::CaloClusterContainer* m_pCaloClusterContainer; //!< pointer to CaloClusterContainer CaloCellDetPos *m_caloCellDetPos; /** Handle to the MVA calibration Tool **/ - ToolHandle<IegammaMVATool> m_MVACalibTool; + ServiceHandle<IegammaMVASvc> m_MVACalibSvc {this, "MVACalibSvc", ""}; // Timers TrigTimer* m_totalTimer; diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/python/TrigEFCaloCalibFexConfig.py b/Trigger/TrigHypothesis/TrigEgammaHypo/python/TrigEFCaloCalibFexConfig.py index d3491d181dc22f8479e55e9c3f9c30c6ffe4f72e..a1c7447d7f4bbbd110e84c2aa62f2d2fb5c43e28 100644 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/python/TrigEFCaloCalibFexConfig.py +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/python/TrigEFCaloCalibFexConfig.py @@ -12,7 +12,9 @@ from AthenaCommon.SystemOfUnits import GeV, mm from AthenaCommon.AppMgr import ToolSvc from egammaRec.Factories import Factory, ToolFactory -from TrigEgammaRec.TrigEgammaToolFactories import TrigEgammaMVACalibTool + +from egammaMVACalib.TrigEgammaMVACalibFactories import TrigEgammaMVASvc + def configureTrigEFCaloCalibFexMonitoring(tool): from TrigEgammaHypo.TrigEFCaloHypoMonitoring import TrigEFCaloCalibFexValidationMonitoring, TrigEFCaloCalibFexOnlineMonitoring @@ -23,11 +25,15 @@ def configureTrigEFCaloCalibFexMonitoring(tool): tool.AthenaMonTools = [ time, validation, online ] +import cppyy +cppyy.loadDictionary('xAODEgammaDict') +from ROOT import xAOD + TrigEFCaloCalibFex_Electron = Factory(TrigEgammaHypoConf.TrigEFCaloCalibFex, name = "TrigEFCaloCalibFex_Electron", doAdd=False, AcceptAll = True, ApplyMVACalib = True, - MVACalibTool = TrigEgammaMVACalibTool, - egType = 'Electron', + MVACalibSvc = TrigEgammaMVASvc, + egType = xAOD.EgammaParameters.electron, ClusterContainerKey = 'TrigEFCaloCalibFex', postInit = [configureTrigEFCaloCalibFexMonitoring], ) @@ -35,8 +41,8 @@ TrigEFCaloCalibFex_Electron = Factory(TrigEgammaHypoConf.TrigEFCaloCalibFex, nam TrigEFCaloCalibFex_Photon = Factory(TrigEgammaHypoConf.TrigEFCaloCalibFex, name = "TrigEFCaloCalibFex_Photon", doAdd=False, AcceptAll = True, ApplyMVACalib = True, - MVACalibTool = TrigEgammaMVACalibTool, - egType = 'Photon', + MVACalibSvc = TrigEgammaMVASvc, + egType = xAOD.EgammaParameters.unconvertedPhoton, ClusterContainerKey = 'TrigEFCaloCalibFex', postInit = [configureTrigEFCaloCalibFexMonitoring], ) diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEFCaloCalibFex.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEFCaloCalibFex.cxx index 065eebc8689863f617f2b6da8f881686d638c1c9..0e29c02124f6194ff2042d637683387e3b824a25 100755 --- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEFCaloCalibFex.cxx +++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigEFCaloCalibFex.cxx @@ -21,7 +21,6 @@ #include "xAODCaloEvent/CaloClusterContainer.h" #include "CaloUtils/CaloClusterStoreHelper.h" #include "TrigCaloRec/TrigCaloQuality.h" -#include "egammaMVACalib/IegammaMVATool.h" #include "xAODEgamma/EgammaEnums.h" class ISvcLocator; @@ -32,8 +31,8 @@ TrigEFCaloCalibFex::TrigEFCaloCalibFex(const std::string & name, ISvcLocator* pS { // Read cuts - should probably get these from an xml file declareProperty( "AcceptAll", m_acceptAll = false ); - declareProperty( "egType", m_egType = "Electron"); - declareProperty("MVACalibTool", m_MVACalibTool); + declareProperty( "egType", m_egType = xAOD::EgammaParameters::electron); + //declareProperty("MVACalibSvc", m_MVACalibSvc); declareProperty("ApplyMVACalib", m_applyMVACalib=true); declareProperty("ClusterContainerKey", m_persKey="TrigEFCaloCalibFex"); m_caloCellDetPos = new CaloCellDetPos(); @@ -72,19 +71,19 @@ HLT::ErrorCode TrigEFCaloCalibFex::hltInitialize() ATH_MSG_DEBUG("AcceptAll = " << (m_acceptAll==true ? "True" : "False") ); // Get the cluster correction tool - if(m_MVACalibTool.retrieve().isFailure()) { - ATH_MSG_ERROR("Failed to retrieve " << m_MVACalibTool); + if(m_MVACalibSvc.retrieve().isFailure()) { + ATH_MSG_ERROR("Failed to retrieve " << m_MVACalibSvc); m_applyMVACalib = false; return HLT::BAD_JOB_SETUP; } else { - ATH_MSG_DEBUG("Retrieved tool " << m_MVACalibTool); + ATH_MSG_DEBUG("Retrieved service " << m_MVACalibSvc); } if (timerSvc()){ m_totalTimer = addTimer("TrigEFCaloCalibFexTot"); - m_toolTimer = addTimer("MVACalibTool"); + m_toolTimer = addTimer("MVACalibSvc"); } ATH_MSG_DEBUG("Initialization of TrigEFCaloHypo completed successfully"); @@ -259,7 +258,7 @@ HLT::ErrorCode TrigEFCaloCalibFex::hltExecute(const HLT::TriggerElement* inputTE ATH_MSG_DEBUG("Applying MVA Calib"); if (timerSvc()) m_toolTimer->start(); - if(m_MVACalibTool->hltexecute(newClus,m_egType).isFailure()) + if(m_MVACalibSvc->execute(*newClus,static_cast<xAOD::EgammaParameters::EgammaType>(m_egType)).isFailure()) ATH_MSG_DEBUG("MVACalib Fails"); if (timerSvc()) m_toolTimer->stop(); } diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigMufastHypoTool.h b/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigMufastHypoTool.h index 6f0d9a00da5b0af477019216407d3d544c3c1fec..5a8292f8ffd80badd864da00b234ee617f5c7d3d 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigMufastHypoTool.h +++ b/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigMufastHypoTool.h @@ -41,18 +41,20 @@ class TrigMufastHypoTool: public ::AthAlgTool { virtual ~TrigMufastHypoTool(); struct MuonClusterInfo { - MuonClusterInfo( TrigCompositeUtils::Decision* d, const TrigRoiDescriptor* r, const xAOD::L2StandAloneMuon* c, + MuonClusterInfo( TrigCompositeUtils::Decision* d, + const TrigRoiDescriptor* r, + const xAOD::L2StandAloneMuon* f, const TrigCompositeUtils::Decision* previousDecision ) : decision( d ), roi( r ), - cluster( c ), - previousDecisionIDs(TrigCompositeUtils::decisionIDs( previousDecision ).begin(), - TrigCompositeUtils::decisionIDs( previousDecision ).end() ) + muFast( f ), + previousDecisionIDs( TrigCompositeUtils::decisionIDs( previousDecision ).begin(), + TrigCompositeUtils::decisionIDs( previousDecision ).end() ) {} TrigCompositeUtils::Decision* decision; const TrigRoiDescriptor* roi; - const xAOD::L2StandAloneMuon* cluster; + const xAOD::L2StandAloneMuon* muFast; const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs; }; diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoAlg.h b/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoAlg.h index 6c9450a151e504307a27131c7a7e6d41a14347b8..3cd7ad743d152343b6fe147adf384dd7afec9c7c 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoAlg.h +++ b/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoAlg.h @@ -7,7 +7,7 @@ #include <string> -#include "AthenaBaseComps/AthReentrantAlgorithm.h" +//#include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "StoreGate/ReadHandleKey.h" #include "StoreGate/WriteHandleKey.h" @@ -16,6 +16,7 @@ #include "AthViews/View.h" #include "TrigMuonHypo/TrigmuCombHypoTool.h" +#include "DecisionHandling/HypoBase.h" class StoreGateSvc; class TriggerElement; @@ -24,7 +25,7 @@ class TriggerElement; // -------------------------------------------------------------------------------- class TrigmuCombHypoAlg - : public ::AthReentrantAlgorithm + : public ::HypoBase { public: @@ -41,16 +42,7 @@ class TrigmuCombHypoAlg TrigmuCombHypoAlg(); ToolHandleArray<TrigmuCombHypoTool> m_hypoTools {this, "HypoTools", {}, "Tools to perform selection"}; - SG::WriteHandleKey<TrigCompositeUtils::DecisionContainer> m_decisionsKey{ - this, "Decisions", "MuonL2CBDecisions", "Name of the decision objects produced by TrigmuCombHypo"}; - - SG::ReadHandleKey<TrigCompositeUtils::DecisionContainer> m_muonDecisionsKey{ - this, "L2MuonFastDecisions", "L2MuonFastDecisions", "Name of the decisions objects to input from TrigMufastHypo"}; - - SG::ReadHandleKey< ViewContainer > m_viewsKey{ - this, "ViewRoIs", "MUTrkViewRoIs", "Name of the views produced by EVCA"}; - - SG::ReadHandleKey<xAOD::L2CombinedMuonContainer> m_combinedKey{ + SG::ReadHandleKey<xAOD::L2CombinedMuonContainer> m_muCombKey { this, "MuonL2CBInfoFromMuCombAlg", "MuonL2CBInfo", "Name of the input data produced by muCombMT"}; }; diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoTool.h b/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoTool.h index d135e76be3b10d80c7888f8c93fe64b9fc64490f..f3c2d6b1688e61ff0f15e192eec5cc0c6ea1b789 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoTool.h +++ b/Trigger/TrigHypothesis/TrigMuonHypo/TrigMuonHypo/TrigmuCombHypoTool.h @@ -40,9 +40,20 @@ class TrigmuCombHypoTool: public ::AthAlgTool { const IInterface* parent ); struct CombinedMuonInfo { - TrigCompositeUtils::Decision* decision; - const xAOD::L2CombinedMuon* cluster; - const xAOD::L2StandAloneMuon* muon; + CombinedMuonInfo( TrigCompositeUtils::Decision* d, + const xAOD::L2CombinedMuon* c, + const xAOD::L2StandAloneMuon* f, + const TrigCompositeUtils::Decision* previousDecision ) + : decision( d ), + muComb( c ), + muFast( f ), + previousDecisionIDs( TrigCompositeUtils::decisionIDs( previousDecision ).begin(), + TrigCompositeUtils::decisionIDs( previousDecision ).end() ) + {} + + TrigCompositeUtils::Decision* decision; + const xAOD::L2CombinedMuon* muComb; + const xAOD::L2StandAloneMuon* muFast; const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs; }; diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/python/testTrigMuonHypoConfig.py b/Trigger/TrigHypothesis/TrigMuonHypo/python/testTrigMuonHypoConfig.py index 4b2f376f583d2b2ed911c8342a74076a6f2f84dc..5af5cd4343e1a5012fc23933faaae928da8814ac 100755 --- a/Trigger/TrigHypothesis/TrigMuonHypo/python/testTrigMuonHypoConfig.py +++ b/Trigger/TrigHypothesis/TrigMuonHypo/python/testTrigMuonHypoConfig.py @@ -413,6 +413,33 @@ def TrigMufastHypoToolFromName( thresholdHLT ): return tool +def TrigmuCombHypoToolFromName( thresholdHLT ): + + name = "TrigmuCombHypoTool" + config = TrigmuCombHypoConfig() + + # Separete HLT_NmuX to bname[0]=HLT and bname[1]=NmuX + bname = thresholdHLT.split('_') + threshold = bname[1] + thresholds = config.decodeThreshold( threshold ) + print "TrigmuCombHypoConfig: Decoded ", thresholdHLT, " to ", thresholds + + tight = False + tool=config.ConfigurationHypoTool( thresholdHLT, thresholds, tight ) + + # Setup MonTool for monitored variables in AthenaMonitoring package + TriggerFlags.enableMonitoring = ["Validation"] + + try: + if 'Validation' in TriggerFlags.enableMonitoring() or 'Online' in TriggerFlags.enableMonitoring() or 'Cosmic' in TriggerFlags.enableMonitoring(): + tool.MonTool = TrigmuCombHypoMonitoring( name + "Monitoring_" + thresholdHLT ) + except AttributeError: + tool.MonTool = "" + print name, ' Monitoring Tool failed' + + return tool + + class TrigMufastHypoConfig(): def decodeThreshold( self, threshold ): @@ -484,44 +511,25 @@ class TrigMufastHypoConfig(): -# This class is copied from MucombHypoConfig. -class TrigmuCombHypoConfig(TrigmuCombHypoAlg): - - __slots__ = [] - - # thresholdHLT: name threshold, for example HLT_mu6 etc - def TrigmuCombHypoToolFromName( self, name, thresholdHLT ): +class TrigmuCombHypoConfig(): - from AthenaCommon.Constants import DEBUG - tool = TrigmuCombHypoTool( thresholdHLT ) - tool.OutputLevel = DEBUG - - # Separete HLT_NmuX to bname[0]=HLT and bname[1]=NmuX - bname = thresholdHLT.split('_') - - threshold = bname[1] - thresholds = TrigMufastHypoConfig().decodeThreshold( threshold ) - tight = False - - TrigmuCombHypoConfig().ConfigrationHypoTool( name, thresholdHLT, thresholds, tight ) - print """ Configration SUCCESS: Configure threshold """, threshold, """ at TrigmuCombHypoTool """ - - # Setup MonTool for monitored variables in AthenaMonitoring package - TriggerFlags.enableMonitoring = ["Validation"] - - try: - if 'Validation' in TriggerFlags.enableMonitoring() or 'Online' in TriggerFlags.enableMonitoring() or 'Cosmic' in TriggerFlags.enableMonitoring(): - tool.MonTool = TrigmuCombHypoMonitoring( name + "Monitoring_" + thresholdHLT ) - except AttributeError: - tool.MonTool = "" - print name, ' Monitoring Tool failed' + def decodeThreshold( self, threshold ): + """ decodes the thresholds of the form mu6, 2mu6, ... """ + print "decoding ", threshold - return tool + if threshold[0].isdigit(): # If the form is NmuX, return as list [X,X,X...N times...] + assert threshold[1:3] == "mu", "Two digit multiplicity not supported" + return [ threshold[3:] ] * int( threshold[0] ) + + if threshold.count('mu') > 1: # If theform is muXmuY, return as [X,Y] + return threshold.strip('mu').split('mu') + + # If the form is muX(inclusive), return as 1 element list + return [ threshold[2:] ] - def ConfigrationHypoTool( self, name, thresholdHLT, thresholds, tight ): + def ConfigurationHypoTool( self, thresholdHLT, thresholds, tight ): tool = TrigmuCombHypoTool( thresholdHLT ) - print 'MucombHypoConfig configured for threshold: ',thresholds datayear = "2017" @@ -556,7 +564,7 @@ class TrigmuCombHypoConfig(TrigmuCombHypoAlg): tool.MaxPtToApplyPik = 25. tool.MaxChi2IDPik = 3.5 - return thvaluename + return tool class MufastHypoConfig(MufastHypo) : diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoAlg.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoAlg.cxx index 2d99a0b409329e7a494a40862ae76f447d91f49f..b4f56f61103701722259b91e42443481e5fead11 100755 --- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoAlg.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoAlg.cxx @@ -115,7 +115,7 @@ StatusCode TrigMufastHypoAlg::execute_r( const EventContext& context ) const ATH_MSG_DEBUG("REGTEST: " << m_muFastKey.key() << " eta/phi = " << (*muonEL)->eta() << "/" << (*muonEL)->phi()); ATH_MSG_DEBUG("REGTEST: View = " << (*viewEL)); ATH_MSG_DEBUG("REGTEST: RoI = eta/phi = " << (*roiEL)->eta() << "/" << (*roiEL)->phi()); - ATH_MSG_DEBUG("Added view, roi, cluster, previous decision to new decision "<<counter <<" for view "<<view->name() ); + ATH_MSG_DEBUG("Added view, roi, feature, previous decision to new decision "<<counter <<" for view "<<view->name() ); counter++; } diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx index f1f9c3f9191673a3efda02fa2e29f190b72fee06..f40605c071015b52839d254f0df70a1c45d8d1ed 100755 --- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx @@ -120,7 +120,7 @@ bool TrigMufastHypoTool::decideOnSingleObject(TrigMufastHypoTool::MuonClusterInf } // Get xAOD::L2StandAloneMuon: - auto pMuon = input.cluster; + auto pMuon = input.muFast; if(!pMuon){ result = false; @@ -341,7 +341,7 @@ StatusCode TrigMufastHypoTool::multiplicitySelection(std::vector<TrigMufastHypoT auto notFromSameRoI = [&]( const HLT::Index1DVec& comb ) { std::set<const xAOD::L2StandAloneMuon*> setOfClusters; for ( auto index: comb ) { - setOfClusters.insert( toolInput[index].cluster ); + setOfClusters.insert( toolInput[index].muFast ); } return setOfClusters.size() == comb.size(); }; @@ -359,7 +359,7 @@ StatusCode TrigMufastHypoTool::multiplicitySelection(std::vector<TrigMufastHypoT for ( auto idx: passingIndices ) { ATH_MSG_DEBUG("Muon event[" << idx << "] passes through Chain/ID " << m_decisionId - << " with pT = " << toolInput[idx].cluster->pt() << "GeV" ); + << " with pT = " << toolInput[idx].muFast->pt() << "GeV" ); TrigCompositeUtils::addDecisionID( m_decisionId.numeric(), toolInput[idx].decision ); } diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoAlg.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoAlg.cxx index 2ac3137ad5669e31a353e50baeb45e7eaf5f1aaa..4f53a7f536fa2eaf8023c14c8eea5a5651895190 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoAlg.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoAlg.cxx @@ -1,11 +1,12 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration */ #include <math.h> #include "GaudiKernel/MsgStream.h" #include "GaudiKernel/StatusCode.h" +#include "AthLinks/ElementLink.h" #include "DecisionHandling/TrigCompositeUtils.h" #include "xAODTrigMuon/L2StandAloneMuonContainer.h" @@ -19,10 +20,8 @@ using namespace TrigCompositeUtils; TrigmuCombHypoAlg::TrigmuCombHypoAlg( const std::string& name, ISvcLocator* pSvcLocator ) : - ::AthReentrantAlgorithm( name, pSvcLocator ) -{ - -} + ::HypoBase( name, pSvcLocator ) +{} TrigmuCombHypoAlg::~TrigmuCombHypoAlg() {} @@ -35,14 +34,8 @@ StatusCode TrigmuCombHypoAlg::initialize() ATH_MSG_INFO ( "Initializing " << name() << "..." ); ATH_CHECK(m_hypoTools.retrieve()); - ATH_CHECK(m_decisionsKey.initialize()); - - ATH_CHECK(m_muonDecisionsKey.initialize()); - - ATH_CHECK(m_viewsKey.initialize()); - - renounce(m_combinedKey); - ATH_CHECK(m_combinedKey.initialize()); + renounce(m_muCombKey); + ATH_CHECK(m_muCombKey.initialize()); ATH_MSG_INFO( "Initialization completed successfully" ); return StatusCode::SUCCESS; @@ -63,93 +56,88 @@ StatusCode TrigmuCombHypoAlg::finalize() StatusCode TrigmuCombHypoAlg::execute_r(const EventContext& context) const { - + // common for all Hypos, to move in the base class ATH_MSG_DEBUG("StatusCode TrigmuCombHypoAlg::execute_r start"); + auto previousDecisionsHandle = SG::makeHandle( decisionInput(), context); + if ( not previousDecisionsHandle.isValid() ) {//implicit + ATH_MSG_DEBUG( "No implicit ReadHandles for previous decisions " << decisionInput().key() << ": is this expected?"); + return StatusCode::SUCCESS; + } + ATH_MSG_DEBUG( "Running with " << previousDecisionsHandle->size() << " implicit ReadHandles for previous decisions"); - // prepare decisions container auto decisions = std::make_unique<DecisionContainer>(); auto aux = std::make_unique<DecisionAuxContainer>(); decisions->setStore(aux.get()); - - // extract mapping of cluster pointer to an index in the cluster decision collection - auto clusterDecisionsHandle= SG::makeHandle( m_muonDecisionsKey, context ); - std::map<const xAOD::L2StandAloneMuon*, size_t> clusterToIndexMap; - - size_t clusterCounter = 0; - for (auto cluIter = clusterDecisionsHandle->begin(); cluIter != clusterDecisionsHandle->end(); ++cluIter) { - ATH_CHECK((*cluIter)->hasObjectLink("feature")); - const xAOD::L2StandAloneMuon* cluster = (*cluIter)->object<xAOD::L2StandAloneMuon>("feature"); - clusterToIndexMap.insert(std::make_pair(cluster, clusterCounter)); - - ++clusterCounter; - } - ATH_MSG_DEBUG( "Cluster ptr to decision map has size " << clusterToIndexMap.size() ); - - // prepare imput for tools - std::vector<TrigmuCombHypoTool::CombinedMuonInfo> hypoToolInput; - - // retrieve views created on l2muCombViewsCreator - auto viewsHandle = SG::makeHandle(m_viewsKey, context); - if (!viewsHandle.isValid()) { - ATH_MSG_ERROR("ReadHandle for ViewContainer key:" << m_viewsKey.key() << " is failed"); - return StatusCode::FAILURE; - } - - for (auto view: *viewsHandle) { - size_t muonCounter = 0; - - // retrieve xAOD::CombinedMuonContaier created on muComb algorithm - auto muonHandle = SG::makeHandle(m_combinedKey, context); - ATH_CHECK(muonHandle.setProxyDict(view)); - if(!muonHandle.isValid()) { - ATH_MSG_ERROR("ReadHandle for xAOD::L2CombinedMuonContainer key:" << m_combinedKey.key() << " is failed"); - return StatusCode::FAILURE; - } - - xAOD::L2CombinedMuonContainer::const_iterator muIter; - for (muIter = muonHandle->begin(); muIter != muonHandle->end(); ++muIter) { - auto d = newDecisionIn(decisions.get()); - auto element = ElementLink<xAOD::L2CombinedMuonContainer>(view->name()+"_"+m_combinedKey.key(), muonCounter); - d->setObjectLink("feature", element); - - // get muSATracks from xAOD::CombinedMuonContainer - auto clusterPtr = (*muIter)->muSATrack(); - ATH_CHECK(clusterPtr != nullptr); - - ATH_MSG_DEBUG("REGTEST: muSATrack pt in " << m_combinedKey.key() << " = " << clusterPtr->pt() << " GeV"); - ATH_MSG_DEBUG("REGTEST: muSATrack eta/phi in " << m_combinedKey.key() << " = " << clusterPtr->eta() << "/" << clusterPtr->phi()); - - ATH_MSG_DEBUG("REGTEST: muCBTrack pt in " << m_combinedKey.key() << " = " << (*muIter)->pt() << " GeV"); - ATH_MSG_DEBUG("REGTEST: muCBTrack eta/phi in " << m_combinedKey.key() << " = " << (*muIter)->eta() << "/" << (*muIter)->phi()); - - // now find matching cluster could use geometric matching - // but in fact the cluster owned by the decision object and the cluster owned by the electron should be the same - // since we have a map made in advance we can make use of the index lookup w/o the need for additional loop - auto origCluster = clusterToIndexMap.find(clusterPtr); - ATH_CHECK(origCluster != clusterToIndexMap.end()); - linkToPrevious(d, m_muonDecisionsKey.key(), origCluster->second); - - // now we have DecisionObject ready to be passed to hypo tool. - // it has link to electron, and decisions on clusters - // we shall avoid calling the tools for chains which were already rejected on certain cluster, but this is left to hypo tools - DecisionIDContainer clusterDecisionIDs; - decisionIDs(clusterDecisionsHandle->at(origCluster->second), clusterDecisionIDs); - - auto el = TrigmuCombHypoTool::CombinedMuonInfo{d, *muIter, origCluster->first, clusterDecisionIDs}; - hypoToolInput.emplace_back(el); - } - ++muonCounter; + // end of common + + std::vector<TrigmuCombHypoTool::CombinedMuonInfo> toolInput; + // loop over previous decisions + size_t counter = 0; + + for ( auto previousDecision: *previousDecisionsHandle ) { + // get L2MuonSA Feature + TrigCompositeUtils::LinkInfo<xAOD::L2StandAloneMuonContainer> linkInfo = + TrigCompositeUtils::findLink<xAOD::L2StandAloneMuonContainer>(previousDecision, "feature"); + ElementLink<xAOD::L2StandAloneMuonContainer> muFastLink = linkInfo.link; + ATH_CHECK( muFastLink.isValid() ); + const xAOD::L2StandAloneMuon* muFast = *muFastLink; + + // get View + ATH_CHECK( previousDecision->hasObjectLink("view") ); + auto viewEL = previousDecision->objectLink<ViewContainer>("view"); + ATH_CHECK( viewEL.isValid() ); + const SG::View* view_const = *viewEL; + SG::View* view = const_cast<SG::View*>(view_const); // CHECK THIS! + ATH_MSG_INFO("DEBUG: view name = " << view->name() ); + + // get info + auto muCombHandle = SG::makeHandle( m_muCombKey, context ); + ATH_CHECK( muCombHandle.setProxyDict(view) ); + ATH_CHECK( muCombHandle.isValid() ); + ATH_MSG_DEBUG( "Muinfo handle size: " << muCombHandle->size() << "..."); + + auto muCombEL = ElementLink<xAOD::L2CombinedMuonContainer> ( view->name()+"_"+m_muCombKey.key(), 0 ); + ATH_CHECK( muCombEL.isValid() ); + const xAOD::L2CombinedMuon* muComb = *muCombEL; + + // create new decisions + auto newd = newDecisionIn( decisions.get() ); + + toolInput.emplace_back( TrigmuCombHypoTool::CombinedMuonInfo{ newd, muComb, muFast, previousDecision} ); + + // set objectLink + newd->setObjectLink( "feature", muCombEL ); + TrigCompositeUtils::linkToPrevious( newd, decisionInput().key(), counter); + + // DEBUG + auto muFastInfo = (*muCombEL)->muSATrack(); + ATH_MSG_DEBUG("REGTEST: muSATrack pt in " << m_muCombKey.key() << " = " << muFastInfo->pt() << " GeV"); + ATH_MSG_DEBUG("REGTEST: muSATrack eta/phi in " << m_muCombKey.key() << " = " << muFastInfo->eta() << "/" << muFastInfo->phi()); + + ATH_MSG_DEBUG("REGTEST: muCBTrack pt in " << m_muCombKey.key() << " = " << (*muCombEL)->pt() << " GeV"); + ATH_MSG_DEBUG("REGTEST: muCBTrack eta/phi in " << m_muCombKey.key() << " = " << (*muCombEL)->eta() << "/" << (*muCombEL)->phi()); + ATH_MSG_DEBUG("Added view, features, previous decision to new decision "<<counter <<" for view "<<view->name() ); + + counter++; } - - // hypo tools for ( auto & tool: m_hypoTools ) { ATH_MSG_DEBUG("Go to " << tool); - ATH_CHECK( tool->decide( hypoToolInput ) ); + ATH_CHECK( tool->decide( toolInput ) ); + } + {// make output handle and debug, in the base class + auto outputHandle = SG::makeHandle( decisionOutput(), context ); + ATH_CHECK( outputHandle.record( std::move( decisions ), std::move( aux ) ) ); + ATH_MSG_DEBUG( "Exit with " << outputHandle->size() << " decisions"); + TrigCompositeUtils::DecisionIDContainer allPassingIDs; + if ( outputHandle.isValid() ) { + for ( auto decisionObject: *outputHandle ) { + TrigCompositeUtils::decisionIDs ( decisionObject, allPassingIDs ); + } + for ( TrigCompositeUtils::DecisionID id: allPassingIDs ) { + ATH_MSG_DEBUG( " +++ " << HLT::Identifier( id ) ); + } + } } - - // recorded decision objects on TrigmuCombHypo - auto handle = SG::makeHandle( m_decisionsKey, context ); - ATH_CHECK( handle.record( std::move( decisions ), std::move( aux ) ) ); ATH_MSG_DEBUG("StatusCode TrigmuCombHypoAlg::execute_r success"); return StatusCode::SUCCESS; diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx index b14eee2b91cd158f2ac3297506def9f1b1957266..325125a3740f20c40e7b9ae85a9b7746ee3269bb 100644 --- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx +++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx @@ -104,7 +104,7 @@ bool TrigmuCombHypoTool::decideOnSingleObject(TrigmuCombHypoTool::CombinedMuonIn //Retrieve combined muon //xAOD::L2CombinedMuon - auto pMuon = input.cluster; + auto pMuon = input.muComb; if (!pMuon) { result = false; ATH_MSG_ERROR("Retrieval of xAOD::L2CombinedMuon from vector failed"); @@ -280,7 +280,7 @@ StatusCode TrigmuCombHypoTool::multiplicitySelection(std::vector<TrigmuCombHypoT auto notFromSameRoI = [&]( const HLT::Index1DVec& comb ) { std::set<const xAOD::L2CombinedMuon*> setOfClusters; for ( auto index: comb ) { - setOfClusters.insert( input[index].cluster ); + setOfClusters.insert( input[index].muComb ); } return setOfClusters.size() == comb.size(); }; @@ -298,7 +298,7 @@ StatusCode TrigmuCombHypoTool::multiplicitySelection(std::vector<TrigmuCombHypoT for ( auto idx: passingIndices ) { ATH_MSG_DEBUG("Muon event[" << idx << "] passes through Chain/ID " << m_decisionId - << " with pT = " << input[idx].cluster->pt() << "GeV" ); + << " with pT = " << input[idx].muComb->pt() << "GeV" ); TrigCompositeUtils::addDecisionID( m_decisionId.numeric(), input[idx].decision ); } diff --git a/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.cxx b/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.cxx index b0c90cbb504504873c257af0991410137ef077ae..182baa214e3b8b3617802061b564195c9b3a89c2 100644 --- a/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.cxx +++ b/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.cxx @@ -87,7 +87,7 @@ struct xAODGenerator { template<typename T> StatusCode HLTEDMCreator::noMerge( ViewContainer const&, const SG::ReadHandleKey<T>&, - EventContext const&, T & ) const { + EventContext const&, T & ) const { // if we are called it means views merging is requested but Type T does not support it (i.e. missing copy c'tor) return StatusCode::FAILURE; @@ -103,13 +103,91 @@ StatusCode HLTEDMCreator::viewsMerge( ViewContainer const& views, const SG::Rea ViewHelper::ViewMerger merger( sg, msg() ); merger.mergeViewCollection<type_in_container>( views, inViewKey, context, output ); - return StatusCode::SUCCESS; + return StatusCode::SUCCESS; } + +StatusCode HLTEDMCreator::fixLinks( const ConstHandlesGroup< xAOD::TrigCompositeContainer >& handles ) const { + + // Make a list of the collections we're going to mess with + std::set< std::string > remappedCollections; + for ( auto writeHandleKey : handles.out ) { + + remappedCollections.insert( writeHandleKey.key() ); + } + + // Do the remapping + for ( auto writeHandleKey : handles.out ) { + + SG::ReadHandle<xAOD::TrigCompositeContainer> readHandle( writeHandleKey.key() ); + + if ( readHandle.isValid() ) { + + // Create a container for the remapped TCs + xAODGenerator<xAOD::TrigCompositeContainer, xAOD::TrigCompositeAuxContainer> output; + output.create(); + + // Examine each input TC + for ( auto inputDecision : *( readHandle.cptr() ) ) { + + // Clone the TC (xAOD-style copy) + xAOD::TrigComposite * outputDecision = new xAOD::TrigComposite(); + output.data->push_back( outputDecision ); + *outputDecision = *inputDecision; + + // Retrieve the link information for remapping + SG::AuxElement::Accessor< std::vector< uint32_t > > keyAccessor( "linkColKeys" ); + SG::AuxElement::Accessor< std::vector< uint16_t > > offsetAccessor( "linkColIndices" ); + std::vector< uint32_t > remappedKeys = keyAccessor( *outputDecision ); + std::vector< uint16_t > remappedOffsets = offsetAccessor( *outputDecision ); + + // Search the linked collections for remapping + unsigned int const collectionTotal = inputDecision->linkColNames().size(); + for ( unsigned int collectionIndex = 0; collectionIndex < collectionTotal; ++collectionIndex ) { + + // Load identifiers + std::string const collectionName = inputDecision->linkColNames()[ collectionIndex ]; + uint32_t const collectionKey = inputDecision->linkColKeys()[ collectionIndex ]; + std::string const keyString = *( evtStore()->keyToString( collectionKey ) ); + uint32_t const collectionClid = inputDecision->linkColClids()[ collectionIndex ]; + uint16_t const collectionOffset = inputDecision->linkColIndices()[ collectionIndex ]; + + // Check for remapping in a merge + uint32_t newKey = 0; + size_t newOffset = 0; + bool isRemapped = evtStore()->tryELRemap( collectionKey, collectionOffset, newKey, newOffset); + if ( isRemapped ) { + + ATH_MSG_DEBUG( "Remap link from " << *( evtStore()->keyToString( collectionKey ) ) << " to " << *( evtStore()->keyToString( newKey ) ) ); + remappedKeys[ collectionIndex ] = newKey; + remappedOffsets[ collectionIndex ] = newOffset; + } + + // If the link is to a collection modified in this method, will also need to be remapped + // WARNING: untested + if ( remappedCollections.find( keyString ) != remappedCollections.end() ) { + + ATH_MSG_DEBUG( "Remap link to collection: " << keyString << " -> " << keyString << "_remap" ); + remappedKeys[ collectionIndex ] = evtStore()->stringToKey( keyString + "_remap", collectionClid ); + } + } + + // Save the remaps + keyAccessor( *outputDecision ) = remappedKeys; + offsetAccessor( *outputDecision ) = remappedOffsets; + } + // Store the remapped TCs + SG::WriteHandle<xAOD::TrigCompositeContainer> writeHandle( writeHandleKey.key() + "_remap" ); + output.record( writeHandle ); + } + } + + return StatusCode::SUCCESS; +} template<typename T, typename G, typename M> -StatusCode HLTEDMCreator::createIfMissing( const EventContext& context, const ConstHandlesGroup<T>& handles, G& generator, M merger) const { +StatusCode HLTEDMCreator::createIfMissing( const EventContext& context, const ConstHandlesGroup<T>& handles, G& generator, M merger ) const { for ( auto writeHandleKey : handles.out ) { SG::ReadHandle<T> readHandle( writeHandleKey.key() ); @@ -175,6 +253,9 @@ StatusCode HLTEDMCreator::createOutput(const EventContext& context) const { CREATE_XAOD( TrigCaloClusterContainer, TrigCaloClusterAuxContainer ) CREATE_XAOD( TrackParticleContainer, TrackParticleAuxContainer ) + // After view collections are merged, need to update collection links + CHECK( fixLinks( ConstHandlesGroup<xAOD::TrigCompositeContainer>( m_TrigCompositeContainer, m_TrigCompositeContainerInViews, m_TrigCompositeContainerViews ) ) ); + #undef CREATE_XAOD #undef CREATE_XAOD_NO_MERGE return StatusCode::SUCCESS; diff --git a/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.h b/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.h index 81989eea315bc029a94afb47d59261d90c5f2b0d..b925cbeed651612430e5066fdf1b734ab5a7fde0 100644 --- a/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.h +++ b/Trigger/TrigSteer/TrigOutputHandling/src/HLTEDMCreator.h @@ -123,7 +123,7 @@ class HLTEDMCreator: public extends<AthAlgTool, IHLTOutputTool> { const SG::ReadHandleKeyArray< ViewContainer >& views; }; - + StatusCode fixLinks( const ConstHandlesGroup< xAOD::TrigCompositeContainer >& handles ) const; template<typename T, typename G, typename M > StatusCode createIfMissing( const EventContext& context, const ConstHandlesGroup<T>& handles, diff --git a/Trigger/TrigValidation/TrigP1Test/Testing/TrigP1Test_ART.conf b/Trigger/TrigValidation/TrigP1Test/Testing/TrigP1Test_ART.conf index a557dddb4db8cdde81eeacd54590fc092d613565..6ae7eeed32dcdfcc994619c48a4033e879c7930f 100644 --- a/Trigger/TrigValidation/TrigP1Test/Testing/TrigP1Test_ART.conf +++ b/Trigger/TrigValidation/TrigP1Test/Testing/TrigP1Test_ART.conf @@ -865,3 +865,13 @@ test 182 checkcount /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/TrigP1Test/ref/latest/HLT_physicsV7_FTK/trigp1test_HLT_physicsV7_FTK.root 1 HLT athena_cmd athenaHLT.py -o HLT_physicsV7_FTK -n 30 -f /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/TrigP1Test/RAW_FTK.pool.root -c 'testPhysicsV7=True;HLTOutputLevel=INFO;doValidation=True;fpeAuditor=True;from TriggerJobOpts.TriggerFlags import TriggerFlags;TriggerFlags.doFTK=True' TriggerRelease/runHLT_standalone.py post_command chainDump.py -n -S + +test 183 + name athenaHLT_LatestRun_MCV7 + doc athenaHLT on latest available run + filterlog filterREGTEST.py + checklog --config checklogTrigP1Test.conf --showexcludestats + athena_cmd trigp1test_athenaHLT.py --nfiles=1 --dir='/eos/atlas/atlastier0/rucio/data18_13TeV/physics_Main/' --modifiers="testMCV7=True;fpeAuditor=True;from PerfMonComps.PerfMonFlags import jobproperties as pmon_properties ; pmon_properties.PerfMonFlags.doSemiDetailedMonitoring=True" + post_command chainDump.py -n -S + + diff --git a/Trigger/TrigValidation/TrigP1Test/test/test_athenaHLT_LatestRun_MCV7_build.sh b/Trigger/TrigValidation/TrigP1Test/test/test_athenaHLT_LatestRun_MCV7_build.sh index 57256e037893e16ee3c43edc4dec7be52bd69a6e..58be93c4a906619d854a0c415216422c3a3b8560 100755 --- a/Trigger/TrigValidation/TrigP1Test/test/test_athenaHLT_LatestRun_MCV7_build.sh +++ b/Trigger/TrigValidation/TrigP1Test/test/test_athenaHLT_LatestRun_MCV7_build.sh @@ -9,12 +9,17 @@ # art-include: master/AthenaP1 # art-include: master/Athena -export NAME="athenaHLT_LatestRun_MCV7_build" +if [ -z ${TEST} ]; then + export TEST="TrigP1Test" +fi -timeout 40m trigp1test_athenaHLT.py --nfiles=1 --dir='/eos/atlas/atlastier0/rucio/data18_13TeV/physics_Main/' --modifiers="testMCV7=True;fpeAuditor=True;from PerfMonComps.PerfMonFlags import jobproperties as pmon_properties ; pmon_properties.PerfMonFlags.doSemiDetailedMonitoring=True" +export NAME="athenaHLT_LatestRun_MCV7" +export JOB_LOG="${NAME}.log" + +timeout 100m trigtest_ART.pl --cleardir --test ${NAME} --rundir ${NAME} --conf TrigP1Test_ART.conf | tee ${JOB_LOG} ATH_RETURN=${PIPESTATUS[0]} echo "art-result: ${ATH_RETURN} ${NAME}" -timeout 10m exec_art_trigp1test_post.sh + diff --git a/Trigger/TrigValidation/TrigUpgradeTest/python/MenuHypoTools.py b/Trigger/TrigValidation/TrigUpgradeTest/python/MenuHypoTools.py index 2e5752709e263f38c851c8443e8c611b254a8374..1d53dc39f23d940d1934b9a9c7e73b4128e02b73 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/python/MenuHypoTools.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/python/MenuHypoTools.py @@ -2,7 +2,7 @@ from TrigUpgradeTest.HLTSignatureConfig import TestHypoTool, MuTestHypoTool, ElTestHypoTool from TrigEgammaHypo.TrigEgammaHypoConf import TrigL2CaloHypoToolInc, TrigL2CaloHypoToolMult, TrigL2ElectronHypoTool, TrigL2PhotonHypoTool #from TrigEgammaHypo.TrigL2CaloHypoTool import * -from TrigMuonHypo.TrigMuonHypoConf import TrigMufastHypoTool +from TrigMuonHypo.TrigMuonHypoConf import TrigMufastHypoTool, TrigmuCombHypoTool from AthenaCommon.Constants import VERBOSE,INFO,DEBUG def createHypoTool(hypoToolClassName, hypoToolName): @@ -47,3 +47,15 @@ def TrigMufastHypoToolConf(name): #hypotool= TrigMufastHypoConfig.TrigMufastHypoToolFromName(name) hypotool.OutputLevel = DEBUG return hypotool + +def TrigmuCombHypoToolConf(name): + from AthenaCommon.Constants import DEBUG + from TrigMuonHypo.testTrigMuonHypoConfig import TrigmuCombHypoToolFromName + print "in TrigmuCombHypoToolConf" + #TrigmuCombHypoToolFromName + hypotool= TrigmuCombHypoToolFromName(name) + #hypotool= TrigmuCombHypoConfig.TrigmuCombHypoToolFromName(name) + hypotool.OutputLevel = DEBUG + return hypotool + + diff --git a/Trigger/TrigValidation/TrigUpgradeTest/python/muMenuDefs.py b/Trigger/TrigValidation/TrigUpgradeTest/python/muMenuDefs.py index e42bb300df71dc63e6fc85ec7629cdfefaaa870f..3385f7f9970c5c305727a5ce5301059e6b38a7ea 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/python/muMenuDefs.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/python/muMenuDefs.py @@ -44,14 +44,13 @@ from AthenaCommon.CFElements import parOR, seqAND, seqOR, stepSeq doL2SA=True -doL2CB=False +doL2CB=True doEFSA=False -TriggerFlags.doID=False +TriggerFlags.doID=True -# =============================================================================================== -# Setup PrepData -# =============================================================================================== - +# =========================================== +# SET PREPARATOR DATA +# =========================================== ### Used the algorithms as Step2 "muComb step" ### if TriggerFlags.doID: @@ -60,11 +59,11 @@ if TriggerFlags.doID: (viewAlgs, eventAlgs) = makeInDetAlgs() from TrigFastTrackFinder.TrigFastTrackFinder_Config import TrigFastTrackFinder_Muon - theFTF = TrigFastTrackFinder_Muon() - theFTF.OutputLevel = DEBUG - theFTF.TracksName = "TrigFastTrackFinder_MuTracks" - theFTF.isRoI_Seeded = True - viewAlgs.append(theFTF) + theFTF_Muon = TrigFastTrackFinder_Muon() + theFTF_Muon.OutputLevel = DEBUG + #theFTF_Muon.TracksName = "TrigFastTrackFinder_MuTracks" + theFTF_Muon.isRoI_Seeded = True + viewAlgs.append(theFTF_Muon) ### A simple algorithm to confirm that data has been inherited from parent view ### ### Required to satisfy data dependencies ### @@ -91,7 +90,7 @@ if TriggerFlags.doMuon: from ViewAlgs.ViewAlgsConf import EventViewCreatorAlgorithm if doL2SA: - l2MuViewNode = seqAND("l2MuViewNode") + l2MuViewNode = parOR("l2MuViewNode") l2MuViewsMaker = EventViewCreatorAlgorithm("l2MuViewsMaker", OutputLevel=DEBUG) l2MuViewsMaker.ViewFallThrough = True l2MuViewsMaker.RoIsLink = "initialRoI" # -||- @@ -99,6 +98,7 @@ if TriggerFlags.doMuon: l2MuViewsMaker.Views = "MUViewRoIs" l2MuViewsMaker.ViewNodeName = l2MuViewNode.name() + ### It cannot be used because it has not yet been migrated for muon menu ### if doEFSA: efMuViewNode = AthSequencer("efMuViewNode", Sequential=False, ModeOR=False, StopOverride=False) efMuViewsMaker = EventViewCreatorAlgorithm("efMuViewsMaker", OutputLevel=DEBUG) @@ -112,7 +112,7 @@ if TriggerFlags.doMuon: efMuViewsMaker.ViewNodeName = efMuViewNode.name() if doEFSA or doL2SA: - ### ==================== Data prepartion needed for the EF and L2 SA #######################333 + ### ==================== Data prepartion needed for the EF and L2 SA ==================== ### ### CSC RDO data ### if muonRecFlags.doCSCs(): from MuonCSC_CnvTools.MuonCSC_CnvToolsConf import Muon__CscROD_Decoder @@ -294,22 +294,9 @@ if TriggerFlags.doMuon: efMuViewNode += MuonClusterAlg - ### muon thresholds ### - testChains = ["HLT_mu6", "HLT_2mu6"] - - ### set up L1RoIsFilter ### - from DecisionHandling.DecisionHandlingConf import RoRSeqFilter, DumpDecisions - filterL1RoIsAlg = RoRSeqFilter("filterL1RoIsAlg") - filterL1RoIsAlg.Input = ["MURoIDecisions"] - filterL1RoIsAlg.Output = ["FilteredMURoIDecisions"] - filterL1RoIsAlg.Chains = testChains - filterL1RoIsAlg.OutputLevel = DEBUG - - -# =============================================================================================== -# Setup L2MuonSA -# =============================================================================================== - +# =========================================== +# SET L2MUONSA +# =========================================== if doL2SA: ### set up MuFastSteering ### from TrigL2MuonSA.TrigL2MuonSAConfig import TrigL2MuonSAMTConfig @@ -327,7 +314,7 @@ if TriggerFlags.doMuon: muFastAlg.forID = "forID" muFastAlg.forMS = "forMS" - # set up MuFastHypo + ### set up MuFastHypo ### from TrigMuonHypo.TrigMuonHypoConf import TrigMufastHypoAlg trigMufastHypo = TrigMufastHypoAlg("L2MufastHypoAlg") trigMufastHypo.OutputLevel = DEBUG @@ -336,7 +323,7 @@ if TriggerFlags.doMuon: l2muFast_HLTSequence = HLTRecoSequence("l2muFast_HLTSequence", Sequence=l2muFastSequence, - Maker=l2MuViewsMaker, + Maker=l2MuViewsMaker, Seed="L1MU") muFastStep = MenuSequence("muFastStep", @@ -344,30 +331,22 @@ if TriggerFlags.doMuon: Hypo=trigMufastHypo, HypoToolClassName="TrigMufastHypoToolConf") - -# =============================================================================================== -# Setup muComb -# =============================================================================================== - +# =========================================== +# SET L2MUCOMB +# =========================================== if doL2CB: - ### RoRSeqFilter step2 ### - filterL2SAAlg = RoRSeqFilter("filterL2SAAlg") - filterL2SAAlg.Input = [trigMufastHypo.Decisions] - filterL2SAAlg.Output = ["Filtered"+trigMufastHypo.Decisions] - filterL2SAAlg.Chains = testChains - filterL2SAAlg.OutputLevel = DEBUG - - l2muCombViewNode = AthSequencer("l2muCombViewNode", Sequential=False, ModeOR=False, StopOverride=False) + ### set up step2 ### + l2muCombViewNode = parOR("l2muCombViewNode") l2muCombViewsMaker = EventViewCreatorAlgorithm("l2muCombViewsMaker", OutputLevel=DEBUG) l2muCombViewsMaker.ViewFallThrough = True - - l2muCombViewsMaker.InputMakerInputDecisions = [ filterL2SAAlg.Output[0] ] # Output of TrigMufastHypo - l2muCombViewsMaker.InputMakerOutputDecisions = [ filterL2SAAlg.Output[0]+"Comb" ] # Output of TrigMufastHypo l2muCombViewsMaker.RoIsLink = "roi" # -||- - l2muCombViewsMaker.InViewRoIs = "MUTrkRoIs" # contract with the consumer - l2muCombViewsMaker.Views = "MUTrkViewRoIs" + #l2muCombViewsMaker.InViewRoIs = "MUTrkRoIs" # contract with the consumer + #l2muCombViewsMaker.Views = "MUTrkViewRoIs" + l2muCombViewsMaker.InViewRoIs = "EMIDRoIs" # contract with the consumer + l2muCombViewsMaker.Views = "EMCombViewRoIs" l2muCombViewsMaker.ViewNodeName = l2muCombViewNode.name() + ### Define input data of Inner Detector algorithms ### ### and Define EventViewNodes to run the algprithms ### TrackParticlesName = "" @@ -379,12 +358,12 @@ if TriggerFlags.doMuon: viewAlg.roiCollectionName = l2muCombViewsMaker.InViewRoIs if viewAlg.name() == "InDetTrigTrackParticleCreatorAlg": TrackParticlesName = viewAlg.TrackParticlesName - viewAlg.TrackName = theFTF.TracksName + #viewAlg.TrackName = theFTF_Muon.TracksName ### please read out TrigmuCombMTConfig file ### ### and set up to run muCombMT algorithm ### from TrigmuComb.TrigmuCombMTConfig import TrigmuCombMTConfig - muCombAlg = TrigmuCombMTConfig("Muon", theFTF.getName()) + muCombAlg = TrigmuCombMTConfig("Muon", theFTF_Muon.getName()) muCombAlg.OutputLevel = DEBUG muCombAlg.L2StandAloneMuonContainerName = muFastAlg.MuonL2SAInfo muCombAlg.TrackParticlesContainerName = TrackParticlesName @@ -393,142 +372,145 @@ if TriggerFlags.doMuon: l2muCombViewNode += muCombAlg ### set up muCombHypo algorithm ### - from TrigMuonHypo.TrigMuonHypoConfig import TrigmuCombHypoConfig - trigmuCombHypo = TrigmuCombHypoConfig("L2muCombHypoAlg") + from TrigMuonHypo.TrigMuonHypoConf import TrigmuCombHypoAlg + #trigmuCombHypo = TrigmuCombHypoAlg("L2muCombHypoAlg") # avoid to have "Comb" string in the name due to HLTCFConfig.py. + trigmuCombHypo = TrigmuCombHypoAlg("L2muHypoAlg") trigmuCombHypo.OutputLevel = DEBUG - - trigmuCombHypo.Decisions = "MuonL2CBDecisions" - trigmuCombHypo.L2MuonFastDecisions = trigMufastHypo.Decisions - trigmuCombHypo.ViewRoIs = l2muCombViewsMaker.Views trigmuCombHypo.MuonL2CBInfoFromMuCombAlg = muCombAlg.L2CombinedMuonContainerName - trigmuCombHypo.HypoTools = [ trigmuCombHypo.TrigmuCombHypoToolFromName( "L2muCombHypoTool", c ) for c in testChains ] - - muCombDecisionsDumper = DumpDecisions("muCombDecisionsDumper", OutputLevel=DEBUG, Decisions = trigmuCombHypo.Decisions ) - - ### Define a Sequence to run for muComb ### - l2muCombSequence = seqAND("l2muCombSequence", eventAlgs + [l2muCombViewsMaker, l2muCombViewNode, trigmuCombHypo ] ) - muCombStep = stepSeq("muCombStep", filterL2SAAlg, [ l2muCombSequence, muCombDecisionsDumper ] ) - - -# =============================================================================================== -# Setup EFMuonSA -# =============================================================================================== - - if doEFSA: - ### RoRSeqFilter step2 ### - filterEFSAAlg = RoRSeqFilter("filterEFSAAlg") - filterEFSAAlg.Input = [trigmuCombHypo.Decisions] - filterEFSAAlg.Output = ["Filtered"+trigmuCombHypo.Decisions] - filterEFSAAlg.Chains = testChains - filterEFSAAlg.OutputLevel = DEBUG - - from TrkDetDescrSvc.TrkDetDescrSvcConf import Trk__TrackingVolumesSvc - ServiceMgr += Trk__TrackingVolumesSvc("TrackingVolumesSvc",BuildVolumesFromTagInfo = False) - - theSegmentFinder = CfgGetter.getPublicToolClone("MuonSegmentFinder","MooSegmentFinder") - theSegmentFinder.DoSummary=True - CfgGetter.getPublicTool("MuonLayerHoughTool").DoTruth=False - theSegmentFinderAlg=CfgMgr.MooSegmentFinderAlg( "MuonSegmentMaker", - SegmentFinder=theSegmentFinder, - MuonSegmentOutputLocation = "MooreSegments", - UseCSC = muonRecFlags.doCSCs(), - UseMDT = muonRecFlags.doMDTs(), - UseRPC = muonRecFlags.doRPCs(), - UseTGC = muonRecFlags.doTGCs(), - doClusterTruth=False, - UseTGCPriorBC = False, - UseTGCNextBC = False, - doTGCClust = muonRecFlags.doTGCClusterSegmentFinding(), - doRPCClust = muonRecFlags.doRPCClusterSegmentFinding(), OutputLevel=DEBUG ) - - - - theNCBSegmentFinderAlg=CfgMgr.MooSegmentFinderAlg( "MuonSegmentMaker_NCB", - SegmentFinder = getPublicToolClone("MooSegmentFinder_NCB","MuonSegmentFinder", - DoSummary=False, - Csc2dSegmentMaker = getPublicToolClone("Csc2dSegmentMaker_NCB","Csc2dSegmentMaker", - segmentTool = getPublicToolClone("CscSegmentUtilTool_NCB", - "CscSegmentUtilTool", - TightenChi2 = False, - IPconstraint=False)), - Csc4dSegmentMaker = getPublicToolClone("Csc4dSegmentMaker_NCB","Csc4dSegmentMaker", - segmentTool = getPublicTool("CscSegmentUtilTool_NCB")), - DoMdtSegments=False,DoSegmentCombinations=False,DoSegmentCombinationCleaning=False), - MuonPatternCombinationLocation = "NCB_MuonHoughPatternCombinations", - MuonSegmentOutputLocation = "NCB_MuonSegments", - MuonSegmentCombinationOutputLocation = "NCB_MooreSegmentCombinations", - UseCSC = muonRecFlags.doCSCs(), - UseMDT = False, - UseRPC = False, - UseTGC = False, - UseTGCPriorBC = False, - UseTGCNextBC = False, - doTGCClust = False, - doRPCClust = False) - - from MuonRecExample.MuonStandalone import MuonTrackSteering - MuonTrackSteering.DoSummary=True - MuonTrackSteering.DoSummary=DEBUG - TrackBuilder = CfgMgr.MuPatTrackBuilder("MuPatTrackBuilder" ) - TrackBuilder.TrackSteering=CfgGetter.getPublicToolClone("MuonTrackSteering", "MuonTrackSteering") - - from AthenaCommon.Include import include - include("InDetBeamSpotService/BeamCondSvc.py" ) - from xAODTrackingCnv.xAODTrackingCnvConf import xAODMaker__TrackParticleCnvAlg, xAODMaker__TrackCollectionCnvTool, xAODMaker__RecTrackParticleContainerCnvTool - - muonParticleCreatorTool = getPublicTool("MuonParticleCreatorTool") - - muonTrackCollectionCnvTool = xAODMaker__TrackCollectionCnvTool( name = "MuonTrackCollectionCnvTool", TrackParticleCreator = muonParticleCreatorTool ) - - muonRecTrackParticleContainerCnvTool = xAODMaker__RecTrackParticleContainerCnvTool(name = "MuonRecTrackParticleContainerCnvTool", TrackParticleCreator = muonParticleCreatorTool ) - - xAODTrackParticleCnvAlg = xAODMaker__TrackParticleCnvAlg( name = "MuonStandaloneTrackParticleCnvAlg", - TrackParticleCreator = muonParticleCreatorTool, - TrackCollectionCnvTool=muonTrackCollectionCnvTool, - RecTrackParticleContainerCnvTool = muonRecTrackParticleContainerCnvTool, - TrackContainerName = "MuonSpectrometerTracks", - xAODTrackParticlesFromTracksContainerName = "MuonSpectrometerTrackParticles", - ConvertTrackParticles = False, - ConvertTracks = True) - + l2muCombSequence = seqAND("l2muCombSequence", eventAlgs + [l2muCombViewsMaker, l2muCombViewNode ] ) - thetrkbuilder = getPublicToolClone("CombinedMuonTrackBuilder_SA", "CombinedMuonTrackBuilder", MuonHoleRecovery="", CaloMaterialProvider='TMEF_TrkMaterialProviderTool') - theCandidateTool = getPublicToolClone("MuonCandidateTool_SA", "MuonCandidateTool", TrackBuilder=thetrkbuilder) - theMuonCandidateAlg=CfgMgr.MuonCombinedMuonCandidateAlg("MuonCandidateAlg",MuonCandidateTool=theCandidateTool) - - - thecreatortool= getPublicToolClone("MuonCreatorTool_SA", "MuonCreatorTool", ScatteringAngleTool="", CaloMaterialProvider='TMEF_TrkMaterialProviderTool', MuonSelectionTool="", FillTimingInformation=False, OutputLevel=DEBUG) - - themuoncreatoralg = CfgMgr.MuonCreatorAlg("MuonCreatorAlg") - themuoncreatoralg.MuonCreatorTool=thecreatortool - themuoncreatoralg.CreateSAmuons=True - themuoncreatoralg.ClusterContainerName="" - - #Algorithms to views - efMuViewNode += theSegmentFinderAlg -# efMuViewNode += theNCBSegmentFinderAlg #The configuration still needs some sorting out for this so disabled for now. - efMuViewNode += TrackBuilder - efMuViewNode += xAODTrackParticleCnvAlg - efMuViewNode += theMuonCandidateAlg - efMuViewNode += themuoncreatoralg - - #Setup MS-only hypo - from TrigMuonHypo.TrigMuonHypoConfig import TrigMuonEFMSonlyHypoConfig - trigMuonEFSAHypo = TrigMuonEFMSonlyHypoConfig("MuonEFSAHypoAlg") - trigMuonEFSAHypo.OutputLevel = DEBUG - - trigMuonEFSAHypo.ViewRoIs = efMuViewsMaker.Views - trigMuonEFSAHypo.MuonDecisions = "Muons" - trigMuonEFSAHypo.RoIs = efMuViewsMaker.InViewRoIs - trigMuonEFSAHypo.Decisions = "EFMuonSADecisions" - trigMuonEFSAHypo.L1Decisions = efMuViewsMaker.InputMakerInputDecisions[0] - - trigMuonEFSAHypo.HypoTools = [ trigMuonEFSAHypo.TrigMuonEFMSonlyHypoToolFromName( "TrigMuonEFMSonlyHypoTool", c ) for c in testChains ] + l2muComb_HLTSequence = HLTRecoSequence("l2muComb_HLTSequence", + Sequence=l2muCombSequence, + Maker=l2muCombViewsMaker, + Seed="L1MU") - muonEFSADecisionsDumper = DumpDecisions("muonEFSADecisionsDumper", OutputLevel=DEBUG, Decisions = trigMuonEFSAHypo.Decisions ) - muonEFSAStep = seqAND("muonEFSAStep", [filterEFSAAlg, efMuViewsMaker, efMuViewNode, trigMuonEFSAHypo, muonEFSADecisionsDumper]) + muCombStep = MenuSequence("muCombStep", + recoSeqList=[l2muComb_HLTSequence], + Hypo=trigmuCombHypo, + HypoToolClassName="TrigmuCombHypoToolConf") + + +# =========================================== +# SET EFMUON +# =========================================== + ### It cannot be used because it has not yet been migrated for muon menu ### + +# if doEFSA: +# ### RoRSeqFilter step2 ### +# filterEFSAAlg = RoRSeqFilter("filterEFSAAlg") +# filterEFSAAlg.Input = [trigmuCombHypo.Decisions] +# filterEFSAAlg.Output = ["Filtered"+trigmuCombHypo.Decisions] +# filterEFSAAlg.Chains = testChains +# filterEFSAAlg.OutputLevel = DEBUG +# +# from TrkDetDescrSvc.TrkDetDescrSvcConf import Trk__TrackingVolumesSvc +# ServiceMgr += Trk__TrackingVolumesSvc("TrackingVolumesSvc",BuildVolumesFromTagInfo = False) +# +# theSegmentFinder = CfgGetter.getPublicToolClone("MuonSegmentFinder","MooSegmentFinder") +# theSegmentFinder.DoSummary=True +# CfgGetter.getPublicTool("MuonLayerHoughTool").DoTruth=False +# theSegmentFinderAlg=CfgMgr.MooSegmentFinderAlg( "MuonSegmentMaker", +# SegmentFinder=theSegmentFinder, +# MuonSegmentOutputLocation = "MooreSegments", +# UseCSC = muonRecFlags.doCSCs(), +# UseMDT = muonRecFlags.doMDTs(), +# UseRPC = muonRecFlags.doRPCs(), +# UseTGC = muonRecFlags.doTGCs(), +# doClusterTruth=False, +# UseTGCPriorBC = False, +# UseTGCNextBC = False, +# doTGCClust = muonRecFlags.doTGCClusterSegmentFinding(), +# doRPCClust = muonRecFlags.doRPCClusterSegmentFinding(), OutputLevel=DEBUG ) +# +# +# +# theNCBSegmentFinderAlg=CfgMgr.MooSegmentFinderAlg( "MuonSegmentMaker_NCB", +# SegmentFinder = getPublicToolClone("MooSegmentFinder_NCB","MuonSegmentFinder", +# DoSummary=False, +# Csc2dSegmentMaker = getPublicToolClone("Csc2dSegmentMaker_NCB","Csc2dSegmentMaker", +# segmentTool = getPublicToolClone("CscSegmentUtilTool_NCB", +# "CscSegmentUtilTool", +# TightenChi2 = False, +# IPconstraint=False)), +# Csc4dSegmentMaker = getPublicToolClone("Csc4dSegmentMaker_NCB","Csc4dSegmentMaker", +# segmentTool = getPublicTool("CscSegmentUtilTool_NCB")), +# DoMdtSegments=False,DoSegmentCombinations=False,DoSegmentCombinationCleaning=False), +# MuonPatternCombinationLocation = "NCB_MuonHoughPatternCombinations", +# MuonSegmentOutputLocation = "NCB_MuonSegments", +# MuonSegmentCombinationOutputLocation = "NCB_MooreSegmentCombinations", +# UseCSC = muonRecFlags.doCSCs(), +# UseMDT = False, +# UseRPC = False, +# UseTGC = False, +# UseTGCPriorBC = False, +# UseTGCNextBC = False, +# doTGCClust = False, +# doRPCClust = False) +# +# from MuonRecExample.MuonStandalone import MuonTrackSteering +# MuonTrackSteering.DoSummary=True +# MuonTrackSteering.DoSummary=DEBUG +# TrackBuilder = CfgMgr.MuPatTrackBuilder("MuPatTrackBuilder" ) +# TrackBuilder.TrackSteering=CfgGetter.getPublicToolClone("MuonTrackSteering", "MuonTrackSteering") +# +# from AthenaCommon.Include import include +# include("InDetBeamSpotService/BeamCondSvc.py" ) +# from xAODTrackingCnv.xAODTrackingCnvConf import xAODMaker__TrackParticleCnvAlg, xAODMaker__TrackCollectionCnvTool, xAODMaker__RecTrackParticleContainerCnvTool +# +# muonParticleCreatorTool = getPublicTool("MuonParticleCreatorTool") +# +# muonTrackCollectionCnvTool = xAODMaker__TrackCollectionCnvTool( name = "MuonTrackCollectionCnvTool", TrackParticleCreator = muonParticleCreatorTool ) +# +# muonRecTrackParticleContainerCnvTool = xAODMaker__RecTrackParticleContainerCnvTool(name = "MuonRecTrackParticleContainerCnvTool", TrackParticleCreator = muonParticleCreatorTool ) +# +# xAODTrackParticleCnvAlg = xAODMaker__TrackParticleCnvAlg( name = "MuonStandaloneTrackParticleCnvAlg", +# TrackParticleCreator = muonParticleCreatorTool, +# TrackCollectionCnvTool=muonTrackCollectionCnvTool, +# RecTrackParticleContainerCnvTool = muonRecTrackParticleContainerCnvTool, +# TrackContainerName = "MuonSpectrometerTracks", +# xAODTrackParticlesFromTracksContainerName = "MuonSpectrometerTrackParticles", +# ConvertTrackParticles = False, +# ConvertTracks = True) +# +# +# thetrkbuilder = getPublicToolClone("CombinedMuonTrackBuilder_SA", "CombinedMuonTrackBuilder", MuonHoleRecovery="", CaloMaterialProvider='TMEF_TrkMaterialProviderTool') +# +# theCandidateTool = getPublicToolClone("MuonCandidateTool_SA", "MuonCandidateTool", TrackBuilder=thetrkbuilder) +# theMuonCandidateAlg=CfgMgr.MuonCombinedMuonCandidateAlg("MuonCandidateAlg",MuonCandidateTool=theCandidateTool) +# +# +# thecreatortool= getPublicToolClone("MuonCreatorTool_SA", "MuonCreatorTool", ScatteringAngleTool="", CaloMaterialProvider='TMEF_TrkMaterialProviderTool', MuonSelectionTool="", FillTimingInformation=False, OutputLevel=DEBUG) +# +# themuoncreatoralg = CfgMgr.MuonCreatorAlg("MuonCreatorAlg") +# themuoncreatoralg.MuonCreatorTool=thecreatortool +# themuoncreatoralg.CreateSAmuons=True +# themuoncreatoralg.ClusterContainerName="" +# +# #Algorithms to views +# efMuViewNode += theSegmentFinderAlg +## efMuViewNode += theNCBSegmentFinderAlg #The configuration still needs some sorting out for this so disabled for now. +# efMuViewNode += TrackBuilder +# efMuViewNode += xAODTrackParticleCnvAlg +# efMuViewNode += theMuonCandidateAlg +# efMuViewNode += themuoncreatoralg +# +# #Setup MS-only hypo +# from TrigMuonHypo.TrigMuonHypoConfig import TrigMuonEFMSonlyHypoConfig +# trigMuonEFSAHypo = TrigMuonEFMSonlyHypoConfig("MuonEFSAHypoAlg") +# trigMuonEFSAHypo.OutputLevel = DEBUG +# +# trigMuonEFSAHypo.ViewRoIs = efMuViewsMaker.Views +# trigMuonEFSAHypo.MuonDecisions = "Muons" +# trigMuonEFSAHypo.RoIs = efMuViewsMaker.InViewRoIs +# trigMuonEFSAHypo.Decisions = "EFMuonSADecisions" +# trigMuonEFSAHypo.L1Decisions = efMuViewsMaker.InputMakerInputDecisions[0] +# +# trigMuonEFSAHypo.HypoTools = [ trigMuonEFSAHypo.TrigMuonEFMSonlyHypoToolFromName( "TrigMuonEFMSonlyHypoTool", c ) for c in testChains ] +# +# muonEFSADecisionsDumper = DumpDecisions("muonEFSADecisionsDumper", OutputLevel=DEBUG, Decisions = trigMuonEFSAHypo.Decisions ) +# muonEFSAStep = seqAND("muonEFSAStep", [filterEFSAAlg, efMuViewsMaker, efMuViewNode, trigMuonEFSAHypo, muonEFSADecisionsDumper]) diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/checkESD.py b/Trigger/TrigValidation/TrigUpgradeTest/share/checkESD.py index 1d55a43d506938e48373ab421a8c34d9483f5de5..edba516eedf20a3af581134029dbb74665d9e97c 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/checkESD.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/checkESD.py @@ -13,8 +13,10 @@ checker.doDumpTrigCompsiteNavigation = True checker.doDumpStoreGate = True # this list was obtained by: checkxAOD.py myESD.pool.root | grep Composite | tr -s " "| cut -d" " -f10 | awk '{print "\""$1"\""}' | tr "\n" "," > f # Note that now there is also a flag to look at all of them at runtime. We may want to move to this in the future. -checker.dumpTrigCompositeContainers = [ "FilteredEMRoIDecisions", "L2CaloLinks", "L2ElectronLinks", "EgammaCaloDecisions", "FilteredEgammaCaloDecisions", "filterCaloRoIsAlg", "ElectronL2Decisions", "MuonL2Decisions", "METRoIDecisions", "MURoIDecisions", "HLTChainsResult", -"JRoIDecisions", "MonitoringSummaryStep1", "RerunEMRoIDecisions", "RerunMURoIDecisions", "TAURoIDecisions", "EMRoIDecisions" ] +tcContainers = [ "FilteredEMRoIDecisions", "L2CaloLinks", "L2ElectronLinks", "EgammaCaloDecisions", "FilteredEgammaCaloDecisions", "filterCaloRoIsAlg", "ElectronL2Decisions", "MuonL2Decisions", "METRoIDecisions", "MURoIDecisions", "HLTChainsResult", "JRoIDecisions", "MonitoringSummaryStep1", "RerunEMRoIDecisions", "RerunMURoIDecisions", "TAURoIDecisions", "EMRoIDecisions" ] + +for container in tcContainers: + checker.dumpTrigCompositeContainers += [ container + "_remap" ] from AthenaCommon.AppMgr import topSequence topSequence += checker diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py b/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py index 04d2da725c2a6c17cbe155fc5cd669a6ea632b3d..f5627867c56bed7653a6bfe15802167dd87f428b 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py @@ -212,12 +212,10 @@ step0r = parOR("step0r", [ egammaCaloStepRR ]) summary = TriggerSummaryAlg( "TriggerSummaryAlg" ) summary.InputDecision = "HLTChains" summary.FinalDecisions = [ "ElectronL2Decisions", "MuonL2Decisions" ] -from TrigOutputHandling.TrigOutputHandlingConf import HLTEDMCreator -edmCreator = HLTEDMCreator() -edmCreator.TrigCompositeContainer = [ "L2ElectronLinks", "filterCaloRoIsAlg", "EgammaCaloDecisions","ElectronL2Decisions", "MuonL2Decisions", "EMRoIDecisions", "METRoIDecisions", "MURoIDecisions", "HLTChainsResult", -"JRoIDecisions", "MonitoringSummaryStep1", "RerunEMRoIDecisions", "RerunMURoIDecisions", "TAURoIDecisions", "L2CaloLinks", "FilteredEMRoIDecisions", "FilteredEgammaCaloDecisions" ] +from TrigOutputHandling.TrigOutputHandlingConf import HLTEDMCreator egammaViewsMerger = HLTEDMCreator("egammaViewsMerger") +egammaViewsMerger.TrigCompositeContainer = [ "L2ElectronLinks", "filterCaloRoIsAlg", "EgammaCaloDecisions","ElectronL2Decisions", "MuonL2Decisions", "EMRoIDecisions", "METRoIDecisions", "MURoIDecisions", "HLTChainsResult", "JRoIDecisions", "MonitoringSummaryStep1", "RerunEMRoIDecisions", "RerunMURoIDecisions", "TAURoIDecisions", "L2CaloLinks", "FilteredEMRoIDecisions", "FilteredEgammaCaloDecisions" ] egammaViewsMerger.TrackParticleContainerViews = [ l2ElectronViewsMaker.Views ] egammaViewsMerger.TrackParticleContainerInViews = [ TrackParticlesName ] @@ -236,7 +234,7 @@ egammaViewsMerger.OutputLevel = VERBOSE svcMgr.StoreGateSvc.OutputLevel = VERBOSE -summary.OutputTools = [ edmCreator, egammaViewsMerger ] +summary.OutputTools = [ egammaViewsMerger ] summary.OutputLevel = DEBUG @@ -266,8 +264,8 @@ topSequence.remove( StreamESD ) def addTC(name): StreamESD.ItemList += [ "xAOD::TrigCompositeContainer#"+name, "xAOD::TrigCompositeAuxContainer#"+name+"Aux." ] -for tc in edmCreator.TrigCompositeContainer: - addTC( tc ) +for tc in egammaViewsMerger.TrigCompositeContainer: + addTC( tc + "_remap" ) addTC("HLTSummary") diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/mu.menu.py b/Trigger/TrigValidation/TrigUpgradeTest/share/mu.menu.py index a4309746227ef0741b18fbf0510828174bd09ab0..cb9bca0d6c7b50ff5140f02209456100e8237f85 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/mu.menu.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/mu.menu.py @@ -83,23 +83,29 @@ if TriggerFlags.doMuon==True: # menu from TrigUpgradeTest.MenuComponents import Chain, ChainStep - from TrigUpgradeTest.muMenuDefs import muFastStep, doL2SA, doL2CB, doEFSA + from TrigUpgradeTest.muMenuDefs import muFastStep, muCombStep, doL2SA, doL2CB, doEFSA MenuChains = [] if TriggerFlags.doID==False: - if doL2SA==True and doL2CB==False and doEFSA==False: + if doL2SA==True and doL2CB==False and doEFSA==False: MenuChains += [Chain(name='HLT_mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] - MenuChains += [Chain(name='HLT_2mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] - if doEFSA==True and doL2SA==False and doL2CB==False: + MenuChains += [Chain(name='HLT_2mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] + if doL2SA==False and doL2CB==False and doEFSA==True: MenuChains += [Chain(name='HLT_mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] + MenuChains += [Chain(name='HLT_2mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] elif TriggerFlags.doID==True: - if doL2SA==True and doL2CB==True and doEFSA==False: - MenuChains += [Chain(name='HLT_mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] - if doL2SA==True and doEFSA==True and doL2CB==True: - MenuChains += [Chain(name='HLT_mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]) ])] - + if doL2SA==True and doL2CB==True and doEFSA==False: + MenuChains += [Chain(name='HLT_mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]), + ChainStep("Step2_muComb", [muCombStep]) ])] + MenuChains += [Chain(name='HLT_2mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]), + ChainStep("Step2_muComb", [muCombStep]) ])] + if doL2SA==True and doL2CB==True and doEFSA==True: + MenuChains += [Chain(name='HLT_mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]), + ChainStep("Step2_muComb", [muCombStep]) ])] + MenuChains += [Chain(name='HLT_2mu6', Seed="L1_MU6", ChainSteps=[ChainStep("Step1_mufast", [muFastStep]), + ChainStep("Step2_muComb", [muCombStep]) ])] diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/mu.withViews.py b/Trigger/TrigValidation/TrigUpgradeTest/share/mu.withViews.py index 4e607cd9b05914f91f6da1f2d9c216bb19ee55b1..2b46bca8a237eb8d604f67fb1d5b1f909135336c 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/mu.withViews.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/mu.withViews.py @@ -424,16 +424,14 @@ if TriggerFlags.doMuon: ### set up muCombHypo algorithm ### from TrigMuonHypo.TrigMuonHypoConfig import TrigmuCombHypoConfig trigmuCombHypo = TrigmuCombHypoConfig("L2muCombHypoAlg") - trigmuCombHypo.OutputLevel = DEBUG - - trigmuCombHypo.Decisions = "MuonL2CBDecisions" - trigmuCombHypo.L2MuonFastDecisions = trigMufastHypo.HypoOutputDecisions - trigmuCombHypo.ViewRoIs = l2muCombViewsMaker.Views + trigmuCombHypo.OutputLevel = DEBUG + trigmuCombHypo.HypoOutputDecisions = "MuonL2CBDecisions" + trigmuCombHypo.HypoInputDecisions = l2muCombViewsMaker.InputMakerOutputDecisions[0] trigmuCombHypo.MuonL2CBInfoFromMuCombAlg = muCombAlg.L2CombinedMuonContainerName - trigmuCombHypo.HypoTools = [ trigmuCombHypo.TrigmuCombHypoToolFromName( "L2muCombHypoTool", c ) for c in testChains ] - muCombDecisionsDumper = DumpDecisions("muCombDecisionsDumper", OutputLevel=DEBUG, Decisions = trigmuCombHypo.Decisions ) + # set the dumper + muCombDecisionsDumper = DumpDecisions("muCombDecisionsDumper", OutputLevel=DEBUG, Decisions = trigmuCombHypo.HypoOutputDecisions ) ### Define a Sequence to run for muComb ### l2muCombSequence = seqAND("l2muCombSequence", eventAlgs + [l2muCombViewsMaker, l2muCombViewNode, trigmuCombHypo ] ) @@ -447,8 +445,8 @@ if TriggerFlags.doMuon: if doEFSA: ### RoRSeqFilter step2 ### filterEFSAAlg = RoRSeqFilter("filterEFSAAlg") - filterEFSAAlg.Input = [trigmuCombHypo.Decisions] - filterEFSAAlg.Output = ["Filtered"+trigmuCombHypo.Decisions] + filterEFSAAlg.Input = [trigmuCombHypo.HypoOutputDecisions] + filterEFSAAlg.Output = ["Filtered"+trigmuCombHypo.HypoOutputDecisions] filterEFSAAlg.Chains = testChains filterEFSAAlg.OutputLevel = DEBUG @@ -605,7 +603,7 @@ if TriggerFlags.doMuon==True and TriggerFlags.doID==True: from DecisionHandling.DecisionHandlingConf import TriggerSummaryAlg summary = TriggerSummaryAlg( "TriggerSummaryAlg" ) summary.InputDecision = "HLTChains" - summary.FinalDecisions = [ trigmuCombHypo.Decisions ] + summary.FinalDecisions = [ trigmuCombHypo.HypoOutputDecisions ] summary.OutputLevel = DEBUG step0 = parOR("step0", [ muFastStep ] ) step1 = parOR("step1", [ muCombStep ] ) @@ -613,7 +611,7 @@ if TriggerFlags.doMuon==True and TriggerFlags.doID==True: mon = TriggerSummaryAlg( "TriggerMonitoringAlg" ) mon.InputDecision = "HLTChains" - mon.FinalDecisions = [ trigmuCombHypo.Decisions, "WhateverElse" ] + mon.FinalDecisions = [ trigmuCombHypo.HypoOutputDecisions, "WhateverElse" ] mon.HLTSummary = "MonitoringSummary" mon.OutputLevel = DEBUG hltTop = seqOR( "hltTop", [ HLTsteps, mon] )