Belle II Software  release-05-01-25
EclPainter1D.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Milkail Remnev, Dmitry Matvienko *
7  * *
8  * This software is provided "as is" without any warranty. *
9  ***************************************************************************/
10 
11 #pragma once
12 
13 //ECL
14 #include <ecl/modules/eclDisplay/EclPainter.h>
15 
16 class TH1F;
17 
18 namespace Belle2 {
26  class EclPainter1D : public EclPainter {
27  public:
29  enum Type {
33  PHI,
34  THETA
35  };
36 
40  EclPainter1D(EclData* data, Type type);
44  virtual ~EclPainter1D();
45 
46  private:
50  TH1F* m_hist;
51 
53  int m_shaper;
55  int m_crate;
56 
60  int channelToSegId(int channel);
64  int getMaxX();
68  void initHisto();
72  void setTitles();
73 
74  public:
81  virtual void getInformation(int px, int py, MultilineWidget* panel) override;
82 
86  Type getType();
87 
92  virtual EclPainter* handleClick(int px, int py) override;
93 
97  void setXRange(int xmin, int xmax) override;
98 
103  void setShaper(int crate, int shaper);
104 
109  void setCrate(int crate);
110 
114  void Draw() override;
115  };
117 }
Belle2::EclPainter1D::CHANNEL
@ CHANNEL
Events/energy per channel.
Definition: EclPainter1D.h:30
Belle2::EclPainter1D::SHAPER
@ SHAPER
Events/energy per ShaperDSP.
Definition: EclPainter1D.h:31
Belle2::EclPainter1D::getMaxX
int getMaxX()
Returns number of X bins.
Definition: EclPainter1D.cc:64
Belle2::EclPainter1D::setTitles
void setTitles()
Update titles of the histogram.
Definition: EclPainter1D.cc:90
Belle2::EclPainter1D::~EclPainter1D
virtual ~EclPainter1D()
Destructor for EclPainter subclass.
Definition: EclPainter1D.cc:40
Belle2::EclPainter1D::CRATE
@ CRATE
Events/energy per crate/ECLCollector.
Definition: EclPainter1D.h:32
Belle2::EclPainter1D::initHisto
void initHisto()
Initialize histogram.
Definition: EclPainter1D.cc:82
Belle2::EclPainter1D::m_hist
TH1F * m_hist
Displayed histogram.
Definition: EclPainter1D.h:50
Belle2::EclPainter1D::Draw
void Draw() override
Redraw the canvas.
Definition: EclPainter1D.cc:217
Belle2::EclPainter1D::m_shaper
int m_shaper
ID of currently selected shaper.
Definition: EclPainter1D.h:53
Belle2::EclPainter1D::setXRange
void setXRange(int xmin, int xmax) override
Set XRange for histogram.
Definition: EclPainter1D.cc:201
Belle2::EclPainter1D::getType
Type getType()
Return subtype of ECLPainter1D.
Definition: EclPainter1D.cc:165
Belle2::EclPainter
Painter for EclData, parent class, created with EclPainterFactory.
Definition: EclPainter.h:31
Belle2::EclPainter1D::m_type
Type m_type
Display subtypes of this class.
Definition: EclPainter1D.h:48
Belle2::EclPainter1D::handleClick
virtual EclPainter * handleClick(int px, int py) override
Creates sub-histogram for crates and shapers.
Definition: EclPainter1D.cc:170
Belle2::EclPainter1D::getInformation
virtual void getInformation(int px, int py, MultilineWidget *panel) override
Sets the information to be displayed in the provided MultilineWidget.
Definition: EclPainter1D.cc:126
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::MultilineWidget
Widget which contains the dynamic amount of TGLabel objects.
Definition: MultilineWidget.h:32
Belle2::EclPainter1D::Type
Type
Subtype of histogram to draw.
Definition: EclPainter1D.h:29
Belle2::EclData
This class contains data for ECLSimHit's and provides several relevant conversion functions for bette...
Definition: EclData.h:41
Belle2::EclPainter1D::channelToSegId
int channelToSegId(int channel)
Convert channel id to X bin number.
Definition: EclPainter1D.cc:45
Belle2::EclPainter1D::m_crate
int m_crate
ID of currently selected crate.
Definition: EclPainter1D.h:55
Belle2::EclPainter1D::EclPainter1D
EclPainter1D(EclData *data, Type type)
Constructor for EclPainter subclass.
Definition: EclPainter1D.cc:26
Belle2::EclPainter1D
Painter for EclData, 1D histograms.
Definition: EclPainter1D.h:26
Belle2::EclPainter1D::setCrate
void setCrate(int crate)
Show data only from specific crate.
Definition: EclPainter1D.cc:212
Belle2::EclPainter1D::setShaper
void setShaper(int crate, int shaper)
Show data only from specific shaper.
Definition: EclPainter1D.cc:206