Belle II Software prerelease-11-00-00a
TRGTOPWaveformPlotterModule.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// $Id$
10//---------------------------------------------------------------
11// Filename : TRGTOPWaveformPlotterModule.h
12// Section : TRG GRL
13// Owner :
14// Email :
15//---------------------------------------------------------------
16// Description : DQM module for TRGTOP
17//---------------------------------------------------------------
18
19#pragma once
20
21#include <framework/core/Module.h>
22
23#include <TCanvas.h>
24#include <TGraph.h>
25#include <TMultiGraph.h>
26#include <TPaveText.h>
27
28#define NUMBER_OF_TOP_SLOTS 16
29#define MAX_NUMBER_OF_CLOCK_CYCLES 384
30
31#define MAX_TIMESTAMP_RANGE 47000
32
33namespace Belle2 {
38
43
44 public:
47
50 // virtual ~TRGTOPWaveformPlotterModule();
51
52 public:
53
55 virtual void initialize() override;
57 virtual void beginRun() override;
59 virtual void event() override;
61 virtual void endRun() override;
63 // virtual void terminate() override {}
64 virtual void terminate() override;
65
66 private:
67
69 // TDirectory* oldROOTDir = nullptr;
71 // TDirectory* myROOTDir = nullptr;
72
74 // TFile* m_file;
75
76 TCanvas* m_myCanvas[NUMBER_OF_TOP_SLOTS];
77
78 TGraph* m_timeStampsGraphMainReadout[NUMBER_OF_TOP_SLOTS];
79 TGraph* m_timeStampsGraphTriggerReadout[NUMBER_OF_TOP_SLOTS];
80
81 TMultiGraph* m_myMultiGraph[NUMBER_OF_TOP_SLOTS];
82
83 TPaveText* m_myPaveText[NUMBER_OF_TOP_SLOTS];
84
85 Int_t m_timeStampsMainReadout[NUMBER_OF_TOP_SLOTS][MAX_NUMBER_OF_CLOCK_CYCLES];
86 Int_t m_timeStampsTriggerReadout[NUMBER_OF_TOP_SLOTS][MAX_NUMBER_OF_CLOCK_CYCLES];
87
88 Int_t m_clockCyclesMainReadout[NUMBER_OF_TOP_SLOTS][MAX_NUMBER_OF_CLOCK_CYCLES];
89 Int_t m_clockCyclesTriggerReadout[NUMBER_OF_TOP_SLOTS][MAX_NUMBER_OF_CLOCK_CYCLES];
90
91 // various parameters and their interpretation
92
93 int m_plottingMode;
94
95 double m_markerSizeHits;
96 double m_markerSizeTimestamps;
97
98 int m_markerTypeHits;
99 int m_markerTypeTimestamps;
100
101 int m_firstAssumedClockCycle;
102
103 int m_cutPlotMinNumberTriggerReadoutHits;
104
105 int m_cutPlotMinNumberMainReadoutHits;
106
107 int m_xMin;
108 int m_xMax;
109 int m_yMin;
110 int m_yMax;
111
112 int m_showGridx;
113 int m_showGridy;
114
115 int m_canvasXMin;
116 int m_canvasYMin;
117 int m_canvasXSize;
118 int m_canvasYSize;
119
120 int m_shiftCanvas;
121 int m_xShiftCanvas;
122 int m_yShiftCanvas;
123
124 };
125
127}
Module()
Constructor.
Definition Module.cc:30
TCanvas * m_myCanvas[NUMBER_OF_TOP_SLOTS]
TDirectory.
virtual void initialize() override
initialize
Abstract base class for different kinds of events.