diff options
author | Samuel Fadel <samuelfadel@gmail.com> | 2015-09-29 14:59:59 -0300 |
---|---|---|
committer | Samuel Fadel <samuelfadel@gmail.com> | 2015-09-29 14:59:59 -0300 |
commit | 30f327b2fd25104916bffe6fe76823f0dbe35a72 (patch) | |
tree | 3ceb449cbd3b6e8965e891efe3ea6b36183a6b10 /historygraph.h | |
parent | 56c9ebb2e41bd0487199ed95838cd9e1c1d9dd8d (diff) |
Inital history graph implementation and using linear scales where applicable.
- geometry.h for geometry calculation functions
- scale.h for implementations of scales (currently only the linear scale)
- updated main_view.qml for the new HistoryGraph component
- HistoryGraph displays each subsample used as a mini scatterplot (no colors
currently)
- Scatterplot now uses scale.h for transformations
- Code cleanup and some bug fixes
Diffstat (limited to 'historygraph.h')
-rw-r--r-- | historygraph.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/historygraph.h b/historygraph.h index b854d1e..564845c 100644 --- a/historygraph.h +++ b/historygraph.h @@ -1,20 +1,32 @@ #ifndef HISTORYGRAPH_H #define HISTORYGRAPH_H -#include <armadillo> #include <QtQuick> +#include <armadillo> class HistoryGraph : public QQuickItem { Q_OBJECT public: HistoryGraph(QQuickItem *parent = 0); + ~HistoryGraph(); public slots: - void addHistoryItem(const int &item); + void addHistoryItem(const arma::mat &item); protected: QSGNode *updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *); + +private: + class HistoryItemNode; + + QSGNode *createNodeTree(); + void updateNodeTree(QSGNode *root); + void addScatterplot(QSGNode *node, const HistoryItemNode *historyItemNode, float x, float y, float w, float h); + + + HistoryItemNode *m_firstNode, *m_currentNode; + bool m_needsUpdate; }; #endif // HISTORYGRAPH_H |