Public Member Functions | Static Public Member Functions | Public Attributes | Static Protected Attributes | Friends | List of all members
MagicDisplay Class Reference

The Marvellous ANITA Graphical Interface and Class Display (Magic Display) More...

#include <MagicDisplay.h>

Public Member Functions

 MagicDisplay (const char *baseDir, int run, WaveCalType::WaveCalType_t calType=WaveCalType::kDefault, AnitaDataset::BlindingStrategy blinding=AnitaDataset::kDefault)
 The assignment constructor. Most MagicDisplay sessions start with a call to this. More...
 
 MagicDisplay (int run, AnitaDataset::DataDirectory datadir=AnitaDataset::ANITA_ROOT_DATA, WaveCalType::WaveCalType_t calType=WaveCalType::kDefault, AnitaDataset::BlindingStrategy blinding=AnitaDataset::kDefault)
 
 MagicDisplay (const char *playlist, AnitaDataset::DataDirectory datadir=AnitaDataset::ANITA_ROOT_DATA, WaveCalType::WaveCalType_t calType=WaveCalType::kDefault, AnitaDataset::BlindingStrategy blinding=AnitaDataset::kDefault)
 
 MagicDisplay ()
 Default constructor.
 
 ~MagicDisplay ()
 Destructor.
 
void startControlPanel ()
 Starts the (currently highly buggy) control panel.
 
void startFilteringPanel ()
 Starts the filtering control panel, to set filter strategies in the gui.
 
Int_t getCurrentRun ()
 Returns the current run number.
 
UInt_t getCurrentEvent ()
 Returns the current event number.
 
void startEventPlaying ()
 Starts event playback mode, normally called by pressing the "Play" button the display.
 
void startEventPlayingReverse ()
 Starts the event playback in reverse mode, normally called by pressing the "Rev" button on the main display.
 
void stopEventPlaying ()
 Stops the event playback, normally called by pressing the "Stop" button on the main display.
 
void closeCurrentRun ()
 Closes all currently opened run TFiles, in preparation for changing to a new run.
 
int loadDataset ()
 Loads the event tree corresponding to the current run number fCurrentRun
 
void startEventDisplay ()
 
int displayThisEvent (UInt_t eventNumber, Int_t run=-1)
 Displays a specified event number (from the specified run number). This is an increddibly useful and well hidden function. From the ROOT prompt you can call this by MagicDisplay::Instance()->displayThisEvent(10001,3000);. More...
 
int displayNextEvent (int nskip=0)
 !< Display a particular event, uses AnitaDataset to find run if -1 is passed (default) More...
 
int displayFirstEvent ()
 Displays the first event in the file, normally called by pressing the "First" button.
 
int displayLastEvent ()
 Displays the last event in the file, normally called by pressing the "Last" button.
 
int displayPreviousEvent (int nskip=0)
 Displays the previous event in the file, normally called by pressing the "Previous" button. if nskyp > 0, will skip so many events.
 
void refreshEventDisplay (bool forceRedo=false)
 Refresh the event display and redraw the graphs, this is called everytime a new event is displayed.
 
int getEventEntry ()
 Tries to retrieve the event corresponding to entry fEventEntry from the evnt file. Returns zero on success.
 
void drawEventButtons ()
 Worker function to draw the buttons on the main event display canvas. More...
 
void setCanvasLayout (MagicDisplayCanvasLayoutOption::MagicDisplayCanvasLayoutOption_t option)
 Toggles between waveform and FFT view modes. More...
 
void swapWaveformButtonFunctionsAndTitles (MagicDisplayCanvasLayoutOption::MagicDisplayCanvasLayoutOption_t option)
 
void setWaveformFormat (MagicDisplayFormatOption::MagicDisplayFormatOption_t waveformView)
 Toggles between waveform and FFT view modes. More...
 
void setFilterStrategy (FilterStrategy *filter_strategy)
 
void setAnalysisConfig (const UCorrelator::AnalysisConfig *config)
 
