ATLAS Offline Software
Tracking
TrkTruthTracks
TrkTruthTrackInterfaces
TrkTruthTrackInterfaces
IAthSelectionTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef INDETPHYSVALMONITORING_IATHSELECTIONTOOL_H
6
#define INDETPHYSVALMONITORING_IATHSELECTIONTOOL_H
7
17
//Gaudi
18
#include "GaudiKernel/IAlgTool.h"
19
#include "
xAODBase/IParticle.h
"
20
#include <string>
21
#include <vector>
22
23
static
const
InterfaceID IID_IAthSelectionTool(
"IAthSelectionTool"
,1,0);
24
25
27
class
IAthSelectionTool
:
virtual
public
IAlgTool{
28
public
:
29
30
class
CutResult
{
31
public
:
32
CutResult
(
unsigned
int
missing_cuts) :
m_missingCuts
(missing_cuts) {}
33
34
unsigned
int
missingCuts
()
const
{
35
return
m_missingCuts
;
36
}
37
38
operator
bool
()
const
{
39
return
m_missingCuts
==0;
40
}
41
42
private
:
43
unsigned
int
m_missingCuts
= 0;
44
};
45
47
static
const
InterfaceID &
interfaceID
();
49
virtual
~IAthSelectionTool
(){ }
50
55
virtual
IAthSelectionTool::CutResult
56
testAllCuts
(
const
xAOD::IParticle
*
p
, std::vector<unsigned int> &
counter
)
const
= 0;
57
62
virtual
IAthSelectionTool::CutResult
accept
(
const
xAOD::IParticle
*
p
)
const
= 0;
63
67
virtual
unsigned
int
nCuts
()
const
= 0;
68
70
virtual
std::vector<std::string>
names
()
const
= 0;
71
};
72
73
inline
const
InterfaceID &
IAthSelectionTool::interfaceID
(){
74
return
IID_IAthSelectionTool;
75
}
76
77
#endif
IAthSelectionTool::CutResult::CutResult
CutResult(unsigned int missing_cuts)
Definition:
IAthSelectionTool.h:32
IAthSelectionTool::names
virtual std::vector< std::string > names() const =0
return the names of the cuts as a vector<string>
IParticle.h
IAthSelectionTool::CutResult
Definition:
IAthSelectionTool.h:30
IAthSelectionTool::nCuts
virtual unsigned int nCuts() const =0
return the number of cuts.
IAthSelectionTool::CutResult::m_missingCuts
unsigned int m_missingCuts
Definition:
IAthSelectionTool.h:43
IAthSelectionTool::interfaceID
static const InterfaceID & interfaceID()
interfaceID reimplemented from base
Definition:
IAthSelectionTool.h:73
IAthSelectionTool::testAllCuts
virtual IAthSelectionTool::CutResult testAllCuts(const xAOD::IParticle *p, std::vector< unsigned int > &counter) const =0
The most important method to determine whether the particle is accepted.
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition:
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
IAthSelectionTool::accept
virtual IAthSelectionTool::CutResult accept(const xAOD::IParticle *p) const =0
The most important method to determine whether the particle is accepted.
python.utils.AtlRunQueryDQUtils.p
p
Definition:
AtlRunQueryDQUtils.py:210
IAthSelectionTool::CutResult::missingCuts
unsigned int missingCuts() const
Definition:
IAthSelectionTool.h:34
IAthSelectionTool
IAthSelectionTool is a virtual baseclass for selection methods.
Definition:
IAthSelectionTool.h:27
test_pyathena.counter
counter
Definition:
test_pyathena.py:15
xAOD::bool
setBGCode setTAP setLVL2ErrorBits bool
Definition:
TrigDecision_v1.cxx:60
IAthSelectionTool::~IAthSelectionTool
virtual ~IAthSelectionTool()
virtual destructor, does nothing
Definition:
IAthSelectionTool.h:49
Generated on Sun Dec 22 2024 21:11:21 for ATLAS Offline Software by
1.8.18