public:
DGScalerViewer DGScalerViewer(Char_t* fina) DGScalerViewer DGScalerViewer(DGScalerViewer&) virtual void ~DGScalerViewer() Int_t Chan(const char*) TClass* Class() void DrawGraphs() Float_t EvalFormula(const char*, int) Int_t FileChanged() virtual Bool_t HandleTimer(TTimer* tim) virtual TClass* IsA() const void MakeVectors() virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2) void Rates(Int_t, UInt_t) void ReadAllEvents() void ReadData(Char_t*, Int_t) void ReadLastEvent() Int_t SecondsAgo(UInt_t) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b)Data Members
public:
TObjArray* fMemList list containing all members TTimer* fTimer timer for refreshing Char_t* fFilename scaler database filename fstream* fFile scaler database file Int_t fEvents current number of events (=bursts) UInt_t fTime[200000] time array UInt_t fScaler[32][200000] scaler data Int_t fGraphEvents number of events to be displayed Float_t* fX abscissa array Float_t* fY[4] ordinate arrays TH2F* fHist histogram for axes etc. TGraph* fGraph[4] graphs Int_t fGraphOn[4] should graphs be displayed or not Int_t fMin display events from Int_t fMax display events to Float_t fZoom zoom TGHorizontalFrame* fLabelFrame frame for fLabel TRootEmbeddedCanvas* fCanvasFrame canvas for plotting graphs TGHorizontalFrame* fControlFrame frame for buttons TGLabel* fLabel variable names reminder TGGroupFrame* fSelectionFrame what-to-plot frame TGGroupFrame* fRangeFrame range frame TGGroupFrame* fZoomFrame zoom frame TGGroupFrame* fWindowFrame miscel... how to spell this TGTextButton* fLastHourButton TGTextButton* fLastDayButton TGTextButton* fLastWeekButton TGTextButton* fLastMonthButton TGTextButton* fRangeLeftButton TGTextButton* fRangeRightButton TGTextButton* fRangeExpandButton TGTextButton* fRangeShrinkButton TGTextButton* fWindowRatesButton TGTextButton* fWindowExitButton TGTextButton* fZoomVexpandButton TGTextButton* fZoomVshrinkButton TGTextButton* fZoomHexpandButton TGTextButton* fZoomHshrinkButton TGTextBuffer* fSelectionB[4] TGTextEntry* fSelectionE[4]
DGScalerViewer is a CERES scaler history viewer.
Copy the last line of the scaler database file fFilename into a temporary file temp_file; then read this line and append to the actual data in memory, i.e. to fTime and fScaler
Read data from filename and fill fTime andfScaler vectors, starting from index start.
Pick the (fMin,fMax) subrange of all (0,fEvents-1) events, pack them into new fX and fY vectors. fY definition is given by user via fSelection text.
Draw the active (fGraphOn[i] == 1) graphs.
Decode string name into scaler channel number (between 0 and 31).
Interpret form as a formula with channel names, and return the corresponding numerical value.
Return 1 if the scaler database file fFilename has been changed since the last visit.
Print some rates in the traditional format, including average over last n bursts with BC1 above thr.
void ReadAllEvents() TClass* Class() TClass* IsA() const void ShowMembers(TMemberInspector& insp, char* parent) void Streamer(TBuffer& b) DGScalerViewer DGScalerViewer(DGScalerViewer&)