Belle II Software  release-05-01-25
SVDDefaultDetectorConfigurationImporter.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 """
4 SVD Default Detecotr Configuration importer.
5 """
6 
7 import basf2
8 from basf2 import *
9 from svd import *
10 import ROOT
11 from ROOT import Belle2
12 from ROOT.Belle2 import SVDLocalConfigParameters
13 from ROOT.Belle2 import SVDGlobalConfigParameters
14 import datetime
15 import os
16 
17 now = datetime.datetime.now()
18 
19 # default values
20 # local config
21 calibrationTimeUnits = '2' # in RFC units, it is a string as the xml field where it is written
22 calibDate = '20190314'
23 injCharge = 22500
24 
25 # global config
26 latency = 158
27 maskFilter = 7
28 zeroSuppress = 3
29 apvClockTimeUnits = '16' # in RFC units, it is a string as the xml field where it is written
30 hv = 50
31 relativeShift = 0
32 nrFrames = 6
33 
34 
36  '''default importer for the detector configuration'''
37 
38  def beginRun(self):
39  '''begin run'''
40 
42 
44  "LocalConfiguration_default_" + str(now.isoformat()) +
45  "_INFO:_injCharge=" + str(injCharge) + "_calTimeUnits=" + str(calibrationTimeUnits))
46 
48  "GlobalConfiguration_default_" + str(now.isoformat()) +
49  "_INFO:_latency=" + str(latency) +
50  "_maskFilter=" + str(maskFilter) + "_ZS=" + str(zeroSuppress) +
51  "_apvClkUnits=" + str(apvClockTimeUnits))
52 
53  local_payload.setCalibrationTimeInRFCUnits(calibrationTimeUnits)
54  local_payload.setCalibDate(calibDate)
55  local_payload.setInjectedCharge(injCharge)
56  global_payload.setLatency(latency)
57  global_payload.setZeroSuppression(zeroSuppress)
58  global_payload.setMaskFilter(maskFilter)
59  global_payload.setAPVClockInRFCUnits(apvClockTimeUnits)
60  global_payload.setHV(hv)
61  global_payload.setRelativeTimeShift(relativeShift)
62  global_payload.setNrFrames(nrFrames)
63 
64  Belle2.Database.Instance().storeData(Belle2.SVDDetectorConfiguration.svdLocalConfig_name, local_payload, iov)
65  Belle2.Database.Instance().storeData(Belle2.SVDDetectorConfiguration.svdGlobalConfig_name, global_payload, iov)
66 
67 
68 use_database_chain()
69 use_central_database("svd_onlySVDinGeoConfiguration")
70 use_local_database("localdb_defaultconfig/database.txt", "localdb_defaultconfig", invertLogging=True)
71 
72 main = create_path()
73 
74 # Event info setter - execute single event
75 eventinfosetter = register_module('EventInfoSetter')
76 eventinfosetter.param({'evtNumList': [1], 'expList': 0, 'runList': 0})
77 main.add_module(eventinfosetter)
78 
79 main.add_module("Gearbox")
80 main.add_module("Geometry", components=['SVD'])
81 
82 main.add_module(defaultSVDConfigParametersImporter())
83 
84 # Show progress of processing
85 progress = register_module('Progress')
86 main.add_module(progress)
87 
88 # Process events
89 process(main)
SVDDefaultDetectorConfigurationImporter.defaultSVDConfigParametersImporter
Definition: SVDDefaultDetectorConfigurationImporter.py:35
Belle2::IntervalOfValidity::always
static IntervalOfValidity always()
Function that returns an interval of validity that is always valid, c.f.
Definition: IntervalOfValidity.h:72
SVDDefaultDetectorConfigurationImporter.defaultSVDConfigParametersImporter.beginRun
def beginRun(self)
Definition: SVDDefaultDetectorConfigurationImporter.py:38
Belle2::SVDGlobalConfigParameters
This class defines the payload which stores to the central DB the SVD global configuring parameters,...
Definition: SVDGlobalConfigParameters.h:40
Belle2::SVDLocalConfigParameters
This class defines the payload which stores to the central DB the SVD local configuring parameters,...
Definition: SVDLocalConfigParameters.h:41
Belle2::Database::Instance
static Database & Instance()
Instance of a singleton Database.
Definition: Database.cc:54