ATLAS Offline Software
ReFitterAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSGEOMETRY_REFITTERALG_H
6 #define ACTSGEOMETRY_REFITTERALG_H
7 
8 // ATHENA
10 #include "GaudiKernel/ServiceHandle.h"
11 #include "Gaudi/Property.h" /*no forward decl: typedef*/
12 #include "GaudiKernel/ISvcLocator.h"
17 
18 // PACKAGE
21 
22 // STL
23 #include <memory>
24 #include <vector>
25 #include <fstream>
26 #include <mutex>
27 
28 class EventContext;
29 
30 namespace ActsTrk {
31 
33 public:
34  ReFitterAlg (const std::string& name, ISvcLocator* pSvcLocator);
35  virtual ~ReFitterAlg() override = default;
36 
37  virtual StatusCode initialize() override;
38  virtual StatusCode execute(const EventContext& ctx) const override;
39 
40 private:
41 
42  ToolHandle<Trk::ITrackFitter> m_actsFitter{this, "ActsFitter", "", "Choice of Acts Fitter (Kalman by default)"};
43  // --- job options
44  SG::ReadHandleKey<TrackCollection> m_trackName{this, "TrackName", "", "Collection name for tracks to be refitted"};
45  SG::WriteHandleKey<TrackCollection> m_newTrackName{this, "NewTrackName", "", "Collection name for output tracks"};
46 
48 
49  //Gaudi Property to choose from PRD or ROT measurment ReFit
50  Gaudi::Property<bool> m_doReFitFromPRD{this, "DoReFitFromPRD", false, "Do Refit From PRD instead of ROT"};
51 };
52 
53 } // namespace
54 
55 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
ActsTrk::ReFitterAlg::ReFitterAlg
ReFitterAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: ReFitterAlg.cxx:32
ActsTrk::ReFitterAlg::m_newTrackName
SG::WriteHandleKey< TrackCollection > m_newTrackName
Definition: ReFitterAlg.h:45
BeamSpot::mutex
std::mutex mutex
Definition: InDetBeamSpotVertex.cxx:18
ATLASMagneticFieldWrapper.h
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
ActsTrk::ReFitterAlg::~ReFitterAlg
virtual ~ReFitterAlg() override=default
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
ActsTrk::ReFitterAlg::m_trackName
SG::ReadHandleKey< TrackCollection > m_trackName
Definition: ReFitterAlg.h:44
ActsTrk::ReFitterAlg::m_writeMutex
std::mutex m_writeMutex
Definition: ReFitterAlg.h:47
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrackCollection.h
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
ActsTrk::ReFitterAlg::m_doReFitFromPRD
Gaudi::Property< bool > m_doReFitFromPRD
Definition: ReFitterAlg.h:50
ActsTrk::ReFitterAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: ReFitterAlg.cxx:46
ActsTrk::ReFitterAlg
Definition: ReFitterAlg.h:32
ActsTrk::ReFitterAlg::initialize
virtual StatusCode initialize() override
Definition: ReFitterAlg.cxx:36
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:34
ITrackFitter.h
ActsTrk::ReFitterAlg::m_actsFitter
ToolHandle< Trk::ITrackFitter > m_actsFitter
Definition: ReFitterAlg.h:42