Belle II Software  release-08-01-10
SVDDQMHitTimeModule.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 <mdst/dataobjects/SoftwareTriggerResult.h>
12 
13 #include <framework/core/HistoModule.h>
14 #include <framework/datastore/StoreArray.h>
15 #include <framework/datastore/StoreObjPtr.h>
16 #include <mdst/dataobjects/TRGSummary.h>
17 
18 #include "TH1F.h"
19 
20 #include <svd/dataobjects/SVDEventInfo.h>
21 #include <svd/dataobjects/SVDCluster.h>
22 #include <framework/dataobjects/EventT0.h>
23 
24 namespace Belle2 {
38 
39  public:
40 
43 
45  virtual ~SVDDQMHitTimeModule();
46 
48  virtual void defineHisto() override;
49 
51  virtual void initialize() override;
52 
54  virtual void beginRun() override;
55 
58  virtual void event() override;
59 
60  private:
61 
64 
69 
71  bool m_desynchSVDTime = false;
72 
79  int m_L1TimingSrc = -1;
80 
86  TH1F* m_l3v_bhabha_L1_ECLTRG{nullptr};
87  TH1F* m_l3vEvtT0_bhabha_L1_ECLTRG{nullptr};
88  TH1F* m_l3v_hadron_L1_ECLTRG{nullptr};
89  TH1F* m_l3vEvtT0_hadron_L1_ECLTRG{nullptr};
90  TH1F* m_l3v_mumu_L1_ECLTRG{nullptr};
91  TH1F* m_l3vEvtT0_mumu_L1_ECLTRG{nullptr};
93  TH1F* m_l3v_bhabha_L1_CDCTRG{nullptr};
94  TH1F* m_l3vEvtT0_bhabha_L1_CDCTRG{nullptr};
95  TH1F* m_l3v_hadron_L1_CDCTRG{nullptr};
96  TH1F* m_l3vEvtT0_hadron_L1_CDCTRG{nullptr};
97  TH1F* m_l3v_mumu_L1_CDCTRG{nullptr};
98  TH1F* m_l3vEvtT0_mumu_L1_CDCTRG{nullptr};
100  TH1F* m_SVD3EventT0{nullptr};
101  TH1F* m_SVD6EventT0{nullptr};
118  };
119 
121 } // Belle2 namespace
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
This module to design collect the svd hit time for different detectors trigger timing and physics pro...
virtual ~SVDDQMHitTimeModule()
Destructor.
StoreObjPtr< EventT0 > m_eventT0
EventT0 data object.
TH1F * m_SVD3EventT0_hadron_L1_ECLTRG
svd eventT0 histogram for hadronic events wrt the ECL trigger time for 3 samples
TH1F * m_l3v_mumu_L1_ECLTRG
svd time histogram for mu mu events wrt the ECL trigger time
TH1F * m_SVD3EventT0
SVD event T0 for 3 sampels.
virtual void initialize() override
Initialize the module.
StoreObjPtr< SVDEventInfo > m_svdEventInfo
SVDEventInfo data object.
TH1F * m_SVD3EventT0_bhabha_L1_CDCTRG
svd eventT0 histogram for bhabha events wrt the CDC trigger time for 3 samples
TH1F * m_SVD3EventT0_bhabha_L1_ECLTRG
svd eventT0 histogram for bhabha events wrt the ECL trigger time for 3 samples
virtual void event() override
This method is called for each event.
TH1F * m_l3vEvtT0_mumu_L1_ECLTRG
svd time histogram for mu mu events wrt the ECL trigger time
StoreArray< SVDCluster > m_clusters
Store array for clusters.
TH1F * m_l3v_hadron_L1_CDCTRG
svd time histogram for hadronic events wrt the CDC trigger time
TH1F * m_l3vEvtT0_mumu_L1_CDCTRG
svd time histogram for mu mu events wrt the CDC trigger time
TH1F * m_SVD6EventT0_mumu_L1_ECLTRG
svd eventT0 histogram for mu mu events wrt the ECL trigger time for 6 samples
TH1F * m_l3vEvtT0_hadron_L1_CDCTRG
svd time histogram for hadronic events wrt the CDC trigger time
TH1F * m_SVD3EventT0_mumu_L1_ECLTRG
svd eventT0 histogram for mu mu events wrt the ECL trigger time for 3 samples
TH1F * m_l3v_hadron_L1_ECLTRG
svd time histogram for hadronic events wrt the ECL trigger time
TH1F * m_l3vEvtT0_hadron_L1_ECLTRG
svd time histogram for hadronic events wrt the ECL trigger time
TH1F * m_SVD6EventT0_hadron_L1_CDCTRG
svd EventT0 histogram for hadronic events wrt the CDC trigger time for 6 samples
StoreObjPtr< TRGSummary > m_objTrgSummary
Trigger Summary data object.
TH1F * m_SVD6EventT0_mumu_L1_CDCTRG
svd eventT0 histogram for mu mu events wrt the CDC trigger time for 6 samples
TH1F * m_SVD6EventT0_bhabha_L1_ECLTRG
svd eventT0 histogram for bhabha events wrt the ECL trigger time for 6 samples
virtual void beginRun() override
This method is called for each run.
std::string m_histogramDirectoryName
Name of the histogram directory in ROOT file.
TH1F * m_SVD6EventT0
SVD event T0 for 6 sampels.
TH1F * m_l3v_bhabha_L1_ECLTRG
svd time histogram for bhabha events wrt the ECL trigger time
TH1F * m_l3vEvtT0_bhabha_L1_CDCTRG
svd time histogram for bhabha events wrt the CDC trigger time
TH1F * m_l3v_mumu_L1_CDCTRG
svd time histogram for mu mu events wrt the CDC trigger time
TH1F * m_SVD6EventT0_bhabha_L1_CDCTRG
svd eventT0 histogram for bhabha events wrt the CDC trigger time for 6 samples
TH1F * m_SVD6EventT0_hadron_L1_ECLTRG
svd eventT0 histogram for hadronic events wrt the ECL trigger time for 6 samples
bool m_desynchSVDTime
if TRUE: svdTime back in SVD time reference
TH1F * m_l3v_bhabha_L1_CDCTRG
svd time histogram for bhabha events wrt the CDC trigger time
TH1F * m_SVD3EventT0_hadron_L1_CDCTRG
svd eventT0 histogram for hadronic events wrt the CDC trigger time for 3 samples
int m_L1TimingSrc
L1 timing source from getTimeType() in TRGSummary See ETimingTYpe in mdst/dataobjects/include/TRGSumm...
std::string m_storeSVDClustersName
SVDClusters StoreArray name.
SVDDQMHitTimeModule()
Default constructor.
std::string m_storeSVDEventInfoName
SVDEventInfo StoreObjPtry name.
StoreObjPtr< SoftwareTriggerResult > m_TrgResult
Trigger selection data object.
TH1F * m_l3vEvtT0_bhabha_L1_ECLTRG
svd time histogram for bhabha events wrt the ECL trigger time
TH1F * m_SVD3EventT0_mumu_L1_CDCTRG
svd eventT0 histogram for mu mu events wrt the CDC trigger time for 3 samples
virtual void defineHisto() override
Definition of histograms.
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.