#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 *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 _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