]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/translator.hh
2003 -> 2004
[lilypond.git] / lily / include / translator.hh
index eaafa53145a53a04159f04fc05cff7bc80a37968..16a77c6beefbb33829fec7c90d0cf478d000bd00 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--2003 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 
@@ -37,11 +37,8 @@ class Translator
   void init ();
 public:
   Music_output_def * output_def_;
-  String type_string_;
   
-  bool is_alias_b (String) const;
-    
-
+  bool is_alias (SCM) const;
   Translator (Translator const &);
 
   
@@ -57,14 +54,25 @@ public:
   virtual Moment now_mom () const;  
 
   /*
-    ugh: bubbled up from Translator_group. 
+    ugh: bubbled up.
    */
-  SCM simple_trans_list_;
-  SCM trans_group_list_;
   SCM definition_;
-  
   SCM properties_scm_;
+  SCM trans_group_list_;
+  SCM accepts_list_;
+  virtual SCM get_simple_trans_list ();
+public:
   DECLARE_SMOBS (Translator, dummy);
+private:
+  /*
+    ugh: bubbled up from Translator_group. 
+   */
+
+protected:                     // should be private.
+  SCM simple_trans_list_;
+  friend class Context_def;
+  // ugir.
+  //   friend SCM Translator_group::get_simple_trans_list ();
 
 
 public:
@@ -88,7 +96,6 @@ static void  _ ## T ## _adder () {\
       T *t = new T;\
       T::static_description_ = t->static_translator_description ();\
       scm_permanent_object (T::static_description_);\
-      t->type_string_ = classname (t);\
       add_translator (t);\
 }\
 SCM T::translator_description() const\
@@ -133,6 +140,6 @@ classname::static_translator_description () const \
 
 void add_translator (Translator*trans);
 
-Translator*get_translator (String s);
+Translator*get_translator (SCM s);
 DECLARE_UNSMOB(Translator,translator);
 #endif // TRANSLATOR_HH