1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
|
/***************************************************************************
* Copyright (C) 2005 by Johan Maes *
* on4qz@telenet.be *
* *
* 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. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
* *
* In addition, as a special exception, the copyright holders give *
* permission to link the code of this program with any edition of *
* the Qt library by Trolltech AS, Norway (or with modified versions *
* of Qt that use the same license as Qt), and distribute linked *
* combinations including the two. You must obey the GNU General *
* Public License in all respects for all of the code used other than *
* Qt. If you modify this file, you may extend this exception to *
* your version of the file, but you are not obligated to do so. If *
* you do not wish to do so, delete this exception statement from *
* your version. *
***************************************************************************/
#ifndef SCOPEVIEW_H
#define SCOPEVIEW_H
#include "appglobal.h"
#include <QString>
#include "scopeplot.h"
#define SCOPEMAXDATA 300000
/**
@author Johan Maes <on4qz@telenet.be>
*/
enum ecurve{SCDATA1,SCDATA2,SCDATA3,SCDATA4};
#define NUMCURVES 4
class scopeView: public scopePlot
{
public:
scopeView(QString title);
~scopeView();
void init();
void clear();
void setOffset (int xoffset);
void addData(ecurve Idx,double *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,float *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,qint8 *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,quint8 *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,qint16 *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,quint16 *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,qint32 *data,unsigned int position,unsigned int len);
void addData(ecurve Idx,quint32 *data,unsigned int position,unsigned int len);
void show(bool data,bool sync,bool state,bool d4);
void setCurveName(QString title,int idx);
void setAxisTitles(QString x,QString yData1,QString yData2)
{
xTitle=x;
yLeftTitle=yData1;
yRightTitle=yData2;
}
private:
double array1[SCOPEMAXDATA];
double array2[SCOPEMAXDATA];
double array3[SCOPEMAXDATA];
double array4[SCOPEMAXDATA];
unsigned int index;
QString curveNameArray[NUMCURVES];
QString xTitle;
QString yLeftTitle;
QString yRightTitle;
unsigned int xOffset;
};
#endif
|