Belle II Software  release-08-01-10
EclPainterPolar Class Reference

Painter for EclData, polar energy/event_count distribution. More...

#include <EclPainterPolar.h>

Inheritance diagram for EclPainterPolar:
Collaboration diagram for EclPainterPolar:

Public Types

enum  Type {
  PHI ,
  THETA
}
 Type for polar histogram.
 

Public Member Functions

 EclPainterPolar (EclData *data, Type type)
 Constructor for EclPainter subclass.
 
 EclPainterPolar (const EclPainterPolar &other)
 Copy constructor.
 
 ~EclPainterPolar ()
 Destructor for EclPainter subclass.
 
EclPainterPolaroperator= (const EclPainterPolar &other)
 Assignment operator.
 
virtual void getInformation (int px, int py, MultilineWidget *panel) override
 Sets the information to be displayed in the provided MultilineWidget. More...
 
Type getType ()
 Return subtype of ECLPainterPolar.
 
virtual void Draw () override
 Redraw the canvas.
 
void setData (EclData *data)
 Set EclData to display in painter. More...
 
EclDatagetData ()
 Return currently displayed EclData.
 
const EclDatagetData () const
 Return currently displayed EclData.
 
void setMapper (ECL::ECLChannelMapper *mapper)
 Set ECLChannelMapper for CellID <-> (crate, shaper, chid) conversion.
 
ECL::ECLChannelMappergetMapper ()
 Return currently set ECLChannelMapper.
 
void setDisplayedSubsystem (EclData::EclSubsystem sys)
 Change between the displayed ECL subsystem (barrel, forward and backward endcaps).
 
EclData::EclSubsystem getDisplayedSubsystem ()
 Get currently displayed ECL subsystem.
 
TString getSubsystemTitle (EclData::EclSubsystem subsys)
 Return title of ECL subsystem to use in painter.
 
virtual EclPainterhandleClick (int px, int py)
 Some EclPainters can shift to another view upon click. More...
 
virtual void setXRange (int x1, int x2)
 Set XRange for histogram in EclPainter.
 

Protected Member Functions

void getNewRootObjectName (char *buf, int size)
 Make unique name for next root object.
 

Private Member Functions

void cloneFrom (const EclPainterPolar &other)
 Clone attributes from other EclPainterPolar.
 
int channelToSegId (int channel)
 Convert ECL channel id to id of the phi (theta) segment.
 
void setTitles ()
 Update titles of the histogram.
 

Private Attributes

Type m_type
 Type for polar histogram.
 
TH2F * m_hist
 Histogram that generates Z-axis.
 
TCrown ** m_segs
 Phi (or theta) segments of the ECL.
 
TText ** m_labels
 Labels for phi segments.
 
EclDatam_ecl_data
 Data to draw.
 
ECL::ECLChannelMapperm_mapper
 mapper for CellID <-> (crate, shaper, chid) conversion.
 
EclData::EclSubsystem displayed_subsys
 Identifier of displayed ECL subsystem.
 

Static Private Attributes

static int m_obj_counter = 0
 Counter to make unique names for new root objects.
 

Detailed Description

Painter for EclData, polar energy/event_count distribution.

Definition at line 26 of file EclPainterPolar.h.

Member Function Documentation

◆ getInformation()

void getInformation ( int  px,
int  py,
MultilineWidget panel 
)
overridevirtual

Sets the information to be displayed in the provided MultilineWidget.

Parameters
pxX coordinate of mouse cursor.
pyY coordinate of mouse cursor.
panelMultilineWidget to display the information

Reimplemented from EclPainter.

Definition at line 98 of file EclPainterPolar.cc.

99 {
100  EclPainter::getInformation(px, py, panel);
101 }
virtual void getInformation(int px, int py, MultilineWidget *panel)
Sets the information to be displayed in the provided MultilineWidget.
Definition: EclPainter.cc:72

◆ handleClick()

EclPainter * handleClick ( int  px,
int  py 
)
virtualinherited

Some EclPainters can shift to another view upon click.

(For example, clicking on crate reveals histogram of shapers in that crate)

Returns
EclPainter with new perspective/range.

Reimplemented in EclPainter1D.

Definition at line 79 of file EclPainter.cc.

◆ setData()

void setData ( EclData data)
inlineinherited

Set EclData to display in painter.


Definition at line 44 of file EclPainter.h.


The documentation for this class was generated from the following files: