1 #include "inputcommand.hh"
5 Input_command::Input_command()
10 Input_command::operator Command()
24 else if (s
== "METER")
28 else if (s
== "GROUPING")
39 get_partial_command(Moment u
)
41 Input_command
*c
= new Input_command
;
42 c
->args
.push("PARTIAL");
48 get_goto_command(String s
)
50 Input_command
*c
= new Input_command
;
57 get_cadenza_toggle(int i
)
60 Input_command
*c
= new Input_command
;
61 c
->args
.push("CADENZA");
66 get_grouping_command(Array
<int>a
)
68 Input_command
*c
= new Input_command
;
69 c
->args
.push("GROUPING");
70 for (int i
=0; i
< a
.size(); i
++)
77 get_key_interpret_command(Array
<int >a
)
79 Input_command
*c
= new Input_command
;
81 for (int i
=0; i
< a
.size(); i
++) {
90 Input_command
*c
= new Input_command
;
91 c
->args
.push("RESET");
96 get_meterchange_command(int n
, int m
)
98 Input_command
*c
= new Input_command
;
100 c
->args
.push( "METER");
108 get_newmeasure_command()
110 Input_command
*c
= new Input_command
;
111 c
->args
.push( "NEWMEASURE");
116 get_skip_command(int n
, Moment m
)
118 Input_command
*c
= new Input_command
;
120 c
->args
.push( "SKIP");
129 Input_command::print()const
135 for (int i
= 0; i
<args
.size(); i
++)
136 mtor
<< "`"<<args
[i
] <<"',";
143 get_clef_interpret_command(String w
)
145 Input_command
*c
= new Input_command
;
146 c
->args
.push("CLEF");
152 get_bar_command(String w
)
154 Input_command
*c
= new Input_command
;
161 get_default_grouping(int count
, int one_beat_note
)
165 for (int i
=0; i
< count
/3; i
++) {
167 s
.push(one_beat_note
);
169 } else if (!(count
%2)) {
170 for (int i
=0; i
< count
/2; i
++) {
172 s
.push(one_beat_note
);
177 s
.push(one_beat_note
);
178 s
.concat(get_default_grouping(count
-2, one_beat_note
));