JASPL  0.2
Just Another Signal Processing Library
jchart.h
1 #ifndef JCHART_H
2 #define JCHART_H
3 
4 //C System-Headers
5 #include <cxxabi.h> //abi::__cxa_demangle
6 //C++ System headers
7 #include <typeinfo> //typeid(T).name()
8 //OpenCL Headers
9 //
10 //Boost Headers
11 //
12 //Qt Headers
13 #include <QtWidgets/QApplication>
14 #include <QtWidgets/QMainWindow>
15 #include <QtCharts/QChartView>
16 #include <QtCharts/QLineSeries>
17 #include <QtCore/QDateTime>
18 #include <QtCharts/QSplineSeries>
19 #include <QtCore/QFile>
20 #include <QtCore/QTextStream>
21 #include <QtCore/QDebug>
22 #include <QtCharts/QValueAxis>
23 #include <QTimer>
24 //Project specific headers
25 #include "../JASPL/jTypeTraits/jtypetraits.h"
26 
27 QT_CHARTS_USE_NAMESPACE
28 
29 class JChart : QMainWindow {
30 
31  Q_OBJECT
32 
33  public:
34  explicit JChart( QWidget *parent = 0 );
35  ~JChart();
36 
37  template <class T> void Plot( T time_series );
38  template <class T> void Plot( T time_series, std::string chart_title );
39 
40  private:
41 
42  QLineSeries* time_series;
43  QValueAxis* x_axis;
44  QValueAxis* y_axis;
45  QChartView* chartView;
46  QTimer* auto_timer;
47  QChart *chart;
48 
49  void UnitTest();
50 
51  private slots:
52  void UpdateSignal();
53 
54  signals:
55  void SignalChanged();
56 
57 };
58 
59 #include "jChart/jchart_templates.tpp"
60 
61 #endif // JCHART_H
Definition: jchart.h:29