ATLAS Offline Software
T2VertexBeamSpot.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
14 /**********************************************************************************
15  * @project: HLT, PESA algorithms
16  * @package: TrigT2BeamSpot
17  * @class : T2VertexBeamSpot
18  *
19  * @brief PESA algorithm that measures and monitors beam spot position using vertices
20  *
21  * @author David W. Miller <David.W.Miller@cern.ch> - SLAC, Stanford University
22  *
23  **********************************************************************************/
24 #ifndef TRIGT2BEAMSPOT_T2VERTEXBEAMSPOT_H
25 #define TRIGT2BEAMSPOT_T2VERTEXBEAMSPOT_H
26 
31 //Interface for the beam spot tool
32 #include "T2VertexBeamSpotTool.h"
33 #include "T2TrackBeamSpotTool.h"
34 
35 namespace PESA {
50  class T2VertexBeamSpot : public AthReentrantAlgorithm
51  {
52  public:
53 
54  T2VertexBeamSpot( const std::string& name, ISvcLocator* pSvcLocator );
55 
57  virtual StatusCode execute(const EventContext& ctx) const override final;
58 
60  virtual StatusCode initialize() override final;
61 
62  private:
63 
64  bool m_doTrackBeamSpot; // if true then run track-based beam spot
65 
66  //Tools
67  ToolHandle<T2VertexBeamSpotTool> m_beamSpotTool {this, "BeamSpotTool", "PESA::T2VertexBeamSpotTool/T2VertexBeamSpotTool" };
68  ToolHandle<T2TrackBeamSpotTool> m_trackBSTool{this, "TrackBeamSpotTool", "PESA::T2VertexBeamSpotTool/T2TrackBeamSpotTool" };
69  ToolHandle<GenericMonitoringTool> m_monTool{this,"MonTool","","Monitoring tool"};
70 
71  SG::ReadHandleKey<TrackCollection> m_trackCollectionKey{this, "TrackCollection", "TrigFastTrackFinder_Tracks", "track collection name used by algorithm"};
72  };
73 
74 } // end namespace
75 
76 
77 
78 
79 #endif
PESA::T2VertexBeamSpot::initialize
virtual StatusCode initialize() override final
Initialize the beamspot algorithm for Run3 Athena MT configuration, initialize all the handles and re...
Definition: T2VertexBeamSpot.cxx:31
PESA::T2VertexBeamSpot::m_beamSpotTool
ToolHandle< T2VertexBeamSpotTool > m_beamSpotTool
Definition: T2VertexBeamSpot.h:76
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
PESA::T2VertexBeamSpot::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: T2VertexBeamSpot.h:78
PESA::T2VertexBeamSpot::m_doTrackBeamSpot
bool m_doTrackBeamSpot
Definition: T2VertexBeamSpot.h:73
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
PESA
Local tools.
Definition: T2BeamSpot.cxx:13
GenericMonitoringTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrackCollection.h
AthReentrantAlgorithm.h
PESA::T2VertexBeamSpot::m_trackCollectionKey
SG::ReadHandleKey< TrackCollection > m_trackCollectionKey
Definition: T2VertexBeamSpot.h:80
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
PESA::T2VertexBeamSpot::m_trackBSTool
ToolHandle< T2TrackBeamSpotTool > m_trackBSTool
Definition: T2VertexBeamSpot.h:77
T2VertexBeamSpotTool.h
T2TrackBeamSpotTool.h
PESA::T2VertexBeamSpot::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Loop over events, selecting tracks and reconstructing vertices out of these tracks
Definition: T2VertexBeamSpot.cxx:42
PESA::T2VertexBeamSpot::T2VertexBeamSpot
T2VertexBeamSpot(const std::string &name, ISvcLocator *pSvcLocator)
std Gaudi Algorithm constructor
Definition: T2VertexBeamSpot.cxx:25