00001 00002 #include <qwidget.h> 00003 #include "midobasic.h" 00004 00005 class QSpinBox; 00006 class DisplayLCD; 00007 class QFrame; 00008 class QLabel; 00009 class QGroupBox; 00010 class Multimeter; 00011 class QwtCounter; 00012 00013 00014 class DisplayMultimeter : public QWidget 00015 { 00016 Q_OBJECT 00017 00018 public: 00019 enum numChannel { Channel1, Channel2 }; 00020 00021 DisplayMultimeter(QWidget *parent, const char *name); 00022 ~DisplayMultimeter() {} 00023 00024 void setOff(numChannel num); 00025 void setOn(numChannel num); 00026 void loadDate(numChannel num, DValueList *array, bool displayValue); 00027 00028 double getVoltMid(numChannel num); 00029 00030 Multimeter *Ch1, *Ch2; 00031 00032 public slots: 00033 void newValue(double value, int numChannel); 00034 }; 00035 00036 00037 00038 class Multimeter : public QWidget 00039 { 00040 Q_OBJECT 00041 00042 public: 00043 Multimeter(const QString title, QColor titleColor, int x, int y, QWidget *parent, const char *name); 00044 ~Multimeter() {} 00045 00046 void setOn(); 00047 void setOff(); 00048 void reset(); 00049 void loadDate(double value); 00050 00051 void setVoltIst(double value); 00052 void setVoltPP(double value); 00053 void setVoltMin(double value); 00054 void setVoltMax(double value); 00055 void setVoltMid(double value); 00056 void setVoltRMS(double value); 00057 void setValueDb(double value); 00058 void setPower(double value); 00059 00060 double getVoltIst(); 00061 double getVoltPP(); 00062 double getVoltMin(); 00063 double getVoltMax(); 00064 double getVoltMid(); 00065 double getVoltRMS(); 00066 double getValueDb(); 00067 double getPower(); 00068 00069 private: 00070 DisplayLCD *lcdVoltIst,*lcdVoltPP,*lcdVoltMin,*lcdVoltMax,*lcdVoltMid,*lcdVoltRMS; 00071 DisplayLCD *lcdValueDb,*lcdWatt,*lcdFrequency, *lcdCresta; 00072 double min, max, cont, numData; 00073 QLabel *multimTitle; 00074 QGroupBox *gbPower, *gbAttenuation, *gbVoltage, *gbFrequency; 00075 QSpinBox *spPower; 00076 QwtCounter *ctPower; 00077 bool start; 00078 };