Belle II Software  release-08-01-10
EclPainterCommon.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 //ECL
12 #include <ecl/modules/eclDisplay/EclPainter.h>
13 
14 // TODO: Dynamic bin count for ENERGY_SUM
15 
16 class TH1F;
17 
18 namespace Belle2 {
27  class EclPainterCommon : public EclPainter {
28  public:
30  enum Type {
33  TIME
34  };
35 
39  EclPainterCommon(EclData* data, Type type);
43  virtual ~EclPainterCommon();
44 
45  private:
49  TH1F* m_hist;
50 
54  int getMinX();
58  int getMaxX();
62  void initHisto();
66  void setTitles();
67 
68  public:
72  Type getType();
73 
81  virtual void getInformation(int px, int py, MultilineWidget* panel) override;
82 
86  void Draw() override;
87  };
89 }
This class contains data for ECLSimHit's and provides several relevant conversion functions for bette...
Definition: EclData.h:31
Painter for EclData that shows common event characteristics on 1D histograms.
Type m_type
Display subtypes of this class.
TH1F * m_hist
Histogram for energy distribution.
Type
Subtype of histogram to draw.
@ ENERGY_SUM
Energy per event distribution.
@ ENERGY
Energy per channel distribution.
@ TIME
Time distribution.
int getMinX()
Return m_x_min.
int getMaxX()
Return m_x_max.
virtual ~EclPainterCommon()
Destructor for EclPainter subclass.
void setTitles()
Update titles of the histogram.
virtual void getInformation(int px, int py, MultilineWidget *panel) override
Sets the information to be displayed in the provided MultilineWidget.
Type getType()
Return subtype of ECLPainterCommon.
void initHisto()
Initialize histogram.
void Draw() override
Redraw the canvas.
EclPainterCommon(EclData *data, Type type)
Constructor for EclPainter subclass.
Painter for EclData, parent class, created with EclPainterFactory.
Definition: EclPainter.h:29
Widget which contains the dynamic amount of TGLabel objects.
Abstract base class for different kinds of events.