Mercurial > hg > svcore
diff base/Clipboard.h @ 1611:b2f32c554199 single-point
Pull out the Point class, plus start testing NoteModel, plus actually add the tests...
author | Chris Cannam |
---|---|
date | Tue, 05 Mar 2019 15:15:11 +0000 |
parents | 7db29268cf4c |
children | 23a29e5dc0e9 |
line wrap: on
line diff
--- a/base/Clipboard.h Tue Mar 05 14:18:37 2019 +0000 +++ b/base/Clipboard.h Tue Mar 05 15:15:11 2019 +0000 @@ -16,68 +16,13 @@ #ifndef SV_CLIPBOARD_H #define SV_CLIPBOARD_H -#include <QString> #include <vector> -#include "BaseTypes.h" +#include "Point.h" class Clipboard { public: - class Point - { - public: - Point(sv_frame_t frame, QString label); - Point(sv_frame_t frame, float value, QString label); - Point(sv_frame_t frame, float value, sv_frame_t duration, QString label); - Point(sv_frame_t frame, float value, sv_frame_t duration, float level, QString label); - - Point(const Point &point) =default; - Point &operator=(const Point &point) =default; - - bool haveFrame() const; - sv_frame_t getFrame() const; - Point withFrame(sv_frame_t frame) const; - - bool haveValue() const; - float getValue() const; - Point withValue(float value) const; - - bool haveDuration() const; - sv_frame_t getDuration() const; - Point withDuration(sv_frame_t duration) const; - - bool haveLabel() const; - QString getLabel() const; - Point withLabel(QString label) const; - - bool haveLevel() const; - float getLevel() const; - Point withLevel(float level) const; - - bool haveReferenceFrame() const; - bool referenceFrameDiffers() const; // from point frame - - sv_frame_t getReferenceFrame() const; - void setReferenceFrame(sv_frame_t); - - private: - // Order of fields here is chosen to minimise overall size of struct. - // If you change something, check what difference it makes to packing. - bool m_haveValue : 1; - bool m_haveLevel : 1; - bool m_haveFrame : 1; - bool m_haveDuration : 1; - bool m_haveReferenceFrame : 1; - bool m_haveLabel : 1; - float m_value; - float m_level; - sv_frame_t m_frame; - sv_frame_t m_duration; - sv_frame_t m_referenceFrame; - QString m_label; - }; - Clipboard(); ~Clipboard();