void toggleTimeEventOrdering ()
 Toggles between time and event ordering.
 
void applyCut (const char *cutString)
 Applies a cut to the head tree.
 
int loadTurfTree ()
 Opens the TURF rate file for the current run.
 
void startTurfDisplay ()
 Starts the TURF Rate display window.
 
int displayNextTurf ()
 Displays the next event in the TURF tree.
 
int displayPreviousTurf ()
 Displays the previous event in the TURF tree.
 
void refreshTurfDisplay ()
 Refreshs the TURF rate display.
 
int getTurfEntry ()
 Attempts to load the entry corresponding to fTurfRateEntry.
 
void drawTurfButtons ()
 Draws the buttons on the TURF rate display.
 
void toggleTurfYScale ()
 Toggles betweeen fixed and auto-scaling y-axis pn the TURF rate display.
 
int loadSurfTree ()
 Opens the SURF hk file for the current run.
 
void startSurfDisplay ()
 Starts the SURF Hk display window.
 
int displayNextSurf ()
 Displays the next SURF hk entry.
 
int displayPreviousSurf ()
 Displays the previous SURF hk entry.
 
void refreshSurfDisplay ()
 Refreshes the SURF Hk display.
 
int getSurfEntry ()
 Attempts to load the entry corresponding to fSurfHkEntry.
 
void drawSurfButtons ()
 Draws the buttons on the SURF hk display.
 
void setSurfHkDisplay (MagicDisplaySurfHkDisplay::MagicDisplaySurfHkDisplay_t surfDisplay)
 Toggles between surf and phi views.
 
void toggleSurfRfPowerView (Int_t kelvinView)
 Toggles betweem adc and Kelvin views.
 
void toggleSurfLogView ()
 Toggles between log and linear.
 
void startSurfHkPlaying ()
 Starts SURF Hk Play mode.
 
void stopSurfHkPlaying ()
 Stops SURF Hk Play modes.
 
int loadAvgSurfTree ()
 Opens the averaged SURF hk file for the current rune.
 
void startAvgSurfDisplay ()
 Starts the averaged SURF hk display window.
 
int displayNextAvgSurf ()
 Displays the next entry in the averaged SURF hk tree.
 
int displayPreviousAvgSurf ()
 Displays the previous entry in the averaged SURF hk tree.
 
void refreshAvgSurfDisplay ()
 Refreshes the averaged SURF hk display.
 
int getAvgSurfEntry ()
 Attempts to load get the entry corresponding to fAvgSurfHkEntry.
 
void drawAvgSurfButtons ()
 Draws the buttons on the averaged SURF hk display.
 
void toggleAvgSurfRfPowerView (Int_t kelvinView)
 Toggles betweem adc and Kelvin views.
 
void toggleAvgSurfLogView ()
 Toggles between log and linear.
 
void setAvgSurfHkDisplay (MagicDisplaySurfHkDisplay::MagicDisplaySurfHkDisplay_t surfDisplay)
 Toggles between surf and phi views.
 
void startAvgSurfHkPlaying ()
 Starts Average SURF Hk Play mode.
 
void stopAvgSurfHkPlaying ()
 Stops Average SURF Hk Play mode.
 
int loadSumTurfTree ()
 Opens the summed TURF rate file for the current run.
 
void startSumTurfDisplay ()
 Starts the summed TURF rate display program.
 
int displayNextSumTurf ()
 Displays the next summed TURF rate entry in the tree.
 
int displayPreviousSumTurf ()
 Displays the previous summed TURF rate entry in the tree.
 
void refreshSumTurfDisplay ()
 Refreshes the summed TURF rate display.
 
int getSumTurfEntry ()
 Attempts to get the entry corresponding to fSumTurfRateFile.
 
void drawSumTurfButtons ()
 Draws the buttons on the summed TURF rate display.
 
void toggleSumTurfYScale ()
 Toggles between fixed and auto-scaling y-axis on the summed TURF display.
 
