ATLAS Offline Software
Loading...
Searching...
No Matches
PhysicsAnalysis
AnalysisCommon
IsolationSelection
Root
IsolationWP.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include <
IsolationSelection/IsolationWP.h
>
6
7
namespace
CP
{
8
9
const
std::string&
IsolationWP::name
()
const
{
return
m_name
; }
10
void
IsolationWP::name
(
const
std::string&
name
) {
m_name
=
name
; }
11
asg::AcceptData
IsolationWP::accept
(
const
xAOD::IParticle
& p)
const
{
12
asg::AcceptData
result
(&
m_acceptInfo
);
13
for
(
const
auto
& c :
m_cuts
) {
14
if
(c->accept(p))
result
.setCutResult(c->name(),
true
);
15
else
{
16
result
.clear();
17
return
result
;
18
}
19
}
20
return
result
;
21
}
22
23
asg::AcceptData
IsolationWP::accept
(
const
strObj
& p)
const
{
24
asg::AcceptData
result
(&
m_acceptInfo
);
25
for
(
const
auto
& c :
m_cuts
) {
26
if
(c->accept(p)) {
result
.setCutResult(c->name(),
true
); }
27
else
{
28
result
.clear();
29
return
result
;
30
}
31
}
32
return
result
;
33
}
34
35
void
IsolationWP::addCut
(std::unique_ptr<IsolationCondition> i) {
36
m_acceptInfo
.addCut(i->name(), i->name());
37
m_cuts
.emplace_back(std::move(i));
38
}
39
const
asg::AcceptInfo
&
IsolationWP::getAccept
()
const
{
return
m_acceptInfo
; }
40
const
std::vector<std::unique_ptr<IsolationCondition>>&
IsolationWP::conditions
()
const
{
return
m_cuts
; }
41
42
IsolationWP::IsolationWP
(
const
std::string&
name
) :
m_name
(
name
) {}
43
}
// namespace CP
IsolationWP.h
CP::IsolationWP::IsolationWP
IsolationWP(const std::string &name)
Definition
IsolationWP.cxx:42
CP::IsolationWP::name
const std::string & name() const
Definition
IsolationWP.cxx:9
CP::IsolationWP::m_acceptInfo
asg::AcceptInfo m_acceptInfo
Definition
IsolationWP.h:33
CP::IsolationWP::m_cuts
std::vector< std::unique_ptr< IsolationCondition > > m_cuts
Definition
IsolationWP.h:32
CP::IsolationWP::addCut
void addCut(std::unique_ptr< IsolationCondition > cut)
Definition
IsolationWP.cxx:35
CP::IsolationWP::m_name
std::string m_name
Definition
IsolationWP.h:31
CP::IsolationWP::accept
asg::AcceptData accept(const xAOD::IParticle &p) const
Definition
IsolationWP.cxx:11
CP::IsolationWP::conditions
const std::vector< std::unique_ptr< IsolationCondition > > & conditions() const
Definition
IsolationWP.cxx:40
CP::IsolationWP::getAccept
const asg::AcceptInfo & getAccept() const
Definition
IsolationWP.cxx:39
asg::AcceptData
Definition
AcceptData.h:30
asg::AcceptInfo
Definition
AcceptInfo.h:28
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
CP
Select isolated Photons, Electrons and Muons.
Definition
Control/xAODRootAccess/xAODRootAccess/TEvent.h:27
CP::strObj
Definition
IsolationCondition.h:23
result
Generated on
for ATLAS Offline Software by
1.14.0