Belle II Software  release-08-01-10
TOPTimeRecalibratorModule.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <framework/core/Module.h>
12 
13 #include <framework/datastore/StoreArray.h>
14 #include <top/dataobjects/TOPDigit.h>
15 #include <top/dataobjects/TOPRecBunch.h>
16 
17 #include <framework/database/DBObjPtr.h>
18 #include <top/dbobjects/TOPCalTimebase.h>
19 #include <top/dbobjects/TOPCalChannelT0.h>
20 #include <top/dbobjects/TOPCalAsicShift.h>
21 #include <top/dbobjects/TOPCalModuleT0.h>
22 #include <top/dbobjects/TOPCalCommonT0.h>
23 #include <top/dbobjects/TOPFrontEndSetting.h>
24 #include <top/dbobjects/TOPCalTimeWalk.h>
25 
26 namespace Belle2 {
37 
38  public:
39 
44 
49  virtual void initialize() override;
50 
55  virtual void beginRun() override;
56 
60  virtual void event() override;
61 
62  private:
63 
64  // steering parameters
73  // front-end settings (lookback, storage depths etc)
76  // time calibration
85  // collections
89  // other
90  double m_syncTimeBase = 0;
92  };
93 
95 } // Belle2 namespace
96 
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Base class for Modules.
Definition: Module.h:72
Optional DBObjPtr: This class behaves the same as the DBObjPtr except that it will not raise errors w...
Definition: DBObjPtr.h:48
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Calibration constants of a singe ASIC channel: time axis (sample times)
Utility module for re-calibrating time of TOPDigits pulseWidth and timeError are not changed although...
bool m_subtractBunchTime
if true, subtract reconstructed bunch time
DBObjPtr< TOPCalTimebase > m_timebase
sample time calibration constants
StoreObjPtr< TOPRecBunch > m_recBunch
reconstructed bunch
DBObjPtr< TOPCalAsicShift > m_asicShift
ASIC shifts calibration constants.
DBObjPtr< TOPFrontEndSetting > m_feSetting
front-end settings
DBObjPtr< TOPCalCommonT0 > m_commonT0
common T0 calibration constants
bool m_useAsicShiftCalibration
if true, use asic shifts calibration
bool m_useSampleTimeCalibration
if true, use sample time calibration
DBObjPtr< TOPCalChannelT0 > m_channelT0
channel T0 calibration constants
bool m_useTimeWalkCalibration
if true, use time-walk calibration
OptionalDBObjPtr< TOPCalTimeWalk > m_timeWalk
time-walk calibration constants
bool m_useChannelT0Calibration
if true, use channel T0 calibration
bool m_useCommonT0Calibration
if true, use common T0 calibration
bool m_useModuleT0Calibration
if true, use module T0 calibration
StoreArray< TOPDigit > m_digits
collection of digits
DBObjPtr< TOPCalModuleT0 > m_moduleT0
module T0 calibration constants
TOPSampleTimes m_sampleTimes
equidistant in case no calibration required
virtual void initialize() override
Initialize the Module.
virtual void event() override
Event processor.
virtual void beginRun() override
Called when entering a new run.
Abstract base class for different kinds of events.