ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
TrigT1RPClogic
src
CMAtrigger.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TrigT1RPClogic/CMAtrigger.h
"
6
#include "
TrigT1RPClogic/CMApatterns.h
"
7
8
9
CMAtrigger::CMAtrigger
(
Lvl1RPCalgo
emulation,
TrigType
type
,
Threshold
thres,
10
bool
overlap,
float
width
,
const
CMApatterns
*
patterns
,
11
const
RPCdigit
* trigger_hit[3]) :
12
RPCtrigDataObject
(
patterns
->
number
(),
"CMA result"
),
13
m_emulation(emulation),m_trigger(
type
,thres,overlap),
14
m_trigger_width(
width
),m_Kpatt(0),
15
m_cma_patterns(
patterns
),m_pivot_hit(trigger_hit[0]),
16
m_lowPt_hit(trigger_hit[1]),m_highPt_hit(trigger_hit[2])
17
{}
18
19
20
CMAtrigger::CMAtrigger
(
Lvl1RPCalgo
emulation
,
TrigType
type
,
Threshold
thres,
21
const
CMApatterns
*
patterns
) :
22
RPCtrigDataObject
(
patterns
->
number
(),
"CMA result"
),
23
m_emulation
(
emulation
),
m_trigger
(
type
,thres,false),
24
m_trigger_width
(0.),
m_Kpatt
(0),
25
m_cma_patterns
(
patterns
),
m_pivot_hit
(0),
m_lowPt_hit
(0),
26
m_highPt_hit
(0)
27
{}
28
29
30
CMAtrigger::CMAtrigger
(
Lvl1RPCalgo
emulation
,
const
CMApatterns
*
patterns
) :
31
RPCtrigDataObject
(
patterns
->
number
(),
"CMA result"
),
32
m_emulation
(
emulation
),
m_trigger
(),
33
m_trigger_width
(0.),
m_Kpatt
(0),
34
m_cma_patterns
(
patterns
),
35
m_pivot_hit
(0),
m_lowPt_hit
(0),
m_highPt_hit
(0)
36
{}
37
38
39
CMAtrigger::CMAtrigger
(
const
CMAtrigger
& result) :
40
RPCtrigDataObject
(result.
number
(),result.
name
()),
41
m_emulation
(result.
emulation
()),
m_trigger
(result.
trigger
()),
42
m_trigger_width
(result.
trigger_width
()),
m_Kpatt
(result.
Kpatt
()),
43
m_cma_patterns
(result.
patterns
()),
44
m_pivot_hit
(result.
pivot_hit
()),
45
m_lowPt_hit
(result.
lowPt_hit
()),
46
m_highPt_hit
(result.
highPt_hit
())
47
{}
48
49
50
CMAtrigger
51
CMAtrigger::operator=
(
const
CMAtrigger
& cmaTrig)
52
{
53
static_cast<
RPCtrigDataObject
&
>
(*this) =
54
static_cast<
const
RPCtrigDataObject
&
>
(cmaTrig);
55
m_emulation
= cmaTrig.
emulation
();
56
m_trigger
= cmaTrig.
trigger
();
57
m_trigger_width
= cmaTrig.
trigger_width
();
58
m_Kpatt
= cmaTrig.
Kpatt
();
59
m_cma_patterns
= cmaTrig.
patterns
();
60
m_pivot_hit
= cmaTrig.
pivot_hit
();
61
m_lowPt_hit
= cmaTrig.
lowPt_hit
();
62
m_highPt_hit
= cmaTrig.
highPt_hit
();
63
64
return
*
this
;
65
}
66
67
void
68
CMAtrigger::operator+=
(
const
CMAtrigger
& cmaTrig)
69
{
70
if
(
m_emulation
!= cmaTrig.
emulation
() )
return
;
71
72
if
( *
this
< cmaTrig )
73
{
74
m_trigger
= cmaTrig.
trigger
();
75
m_trigger_width
= cmaTrig.
trigger_width
();
76
m_Kpatt
= cmaTrig.
Kpatt
();
77
m_cma_patterns
= cmaTrig.
patterns
();
78
if
(cmaTrig.
pivot_hit
())
m_pivot_hit
= cmaTrig.
pivot_hit
();
79
if
(cmaTrig.
lowPt_hit
())
m_lowPt_hit
= cmaTrig.
lowPt_hit
();
80
if
(cmaTrig.
highPt_hit
())
m_highPt_hit
= cmaTrig.
highPt_hit
();
81
}
82
}
83
84
85
bool
86
CMAtrigger::operator==
(
const
CMAtrigger
& cmaTrig)
const
87
{
88
if
(
m_cma_patterns
== cmaTrig.
patterns
() &&
89
m_emulation
== cmaTrig.
emulation
() &&
90
m_trigger
== cmaTrig.
trigger
() &&
91
m_trigger_width
== cmaTrig.
trigger_width
() &&
92
m_Kpatt
== cmaTrig.
Kpatt
() &&
93
m_pivot_hit
== cmaTrig.
pivot_hit
() &&
94
m_lowPt_hit
== cmaTrig.
lowPt_hit
() &&
95
m_highPt_hit
== cmaTrig.
highPt_hit
() )
96
{
97
return
true
;
98
}
99
return
false
;
100
}
101
102
bool
103
CMAtrigger::operator!=
(
const
CMAtrigger
& cmaTrig)
const
104
{
105
return
!(*
this
== cmaTrig);
106
}
107
108
bool
109
CMAtrigger::operator<
(
const
CMAtrigger
& cmaTrig)
const
110
{
111
if
(
m_trigger
< cmaTrig.
trigger
() )
return
true
;
112
if
(
m_trigger
== cmaTrig.
trigger
() &&
113
m_trigger_width
< cmaTrig.
trigger_width
())
return
true
;
114
return
false
;
115
}
116
117
int
118
CMAtrigger::sector
()
const
119
{
120
return
m_cma_patterns
->sector();
121
}
122
123
const
CMAidentity
&
124
CMAtrigger::cma
()
const
125
{
126
return
m_cma_patterns
->cma_parameters().id();
127
}
128
129
void
130
CMAtrigger::set_Kpatt
(
const
int
Kpatt
)
131
{
132
m_Kpatt
=
Kpatt
;
133
}
134
135
void
136
CMAtrigger::set_width
(
const
float
width
)
137
{
138
m_trigger_width
=
width
;
139
}
140
141
void
142
CMAtrigger::set_pivot
(
const
RPCdigit
* digit)
143
{
144
m_pivot_hit
= digit;
145
}
146
147
void
148
CMAtrigger::set_lowPt
(
const
RPCdigit
* digit)
149
{
150
m_lowPt_hit
= digit;
151
}
152
153
void
154
CMAtrigger::set_highPt
(
const
RPCdigit
* digit)
155
{
156
m_highPt_hit
= digit;
157
}
158
159
void
160
CMAtrigger::Print
(std::ostream& stream,
bool
detail
)
const
161
{
162
stream <<
m_trigger
<< std::endl;
163
if
(
detail
)
164
{
165
m_cma_patterns
->Print(stream,
false
);
166
if
(
m_lowPt_hit
)
167
{
168
stream <<
"Low Pt trigger digits:"
<< std::endl;
169
stream << *
m_lowPt_hit
<< std::endl;
170
}
171
if
(
m_pivot_hit
)
172
{
173
stream <<
"Pivot trigger digits:"
<< std::endl;
174
stream << *
m_pivot_hit
<< std::endl;
175
}
176
if
(
m_highPt_hit
)
177
{
178
stream <<
"High Pt trigger digits:"
<< std::endl;
179
stream << *
m_highPt_hit
<< std::endl;
180
}
181
}
182
183
}
CMApatterns.h
CMAtrigger.h
Lvl1RPCalgo
Lvl1RPCalgo
Definition
CMAtrigger.h:20
TrigType
TrigType
Definition
TRIGGERidentity.h:17
Threshold
Threshold
Definition
TRIGGERidentity.h:18
width
const double width
Definition
TTileTripReader.cxx:24
BaseObject::name
const std::string & name() const
Definition
BaseObject.h:23
CMAidentity
Definition
CMAidentity.h:16
CMApatterns
Definition
CMApatterns.h:21
CMAtrigger
Definition
CMAtrigger.h:23
CMAtrigger::lowPt_hit
const RPCdigit * lowPt_hit(void) const
Definition
CMAtrigger.h:60
CMAtrigger::patterns
const CMApatterns * patterns(void) const
Definition
CMAtrigger.h:58
CMAtrigger::operator==
bool operator==(const CMAtrigger &) const
Definition
CMAtrigger.cxx:86
CMAtrigger::m_trigger_width
float m_trigger_width
Definition
CMAtrigger.h:27
CMAtrigger::Kpatt
int Kpatt(void) const
Definition
CMAtrigger.h:63
CMAtrigger::operator+=
void operator+=(const CMAtrigger &)
Definition
CMAtrigger.cxx:68
CMAtrigger::m_cma_patterns
const CMApatterns * m_cma_patterns
Definition
CMAtrigger.h:29
CMAtrigger::cma
const CMAidentity & cma(void) const
Definition
CMAtrigger.cxx:124
CMAtrigger::trigger_width
float trigger_width(void) const
Definition
CMAtrigger.h:62
CMAtrigger::set_pivot
void set_pivot(const RPCdigit *)
Definition
CMAtrigger.cxx:142
CMAtrigger::operator!=
bool operator!=(const CMAtrigger &) const
Definition
CMAtrigger.cxx:103
CMAtrigger::Print
void Print(std::ostream &, bool) const
Definition
CMAtrigger.cxx:160
CMAtrigger::set_highPt
void set_highPt(const RPCdigit *)
Definition
CMAtrigger.cxx:154
CMAtrigger::CMApatterns
friend class CMApatterns
Definition
CMAtrigger.h:69
CMAtrigger::set_Kpatt
void set_Kpatt(int Kpatt)
Definition
CMAtrigger.cxx:130
CMAtrigger::m_emulation
Lvl1RPCalgo m_emulation
Definition
CMAtrigger.h:25
CMAtrigger::m_pivot_hit
const RPCdigit * m_pivot_hit
Definition
CMAtrigger.h:30
CMAtrigger::m_highPt_hit
const RPCdigit * m_highPt_hit
Definition
CMAtrigger.h:32
CMAtrigger::highPt_hit
const RPCdigit * highPt_hit(void) const
Definition
CMAtrigger.h:61
CMAtrigger::sector
int sector(void) const
Definition
CMAtrigger.cxx:118
CMAtrigger::set_width
void set_width(const float width)
Definition
CMAtrigger.cxx:136
CMAtrigger::m_trigger
TRIGGERidentity m_trigger
Definition
CMAtrigger.h:26
CMAtrigger::m_lowPt_hit
const RPCdigit * m_lowPt_hit
Definition
CMAtrigger.h:31
CMAtrigger::emulation
Lvl1RPCalgo emulation(void) const
Definition
CMAtrigger.h:56
CMAtrigger::CMAtrigger
CMAtrigger(Lvl1RPCalgo, TrigType, Threshold, bool, float width, const CMApatterns *, const RPCdigit **)
CMAtrigger::m_Kpatt
int m_Kpatt
Definition
CMAtrigger.h:28
CMAtrigger::set_lowPt
void set_lowPt(const RPCdigit *)
Definition
CMAtrigger.cxx:148
CMAtrigger::operator=
CMAtrigger operator=(const CMAtrigger &)
Definition
CMAtrigger.cxx:51
CMAtrigger::operator<
bool operator<(const CMAtrigger &) const
Definition
CMAtrigger.cxx:109
CMAtrigger::pivot_hit
const RPCdigit * pivot_hit(void) const
Definition
CMAtrigger.h:59
CMAtrigger::trigger
const TRIGGERidentity & trigger(void) const
Definition
CMAtrigger.h:57
RPCdigit
Definition
RPCdigit.h:16
RPCtrigDataObject
Definition
RPCtrigDataObject.h:16
RPCtrigDataObject::number
int number() const
Definition
RPCtrigDataObject.h:30
RPCtrigDataObject::RPCtrigDataObject
RPCtrigDataObject(int, const std::string &)
Definition
RPCtrigDataObject.cxx:10
patterns
std::vector< std::string > patterns
Definition
listroot.cxx:187
detail
Definition
extract_histogram_tag.cxx:14
type
number
std::string number(const double &d, const std::string &s)
Definition
utils.cxx:186
Generated on
for ATLAS Offline Software by
1.17.0