ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigSteeringEvent
Root
TrigRoiDescriptor.cxx
Go to the documentation of this file.
1
// emacs: this is -*- c++ -*-
2
/*
3
Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
4
*/
5
//
6
// @file TrigRoiDescriptor.h
7
//
8
// RoiDescriptor class - includes constructors in preparation
9
// for enforcement of correct roi sizes - ingherits almost
10
// everything from DetectorDescription/RoiDescriptor
11
//
12
// @author sutt@cern.ch
13
//
14
// $Id: RoiDescriptor.h, v0.0 Fri 08 Jun 2013 23:52:09 CEST sutt $
15
16
17
#include "
TrigSteeringEvent/TrigRoiDescriptor.h
"
18
19
#include <cmath>
20
#include <sstream>
21
22
23
24
25
TrigRoiDescriptor::TrigRoiDescriptor
(
bool
fullscan )
26
:
RoiDescriptor
( fullscan ),
27
m_l1Id
(0),
m_roiId
(0),
m_roiWord
(0)
28
{ }
29
30
31
32
TrigRoiDescriptor::TrigRoiDescriptor
(
double
eta
,
double
etaMinus
,
double
etaPlus
,
33
double
phi
,
double
phiMinus
,
double
phiPlus
,
34
double
zed
,
double
zedMinus
,
double
zedPlus
)
35
:
RoiDescriptor
(
eta
,
etaMinus
,
etaPlus
,
phi
,
phiMinus
,
phiPlus
,
zed
,
zedMinus
,
zedPlus
),
36
m_l1Id
(0),
m_roiId
(0),
m_roiWord
(0)
37
{ }
38
39
40
TrigRoiDescriptor::TrigRoiDescriptor
(
unsigned
int
l1id,
unsigned
int
id
,
41
double
eta
,
double
etaMinus
,
double
etaPlus
,
42
double
phi
,
double
phiMinus
,
double
phiPlus
,
43
double
zed
,
double
zedMinus
,
double
zedPlus
)
44
:
RoiDescriptor
(
eta
,
etaMinus
,
etaPlus
,
phi
,
phiMinus
,
phiPlus
,
zed
,
zedMinus
,
zedPlus
),
45
m_l1Id
(l1id),
m_roiId
(id),
m_roiWord
(0)
46
{ }
47
48
49
50
TrigRoiDescriptor::TrigRoiDescriptor
(
unsigned
int
roiWord
,
unsigned
int
l1id,
unsigned
int
id
,
51
double
eta
,
double
etaMinus
,
double
etaPlus
,
52
double
phi
,
double
phiMinus
,
double
phiPlus
,
53
double
zed
,
double
zedMinus
,
double
zedPlus
)
54
:
RoiDescriptor
(
eta
,
etaMinus
,
etaPlus
,
phi
,
phiMinus
,
phiPlus
,
zed
,
zedMinus
,
zedPlus
),
55
m_l1Id
(l1id),
m_roiId
(id),
m_roiWord
(
roiWord
)
56
{ }
57
58
59
60
TrigRoiDescriptor::TrigRoiDescriptor
(
const
IRoiDescriptor
& roi )
61
:
RoiDescriptor
( roi ),
62
m_l1Id
(roi.
l1Id
()),
m_roiId
(roi.
roiId
()),
m_roiWord
(roi.
roiWord
()) {
63
}
64
65
TrigRoiDescriptor::TrigRoiDescriptor
(
const
TrigRoiDescriptor
& roi ) :
TrigRoiDescriptor
( static_cast<
const
IRoiDescriptor
&>(roi) ) { }
66
67
68
69
TrigRoiDescriptor
&
TrigRoiDescriptor::operator=
(
const
IRoiDescriptor
& roi ) {
70
if
(
this
==&roi )
return
*
this
;
71
72
construct
(roi);
73
74
m_l1Id
= roi.
l1Id
();
75
m_roiId
= roi.
roiId
();
76
m_roiWord
= roi.
roiWord
();
77
79
if
( roi.
size
()>0 ) {
80
if
(
m_manageConstituents
) {
82
for
(
unsigned
i=0 ; i<roi.
size
() ; i++ )
push_back
(
new
TrigRoiDescriptor
( *roi.
at
(i) ) );
83
}
84
else
{
86
for
(
unsigned
i=0 ; i<roi.
size
() ; i++ )
push_back
( roi.
at
(i) );
87
}
88
}
89
90
return
*
this
;
91
}
92
93
94
TrigRoiDescriptor
&
TrigRoiDescriptor::operator=
(
const
TrigRoiDescriptor
& roi ) {
95
return
TrigRoiDescriptor::operator=
(
static_cast<
const
IRoiDescriptor
&
>
(roi) );
96
}
97
98
TrigRoiDescriptor::~TrigRoiDescriptor
() { }
99
100
101
102
104
// helper operators
105
106
TrigRoiDescriptor::operator std::string()
const
{
107
std::stringstream
ss
;
108
ss
<<
" RoIid: "
<<
roiId
() <<
" RoIword: "
<<
roiWord
() <<
"\t"
<< RoiDescriptor::operator::std::string();
109
return
ss
.str();
110
}
111
112
std::string
str
(
const
TrigRoiDescriptor
& d ) {
113
return
std::string(d);
114
}
115
116
std::ostream&
operator<<
( std::ostream& m,
const
TrigRoiDescriptor
& d ) {
117
return
m << std::string(d);
118
}
119
ss
static Double_t ss
Definition
LArPhysWaveHECTool.cxx:37
operator<<
std::ostream & operator<<(std::ostream &m, const TrigRoiDescriptor &d)
Definition
TrigRoiDescriptor.cxx:116
TrigRoiDescriptor.h
TrigRoiDescriptor
Athena::TPCnvVers::Current TrigRoiDescriptor
Definition
TrigSteeringEventTPCnv.cxx:68
IRoiDescriptor::IRoiDescriptor
IRoiDescriptor()
default constructor
Definition
IRoiDescriptor.h:35
IRoiDescriptor::at
virtual const IRoiDescriptor * at(int i) const =0
find an RoiDescriptor constituent
IRoiDescriptor::size
virtual unsigned size() const =0
number of constituents
IRoiDescriptor::roiWord
virtual unsigned int roiWord() const =0
IRoiDescriptor::roiId
virtual unsigned int roiId() const =0
identifiers
IRoiDescriptor::l1Id
virtual unsigned int l1Id() const =0
RoiDescriptor::etaMinus
virtual double etaMinus() const override final
gets eta at zMinus
Definition
RoiDescriptor.h:117
RoiDescriptor::push_back
void push_back(const IRoiDescriptor *roi)
add a RoiDescriptor
Definition
RoiDescriptor.h:158
RoiDescriptor::etaPlus
virtual double etaPlus() const override final
gets eta at zedPlus
Definition
RoiDescriptor.h:116
RoiDescriptor::zed
virtual double zed() const override final
Definition
RoiDescriptor.h:103
RoiDescriptor::RoiDescriptor
RoiDescriptor(bool fullscan=ROI)
default constructor
Definition
RoiDescriptor.cxx:41
RoiDescriptor::phi
virtual double phi() const override final
Methods to retrieve data members.
Definition
RoiDescriptor.h:101
RoiDescriptor::phiMinus
virtual double phiMinus() const override final
gets phiMinus
Definition
RoiDescriptor.h:120
RoiDescriptor::m_manageConstituents
bool m_manageConstituents
flag to determine whether consituents should be managed
Definition
RoiDescriptor.h:235
RoiDescriptor::construct
void construct(double eta, double etaMinus, double etaPlus, double phi, double phiMinus, double phiPlus, double zed, double zedMinus, double zedPlus)
construct RoiDescriptor internals - similar to constructors
Definition
RoiDescriptor.cxx:160
RoiDescriptor::zedPlus
virtual double zedPlus() const override final
z at the most forward end of the RoI
Definition
RoiDescriptor.h:113
RoiDescriptor::zedMinus
virtual double zedMinus() const override final
z at the most backward end of the RoI
Definition
RoiDescriptor.h:114
RoiDescriptor::eta
virtual double eta() const override final
Definition
RoiDescriptor.h:102
RoiDescriptor::phiPlus
virtual double phiPlus() const override final
gets phiPlus
Definition
RoiDescriptor.h:119
TrigRoiDescriptor
nope - should be used for standalone also, perhaps need to protect the class def bits ifndef XAOD_ANA...
Definition
TrigRoiDescriptor.h:48
TrigRoiDescriptor::m_roiWord
unsigned int m_roiWord
lvl1 RoI word from which this RoI was initially constructed
Definition
TrigRoiDescriptor.h:137
TrigRoiDescriptor::~TrigRoiDescriptor
virtual ~TrigRoiDescriptor()
Definition
TrigRoiDescriptor.cxx:98
TrigRoiDescriptor::TrigRoiDescriptor
TrigRoiDescriptor(bool fullscan=false)
default constructor
Definition
TrigRoiDescriptor.cxx:25
TrigRoiDescriptor::roiWord
virtual unsigned int roiWord() const override final
Definition
TrigRoiDescriptor.h:129
TrigRoiDescriptor::operator=
TrigRoiDescriptor & operator=(const IRoiDescriptor &roi)
Definition
TrigRoiDescriptor.cxx:69
TrigRoiDescriptor::roiId
virtual unsigned int roiId() const override final
these quantities probably don't need to be used any more
Definition
TrigRoiDescriptor.h:127
TrigRoiDescriptor::l1Id
virtual unsigned int l1Id() const override final
Definition
TrigRoiDescriptor.h:128
TrigRoiDescriptor::m_roiId
unsigned int m_roiId
RoI number.
Definition
TrigRoiDescriptor.h:136
TrigRoiDescriptor::m_l1Id
unsigned int m_l1Id
lvl1 event number
Definition
TrigRoiDescriptor.h:135
const
str
Definition
BTagTrackIpAccessor.cxx:11
Generated on
for ATLAS Offline Software by
1.17.0