Belle II Software  release-08-01-10
SVDTimeCalibrationCollectorModule.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 <calibration/CalibrationCollectorModule.h>
12 
13 #include <framework/datastore/StoreObjPtr.h>
14 #include <framework/datastore/StoreArray.h>
15 #include <framework/dataobjects/EventMetaData.h>
16 #include <string>
17 
18 #include "TH1F.h"
19 #include "TH2F.h"
20 #include "TH3F.h"
21 
22 #include <svd/dataobjects/SVDCluster.h>
23 #include <svd/dataobjects/SVDEventInfo.h>
24 #include <framework/dataobjects/EventT0.h>
25 
26 #include <framework/database/DBObjPtr.h>
27 #include <framework/dbobjects/HardwareClockSettings.h>
28 
29 
30 namespace Belle2 {
43 
44  public:
49 
53  void prepare() override final;
54 
58  void startRun() override final;
59 
63  void collect() override final;
64 
65  private:
66 
71  std::string m_svdEventInfo = "SVDEventInfo";
77  std::string m_svdClustersOnTracks =
78  "SVDClustersFromTracks";
82  std::string m_eventTime = "EventT0";
85  TH1F* m_hEventT0FromCDC = nullptr;
86  TH1F* m_hEventT0FromCDCSync = nullptr;
87  TH1F* m_hRawTimeL3V = nullptr;
88  TH1F* m_hRawTimeL3VFullRange = nullptr;
90  double m_rawCoGBinWidth = 2.;
91  double m_minRawTimeForIoV = 0.;
92  double m_maxRawTimeForIoV = 150.;
93  };
94 
96 } // end namespace Belle2
Calibration collector module base class.
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Collector module used to create the histograms needed for the SVD CoG-Time calibration.
StoreArray< SVDCluster > m_svdClsOnTrk
SVDClusters store array.
double m_rawCoGBinWidth
Raw_CoG Bin Width [ns] for 2D-histogram.
void prepare() override final
Initialize the module.
StoreObjPtr< EventT0 > m_eventT0
EventT0 store object pointer.
TH1F * m_hEventT0FromCDC
Distribution of EventT0 reconstructed by the CDC for all sensos/side.
StoreObjPtr< SVDEventInfo > m_svdEI
SVDEventInfo store object pointer.
double m_maxRawTimeForIoV
Maxmum value of the raw time distribution used to determine whether change IoV or not.
double m_minRawTimeForIoV
Minimum value of the raw time distribution used to determine whether change IoV or not.
TH1F * m_hEventT0FromCDCSync
Distribution of EventT0 reconstructed by the CDC and synchronized for all sensos/side.
TH1F * m_hRawTimeL3V
Raw time distribution of layer3 V-side for IoV determination.
DBObjPtr< HardwareClockSettings > m_hwClock
systems clock
TH1F * m_hRawTimeL3VFullRange
Raw time distribution of layer3 V-side.
StoreObjPtr< EventMetaData > m_emdata
EventMetaData.
void startRun() override final
Called when entering a new run.
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.