ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigHypothesis
TrigHLTJetHypo
src
RepeatedCondition.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
./RepeatedCondition.h
"
6
7
#include <memory>
8
#include <string>
9
10
11
RepeatedCondition::RepeatedCondition
(std::unique_ptr<ICondition> cp,
12
std::size_t mult,
13
int
clique
,
14
int
cpInd,
15
bool
invert):
16
m_condition
{
std
::move(cp)},
m_multiplicity
{mult},
17
m_clique
{
clique
},
18
m_chainPartInd
{cpInd},
m_invert
{invert}{}
19
20
21
RepeatedCondition::~RepeatedCondition
(){}
22
23
bool
24
RepeatedCondition::multiplicitySatisfied
(std::size_t jgMultiplicity,
25
const
Collector
&)
const
{
26
return
m_multiplicity
<= jgMultiplicity;
27
}
28
29
bool
30
RepeatedCondition::isSatisfied
(
const
HypoJetVector
& v,
31
const
std::unique_ptr<ITrigJetHypoInfoCollector>& c)
const
{
32
33
bool
result =
m_condition
->isSatisfied(v, c);
34
return
m_invert
? !result : result;
35
}
36
37
unsigned
int
RepeatedCondition::capacity
()
const
{
38
return
m_condition
->capacity();
39
}
40
41
std::size_t
RepeatedCondition::multiplicity
()
const
{
42
return
m_multiplicity
;
43
}
44
45
46
int
RepeatedCondition::clique
()
const
{
47
return
m_clique
;
48
}
49
50
std::string
RepeatedCondition::toString
()
const
{
51
std::stringstream
ss
;
52
const
void
* address =
static_cast<
const
void
*
>
(
this
);
53
54
ss
<<
"RepeatedCondition ("
<< address <<
") Multiplicity: "
55
<<
m_multiplicity
56
<<
" clique "
<<
m_clique
57
<<
" chainPartInd "
<<
m_chainPartInd
58
<<
" invert "
<< std::boolalpha <<
m_invert
59
<<
'\n'
;
60
if
(
m_condition
){
61
ss
<<
m_condition
->toString();
62
}
else
{
63
ss
<<
" no internal condition "
;
64
}
65
66
return
ss
.str();
67
}
68
69
int
RepeatedCondition::label
()
const
{
70
return
m_chainPartInd
;
71
}
72
73
bool
RepeatedCondition::isFromChainPart
()
const
{
74
return
m_chainPartInd
>= 0;
75
}
76
77
std::ostream&
operator<<
(std::ostream& out,
78
const
RepeatedCondition
& c){
79
80
out << c.toString();
81
return
out;
82
}
Collector
std::unique_ptr< ITrigJetHypoInfoCollector > Collector
Definition
FastReducer.h:22
HypoJetVector
std::vector< pHypoJet > HypoJetVector
Definition
HypoJetDefs.h:27
ss
static Double_t ss
Definition
LArPhysWaveHECTool.cxx:37
operator<<
std::ostream & operator<<(std::ostream &out, const RepeatedCondition &c)
Definition
RepeatedCondition.cxx:77
RepeatedCondition.h
RepeatedCondition
Definition
RepeatedCondition.h:29
RepeatedCondition::label
virtual int label() const override
Definition
RepeatedCondition.cxx:69
RepeatedCondition::m_invert
bool m_invert
Definition
RepeatedCondition.h:82
RepeatedCondition::m_clique
int m_clique
Definition
RepeatedCondition.h:79
RepeatedCondition::RepeatedCondition
RepeatedCondition(std::unique_ptr< ICondition > cp, std::size_t mult, int clique, int chainPartind=-1, bool invert=false)
Definition
RepeatedCondition.cxx:11
RepeatedCondition::isSatisfied
virtual bool isSatisfied(const HypoJetVector &v, const std::unique_ptr< ITrigJetHypoInfoCollector > &c) const override
Definition
RepeatedCondition.cxx:30
RepeatedCondition::toString
virtual std::string toString() const override
Definition
RepeatedCondition.cxx:50
RepeatedCondition::multiplicity
virtual std::size_t multiplicity() const override
Definition
RepeatedCondition.cxx:41
RepeatedCondition::capacity
virtual unsigned int capacity() const override
Definition
RepeatedCondition.cxx:37
RepeatedCondition::isFromChainPart
virtual bool isFromChainPart() const override
Definition
RepeatedCondition.cxx:73
RepeatedCondition::~RepeatedCondition
virtual ~RepeatedCondition()
Definition
RepeatedCondition.cxx:21
RepeatedCondition::multiplicitySatisfied
virtual bool multiplicitySatisfied(std::size_t jgMultiplicity, const Collector &) const override
Definition
RepeatedCondition.cxx:24
RepeatedCondition::clique
virtual int clique() const override
Definition
RepeatedCondition.cxx:46
RepeatedCondition::m_condition
std::unique_ptr< ICondition > m_condition
Definition
RepeatedCondition.h:77
RepeatedCondition::m_multiplicity
std::size_t m_multiplicity
Definition
RepeatedCondition.h:78
RepeatedCondition::m_chainPartInd
int m_chainPartInd
Definition
RepeatedCondition.h:81
std
STL namespace.
Generated on
for ATLAS Offline Software by
1.17.0