ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
AnalysisCommon
PATCore
Root
accept
AcceptInfo.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
6
/******************************************************************************
7
Name: AcceptInfo
8
9
Author: Karsten Koeneke (CERN)
10
Author: Nils Krumnack (Iowa State University)
11
Created: April 2011
12
Created: September 2017
13
14
Description: Object to encode the result of several cuts
15
******************************************************************************/
16
17
// This class' header
18
#include "
PATCore/AcceptInfo.h
"
19
20
21
// include math
22
#include <math.h>
23
#include <utility>
24
#include <map>
25
#include <iostream>
26
27
// ROOT includes
28
#include <TString.h>
29
30
31
32
33
//=============================================================================
34
// Get the description of a cut based on the cut position
35
//=============================================================================
36
const
std::string&
asg::AcceptInfo::getCutName
(
unsigned
int
cutPosition )
const
37
{
38
static
const
std::string emptyString;
39
40
// Make sure that this cut doesn't exceed the number of defined cuts
41
if
( cutPosition >=
m_cutMap
.size() )
42
{
43
return
emptyString;
44
}
45
46
// iterate over the map and find the right position
47
auto
it =
m_cutMap
.begin();
48
auto
itEnd =
m_cutMap
.end();
49
for
( ; it != itEnd; ++it )
50
{
51
if
( (it->second).second == cutPosition )
52
{
53
return
(it->first);
54
}
55
}
56
57
return
emptyString;
58
}
59
60
61
62
63
//=============================================================================
64
// Get the description of a cut based on the cut position
65
//=============================================================================
66
const
std::string&
asg::AcceptInfo::getCutDescription
(
unsigned
int
cutPosition )
const
67
{
68
static
const
std::string emptyString;
69
70
// Make sure that this cut doesn't exceed the number of defined cuts
71
if
( cutPosition >=
m_cutMap
.size() )
72
{
73
return
emptyString;
74
}
75
76
// iterate over the map and find the right position
77
auto
it =
m_cutMap
.begin();
78
auto
itEnd =
m_cutMap
.end();
79
for
( ; it != itEnd; ++it )
80
{
81
if
( (it->second).second == cutPosition )
82
{
83
return
(it->second).first;
84
}
85
}
86
87
return
emptyString;
88
}
89
90
91
92
93
94
//=============================================================================
95
// Set the description of a cut based on the cut position
96
//=============================================================================
97
void
asg::AcceptInfo::setCutDescription
(
const
unsigned
int
cutPosition,
const
std::string& cutDescription )
98
{
99
// iterate over the map and find the right position
100
auto
it =
m_cutMap
.begin();
101
auto
itEnd =
m_cutMap
.end();
102
for
( ; it != itEnd; ++it )
103
{
104
if
( (it->second).second == cutPosition )
105
{
106
((it->second).first) = cutDescription;
107
return
;
108
}
109
}
110
111
return
;
112
}
113
114
115
116
117
119
const
std::string& asg::AcceptInfo :: getCutDescription(
const
std::string& cutName )
const
120
{
121
static
const
std::string emptyString;
122
auto
it =
m_cutMap
.find(cutName);
123
return
(it !=
m_cutMap
.end()) ? (it->second).first : emptyString;
124
}
AcceptInfo.h
asg::AcceptInfo::getCutName
const std::string & getCutName(unsigned int cutPosition) const
Get the name of a cut, based on the cut position (slow, avoid usage).
Definition
AcceptInfo.cxx:36
asg::AcceptInfo::setCutDescription
void setCutDescription(const std::string &cutName, const std::string &cutDescription)
Set the result of a cut, based on the cut name (safer).
Definition
AcceptInfo.h:92
asg::AcceptInfo::m_cutMap
std::map< std::string, std::pair< std::string, unsigned int >, std::less<> > m_cutMap
The map for mapping cut names to their description and position.
Definition
AcceptInfo.h:109
asg::AcceptInfo::getCutDescription
const std::string & getCutDescription(const std::string &cutName) const
Get the description of a cut, based on the cut name.
Definition
AcceptInfo.cxx:119
Generated on
for ATLAS Offline Software by
1.17.0