]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.15
authorfred <fred>
Tue, 10 Dec 1996 14:22:35 +0000 (14:22 +0000)
committerfred <fred>
Tue, 10 Dec 1996 14:22:35 +0000 (14:22 +0000)
hdr/paper.hh
src/inputscore.cc
src/paper.cc
src/score.cc

index b2ba370b578ab497ab7aec64adf7b8a5e1856f7b..b03d1f76210abbacf90e9c1c184a261c7820ecb8 100644 (file)
@@ -6,6 +6,7 @@
 struct Paperdef {
     Lookup *lookup_;
     String outfile;
+
     Real linewidth;
 
     /// how much space does a whole note take (ideally?)
@@ -15,8 +16,9 @@ struct Paperdef {
     Real geometric_;
     
     /****************/
-    void parse();
-    Paperdef();
+    void reinit();
+    Paperdef(Lookup*);
+    void set(Lookup*);
     ~Paperdef();
     Real interline()const;
     Real internote()const;
index 89ec2bd4e9c47d9ef6094ec5b624d8d3b9ee9894..5043354f0c902955e78464cc389b15b556761503 100644 (file)
@@ -47,7 +47,7 @@ Input_score::~Input_score()
 
 Input_score::Input_score()
 {
-    paper_=new Paperdef;
+    paper_= 0;
 }
 
 void
index 5f31611f8e86fa404116e7bc07ee859c1e23a715..29fcd240e43598cc25efb5fdbb665163465e0edc 100644 (file)
@@ -1,15 +1,11 @@
 #include <math.h>
-
+#include "misc.hh"
 #include "paper.hh"
 #include "debug.hh"
 #include "lookup.hh"
 #include "dimen.hh"
 #include "textdb.hh"
 
-double log2(double x) {
-    return log(x)  /log(2.0);
-}
-
 
 // golden ratio
 const Real PHI = (1+sqrt(5))/2;
@@ -20,38 +16,33 @@ Paperdef::duration_to_dist(Real d)
 {
     return whole_width * pow(geometric_, log2(d));
 }
+
 Real
 Paperdef::rule_thickness()const
 {
     return convert_dimen(0.4, "pt");
 }
-Paperdef::Paperdef()
+
+Paperdef::Paperdef(Lookup *l)
 {
-    lookup_ = new Lookup();
-    parse();
+    lookup_ = l;
+
     linewidth = convert_dimen(15,"cm");                // in cm for now
-    whole_width= 8*note_width();
-//    geometric_ = PHI;
-        geometric_ = sqrt(2);
+    whole_width = 8 * note_width();
+    geometric_ = sqrt(2);
 }
 
-void 
-Paperdef::parse()
+Paperdef::~Paperdef()
 {
-    Text_db symini("symbol.ini");
-
-    
-    while (!symini.eof()) {    
-        Text_record  r(  symini++);
-       
-        if  (r[0] == "symboltables")
-            lookup_->parse(symini);     
-    }
+    delete lookup_;
 }
 
-Paperdef::~Paperdef()
+void
+Paperdef::set(Lookup*l)
 {
+    assert(l != lookup_);
     delete lookup_;
+    lookup_ = l;
 }
 
 Real
index 57336936b5c2f0ec40c2308e020ad42cd9be531c..2be27345d30d4b38eddf7dfe0d331e059b4e2455 100644 (file)
@@ -12,8 +12,7 @@ Score::process()
 {
     *mlog << "Processing ... ";
     
-    if (!paper_)
-       paper_ = new Paperdef;
+    assert (paper_);
     
     /// distribute commands to disciples
     pscore_ = new PScore(paper_);