summaryrefslogtreecommitdiff
path: root/sccol.hh
diff options
context:
space:
mode:
Diffstat (limited to 'sccol.hh')
-rw-r--r--sccol.hh46
1 files changed, 46 insertions, 0 deletions
diff --git a/sccol.hh b/sccol.hh
new file mode 100644
index 0000000000..9c22c277a1
--- /dev/null
+++ b/sccol.hh
@@ -0,0 +1,46 @@
+/*
+ sccol.hh -- part of LilyPond
+
+ (c) 1996 Han-Wen Nienhuys
+*/
+
+#ifndef SCCOL_HH
+#define SCCOL_HH
+#include "pcol.hh"
+#include "mtime.hh"
+
+
+struct Score_column {
+ PCol * pcol;
+ svec<Mtime> durations;
+ Mtime when;
+
+ ///
+ bool musical;
+
+
+ Score_column(Mtime when);
+
+ static int compare(Score_column & c1, Score_column &c2) {
+ return sgn(c1.when - c2.when);
+ }
+ void set_breakable() {
+ pcol->set_breakable();
+ }
+ bool used();
+ void print() const;
+};
+/**
+
+ When typesetting hasn't started on PScore yet, the columns which
+ contain data have a rhythmical position. Score_column is the type
+ with a rhythmical time attached to it. The calculation of
+ idealspacing is done with data in these columns. (notably: the
+ #durations# field)
+
+ */
+
+instantiate_compare(Score_column&, Score_column::compare);
+
+#endif // SCCOL_HH
+