Belle II Software  release-05-01-25
SVDDefaultFADCMaskedStripsImporter.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 
4 """
5 SVD Default FADC Masked Strips Calibration importer.
6 Script to Import Calibrations into a local DB
7 """
8 import basf2
9 from basf2 import *
10 from svd import *
11 import ROOT
12 from ROOT import Belle2
13 from ROOT.Belle2 import SVDFADCMaskedStrips
14 import datetime
15 import os
16 
17 now = datetime.datetime.now()
18 
19 
20 class defaultFADCMaskedStripsImporter(basf2.Module):
21  '''default importer for FADC masked strips'''
22 
23  def beginRun(self):
24  '''begin run'''
25 
27 
29  0, "FADCMaskedStrips_default_" + str(now.isoformat()) + "_INFO:_noFADCMaskedstrips")
30 
32 
33  for layer in geoCache.getLayers(Belle2.VXD.SensorInfoBase.SVD):
34  layerNumber = layer.getLayerNumber()
35  for ladder in geoCache.getLadders(layer):
36  ladderNumber = ladder.getLadderNumber()
37  for sensor in geoCache.getSensors(ladder):
38  sensorNumber = sensor.getSensorNumber()
39  for side in (0, 1):
40  Nstrips = 768
41  print("setting masked strips default value (0, not masked) for " +
42  str(layerNumber) + "." + str(ladderNumber) + "." + str(sensorNumber))
43  if side == 0 and not layerNumber == 3: # non-L3 V side
44  Nstrips = 512
45 
46  for strip in range(0, Nstrips):
47  payload.set(layerNumber, ladderNumber, sensorNumber, bool(side), strip, 0)
48 
49  # mask something, uncomment the following 2 lines:
50  # if(layerNumber == 3 and ladderNumber == 2 and sensorNumber == 2 and side == 0):
51  # payload.set(layerNumber, ladderNumber, sensorNumber, bool(side), strip, 1)
52 
53  Belle2.Database.Instance().storeData(Belle2.SVDFADCMaskedStrips.name, payload, iov)
54 
55 
56 use_database_chain()
57 use_central_database("svd_onlySVDinGeoConfiguration")
58 use_local_database("localDB_defaultFADCMaskedStrips/database.txt", "localDB_defaultFADCMaskedStrips")
59 
60 main = create_path()
61 
62 # Event info setter - execute single event
63 eventinfosetter = register_module('EventInfoSetter')
64 eventinfosetter.param({'evtNumList': [1], 'expList': 0, 'runList': 0})
65 main.add_module(eventinfosetter)
66 
67 main.add_module("Gearbox")
68 main.add_module("Geometry")
69 
70 main.add_module(defaultFADCMaskedStripsImporter())
71 
72 # Show progress of processing
73 progress = register_module('Progress')
74 main.add_module(progress)
75 
76 # Process events
77 process(main)
Belle2::IntervalOfValidity::always
static IntervalOfValidity always()
Function that returns an interval of validity that is always valid, c.f.
Definition: IntervalOfValidity.h:72
SVDDefaultFADCMaskedStripsImporter.defaultFADCMaskedStripsImporter.beginRun
def beginRun(self)
Definition: SVDDefaultFADCMaskedStripsImporter.py:23
SVDDefaultFADCMaskedStripsImporter.defaultFADCMaskedStripsImporter
Definition: SVDDefaultFADCMaskedStripsImporter.py:20
Belle2::VXD::GeoCache::getInstance
static GeoCache & getInstance()
Return a reference to the singleton instance.
Definition: GeoCache.cc:215
Belle2::Database::Instance
static Database & Instance()
Instance of a singleton Database.
Definition: Database.cc:54
Belle2::SVDCalibrationsBase
base class for calibrations classes
Definition: SVDCalibrationsBase.h:36