musrfit
1.9.2
|
#include <PMusrT0.h>
Public Member Functions | |
PMusrT0 () | |
PMusrT0 (PMusrT0Data &data) | |
virtual Bool_t | IsValid () |
virtual void | Done (Int_t status=0) |
virtual void | HandleCmdKey (Int_t event, Int_t x, Int_t y, TObject *selected) |
virtual void | Quit () |
virtual void | SetTimeout (Int_t timeout) |
virtual void | SetMsrHandler (PMsrHandler *msrHandler) |
virtual void | InitT0 () |
virtual void | InitDataAndBkg () |
virtual Int_t | GetStatus () |
Private Member Functions | |
void | ShowDataFileT0Channel () |
void | HideDataFileT0Channel () |
void | SetT0Channel () |
void | SetEstimatedT0Channel () |
void | SetDataFirstChannel () |
void | SetDataLastChannel () |
void | SetBkgFirstChannel () |
void | SetBkgLastChannel () |
void | UnZoom () |
void | ZoomT0 () |
Private Attributes | |
PMsrHandler * | fMsrHandler |
msr-file handler More... | |
Int_t | fTimeout |
timeout after which the Done signal should be emited. If timeout <= 0, no timeout is taking place More... | |
Bool_t | fValid |
true if raw data set are available, otherwise false More... | |
Int_t | fStatus |
0=quit locally, i.e. only a single musrt0 raw data canvas will terminate but not the application, 1=quit the application More... | |
PMusrT0Data | fMusrT0Data |
raw muSR run data sets. More... | |
Bool_t | fDataAndBkgEnabled |
enable/disable data and background range handling (necessary in connection with grouping and addrun) More... | |
Bool_t | fT0Enabled |
enable/disable t0 handling (necessary in connection with grouping and addrun) More... | |
Int_t | fT0Estimated |
estimated t0 value (in bins) More... | |
Bool_t | fShowT0DataChannel |
std::unique_ptr< TTimer > | fTimeoutTimer |
timeout timer in order to terminate if no action is taking place for too long More... | |
std::unique_ptr< TCanvas > | fMainCanvas |
main canvas for the graphical user interface More... | |
std::unique_ptr< TH1F > | fHisto |
full raw data histogram More... | |
std::unique_ptr< TH1F > | fData |
ranged raw data histogram (first good bin, last good bin) More... | |
std::unique_ptr< TH1F > | fBkg |
histogram starting from 'bkg start' up to 'bkg end' More... | |
std::unique_ptr< TLatex > | fToDoInfo |
clear text user instruction string More... | |
std::unique_ptr< TLine > | fT0Line |
line showing the position of t0 More... | |
std::unique_ptr< TLine > | fT0DataLine |
line showing the position of t0 found in the data file More... | |
std::unique_ptr< TLine > | fFirstBkgLine |
line showing the start of the background More... | |
std::unique_ptr< TLine > | fLastBkgLine |
line showing the end of the background More... | |
std::unique_ptr< TLine > | fFirstDataLine |
line showing the start of the data (first good data bin) More... | |
std::unique_ptr< TLine > | fLastDataLine |
line showing the end of the data (last good data bin) More... | |
Int_t | fPx |
x-position of the cursor More... | |
Int_t | fPy |
y-position of the cursor More... | |
Int_t | fDataRange [2] |
data range (first good bin, last good bin) More... | |
Int_t | fBkgRange [2] |
background range (first bkg bin, last bkg bin) More... | |
Handles the musrt0 graphical user interface.
The preprocessor tag MAKECLING is used to hide away from rootcling the overly complex spirit header files.
PMusrT0::PMusrT0 | ( | ) |
PMusrT0::PMusrT0 | ( | PMusrT0Data & | data | ) |
Constructor
data | raw run data set |
Definition at line 271 of file PMusrT0.cpp.
References fBkgRange, fDataAndBkgEnabled, fDataRange, fHisto, fMainCanvas, fMusrT0Data, fShowT0DataChannel, fStatus, fT0Enabled, fT0Estimated, fTimeout, fToDoInfo, fValid, PMusrT0Data::GetAddRunIdx(), PMusrT0Data::GetAddT0Bin(), PMusrT0Data::GetCmdTag(), PRawRunData::GetDataBin(), PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetHistoNo(), PMusrT0Data::GetHistoNoIdx(), PMusrT0Data::GetHistoNoSize(), PMusrT0Data::GetRawRunData(), PMusrT0Data::GetRawRunDataSize(), PRawRunData::GetRunName(), PMusrT0Data::GetRunNo(), PMusrT0Data::GetT0Bin(), PRawRunData::IsPresent(), PMusrT0Data::IsSingleHisto(), PMUSRT0_FORWARD, PMUSRT0_GET_DATA_AND_BKG_RANGE, PMUSRT0_GET_T0, and PMUSRT0_GET_T0_DATA_AND_BKG_RANGE.
|
virtual |
Signal emitted if the user wants to terminate the application.
Definition at line 540 of file PMusrT0.cpp.
References status.
Referenced by HandleCmdKey(), and Quit().
|
inlinevirtual |
|
virtual |
Filters keyboard and mouse events, and if they are a command key (see below) carries out the necessary actions.
Currently implemented command keys:
event | event type |
x | keyboard event: character key; mouse event: x-position |
y | mouse event: y-position |
selected | not used |
Definition at line 569 of file PMusrT0.cpp.
References Done(), fPx, fPy, fShowT0DataChannel, fStatus, HideDataFileT0Channel(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), SetEstimatedT0Channel(), SetT0Channel(), ShowDataFileT0Channel(), UnZoom(), and ZoomT0().
|
private |
Hide the t0 channel from the data file (if currently displayed).
Definition at line 823 of file PMusrT0.cpp.
References fMainCanvas, and fT0DataLine.
Referenced by HandleCmdKey().
|
virtual |
Initialize data and background ranges.
Definition at line 704 of file PMusrT0.cpp.
References fBkg, fBkgRange, fData, fDataRange, fFirstBkgLine, fFirstDataLine, fHisto, fLastBkgLine, fLastDataLine, fMainCanvas, fMsrHandler, fMusrT0Data, PMusrT0Data::GetDetectorTag(), PMsrHandler::GetMsrRunList(), PMusrT0Data::GetRunNo(), PMUSRT0_BACKWARD, and PMUSRT0_FORWARD.
|
virtual |
Initialize t0 data.
Definition at line 663 of file PMusrT0.cpp.
References fHisto, fMsrHandler, fMusrT0Data, fT0Line, PMusrT0Data::GetAddRunIdx(), PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetHistoNoIdx(), PMsrHandler::GetMsrRunList(), PMusrT0Data::GetRunNo(), PMusrT0Data::IsSingleHisto(), PMUSRT0_BACKWARD, and PMUSRT0_FORWARD.
|
inlinevirtual |
|
virtual |
Slot called when the canvas is closed via the close icon (cross top right corner). It is emitting a global quit singal.
Definition at line 616 of file PMusrT0.cpp.
|
private |
Set the first background channel to the current cursor position and keep the x-position as new first background bin.
Definition at line 1013 of file PMusrT0.cpp.
References fBkg, fBkgRange, fDataAndBkgEnabled, fFirstBkgLine, fHisto, fMainCanvas, fMsrHandler, fMusrT0Data, fPx, fPy, PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetRunNo(), PMUSRT0_BACKWARD, and PMsrHandler::SetMsrBkgRangeEntry().
Referenced by HandleCmdKey().
|
private |
Set the last background channel to the current cursor position and keep the x-position as new last background bin.
Definition at line 1059 of file PMusrT0.cpp.
References fBkg, fBkgRange, fDataAndBkgEnabled, fHisto, fLastBkgLine, fMainCanvas, fMsrHandler, fMusrT0Data, fPx, fPy, PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetRunNo(), PMUSRT0_BACKWARD, and PMsrHandler::SetMsrBkgRangeEntry().
Referenced by HandleCmdKey().
|
private |
Set the first good data channel to the current cursor position and keep the x-position as new first good data bin.
Definition at line 921 of file PMusrT0.cpp.
References fData, fDataAndBkgEnabled, fDataRange, fFirstDataLine, fHisto, fMainCanvas, fMsrHandler, fMusrT0Data, fPx, fPy, PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetRunNo(), PMUSRT0_BACKWARD, and PMsrHandler::SetMsrDataRangeEntry().
Referenced by HandleCmdKey().
|
private |
Set the last good data channel to the current cursor position and keep the x-position as new last good data bin.
Definition at line 967 of file PMusrT0.cpp.
References fData, fDataAndBkgEnabled, fDataRange, fHisto, fLastDataLine, fMainCanvas, fMsrHandler, fMusrT0Data, fPx, fPy, PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetRunNo(), PMUSRT0_BACKWARD, and PMsrHandler::SetMsrDataRangeEntry().
Referenced by HandleCmdKey().
|
private |
Set the estimated t0 channel to the current cursor position and keep the x-position as new t0 bin.
Definition at line 881 of file PMusrT0.cpp.
References fHisto, fMainCanvas, fMsrHandler, fMusrT0Data, fT0Enabled, fT0Estimated, fT0Line, PMusrT0Data::GetAddRunIdx(), PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetHistoNoIdx(), PMusrT0Data::GetRunNo(), PMusrT0Data::IsSingleHisto(), PMUSRT0_BACKWARD, PMsrHandler::SetMsrAddT0Entry(), and PMsrHandler::SetMsrT0Entry().
Referenced by HandleCmdKey().
|
virtual |
Set the msr-file handler
msrHandler | msr-file handler pointer |
Definition at line 652 of file PMusrT0.cpp.
References fMsrHandler.
|
private |
Set the t0 channel to the current cursor position and keep the x-position as new t0 bin.
Definition at line 837 of file PMusrT0.cpp.
References fHisto, fMainCanvas, fMsrHandler, fMusrT0Data, fPx, fPy, fT0Enabled, fT0Line, PMusrT0Data::GetAddRunIdx(), PMusrT0Data::GetDetectorTag(), PMusrT0Data::GetHistoNoIdx(), PMusrT0Data::GetRunNo(), PMusrT0Data::IsSingleHisto(), PMUSRT0_BACKWARD, PMsrHandler::SetMsrAddT0Entry(), and PMsrHandler::SetMsrT0Entry().
Referenced by HandleCmdKey().
|
virtual |
timeout | after which the done signal shall be emitted. Given in seconds |
Definition at line 630 of file PMusrT0.cpp.
References fTimeout, fTimeoutTimer, and timeout.
|
private |
Show the t0 channel from the data file (if present).
Definition at line 800 of file PMusrT0.cpp.
References fHisto, fMainCanvas, fMusrT0Data, fT0DataLine, and PMusrT0Data::GetT0BinData().
Referenced by HandleCmdKey().
|
private |
Unzoom the current histogram
Definition at line 1105 of file PMusrT0.cpp.
References fHisto, and fMainCanvas.
Referenced by HandleCmdKey().
|
private |
Zoom into the histogram region of the t0, and/or estimated t0 range.
Definition at line 1120 of file PMusrT0.cpp.
References fHisto, fMainCanvas, fT0Enabled, fT0Estimated, and fT0Line.
Referenced by HandleCmdKey().
|
private |
histogram starting from 'bkg start' up to 'bkg end'
Definition at line 166 of file PMusrT0.h.
Referenced by InitDataAndBkg(), SetBkgFirstChannel(), and SetBkgLastChannel().
|
private |
background range (first bkg bin, last bkg bin)
Definition at line 181 of file PMusrT0.h.
Referenced by ClassImpQ(), InitDataAndBkg(), PMusrT0(), SetBkgFirstChannel(), and SetBkgLastChannel().
|
private |
ranged raw data histogram (first good bin, last good bin)
Definition at line 165 of file PMusrT0.h.
Referenced by InitDataAndBkg(), SetDataFirstChannel(), and SetDataLastChannel().
|
private |
enable/disable data and background range handling (necessary in connection with grouping and addrun)
Definition at line 154 of file PMusrT0.h.
Referenced by ClassImpQ(), PMusrT0(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), and SetDataLastChannel().
|
private |
data range (first good bin, last good bin)
Definition at line 180 of file PMusrT0.h.
Referenced by ClassImpQ(), InitDataAndBkg(), PMusrT0(), SetDataFirstChannel(), and SetDataLastChannel().
|
private |
line showing the start of the background
Definition at line 172 of file PMusrT0.h.
Referenced by InitDataAndBkg(), and SetBkgFirstChannel().
|
private |
line showing the start of the data (first good data bin)
Definition at line 174 of file PMusrT0.h.
Referenced by InitDataAndBkg(), and SetDataFirstChannel().
|
private |
full raw data histogram
Definition at line 164 of file PMusrT0.h.
Referenced by InitDataAndBkg(), InitT0(), PMusrT0(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), SetEstimatedT0Channel(), SetT0Channel(), ShowDataFileT0Channel(), UnZoom(), and ZoomT0().
|
private |
line showing the end of the background
Definition at line 173 of file PMusrT0.h.
Referenced by InitDataAndBkg(), and SetBkgLastChannel().
|
private |
line showing the end of the data (last good data bin)
Definition at line 175 of file PMusrT0.h.
Referenced by InitDataAndBkg(), and SetDataLastChannel().
|
private |
main canvas for the graphical user interface
Definition at line 162 of file PMusrT0.h.
Referenced by HideDataFileT0Channel(), InitDataAndBkg(), PMusrT0(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), SetEstimatedT0Channel(), SetT0Channel(), ShowDataFileT0Channel(), UnZoom(), and ZoomT0().
|
private |
msr-file handler
Definition at line 144 of file PMusrT0.h.
Referenced by InitDataAndBkg(), InitT0(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), SetEstimatedT0Channel(), SetMsrHandler(), and SetT0Channel().
|
private |
raw muSR run data sets.
Definition at line 152 of file PMusrT0.h.
Referenced by InitDataAndBkg(), InitT0(), PMusrT0(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), SetEstimatedT0Channel(), SetT0Channel(), and ShowDataFileT0Channel().
|
private |
x-position of the cursor
Definition at line 177 of file PMusrT0.h.
Referenced by HandleCmdKey(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), and SetT0Channel().
|
private |
y-position of the cursor
Definition at line 178 of file PMusrT0.h.
Referenced by HandleCmdKey(), SetBkgFirstChannel(), SetBkgLastChannel(), SetDataFirstChannel(), SetDataLastChannel(), and SetT0Channel().
|
private |
Definition at line 157 of file PMusrT0.h.
Referenced by ClassImpQ(), HandleCmdKey(), and PMusrT0().
|
private |
0=quit locally, i.e. only a single musrt0 raw data canvas will terminate but not the application, 1=quit the application
Definition at line 150 of file PMusrT0.h.
Referenced by ClassImpQ(), GetStatus(), HandleCmdKey(), PMusrT0(), and Quit().
|
private |
line showing the position of t0 found in the data file
Definition at line 171 of file PMusrT0.h.
Referenced by HideDataFileT0Channel(), and ShowDataFileT0Channel().
|
private |
enable/disable t0 handling (necessary in connection with grouping and addrun)
Definition at line 155 of file PMusrT0.h.
Referenced by ClassImpQ(), PMusrT0(), SetEstimatedT0Channel(), SetT0Channel(), and ZoomT0().
|
private |
estimated t0 value (in bins)
Definition at line 156 of file PMusrT0.h.
Referenced by PMusrT0(), SetEstimatedT0Channel(), and ZoomT0().
|
private |
line showing the position of t0
Definition at line 170 of file PMusrT0.h.
Referenced by InitT0(), SetEstimatedT0Channel(), SetT0Channel(), and ZoomT0().
|
private |
timeout after which the Done signal should be emited. If timeout <= 0, no timeout is taking place
Definition at line 146 of file PMusrT0.h.
Referenced by ClassImpQ(), PMusrT0(), and SetTimeout().
|
private |
timeout timer in order to terminate if no action is taking place for too long
Definition at line 159 of file PMusrT0.h.
Referenced by SetTimeout().
|
private |
|
private |
true if raw data set are available, otherwise false
Definition at line 148 of file PMusrT0.h.
Referenced by ClassImpQ(), IsValid(), and PMusrT0().