int loadGpsTrees ()
 Opens the GPS file for the current run.
 
void startGpsDisplay ()
 Starts the GPS display window.
 
int displayNextGps ()
 Displays the next event in the GPS tree.
 
int displayPreviousGps ()
 Displays the previous event in the GPS tree.
 
void refreshGpsDisplay ()
 Refreshs the GPS display.
 
int getGpsEntry ()
 Attempts to load the entries.
 
void drawGpsButtons ()
 Draws the buttons on the GPS rate display.
 
void startGpsPlaying ()
 Starts GPS Play mode.
 
void stopGpsPlaying ()
 Stops GPS Play mode.
 
void setGpsView (MagicDisplayGpsDisplay::MagicDisplayGpsDisplay_t theDisplay)
 
void dumpWaveformsForPeter ()
 
Acclaim::AnalysisRecogetAnalysisReco ()
 
UCorrelator::AnalyzergetUCorr ()
 < for command line interface
 
FilterStrategygetStrategy ()
 
const FilteredAnitaEventgetFilteredEvent ()
 
std::map< TString, FilterStrategy * > & getFilterStrats ()
 
const TPad * getMainPad () const
 

Static Public Member Functions

static MagicDisplayInstance ()
 Returns a pointer to the active MagicDisplay. This is very useful if you want to access the TTree's directly or if you want to explicitly call one of the methods. More...
 

Public Attributes

AnitaDatasetfDataset
 
Long64_t fEventCutListEntry
 !< Replaces the need for MagicDisplay to track dataset itself More...
 
Long64_t fEventTreeIndexEntry
 The current entry in the TTreeIndex.
 
Long64_t fEventEntry
 The current event+header entry.
 
Long64_t fPrettyHkEntry
 The current pretty hk entry.
 
Long64_t fTurfRateEntry
 The current TURF rate entry.
 
Long64_t fSurfHkEntry
 The current SURF hk entry.
 
Long64_t fSumTurfRateEntry
 The current summed TURF rate entry.
 
Long64_t fAvgSurfHkEntry
 The current averaged SURF hk entry.
 
Long64_t fG12PosEntry
 The current G12 position entry;.
 
Long64_t fG12SatEntry
 The current G12 satellite entry;.
 
Long64_t fAdu5aPatEntry
 The current ADU5 A position entry.
 
Long64_t fAdu5aSatEntry
 The current ADU5 A satellite entry.
 
Long64_t fAdu5aVtgEntry
 The current ADU5 A velocity entry.
 
Long64_t fAdu5bPatEntry
 The current ADU5 B position entry.
 
Long64_t fAdu5bSatEntry
 The current ADU5 B satellite entry.
 
Long64_t fAdu5bVtgEntry
 The current ADU5 B velocity entry.
 
TTreeIndex * fHeadIndex
 Reused.
 
TTreeIndex * fAdu5aSatIndex
 Index for ADU5 satellite fun.
 
TTreeIndex * fAdu5bSatIndex
 Inde for ADU5B satellite fun.
 
Int_t fWhichEventFileKind
 Flag to determine whether or not to use TTrees of lovely CalibratedAnitaEvent objects.
 
UInt_t fCurrentRun
 The current run number.
 
Char_t fCurrentBaseDir [180]
 The base directory for the ROOT files.
 

Static Protected Attributes

static MagicDisplayfgInstance = 0
 The pointer to the current MagicDisplay.
 

Friends

class MagicControlPanel
 
class FilteringPanel
 
class AnitaEmbeddedCanvas
 

Detailed Description

The Marvellous ANITA Graphical Interface and Class Display (Magic Display)

MagicDisplay is the main class that controls the display. This class is responsible for opening files and reading trees and owns the various canvases and that sort of thing.

Typically one starts MagicDisplay by giving the constructor the base directory that contains the runXXXX directories and the desired start run and the desired calibration type (see the event reader documentation for the different available calibration options).

