|
ROOTANA
|
#include <TFancyHistogramCanvas.hxx>


Public Member Functions | |
| TFancyHistogramCanvas (THistogramArrayBase *histoArray, std::string name, int numberChannelsInGroups=-1, bool disableAutoUpdate=false) | |
| ~TFancyHistogramCanvas () | |
| void | ResetCanvasHistograms () |
| Reset the histograms for this canvas. | |
| void | UpdateCanvasHistograms (TDataContainer &dataContainer) |
| Update the histograms for this canvas. | |
| void | PlotCanvas (TDataContainer &dataContainer, TRootEmbeddedCanvas *embedCanvas) |
| Plot the histograms for this canvas. | |
| void | BeginRun (int transition, int run, int time) |
| Take actions at begin run. | |
| void | EndRun (int transition, int run, int time) |
| Take actions at end run | |
| void | SetUpCompositeFrame (TGCompositeFrame *compFrame, TRootanaDisplay *display) |
| This is the complicated part, where we create a bunch of buttons and widgets. | |
| void | ActivateMultiCanvasButton () |
| void | ActivateOverlayButton () |
| void | SetGroupName (std::string groupName) |
| Allow the user to set explicitly the group name. | |
| void | SetChannelName (std::string channelName) |
| Allow the user to set explicitly the channel name. | |
Public Member Functions inherited from TCanvasHandleBase | |
| TCanvasHandleBase (std::string tabName) | |
| virtual | ~TCanvasHandleBase () |
| std::string | GetTabName () |
| TRootEmbeddedCanvas * | GetEmbeddedCanvas () |
| This method is only. | |
Private Member Functions | |
| void | CheckExtraButtons () |
| Helper function to remove extra buttons if not needed anymore. | |
| TFancyHistogramCanvas () | |
Private Attributes | |
| THistogramArrayBase * | fHistoArray |
| Pointer to the THistogramArrayBase class; memory is not owned by TFancyHistogramCanvas. | |
| bool | fDisableAutoUpdate |
| int | fNumberChannelsInGroups |
| TGHorizontalFrame * | fLabelframe |
| Overall frame in which we will add buttons and widgets. | |
| TGNumberEntry * | fChannelCounterButton |
| Button for the histogram number. | |
| TGLabel * | fLabelChannels |
| A label for the histogram number button. | |
| std::string | fChannelName |
| Name for the channel button. | |
| TGNumberEntry * | fGroupCounterButton |
| Button for the group number. | |
| TGLabel * | fLabelGroup |
| A label for the group button. | |
| std::string | fGroupName |
| Name for the group button. | |
| TGCheckButton * | fMultiCanvasButton |
| This button controls whether to display mutliple sub-canvases. | |
| TGHButtonGroup * | fNCanvasButtonGroup |
| Button group to select how many canvases to show. | |
| TGRadioButton * | fNCanvasButtons [4] |
| TGCheckButton * | fOverlayHistoButton |
| This button controls whether to display overlaid histograms. | |
| TGNumberEntry * | fNHistoButton |
| Button group to select how many histograms to show. | |
| TGLabel * | labelNHisto |
| TLegend * | fNHistoLegend |
| TRootanaDisplay * | fDisplay |
A canvas that plots THistogramArrayBase type histograms in a nice way. The basic idea is to allow the user to easily plot an array of histograms in three different ways: 1) They can scroll through the histograms one by one, using the "Histogram Number" button. 2) They can have a set of NNN different canvases, each with a different histogram, where NNN can be 2, 4, 8 or 16. 3) They can have multiple histograms overlaid on the same canvas; the user can choose how many histograms to overlay.
Definition at line 28 of file TFancyHistogramCanvas.hxx.
| TFancyHistogramCanvas::TFancyHistogramCanvas | ( | THistogramArrayBase * | histoArray, |
| std::string | name, | ||
| int | numberChannelsInGroups = -1, |
||
| bool | disableAutoUpdate = false |
||
| ) |
Pass the THistogramArrayBase pointer during constructor; does not pass ownership (TFancyHistogramCanvas will not delete histoArray); parameters: 'histoArray': this is the pointer to the class derived from THistogramArrayBase base;
| TFancyHistogramCanvas::~TFancyHistogramCanvas | ( | ) |
Definition at line 54 of file TFancyHistogramCanvas.cxx.
|
private |
| void TFancyHistogramCanvas::ActivateMultiCanvasButton | ( | ) |
These methods are callbacks to ensure that multi-canvas and overlay-histo modes are used exclusively.
Definition at line 318 of file TFancyHistogramCanvas.cxx.
| void TFancyHistogramCanvas::ActivateOverlayButton | ( | ) |
Definition at line 328 of file TFancyHistogramCanvas.cxx.
|
virtual |
Take actions at begin run.
Reimplemented from TCanvasHandleBase.
Definition at line 308 of file TFancyHistogramCanvas.cxx.

