ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
TrackingID
InDetTrackSystematicsTools
InDetTrackSystematicsTools
IInDetTrackBiasingTool.h
Go to the documentation of this file.
1
// -*- c++ -*-
2
/*
3
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
4
*/
5
6
#ifndef INDETTRACKSYSTEMATICSTOOLS_IINDETTRACKBIASINGTOOL_H
7
#define INDETTRACKSYSTEMATICSTOOLS_IINDETTRACKBIASINGTOOL_H
8
9
#include "
AsgTools/IAsgTool.h
"
10
#include "
PATInterfaces/CorrectionCode.h
"
11
#include "
PATInterfaces/ISystematicsTool.h
"
12
#include "
xAODTracking/TrackParticleContainer.h
"
13
14
namespace
InDet
{
15
20
21
class
IInDetTrackBiasingTool
22
:
public
virtual
asg::IAsgTool
23
,
public
virtual
CP::ISystematicsTool
24
{
25
26
ASG_TOOL_INTERFACE
(
InDet::IInDetTrackBiasingTool
)
27
28
public
:
29
virtual
StatusCode
initialize
() = 0;
30
virtual
void
prepare
() = 0;
31
33
virtual
CP::CorrectionCode
applyCorrection
(
xAOD::TrackParticle
& track) = 0;
34
virtual
CP::CorrectionCode
correctedCopy
(
const
xAOD::TrackParticle
& in,
35
xAOD::TrackParticle
*& out ) = 0;
36
virtual
CP::CorrectionCode
applyContainerCorrection
(
xAOD::TrackParticleContainer
& cont ) = 0;
37
40
virtual
CP::CorrectionCode
applyCorrection
(
41
xAOD::TrackParticle
& track,
const
CP::SystematicSet
& syst)
const
= 0;
42
43
// implement the CP::ISystematicTool interface
45
virtual
bool
isAffectedBySystematic
(
const
CP::SystematicVariation
& )
const
= 0;
47
virtual
CP::SystematicSet
affectingSystematics
()
const
= 0;
49
virtual
CP::SystematicSet
recommendedSystematics
()
const
= 0;
51
virtual
StatusCode
applySystematicVariation
(
const
CP::SystematicSet
& ) = 0;
52
53
54
};
// class IInDetTrackBiasingTool
55
56
}
// namespace InDet
57
58
#endif
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition
AsgToolMacros.h:40
CorrectionCode.h
TrackParticleContainer.h
IAsgTool.h
ISystematicsTool.h
CP::CorrectionCode
Return value from object correction CP tools.
Definition
CorrectionCode.h:31
CP::ISystematicsTool
Interface for all CP tools supporting systematic variations.
Definition
ISystematicsTool.h:32
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition
SystematicSet.h:31
CP::SystematicVariation
Definition
SystematicVariation.h:47
InDet::IInDetTrackBiasingTool
Definition
IInDetTrackBiasingTool.h:24
InDet::IInDetTrackBiasingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::TrackParticle &track)=0
Computes the tracks origin.
InDet::IInDetTrackBiasingTool::recommendedSystematics
virtual CP::SystematicSet recommendedSystematics() const =0
returns: list of recommended systematics to use with this tool
InDet::IInDetTrackBiasingTool::prepare
virtual void prepare()=0
InDet::IInDetTrackBiasingTool::applyContainerCorrection
virtual CP::CorrectionCode applyContainerCorrection(xAOD::TrackParticleContainer &cont)=0
InDet::IInDetTrackBiasingTool::isAffectedBySystematic
virtual bool isAffectedBySystematic(const CP::SystematicVariation &) const =0
returns: whether the tool is affected by the systematic
InDet::IInDetTrackBiasingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::TrackParticle &track, const CP::SystematicSet &syst) const =0
Reentrant biasing: applies syst without mutating shared state.
InDet::IInDetTrackBiasingTool::initialize
virtual StatusCode initialize()=0
InDet::IInDetTrackBiasingTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::TrackParticle &in, xAOD::TrackParticle *&out)=0
InDet::IInDetTrackBiasingTool::applySystematicVariation
virtual StatusCode applySystematicVariation(const CP::SystematicSet &)=0
configure the tool to apply a given list of systematic variations
InDet::IInDetTrackBiasingTool::affectingSystematics
virtual CP::SystematicSet affectingSystematics() const =0
returns: list of systematics this tool can be affected by
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition
IAsgTool.h:41
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
xAOD::TrackParticleContainer
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticleContainer.h:14
Generated on
for ATLAS Offline Software by
1.17.0