test_sdk/gui/gtl_gui_apfc_chart.h

89 lines
2.9 KiB
C
Raw Permalink Normal View History

#ifndef GTL_GUI_APFC_CHART_H
#define GTL_GUI_APFC_CHART_H
#include "gtl_gui_chart.h"
#include "gui/gtl_gui_apfc_series.h"
#include "gui_global.h"
namespace gtl {
namespace gui {
class GTL_GUI_EXPORT apfc_chart : public gtl::gui::chart
{
Q_OBJECT
public:
apfc_chart(QWidget* parent = NULL);
~apfc_chart();
int afc() const;
void set_afc(int newAfc);
int pfc() const;
void set_pfc(int newPfc);
qreal frequency() const;
void set_frequency(qreal newFrequency);
qreal resolution() const;
void set_resolution(qreal newResolution);
int window() const;
void set_window(int newWindow);
int lines() const;
void set_lines(int newLines);
int average() const;
void set_average(int newAverage);
qreal overlap() const;
void set_overlap(qreal newOverlap);
qreal threshold() const;
void set_threshold(qreal newThreshold);
public slots:
void set_x_log(bool value);
void set_ref(const QString &name);
signals:
void afc_changed();
void pfc_changed();
void frequency_changed();
void resolution_changed();
void window_changed();
void lines_changed();
void average_changed();
void overlap_changed();
void signals_changed(QList<QString> *sigs);
void threshold_changed();
protected:
virtual chart_series* create_series(gtl::analog_data* ai);
private:
gtl::math::apfc *_apfc = nullptr;
analog_data *_ref = nullptr;
analog_data *_data = nullptr;
int _afc;
int _pfc;
qreal _frequency;
qreal _resolution;
int _window;
int _lines;
int _average;
qreal _overlap;
qreal _threshold;
QList<QString> _signals;
Q_PROPERTY(int afc READ afc WRITE set_afc NOTIFY afc_changed)
Q_PROPERTY(int pfc READ pfc WRITE set_pfc NOTIFY pfc_changed)
Q_PROPERTY(qreal frequency READ frequency WRITE set_frequency NOTIFY frequency_changed)
Q_PROPERTY(qreal resolution READ resolution WRITE set_resolution NOTIFY resolution_changed)
Q_PROPERTY(int window READ window WRITE set_window NOTIFY window_changed)
Q_PROPERTY(int lines READ lines WRITE set_lines NOTIFY lines_changed)
Q_PROPERTY(int average READ average WRITE set_average NOTIFY average_changed)
Q_PROPERTY(qreal overlap READ overlap WRITE set_overlap NOTIFY overlap_changed)
Q_PROPERTY(qreal threshold READ threshold WRITE set_threshold NOTIFY threshold_changed)
};
} // namespace gui
} // namespace gtl
#endif // GTL_GUI_APFC_CHART_H