|
|
/*************************************************************************** waterfall.h - description ------------------- begin : Tue Jul 25 2000 copyright : (C) 2000 by Luc Langehegermann email : luc@1409.org ***************************************************************************/ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef WATERFALL_H #define WATERFALL_H #include#include #include #include #include #include #include "auxwindow.h" #define SAMPLES 2048 /** *@author Luc Langehegermann */ class waterfall : public QWidget { Q_OBJECT public: waterfall(QWidget *parent=0); ~waterfall(); int getIMD (int chn); /** Make sure that the old Positions are reinitialized so that the tool tips get the right position */ void resetOldPos(); void reInit(); private: QPixmap getLineal (double offset, bool lsb = false); int activechannel; QPixmap buffer; //screen buffer QPixmap lineal; QPixmap marker; QPixmap activemarker; int lastpos[4]; // last sample position QTimer* timer; // timer for waterfall processing auxWindow* aux[3]; // float upperSig[4]; // For imd Calculations // float lowerSig[4]; // float upperIMD[4]; // float lowerIMD[4]; int IMD[4]; int IMDcount[4]; int oldlastpos[4]; int maxfreq; // maximum displayed frequency int minfreq; // minimum displayed frequency int xmax; // maximum x plot coordinate int ymax; // maximum y plot coordinate int xpos; // x coordinate position int large_step_width; // plot step of lareg freq ticks int marker_step_width; // plot step of freq marker int marker_freq_step; // freq step of freq marker int to; //max visible in sample space int from; // min visible in sample space int xtranslate[SAMPLES]; // x coordinate matrix of fft samples int stranslate[SAMPLES]; // fft samples to x coordinates // int lastbanditem; QColor watercolor[100]; //waterfall color matrix protected: // Protected methods void mousePressEvent (QMouseEvent* event); void mouseMoveEvent (QMouseEvent* event); void resizeEvent (QResizeEvent* e); void paintEvent (QPaintEvent*); private slots: // Private slots void slotProcessFFTData(); private: // Private methods void h2oColors(); void translate(); // converts x coordinates to samples & samples to x public slots: // Public slots void slotNewBand (int item); void slotClrCh1Rx(); // slot to clear ch 1 text void slotClrCh2Rx(); // slot to clear ch 2 text void slotClrCh3Rx(); // slot to clear ch 3 text }; #endif
Generated by: ernie on homer on Fri Aug 30 19:54:09 2002, using kdoc 2.0a53. |