]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.13
authorfred <fred>
Sun, 1 Dec 1996 21:08:37 +0000 (21:08 +0000)
committerfred <fred>
Sun, 1 Dec 1996 21:08:37 +0000 (21:08 +0000)
README
Sources.make
hdr/inputcommands.hh [new file with mode: 0644]

diff --git a/README b/README
index d60b5b8ca4877fa7e05470ae9df6442252658af4..757ed1d17351d5bd3e1ca5655425b887efc1704e 100644 (file)
--- a/README
+++ b/README
@@ -13,8 +13,10 @@ LilyPond is updated very frequently, the latest version is always available at:
 
 PREREQUISITES
 
-TeX, the MusixTeX fonts, g++ > v2.7. The "flower" library, which should be
-available from the same source you got this from.
+TeX, the MusixTeX fonts, g++ > v2.7. The "flower" library, which
+should be available from the same source you got this from. The
+Makefile uses perl for trivial operation, but you could tinker with it
+to use sed or awk.
 
 COMPILING
 
@@ -70,7 +72,7 @@ stacktrace of the crash.
 HOW DOES IT WORK
 
 * Use The Source, Luke. If you don't know C++, you can try editing
-.dstreamrc for copious debugging output.
+.dstreamrc for copious debugging output. (use -d)
 
 * the subdir Documentation/ contains some in depth matter on LilyPond
 algorithms
index c4d585bc6a917c9fc394175b8d8a9c9a60975d09..1dcc72a3c730a79fef45329f45ad359f3e1caf44 100644 (file)
@@ -9,12 +9,13 @@ hdr=    qlp.hh linespace.hh qlpsolve.hh\
        parseconstruct.hh  debug.hh globvars.hh keyword.hh\
        misc.hh score.hh notename.hh lexer.hh symtable.hh\
        symbol.hh main.hh dimen.hh paper.hh lookup.hh\
-       sccol.hh stcol.hh scommands.hh melodicstaff.hh\
+       sccol.hh stcol.hh staffcommands.hh melodicstaff.hh\
        identifier.hh simplestaff.hh spanner.hh stem.hh\
        notehead.hh leastsquares.hh beam.hh rest.hh\
        swalker.hh bar.hh meter.hh accidental.hh\
        key.hh keyitem.hh localkeyitem.hh simplewalker.hh\
-       clef.hh clefitem.hh slur.hh
+       clef.hh clefitem.hh slur.hh inputcommands.hh\
+       getcommand.hh inputmusic.hh
 
 mycc=   qlp.cc qlpsolve.cc \
        break.cc linespace.cc molecule.cc staffline.cc\
@@ -25,7 +26,7 @@ mycc=   qlp.cc qlpsolve.cc \
        warn.cc debug.cc symtable.cc boxes.cc\
        pstaff.cc  tstream.cc\
        calcideal.cc scores.cc identifier.cc \
-       dimen.cc paper.cc lookup.cc scommands.cc\
+       dimen.cc paper.cc lookup.cc staffcommands.cc\
        sccol.cc stcol.cc getcommands.cc simplestaff.cc\
        melodicstaff.cc simpleprint.cc stem.cc\
        spanner.cc notehead.cc leastsquares.cc beam.cc\
@@ -33,5 +34,10 @@ mycc=   qlp.cc qlpsolve.cc \
        simplewalker.cc bar.cc meter.cc accidental.cc\
        key.cc keyitem.cc localkeyitem.cc\
        clef.cc clefitem.cc texslur.cc slur.cc\
+       inputcommands.cc inputmusic.cc\
+       inputcursor.cc\
        template1.cc template2.cc template3.cc template4.cc\
        version.cc
+
+
+
diff --git a/hdr/inputcommands.hh b/hdr/inputcommands.hh
new file mode 100644 (file)
index 0000000..8222f9b
--- /dev/null
@@ -0,0 +1,64 @@
+/*
+  inputcommands.hh -- part of LilyPond
+
+  (c) 1996 Han-Wen Nienhuys
+*/
+
+#ifndef INPUTCOMMANDS_HH
+#define INPUTCOMMANDS_HH
+#include "pcursor.hh"
+#include "proto.hh"
+#include "plist.hh"
+#include "real.hh"
+
+struct Input_cursor : public PCursor<Command*>
+{
+    /// current measure info
+    Real whole_per_measure;
+
+    /// where am i 
+    Real whole_in_measure;
+
+    /// Real last when which was read
+    Real last;
+    
+    int bars;
+    
+    Input_cursor(PCursor<Command*>);
+    /// hmm. not safe. Should rethink cursor.
+    void operator++(int);
+    /** warning: no optor -- () defined.. */
+    void reset();
+    Real when()const;
+    void add(Command*);
+    void setpartial(Real);
+    void addbot(Command*);
+    void sync();
+    void print()const;   
+    void last_command_here();
+};
+
+/// the list of commands in Score
+struct Input_commands : public IPointerList<Command*> {
+    Input_cursor ptr;
+
+    /****************/
+
+    void find_moment(Real);
+    void do_skip(int & bars, Real & wholes);
+    void truncate(Real);
+    
+    Input_commands();
+    Input_commands(Input_commands const&);
+    void add(Command*);
+    void reset();
+    void print()const;
+    Staff_commands *parse() const;
+};
+
+
+void
+interpret_meter(Command *c, int &beats_per_meas, int& one_beat,
+               Real& whole_per_measure);
+#endif // INPUTCOMMANDS_HH
+