ATLAS Offline Software
PhysicsAnalysis
Algorithms
EventSelectionAlgorithms
EventSelectionAlgorithms
SignEnums.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
7
#ifndef EVENT_SELECTOR_SIGN_ENUMS_H
8
#define EVENT_SELECTOR_SIGN_ENUMS_H
9
10
#include <stdexcept>
11
#include <map>
12
14
15
namespace
SignEnum
{
16
18
enum
ComparisonOperator
{
19
LT
,
20
GT
,
21
EQ
,
22
GE
,
23
LE
24
};
25
27
static
const
std::map<std::string, ComparisonOperator> stringToOperator = {
28
{
"LT"
,
ComparisonOperator::LT
},
// <
29
{
"GT"
,
ComparisonOperator::GT
},
// >
30
{
"EQ"
,
ComparisonOperator::EQ
},
// ==
31
{
"GE"
,
ComparisonOperator::GE
},
// >=
32
{
"LE"
,
ComparisonOperator::LE
}
// <=
33
};
34
36
template
<
typename
T>
37
bool
checkValue
(T
reference
,
ComparisonOperator
sign
, T
test
) {
38
switch
(
sign
) {
39
case
ComparisonOperator::LT
:
40
return
test
<
reference
;
41
case
ComparisonOperator::GT
:
42
return
test
>
reference
;
43
case
ComparisonOperator::EQ
:
44
return
test
==
reference
;
45
case
ComparisonOperator::GE
:
46
return
test
>=
reference
;
47
case
ComparisonOperator::LE
:
48
return
test
<=
reference
;
49
}
50
throw
std::runtime_error(
"SignEnum::checkValue did not recognise the sign argument! Make sure it is listed within SignEnum::ComparisonOperator."
);
51
}
52
53
}
// namespace SignEnum
54
55
#endif // EVENT_SELECTOR_SIGN_ENUMS_H
SignEnum::EQ
@ EQ
Definition:
SignEnums.h:21
SignEnum
the conversion key for comparison operators for Event Selection Algorithms
Definition:
SignEnums.h:15
reference
Definition:
hcg.cxx:437
TrigInDetValidation_Base.test
test
Definition:
TrigInDetValidation_Base.py:142
SignEnum::GE
@ GE
Definition:
SignEnums.h:22
SignEnum::ComparisonOperator
ComparisonOperator
all possible comparison user inputs
Definition:
SignEnums.h:18
SignEnum::LE
@ LE
Definition:
SignEnums.h:23
sign
int sign(int a)
Definition:
TRT_StrawNeighbourSvc.h:108
SignEnum::GT
@ GT
Definition:
SignEnums.h:20
SignEnum::checkValue
bool checkValue(T reference, ComparisonOperator sign, T test)
the comparison test given the specified sign and two test values
Definition:
SignEnums.h:37
SignEnum::LT
@ LT
Definition:
SignEnums.h:19
dq_make_web_display.reference
reference
Definition:
dq_make_web_display.py:43
Generated on Mon Sep 29 2025 21:18:44 for ATLAS Offline Software by
1.8.18