#include "proto.hh"
#include "plist.hh"
#include "moment.hh"
+#include "assoc.hh"
/// the total music def of one movement
struct Score {
IPointerList<Score_column*> cols_;
PScore *pscore_p_;
+ String define_spot_str_;
+
+ Assoc<String, Moment> markers_assoc_;
/****************************************************************/
/// construction
Score(Paperdef*);
~Score();
- void add(Staff*);
+ void add(Staff*);
+ void add_marks(Array<String>, Array<Moment>);
/// do everything except outputting to file
void process();
PCursor<Score_column *> find_col(Moment,bool);
/// when does the last *musical* element finish?
Moment last() const;
-
+
private:
Score(Score const&){}
+ ///
void do_cols();
/**
make the pcol_l_ fields of each Score_column point to the correct PCol,
/*
moment.hh -- part of LilyPond
- (c) 1996 Han-Wen Nienhuys
+ (c) 1996,97 Han-Wen Nienhuys
*/
#ifndef tdes_HH
#include "real.hh"
#include "moment.hh"
+/// full info on where we are
struct Time_description {
- Rational when;
+ Moment when;
+
+ /// if true, no bars needed, no reduction of whole_in_measure
+ bool cadenza_b_;
+
/// current measure info
- Rational whole_per_measure;
+ Moment whole_per_measure;
/// where am i
- Rational whole_in_measure;
+ Moment whole_in_measure;
/// how long is one beat?
- Rational one_beat;
+ Moment one_beat;
/// idem
int bars;
+
/****************/
+ void set_cadenza(bool);
void OK() const;
- Time_description(Rational, const Time_description*);
+ Time_description(Moment, const Time_description*);
String str()const;
void print() const;
- void setpartial(Rational p);
- Rational barleft();
+ void setpartial(Moment p);
+ Moment barleft();
void set_meter(int,int);
static int compare (Time_description&, Time_description&);
};