/*
* Title: PupeDiagnosticsWin.h
* Author: M.Thomas BEAM Ltd
* Date: 2007-02-13
*
* Contents: Pupe Diagnostics window
*
* Mod Rec:
*
*/
#ifndef PUPEDIAGNOSTICSWIN_H
#define PUPEDIAGNOSTICSWIN_H
#include <BString.h>
#include <Control.h>
#include <TmsLib.h>
#include <CurveInfo.h>
#include <BQComboBox.h>
#include <qhbox.h>
#include <qspinbox.h>
#include <qcheckbox.h>
#include <qlineedit.h>
#include <qcombobox.h>
#include <qlineedit.h>
#include <BGraph.h>
#include <BGraphControls.h>
/*! Configure System and setup user interface window.
*
*/
class PupeDiagnosticsWin : public QHBox {
Q_OBJECT
public:
PupeDiagnosticsWin(QWidget* w,Control& c);
~PupeDiagnosticsWin();
public slots:
void show(); ///< Update and make the widget visible
private slots:
void refresh();
void saveFile();
private:
void setPlotData();
void addBitFieldDataToGraph(BGraph* g,BString s,int startBit, int nBits, int s,int invert=0);
void setGraphHeights(int maxSpace,int numGraphs);
bool eventFilter(QObject *o, QEvent *e );
void warningDialog(BString title, BError err);
Control& ocontrol;
BArray< UInt64 > odata;
BGraph* oplotA;
BGraph* oplotB;
BGraph* oplotC;
BGraph* oplotD;
BGraph* oplotE;
BGraph* oplotF;
BGraph* oplotG;
BGraph* oplotH;
BGraph* oplotI;
BGraph* oplotJ;
BGraph* oplotK;
BGraph* oplotL;
BGraph* oplotM;
BGraph* oplotN;
BGraph* oplotO;
BList<BGraph*> oplots;
QSpinBox* ochannel;
BQComboBox* osource;
BQComboBox* oclock;
QCheckBox* otriggerSourceData;
QCheckBox* otriggerAnd;
QCheckBox* otriggerStore;
QCheckBox* okst;
QLineEdit* ostartTime;
QLineEdit* opostTriggerDelay;
QLineEdit* otriggerMask;
BGraphControlBasic* ographControls;
};
#endif