Belle II Software  release-08-01-10
TRGECLEventTimingDQMModule.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 #pragma once
9 #include <mdst/dataobjects/SoftwareTriggerResult.h>
10 #include <framework/core/HistoModule.h>
11 #include <framework/datastore/StoreObjPtr.h>
12 #include <mdst/dataobjects/TRGSummary.h>
13 #include <trg/ecl/dataobjects/TRGECLUnpackerStore.h>
14 #include <trg/ecl/dataobjects/TRGECLUnpackerEvtStore.h>
15 #include <trg/ecl/TrgEclMapping.h>
16 #include <framework/datastore/StoreArray.h>
17 #include <framework/dataobjects/EventT0.h>
18 #include <TH1F.h>
19 #include <TDirectory.h>
20 #include <iostream>
21 #include <iomanip>
22 #include <string>
23 namespace Belle2 {
31 
35  public:
41  virtual void defineHisto() override;
43  virtual void initialize() override;
45  virtual void beginRun() override;
48  virtual void event() override;
49 
50  private:
51 
63  TH1F* m_histMaxTCE{nullptr};
65  TH1F* m_histMaxTCId{nullptr};
67  TH1F* m_histMaxTCThetaId{nullptr};
69  TH1F* m_histEventTimingQuality{nullptr};
71  TH1F* m_histEventT0Coarse{nullptr};
77  TH1F* m_histEventT0Fine{nullptr};
83  static const int c_NBinEventT0 = 15;
85  TH1F* m_histEventT0[c_NBinEventT0] {nullptr};
87  std::vector<int> m_histEventT0NBin;
89  std::vector<double> m_histEventT0XMin;
91  std::vector<double> m_histEventT0XMax;
92 
93  };
95 } // Belle2 namespace
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
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
This module is for ecl trigger DQM related to L1 event timing.
double m_histEventT0FineXMin
x-axis minimum for EventT0 with fine event timing
StoreObjPtr< EventT0 > m_eventT0
EventT0 data object.
double m_histEventT0FineXMax
x-axis maximum for EventT0 with fine event timing
TH1F * m_histEventTimingQuality
Event Timing Quality from TRGSummary.
std::vector< double > m_histEventT0XMin
x axis minimum for EventT0 histogram
virtual void initialize() override
Initialize the module.
virtual void event() override
This method is called for each event.
StoreArray< TRGECLUnpackerStore > m_trgeclUnpackerStores
Trg ECL UnpakcerStore.
TH1F * m_histEventT0Coarse
EventT0 with coarse event timing.
StoreObjPtr< TRGSummary > m_objTrgSummary
Trigger Summary data object.
virtual void beginRun() override
This method is called for each run.
TH1F * m_histEventT0Fine
EventT0 with fine event timing.
TrgEclMapping * m_trgecl_map
ecl trigger map
std::vector< int > m_histEventT0NBin
the number of bin for EventT0 histogram
StoreArray< TRGECLUnpackerEvtStore > m_trgeclUnpackerEvtStores
Trg ECL UnpakcerEvtStore.
TH1F * m_histEventT0[c_NBinEventT0]
EventT0 for different max TC E region.
double m_histEventT0CoarseXMin
x-axis minimum for EventT0 with coarse event timing
double m_histEventT0CoarseXMax
x-axis maximum for EventT0 with coarse event timing
static const int c_NBinEventT0
The number of EventT0 histogram for different max TC E region.
std::vector< double > m_histEventT0XMax
x axis maximum for EventT0 histogram
virtual void defineHisto() override
Defination of histograms.
A class of TC Mapping.
Definition: TrgEclMapping.h:26
Abstract base class for different kinds of events.