-
Notifications
You must be signed in to change notification settings - Fork 0
/
yellowdolphindownloader.h
144 lines (113 loc) · 3.84 KB
/
yellowdolphindownloader.h
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#ifndef YELLOWDOLPHINDOWNLOADER_H
#define YELLOWDOLPHINDOWNLOADER_H
#include <QWidget>
#include <QVector>
#include <QPainter>
#include <QImage>
#include <QMessageBox>
#include <iostream>
#include <dirent.h>
#include <fstream>
#include <sstream>
#include "ui_yellowdolphindownloader.h"
#include "CalTime.hpp"
#include "Fluke189.hpp"
#include "QFlukeMetaType.h"
#include "QFlukeValueMetaType.h"
#include "remoteLogThread.h"
#include "remoteDataAnalysisThread.h"
#include <qwt/qwt.h>
#include <qwt/qwt_plot_curve.h>
#include <qwt/qwt_painter.h>
#include <qwt/qwt_plot_canvas.h>
#include <qwt/qwt_plot_marker.h>
#include <qwt/qwt_plot_curve.h>
#include <qwt/qwt_scale_widget.h>
#include <qwt/qwt_legend.h>
#include <qwt/qwt_scale_draw.h>
#include <qwt/qwt_math.h>
#include "QFlukePlotter/QFlukePlotter.hpp"
#include "QFlukePlotter/qflukeplotcurve.h"
class YellowDolphinDownloader : public QWidget
{
Q_OBJECT
public:
YellowDolphinDownloader(QWidget *parent = 0);
~YellowDolphinDownloader();
QFlukePlotter * primaryPlot;
QFlukePlotter * secondaryPlot;
QFlukePlotCurve * primaryValueCurve;
QFlukePlotCurve * primaryMaxCurve;
QFlukePlotCurve * primaryMinCurve;
QFlukePlotCurve * primaryAvgCurve;
QFlukePlotCurve * secondaryValueCurve;
QFlukePlotCurve * secondaryMaxCurve;
QFlukePlotCurve * secondaryMinCurve;
QFlukePlotCurve * secondaryAvgCurve;
remoteLogThread remlog;
remoteDataAnalysisThread remanalysis;
private:
Ui::YellowDolphinDownloaderClass ui;
void refresh_interfaces_list();
public:
static void Wrapper_to_progress_bar(void* progressbarobject, unsigned int current_byte, unsigned int byte_amount)
{
YellowDolphinDownloader* currentclass=(YellowDolphinDownloader*) progressbarobject;
currentclass->progress_bar(current_byte, byte_amount);
}
void progress_bar(unsigned int current_byte, unsigned int byte_amount)
{
if(byte_amount != 0)
{
unsigned int current_percent=(unsigned int)((double)(current_byte)/(byte_amount)*100);
if(current_percent > 100)
{
current_percent=100;
std::cerr<<"YellowDolphinDownloader::progress_bar - Value for Progressbar > 100% !!!";
}
ui.progressBar->setValue(current_percent);
}
else
{
ui.progressBar->setValue(1);
}
}
private slots:
void on_pushButton_remlog_query_clicked();
void on_searchmultimeter_clicked();
void on_refreshInterfacesBut_clicked();
void on_downloadButton_clicked();
public slots:
void updateCurrentValues(QString priValue,
QString priMin,
QString priMax,
QString priAvg,
QString secValue,
QString secMin,
QString secMax,
QString secAvg);
void addPlotValues(unsigned int pritimeindex, unsigned int sectimeindex,
Fluke::Fluke189QD0Logging::Fluke189Value_t privalue,
Fluke::Fluke189QD0Logging::Fluke189Value_t primax,
Fluke::Fluke189QD0Logging::Fluke189Value_t primin,
Fluke::Fluke189QD0Logging::Fluke189Value_t priavg,
Fluke::Fluke189QD0Logging::Fluke189Value_t secvalue,
Fluke::Fluke189QD0Logging::Fluke189Value_t secmax,
Fluke::Fluke189QD0Logging::Fluke189Value_t secmin,
Fluke::Fluke189QD0Logging::Fluke189Value_t secavg)
{
primaryValueCurve->addDataPoint(pritimeindex, privalue);
primaryMaxCurve->addDataPoint(pritimeindex, primax);
primaryMinCurve->addDataPoint(pritimeindex, primin);
//primaryAvgCurve->addDataPoint(pritimeindex, priavg);
primaryPlot->replot();
secondaryValueCurve->addDataPoint(sectimeindex, secvalue);
secondaryMaxCurve->addDataPoint(sectimeindex, secmax);
secondaryMinCurve->addDataPoint(sectimeindex, secmin);
//secondaryAvgCurve->addDataPoint(sectimeindex, secavg);
secondaryPlot->replot();
}
void reset_primary_plot();
void reset_secondary_plot();
};
#endif // YELLOWDOLPHINDOWNLOADER_H