60 double noteLength = 0.25;
61 float amplitude = 0.5f;
66 float vibratoRate = 5.0f;
68 float tremoloRate = 5.0f;
73 double _currentTime = 0.0;
77 MusicalNote::List _notes;
82 void parseNoteLengthParam();
83 void parseAmplitude();
85 void parseScaleParam();
89 void parseLetterNote();
90 void parseNumericNote();
93 void parseSaveParams();
94 void parseRecallParams();
98 void skipWhitespace();
100 char current()
const;
101 char peek(
int offset)
const;
104 double parseDurationModifier();
107 void addError(
const String &msg);
109 static double parseNoteLengthValue(
const String &
s);
110 static double applyDots(
double length,
int dots);
Dynamic array container wrapping std::vector.
Definition list.h:40
Represents a musical scale with a root pitch class and mode.
Definition musicalscale.h:26
Parses a domain-specific text notation into a sequence of MusicalNote objects.
Definition notesequenceparser.h:42
MusicalNote::List parse(const String &input)
Parses the input string and returns a list of notes.
const StringList & errors() const
Returns any errors encountered during the last parse.
Definition notesequenceparser.h:55
Manages a list of strings.
Definition stringlist.h:21
Encoding-aware string class with copy-on-write semantics.
Definition string.h:35
#define PROMEKI_NAMESPACE_BEGIN
Starts a promeki namespace block.
Definition namespace.h:14
#define PROMEKI_NAMESPACE_END
Ends a promeki namespace block.
Definition namespace.h:19