2 #include <Process/Process.hpp>
4 #include <Patternist/PatternMetadata.hpp>
6 #include <score_plugin_midi_export.h>
14 std::vector<bool> pattern;
17 bool operator==(
const Lane& other)
const noexcept
19 return note == other.note && pattern == other.pattern;
27 std::vector<Lane> lanes;
29 bool operator==(
const Pattern& other)
const noexcept
31 return length == other.length && division == other.division && lanes == other.lanes;
37 SCORE_SERIALIZE_FRIENDS
45 const TimeVal& duration,
const QString& custom,
48 template <
typename Impl>
60 void setChannel(
int n);
61 int channel()
const noexcept;
63 void setCurrentPattern(
int n);
64 int currentPattern()
const noexcept;
66 void setPattern(
int n,
Pattern p);
67 void setPatterns(
const std::vector<Pattern>& n);
68 const std::vector<Pattern>& patterns()
const noexcept;
70 std::unique_ptr<Process::MidiOutlet> outlet;
73 void channelChanged(
int arg_1) W_SIGNAL(channelChanged, arg_1);
74 void currentPatternChanged(
int arg_1) W_SIGNAL(currentPatternChanged, arg_1);
75 void execPosition(
int arg_1) W_SIGNAL(execPosition, arg_1);
76 void patternsChanged() W_SIGNAL(patternsChanged);
78 PROPERTY(
int, channel READ channel WRITE setChannel NOTIFY channelChanged, W_Final)
81 currentPattern READ currentPattern WRITE setCurrentPattern NOTIFY
82 currentPatternChanged,
85 void setDurationAndScale(
const TimeVal& newDuration) noexcept
override;
86 void setDurationAndGrow(
const TimeVal& newDuration) noexcept
override;
87 void setDurationAndShrink(
const TimeVal& newDuration) noexcept
override;
90 int m_currentPattern{};
91 std::vector<Pattern> m_patterns;
Definition: PatternModel.hpp:36
The Process class.
Definition: score-lib-process/Process/Process.hpp:61
The id_base_t class.
Definition: Identifier.hpp:57
Definition: PatternModel.hpp:13
Definition: PatternModel.hpp:24
Definition: TimeValue.hpp:21