Loading [MathJax]/jax/output/SVG/config.js
ATLAS Offline Software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
x
z
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
GitLab
LXR
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
TileCalorimeter
TileSvc
TileByteStream
src
TileRawChannel2Bytes.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TileByteStream/TileRawChannel2Bytes.h
"
6
#include "
TileEvent/TileFastRawChannel.h
"
7
#include <algorithm>
8
#include <cmath>
9
10
int
TileRawChannel2Bytes::getBytes
(
const
TileFastRawChannel
* rc,
int
gain
, std::vector<short>&
v
) {
11
// pack raw data into 16bit integers
12
13
int
a
= std::lround(rc->amplitude() *
AMPLITUDE_FACTOR
);
14
int
t
= std::lround(rc->time() *
TIME_FACTOR
);
15
int
q
= std::lround(rc->quality() *
QUALITY_FACTOR
);
16
17
short
w1 =
std::min
(abs(
a
),
amplitude_range
());
18
if
(
a
< 0) w1 |=
AMPLITUDE_SIGN
;
19
if
(
gain
) w1 |=
GAIN_BIT
;
20
// w1 <<= AMPLITUDE_SHIFT;
21
22
short
w2 =
std::min
(abs(
t
),
time_range
());
23
if
(
t
< 0) w2 |=
TIME_SIGN
;
24
// w2 <<= TIME_SHIFT;
25
26
short
w3 =
std::min
(abs(
q
),
quality_range
());
27
if
(
q
< 0) w3 |=
QUALITY_SIGN
;
28
// w3 <<= QUALITY_SHIFT;
29
30
v
.push_back(w1);
31
v
.push_back(w2);
32
v
.push_back(w3);
33
34
return
3;
35
}
36
AMPLITUDE_SIGN
const int AMPLITUDE_SIGN
Definition:
TileRawChannel2Bytes.h:24
GAIN_BIT
const int GAIN_BIT
Definition:
TileRawChannel2Bytes.h:23
QUALITY_SIGN
const int QUALITY_SIGN
Definition:
TileRawChannel2Bytes.h:32
TileRawChannel2Bytes::time_range
int time_range()
Returns TIME_RANGE .
Definition:
TileRawChannel2Bytes.h:75
min
constexpr double min()
Definition:
ap_fixedTest.cxx:26
CaloCondBlobAlgs_fillNoiseFromASCII.gain
gain
Definition:
CaloCondBlobAlgs_fillNoiseFromASCII.py:110
read_hist_ntuple.t
t
Definition:
read_hist_ntuple.py:5
TileRawChannel2Bytes::amplitude_range
int amplitude_range()
Returns AMPLITUDE_RANGE .
Definition:
TileRawChannel2Bytes.h:71
QUALITY_FACTOR
const float QUALITY_FACTOR
Definition:
TileRawChannel2Bytes.h:38
TileRawChannel2Bytes::gain
int gain(short i) const
Returns the gain unpacked from the single 16-bit word w.
Definition:
TileRawChannel2Bytes.h:89
TileRawChannel2Bytes::getBytes
int getBytes(const TileFastRawChannel *rc, int gain, std::vector< short > &v)
Pack TileRawChannel information (gain, amplitude, phase and quality) in 3 16-bit words.
Definition:
TileRawChannel2Bytes.cxx:10
TIME_FACTOR
const float TIME_FACTOR
Definition:
TileRawChannel2Bytes.h:37
python.PyAthena.v
v
Definition:
PyAthena.py:154
TileRawChannel2Bytes::quality_range
int quality_range()
Retuns QUALITY_RANGE .
Definition:
TileRawChannel2Bytes.h:79
a
TList * a
Definition:
liststreamerinfos.cxx:10
AMPLITUDE_FACTOR
const float AMPLITUDE_FACTOR
Definition:
TileRawChannel2Bytes.h:36
extractSporadic.q
list q
Definition:
extractSporadic.py:98
TileFastRawChannel
Definition:
TileFastRawChannel.h:17
TileFastRawChannel.h
TIME_SIGN
const int TIME_SIGN
Definition:
TileRawChannel2Bytes.h:28
TileRawChannel2Bytes.h
Generated on Sun Apr 6 2025 21:20:30 for ATLAS Offline Software by
1.8.18