ATLAS Offline Software
Loading...
Searching...
No Matches
PhysicsAnalysis
HeavyIonPhys
HIEventUtils
HIEventUtils
HIVertexSelectionTool.h
Go to the documentation of this file.
1
// -*- c++ -*-
2
3
/*
4
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
#pragma once
8
#ifndef HIEVENTUTILS_HIVERTEXSELECTIONTOOL_H
9
#define HIEVENTUTILS_HIVERTEXSELECTIONTOOL_H
10
11
#include "
HIEventUtils/IHIVertexSelectionTool.h
"
12
#include "
AsgTools/AsgTool.h
"
13
#include "
AsgTools/ToolHandle.h
"
14
#include "
InDetTrackSelectionTool/IInDetTrackSelectionTool.h
"
15
16
namespace
HI
{
17
18
class
HIVertexSelectionTool
:
public
virtual
HI::IHIVertexSelectionTool
,
19
public
asg::AsgTool
{
20
ASG_TOOL_CLASS2
(
HIVertexSelectionTool
,
21
IAsgSelectionTool
,
22
HI::IHIVertexSelectionTool
)
23
public
:
24
25
HIVertexSelectionTool
(
const
std::string& name );
26
~HIVertexSelectionTool
();
27
28
virtual
StatusCode
initialize
()
override
;
29
virtual
StatusCode
finalize
()
override
;
30
//R.Longo 13-10-2019 - Replacing PATCore/TAccept (inherited from 21.0 HI-equalization)
31
virtual
const
asg::AcceptInfo
&
getAcceptInfo
()
const override
;
32
// we have to implement the IParticle function in order to inherit from IAsgSelectionTool
33
// it will throw an exception
34
virtual
asg::AcceptData
accept
(
const
xAOD::IParticle
* )
const override
;
35
virtual
asg::AcceptData
accept
(
const
xAOD::Vertex
& )
const override
;
36
37
private
:
38
asg::AcceptInfo
m_accept
;
39
40
// configureable properties
41
bool
m_requirePrimary
=
true
;
42
double
m_maxAbsZ
= -1;
43
44
ToolHandle< InDet::IInDetTrackSelectionTool >
m_trkSelTool
;
45
int
m_minNtrk
= -1;
46
double
m_minRmsPt
= -1.;
47
bool
m_checkTracks
=
false
;
// an internal flag to indicate whether or not to loop over the vertex's track
48
49
};
50
}
51
52
53
#endif
// HIEVENTUTILS_HIVERTEXSELECTIONTOOL_H
ASG_TOOL_CLASS2
#define ASG_TOOL_CLASS2(CLASSNAME, INT1, INT2)
Definition
AsgToolMacros.h:77
AsgTool.h
IHIVertexSelectionTool.h
IInDetTrackSelectionTool.h
ToolHandle.h
HI::HIVertexSelectionTool
Definition
HIVertexSelectionTool.h:19
HI::HIVertexSelectionTool::accept
virtual asg::AcceptData accept(const xAOD::IParticle *) const override
The main accept method: the actual cuts are applied here.
Definition
HIVertexSelectionTool.cxx:76
HI::HIVertexSelectionTool::getAcceptInfo
virtual const asg::AcceptInfo & getAcceptInfo() const override
Declare the interface ID for this pure-virtual interface class to the Athena framework.
Definition
HIVertexSelectionTool.cxx:70
HI::HIVertexSelectionTool::initialize
virtual StatusCode initialize() override
Definition
HIVertexSelectionTool.cxx:29
HI::HIVertexSelectionTool::m_maxAbsZ
double m_maxAbsZ
maximum |z| position of the vertex
Definition
HIVertexSelectionTool.h:42
HI::HIVertexSelectionTool::m_trkSelTool
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool
track selection tool which can be optionally used for N_trk and sum pt cuts
Definition
HIVertexSelectionTool.h:44
HI::HIVertexSelectionTool::~HIVertexSelectionTool
ASG_TOOL_CLASS2(HIVertexSelectionTool, IAsgSelectionTool, HI::IHIVertexSelectionTool) public ~HIVertexSelectionTool()
HI::HIVertexSelectionTool::m_accept
asg::AcceptInfo m_accept
Definition
HIVertexSelectionTool.h:38
HI::HIVertexSelectionTool::m_minNtrk
int m_minNtrk
Definition
HIVertexSelectionTool.h:45
HI::HIVertexSelectionTool::m_checkTracks
bool m_checkTracks
Definition
HIVertexSelectionTool.h:47
HI::HIVertexSelectionTool::finalize
virtual StatusCode finalize() override
Definition
HIVertexSelectionTool.cxx:63
HI::HIVertexSelectionTool::m_requirePrimary
bool m_requirePrimary
require the vertex to be of type PriVtx
Definition
HIVertexSelectionTool.h:41
HI::HIVertexSelectionTool::m_minRmsPt
double m_minRmsPt
Definition
HIVertexSelectionTool.h:46
HI::IHIVertexSelectionTool
Definition
IHIVertexSelectionTool.h:16
IAsgSelectionTool
Definition
IAsgSelectionTool.h:28
asg::AcceptData
Definition
AcceptData.h:30
asg::AcceptInfo
Definition
AcceptInfo.h:28
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
HI
Definition
HIEventDefs.h:14
xAOD::Vertex
Vertex_v1 Vertex
Define the latest version of the vertex class.
Definition
Event/xAOD/xAODTracking/xAODTracking/Vertex.h:16
Generated on
for ATLAS Offline Software by
1.14.0