|
private |
Helper function to remove extra buttons if not needed anymore.
|
virtual |
Take actions at end run
Reimplemented from TCanvasHandleBase.
Definition at line 313 of file TFancyHistogramCanvas.cxx.

|
virtual |
Plot the histograms for this canvas.
Implements TCanvasHandleBase.
Definition at line 207 of file TFancyHistogramCanvas.cxx.

|
virtual |
Reset the histograms for this canvas.
Reset the histograms in fHistoArray.
Implements TCanvasHandleBase.
Definition at line 178 of file TFancyHistogramCanvas.cxx.
| void TFancyHistogramCanvas::SetChannelName | ( | std::string | channelName | ) |
Allow the user to set explicitly the channel name.
Definition at line 354 of file TFancyHistogramCanvas.cxx.

| void TFancyHistogramCanvas::SetGroupName | ( | std::string | groupName | ) |
Allow the user to set explicitly the group name.
Definition at line 342 of file TFancyHistogramCanvas.cxx.

|
virtual |
This is the complicated part, where we create a bunch of buttons and widgets.
Cached pointer to rootana display; needed so that we can create new buttons with correct callbacks.
Add the button group to control how many sub-canvases to plot.
Add the button to control how many histograns to plot to plot.
Reimplemented from TCanvasHandleBase.
Definition at line 59 of file TFancyHistogramCanvas.cxx.

|
virtual |
Update the histograms for this canvas.
Implements TCanvasHandleBase.
Definition at line 184 of file TFancyHistogramCanvas.cxx.

|
private |
Button for the histogram number.
Definition at line 99 of file TFancyHistogramCanvas.hxx.
|
private |
Name for the channel button.
Definition at line 105 of file TFancyHistogramCanvas.hxx.
|
private |
'disableAutoUpdate' will tell fancy histogram to not call histoArray->UpdateHistograms() -> the assumption is that the user will take care of calling this function.
Definition at line 87 of file TFancyHistogramCanvas.hxx.
|
private |
Cached pointer to rootana display; needed so that we can create new buttons with correct callbacks.
Definition at line 136 of file TFancyHistogramCanvas.hxx.
|
private |
Button for the group number.
Definition at line 108 of file TFancyHistogramCanvas.hxx.
|
private |
Name for the group button.
Definition at line 114 of file TFancyHistogramCanvas.hxx.
|
private |
Pointer to the THistogramArrayBase class; memory is not owned by TFancyHistogramCanvas.
Definition at line 83 of file TFancyHistogramCanvas.hxx.
|
private |
A label for the histogram number button.
Definition at line 102 of file TFancyHistogramCanvas.hxx.
|
private |
Overall frame in which we will add buttons and widgets.
Definition at line 96 of file TFancyHistogramCanvas.hxx.
|
private |
A label for the group button.
Definition at line 111 of file TFancyHistogramCanvas.hxx.
|
private |
This button controls whether to display mutliple sub-canvases.
Definition at line 117 of file TFancyHistogramCanvas.hxx.
|
private |
Button group to select how many canvases to show.
Definition at line 120 of file TFancyHistogramCanvas.hxx.
|
private |
Definition at line 121 of file TFancyHistogramCanvas.hxx.
|
private |
Button group to select how many histograms to show.
Definition at line 127 of file TFancyHistogramCanvas.hxx.
|
private |
Definition at line 129 of file TFancyHistogramCanvas.hxx.
|
private |
'fNumberChannelsInGroups': if this value is greater than 1, then the fancy canvas will have an additional button allowing the user to specify particular groups; the histograms will be organized into size/fNumberChannelsInGroups of groups, with each group having fNumberChannelsInGroups entries.
Definition at line 93 of file TFancyHistogramCanvas.hxx.
|
private |
This button controls whether to display overlaid histograms.
Definition at line 124 of file TFancyHistogramCanvas.hxx.
|
private |
Definition at line 128 of file TFancyHistogramCanvas.hxx.