QGUIHistogramDisplay.hh

00001 #ifndef _QGUI_HISTOGRAM_DISPLAY_HH_
00002 #define _QGUI_HISTOGRAM_DISPLAY_HH_
00003 
00004 #include "QGUIBaseFrame.hh"
00005 
00006 #include "QGUIHistogramHandler.hh"
00007 
00008 #include <vector>
00009 
00010 #include "TTimer.h"
00011 
00012 class TGCompositeFrame;
00013 class TRootEmbeddedCanvas;
00014 class QGUINumberSelector;
00015 class TGTextButton;
00016 class TGTextEntry;
00017 class TGLabel;
00018 
00019 class QGUIHistogramDisplay: public QGUIBaseFrame
00020 {
00021 public:
00022    QGUIHistogramDisplay(const TGWindow*          parent,
00023                         unsigned int             Width,
00024                         unsigned int             Height);
00025 
00026    virtual ~QGUIHistogramDisplay();
00027 
00028    void Close();
00029 
00031    void UpdateChannel();
00032    
00034    void UpdateDisplay();
00035 
00041    void HandlePause();
00042 
00046    void UpdateRate();
00047 
00051    void UpdateSpectrumRange();
00052 
00053 private:
00054 
00055    TGCompositeFrame *fControlFrame;
00056    TGCompositeFrame *fDisplayFrame;
00057    TGCompositeFrame *fChannelFrame;
00058 
00059    TGLabel *fChSelLabel;
00060 
00061    TRootEmbeddedCanvas *fPulseCanvas;
00062    TRootEmbeddedCanvas *fSpectrumCanvas;
00063    TRootEmbeddedCanvas *fRateCanvas;
00064 
00065    QGUINumberSelector *fChSelector;
00066 
00067    TGTextButton *fCloseButton;
00068    TGTextButton *fPauseButton;
00069    TGTextButton *fUpdateRateButton; 
00070    TGTextButton *fUpdateRangeButton;
00071 
00072    TGTextEntry *fChDisplay;
00073 
00074    std::vector<unsigned short> fActiveChannels;
00075 
00076    long fTimeout;
00077    TTimer fTimer;
00078 
00079    QGUIHistogramHandler fHistoHandler;
00080 
00081    void CreateSubFrames();
00082 
00083    void ConnectButtons();
00084 
00085    void GetActiveChannels();
00086 
00087    ClassDef(QGUIHistogramDisplay,0)
00088 };
00089 
00090 #endif

Generated on Fri Mar 6 13:40:39 2009 for CUORE Software by  doxygen 1.5.1