]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.4
authorfred <fred>
Mon, 21 Oct 1996 21:25:40 +0000 (21:25 +0000)
committerfred <fred>
Mon, 21 Oct 1996 21:25:40 +0000 (21:25 +0000)
symbol.cc
symbol.hh

index 66771dc90aaf4c43ffe751d9ad54c7bda6110566..d67049cefa89f51cb6680c6130c12a62a8e62ea3 100644 (file)
--- a/symbol.cc
+++ b/symbol.cc
@@ -1,11 +1,35 @@
 #include "symbol.hh"
+
 Symbol::Symbol()
     :    dim(Interval(0,0),Interval(0,0))
 {
-    tex = "\\unknown";        
+    tex = "\\unknown";
 }
 Symbol::Symbol(String s, Box b)
-    : tex(s), dim(b)
+    :  dim(b)
+{
+    tex = s;
+}
+
+/****************************************************************/
+
+Symbol
+Parametric_symbol::eval(String args1)const
 {
+    svec<String> a;
+    a.add(args1);
+    return eval(a);
 }
 
+Symbol
+Parametric_symbol::eval(String args1,String arg2)const
+{
+    svec<String> a;
+    a.add(args1);
+    a.add(arg2);
+    return eval(a);
+}
+
+Parametric_symbol::~Parametric_symbol()
+{
+}
index 464a4237428c8fd87c73e9fe789e9c4cc70e9c14..6d6ed1acbe6304d0762bdbba4c18c2911248632d 100644 (file)
--- a/symbol.hh
+++ b/symbol.hh
@@ -2,25 +2,21 @@
 #define SYMBOL_HH
 #include "string.hh"
 #include "boxes.hh"
+
 struct Symbol {
     String tex;
     Box dim;
 
-    Symbol (String, Box );
-    static const Symbol*find_ball(int);
-    static const Symbol*find_rest(int);
-    static const Symbol*find_bar(String);
-    Symbol() ;
+    Symbol (String, Box);
+    Symbol();
 };
 
-/// a symbol with a variable width
-struct Stretchable_symbol {
-public:
-
-    /// return a string for a symbol in this width.
-    virtual String operator ()(Real width)=0;
-    virtual Interval height(Real width) const =0;
-    static const Stretchable_symbol* get_linestaff(int n);
+struct Parametric_symbol {    
+    
+    Symbol eval(String args1) const; // convenience
+    Symbol eval(String args1,String arg2) const; // convenience
+    virtual Symbol eval(svec<String> args)const =0;
+    virtual ~Parametric_symbol();    
 };
 
 #endif