ATLAS Offline Software
CalibratedTracksProvider.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef CALIBRATEDTRACKSPROVIDER_H
6 #define CALIBRATEDTRACKSPROVIDER_H
7 
8 // Gaudi/Athena include(s):
9 
11 #include "GaudiKernel/ToolHandle.h"
17 
18 namespace CP {
19 
21 
23  public:
25  CalibratedTracksProvider(const std::string& name, ISvcLocator* svcLoc);
26 
28  virtual StatusCode initialize() override;
30  virtual StatusCode execute() override;
31 
32  private:
33  SG::ReadHandleKey<xAOD::EventInfo> m_eventInfo{this, "EventInfoContName", "EventInfo", "event info key"};
35 
37  this, "Input", "InDetTrackParticles",
38  " Name of the track particle container to calibrated (Optionally ExtrapolatedMuonTrackParticle)"};
39  SG::WriteHandleKey<xAOD::TrackParticleContainer> m_outputKey{this, "Output", "CalibratedInDetTrackParticles",
40  "Name of the final container written to storegate"};
41 
43  ToolHandle<IMuonCalibrationAndSmearingTool> m_tool{this, "Tool", "",
44  "Configured instance of the MuonMomentum and calibration tool"};
46  Gaudi::Property<int> m_detType{this, "DetType", 1,
47  "Which kind of track particle container is parsed. Either the Id tracks (2) or the MS tracks(1)"};
48 
49  Gaudi::Property<bool> m_useRndNumber{this, "useRndRunNumber", false};
50  SG::ReadDecorHandleKey<xAOD::EventInfo> m_rndNumKey{this, "RandomNumberDecor", "EventInfo.RandomRunNumber",
51  "Dependency on the random run number"};
52 
53  }; // class
54 
55 } // namespace CP
56 
57 #endif //
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
CP::CalibratedTracksProvider::m_tool
ToolHandle< IMuonCalibrationAndSmearingTool > m_tool
Calibration tool handle.
Definition: CalibratedTracksProvider.h:43
CP::CalibratedTracksProvider::initialize
virtual StatusCode initialize() override
Function initialising the algorithm.
Definition: CalibratedTracksProvider.cxx:15
CP::CalibratedTracksProvider::CalibratedTracksProvider
CalibratedTracksProvider(const std::string &name, ISvcLocator *svcLoc)
Regular Algorithm constructor.
Definition: CalibratedTracksProvider.cxx:13
CP::CalibratedTracksProvider::m_inputKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_inputKey
track container
Definition: CalibratedTracksProvider.h:36
CP::CalibratedTracksProvider::m_useRndNumber
Gaudi::Property< bool > m_useRndNumber
Definition: CalibratedTracksProvider.h:49
CP::CalibratedTracksProvider::m_outputKey
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_outputKey
Definition: CalibratedTracksProvider.h:39
SG::ReadHandleKey< xAOD::EventInfo >
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
AthAlgorithm.h
SG::WriteHandleKey< xAOD::TrackParticleContainer >
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::CalibratedTracksProvider::m_detType
Gaudi::Property< int > m_detType
detector type of track (MS or ID)
Definition: CalibratedTracksProvider.h:46
AthAlgorithm
Definition: AthAlgorithm.h:47
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
CP::CalibratedTracksProvider
decorates a track collection with efficiency and scale factor
Definition: CalibratedTracksProvider.h:22
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
IMuonCalibrationAndSmearingTool.h
CP::CalibratedTracksProvider::m_eventInfo
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfo
Definition: CalibratedTracksProvider.h:33
CP::CalibratedTracksProvider::execute
virtual StatusCode execute() override
Function executing the algorithm.
Definition: CalibratedTracksProvider.cxx:24
EventInfo.h
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition: StoreGate/StoreGate/ReadDecorHandleKey.h:85
CP::CalibratedTracksProvider::m_rndNumKey
SG::ReadDecorHandleKey< xAOD::EventInfo > m_rndNumKey
Definition: CalibratedTracksProvider.h:50
TrackParticleContainer.h