/// paper_, staffs_ and commands_ form the problem definition.
Paperdef *paper_;
IPointerList<Staff*> staffs_;
- Score_commands *commands_;
+
+ svec<Command*> input_commands_;
/// "runtime" fields for setting up spacing
IPointerList<Score_column*> cols_;
PScore *pscore_;
/****************************************************************/
-
+ void add(svec<Command*> &s);
+
/// construction
void add_staff(Staff *st);
void set(Paperdef*);
Score();
~Score();
void add(Staff*);
- void set(Score_commands*);
+
void OK() const;
- Score_column *find_col(Real,bool);
+ PCursor<Score_column *> find_col(Real,bool);
void process();
void output(String fn);
PCursor<Score_column*> create_cols(Real);
void do_pcols();
void clean_cols();
void distribute_commands();
- void do_connect(PCol *c1, PCol *c2, Real d);
- void connect_nonmus(PCol* c1, PCol *c2, Real d);
+ void do_connect(PCol *c1, PCol *c2, Real d,Real);
+ void connect(PCol* c1, PCol *c2, Real d,Real = 1.0);
+
/// add #Idealspacings# to #pscore_#
void calc_idealspacing();
/** add the score wide commands (bars, breaks) to each staff so
#ifndef STAFF_HH
#define STAFF_HH
-#include "score.hh"
-#include "voice.hh"
-#include "command.hh"
+#include "staffcommands.hh"
/// base class for a collection of voices.
IPointerList<Voice*> voices;
/// commands in chronological order
- IPointerList<Command *> commands;
-
+ Staff_commands *staff_commands_;
+
/// runtime field
IPointerList<Staff_column*> cols;
Score *score_;
PScore *pscore_;
+ svec<Command*> input_commands_;
+
/****************************************************************/
+ void add(svec<Command*> &s);
+ void add(PointerList<Voice*> &s);
+ void process_input_commands(svec<Command*> &s, Real l);
+
Staff(const Staff&src);
void add_voice(Voice *v);
void add_staff_column(Staff_column *sp);
void clean_cols() ;
Staff_column * get_col(Real,bool);
- void add_commands(PointerList<Command* >const & sv);
- /**
- add all commands from sv.
-
- PRE
- sv is time-ordered.
- */
-
Staff();
/**
Should construct with Score as arg, but this isn't known during parsing.
violin \violinclef 0pt 16pt -12.5pt 22.5pt
bass \bassclef 0pt 16pt 0pt 20pt
viola \violaclef 0pt 16pt 0pt 20pt
+ violin_change \cviolinclef 0pt 16pt -12.5pt 22.5pt
+ bass_change \cbassclef 0pt 16pt 0pt 20pt
+ viola_change \cviolaclef 0pt 16pt 0pt 20pt
end
table balls
table bars
empty \emptybar 0pt 0pt 0pt 0pt
- | \maatstreep 0pt 1pt -12pt 12pt
+ | \maatstreep 0pt 5pt -12pt 12pt
|| \finishbar 0pt 2pt -12pt 12pt
end