Loading...
Searching...
No Matches
PatternTimeGrid.hpp
1#pragma once
2#include <score_plugin_midi_export.h>
3#include <QObject>
4
5#include <Patternist/PatternGrid.hpp>
6
7#include <vector>
8#include <verdigris>
9
10Q_DECLARE_METATYPE(Patternist::TimeGrid)
11W_REGISTER_ARGTYPE(Patternist::TimeGrid)
12
13namespace Patternist
14{
15class ProcessModel;
16
20class SCORE_PLUGIN_MIDI_EXPORT TimeGridWatcher final : public QObject
21{
22 W_OBJECT(TimeGridWatcher)
23public:
24 TimeGridWatcher(const ProcessModel& proc, QObject* parent);
25
26 const TimeGrid& grid() const noexcept { return m_grid; }
27
28 void changed(const TimeGrid& g) W_SIGNAL(changed, g);
29
30private:
31 void update();
32
33 const ProcessModel& m_process;
34 TimeGrid m_grid;
35 std::vector<QMetaObject::Connection> m_connections;
36};
37}
Definition PatternModel.hpp:247
Definition PatternTimeGrid.hpp:21
Definition PatternGrid.hpp:20