Belle II Software
release-08-02-06
Main Page
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
z
Variables
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
v
w
x
z
Typedefs
a
b
c
d
e
g
i
k
l
m
n
p
r
s
t
u
v
w
Enumerations
a
b
c
e
f
g
n
p
s
v
z
Enumerator
c
d
f
p
t
u
v
w
Classes
Class List
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
Enumerations
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
Enumerator
a
b
c
d
e
f
g
h
k
l
m
n
o
p
r
s
t
u
v
w
z
Related Functions
b
c
d
g
i
o
r
s
t
Files
File List
File Members
All
Functions
Typedefs
Macros
eclCreateUnpackerParams.py
1
#!/usr/bin/env python3
2
# -*- coding: utf-8 -*-
3
4
11
12
import
ROOT
13
from
ROOT
import
Belle2
14
15
"""
16
Create and fill ECLChannelMap class.
17
Can be used for creating run-dependent ECLUnpacker parameters.
18
"""
19
20
FIRST_EXP = 12
21
FIRST_RUN = 2251
22
LAST_EXP = 12
23
LAST_RUN = 2366
24
DBOBJECT_NAME =
'ECLUnpackingParameters'
25
26
27
def
getValue(crate, shaper, channel):
28
"""
29
Edit this function according to your current use-case.
30
If you are preparing ECLUnpackingParameters, see
31
ECLUnpackerModule::ECLUnpack for bit definitions.
32
"""
33
if
crate == 32
and
shaper == 9:
34
return
7
35
return
0
36
37
38
39
40
def
main
():
41
"""
42
"""
43
coefs_bar = []
44
coefs_fwd = []
45
coefs_bwd = []
46
47
for
crate
in
range(1, 52 + 1):
48
if
crate < 37:
49
sh_count = 12
50
elif
crate < 45:
51
sh_count = 10
52
else
:
53
sh_count = 8
54
for
shaper
in
range(1, sh_count + 1):
55
for
channel
in
range(1, 16 + 1):
56
val = getValue(crate, shaper, channel)
57
if
crate < 37:
58
coefs_bar.append(val)
59
elif
crate < 45:
60
coefs_fwd.append(val)
61
else
:
62
coefs_bwd.append(val)
63
64
vec_bar = ROOT.std.vector(
'int'
)()
65
vec_bar += coefs_bar
66
vec_fwd = ROOT.std.vector(
'int'
)()
67
vec_fwd += coefs_fwd
68
vec_bwd = ROOT.std.vector(
'int'
)()
69
vec_bwd += coefs_bwd
70
71
coefs =
Belle2.ECLChannelMap
()
72
coefs.setMappingVectors(vec_bar, vec_fwd, vec_bwd)
73
74
db =
Belle2.Database.Instance
()
75
iov =
Belle2.IntervalOfValidity
(FIRST_EXP, FIRST_RUN, LAST_EXP, LAST_RUN)
76
db.storeData(DBOBJECT_NAME, coefs, iov)
77
78
79
if
__name__ ==
'__main__'
:
80
main
()
Belle2::ECLChannelMap
DB object to store correspondence table of type (Crate id, ShaperDSP id, Channel id) <-> (ECL CellID)
Definition:
ECLChannelMap.h:51
Belle2::IntervalOfValidity
A class that describes the interval of experiments/runs for which an object in the database is valid.
Definition:
IntervalOfValidity.h:25
Belle2::Database::Instance
static Database & Instance()
Instance of a singleton Database.
Definition:
Database.cc:42
main
Definition:
main.py:1
main
int main(int argc, char **argv)
Run all tests.
Definition:
test_main.cc:91
ecl
scripts
eclCreateUnpackerParams.py
Generated on Tue Jan 28 2025 01:54:08 for Belle II Software by
1.9.1