74 lines
2.3 KiB
C
74 lines
2.3 KiB
C
|
#ifndef GTL_GUI_CROSS_SPEC_CHART_H
|
||
|
#define GTL_GUI_CROSS_SPEC_CHART_H
|
||
|
|
||
|
|
||
|
#include "gtl_gui_chart.h"
|
||
|
#include "gui/gtl_gui_cross_spec_series.h"
|
||
|
|
||
|
#include "gui_global.h"
|
||
|
|
||
|
|
||
|
namespace gtl {
|
||
|
namespace gui {
|
||
|
|
||
|
class GTL_GUI_EXPORT cross_spec_chart : public gtl::gui::chart
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
cross_spec_chart(QWidget* parent = NULL);
|
||
|
~cross_spec_chart();
|
||
|
|
||
|
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);
|
||
|
|
||
|
public slots:
|
||
|
void set_x_log(bool value);
|
||
|
|
||
|
signals:
|
||
|
void frequency_changed();
|
||
|
void resolution_changed();
|
||
|
void window_changed();
|
||
|
void lines_changed();
|
||
|
void average_changed();
|
||
|
void overlap_changed();
|
||
|
void signals_changed(QList<QString> *sigs);
|
||
|
|
||
|
protected:
|
||
|
virtual chart_series* create_series(gtl::analog_data* ai);
|
||
|
|
||
|
private:
|
||
|
gtl::math::cross_spec *_cross_spec = nullptr;
|
||
|
analog_data *_ref = nullptr;
|
||
|
analog_data *_data = nullptr;
|
||
|
|
||
|
qreal _frequency;
|
||
|
qreal _resolution;
|
||
|
int _window;
|
||
|
int _lines;
|
||
|
int _average;
|
||
|
qreal _overlap;
|
||
|
QList<QString> _signals;
|
||
|
|
||
|
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)
|
||
|
};
|
||
|
|
||
|
} // namespace gui
|
||
|
} // namespace gtl
|
||
|
|
||
|
#endif // GTL_GUI_CROSS_SPEC_CHART_H
|