Most of the functions are called by pressig one of the buttons on the display. They can, of course, be called directly through MagicDisplay::Instance()->functionName().

Definition at line 75 of file MagicDisplay.h.

Inheritance diagram for MagicDisplay:
Inheritance graph
[legend]
Collaboration diagram for MagicDisplay:
Collaboration graph
[legend]

Constructor & Destructor Documentation

MagicDisplay::MagicDisplay ( const char *  baseDir,
int  run,
WaveCalType::WaveCalType_t  calType = WaveCalType::kDefault,
AnitaDataset::BlindingStrategy  blinding = AnitaDataset::kDefault 
)

The assignment constructor. Most MagicDisplay sessions start with a call to this.

Parameters
baseDirThe directory that contains the runXXXX directories (that contain the ROOT files
runThe run number to start with
calTypeThe calibration option desired (see the event reader documentation for the different available calibration options)

Definition at line 370 of file MagicDisplay.cxx.

MagicDisplay::MagicDisplay ( const char *  playlist,
AnitaDataset::DataDirectory  datadir = AnitaDataset::ANITA_ROOT_DATA,
WaveCalType::WaveCalType_t  calType = WaveCalType::kDefault,
AnitaDataset::BlindingStrategy  blinding = AnitaDataset::kDefault 
)

Playlist constructor. Playlist format should be a text file consisting of lines of either: eventNumber or run eventNumber

Definition at line 418 of file MagicDisplay.cxx.

Member Function Documentation

int MagicDisplay::displayNextEvent ( int  nskip = 0)

!< Display a particular event, uses AnitaDataset to find run if -1 is passed (default)

Displays the next event in the file, normally called by pressing the "Next" button. If nskip > 0, will skip so many events.

Definition at line 964 of file MagicDisplay.cxx.

int MagicDisplay::displayThisEvent ( UInt_t  eventNumber,
Int_t  run = -1 
)

Displays a specified event number (from the specified run number). This is an increddibly useful and well hidden function. From the ROOT prompt you can call this by MagicDisplay::Instance()->displayThisEvent(10001,3000);.

Parameters
eventNumberThe event number to display
runNumberThe run which contains the desired event
Returns
Zero on success

Definition at line 1063 of file MagicDisplay.cxx.

void MagicDisplay::drawEventButtons ( )

Worker function to draw the buttons on the main event display canvas.

yeah just cover up the payload button

Definition at line 1097 of file MagicDisplay.cxx.

MagicDisplay * MagicDisplay::Instance ( )
static

Returns a pointer to the active MagicDisplay. This is very useful if you want to access the TTree's directly or if you want to explicitly call one of the methods.

Returns
A pointer to the active MagicDisplay.

Definition at line 448 of file MagicDisplay.cxx.

void MagicDisplay::setCanvasLayout ( MagicDisplayCanvasLayoutOption::MagicDisplayCanvasLayoutOption_t  option)

Toggles between waveform and FFT view modes.

Parameters
optionSee MagicDisplayCanvasLayoutOption for options.Sets the drawing option for the event display see MagicDisplayCanvasLayoutOption for available options.

Definition at line 1389 of file MagicDisplay.cxx.

void MagicDisplay::setWaveformFormat ( MagicDisplayFormatOption::MagicDisplayFormatOption_t  waveformView)

Toggles between waveform and FFT view modes.

Parameters
waveformViewSee MagicDisplayFormatOption for options.

Definition at line 1487 of file MagicDisplay.cxx.

void MagicDisplay::startEventDisplay ( )

Starts the main event display. This is typically the first thing that gets done after creating a MagicDisplay object in the runMagicDisplay macro.

Definition at line 467 of file MagicDisplay.cxx.

Member Data Documentation

Long64_t MagicDisplay::fEventCutListEntry

!< Replaces the need for MagicDisplay to track dataset itself

The current cut index

Definition at line 249 of file MagicDisplay.h.


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