]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/global-translator.hh
patch::: 1.3.85.jcn5
[lilypond.git] / lily / include / global-translator.hh
index 0c14172095a725ad52cd306dbb1661c15ce15763..ebcb6b34e9f582066137192beec99e64cf267aa7 100644 (file)
@@ -3,36 +3,43 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 
 #ifndef GLOBAL_TRANSLATOR_HH
 #define GLOBAL_TRANSLATOR_HH
 
-#include "translator.hh"
+#include "translator-group.hh"
+#include "moment.hh"
 #include "pqueue.hh"
 
-class Global_translator : public virtual Translator {
-    PQueue<Moment> extra_mom_pq_;
-    Moment last_mom_;
+
+class Global_translator : public virtual Translator_group{
+  PQueue<Moment> extra_mom_pq_;
 public:
-    Score *score_l_;
-    Global_translator();
-    int moments_left_i()const;
-    void modify_next(Moment&);
-    void add_moment_to_process(Moment);
-
-    virtual void set_score(Score*);
-    virtual void prepare(Moment);
-    virtual void process() {}
-    virtual void finish() {}
-    virtual void start() {}
-    
+  VIRTUAL_COPY_CONS(Translator);
+  Moment final_mom_;
+  Moment prev_mom_;
+  Moment now_mom_;
+  Global_translator();
+
+  int moments_left_i() const;
+  void modify_next (Moment&);
+  void add_moment_to_process (Moment);
+  void run_iterator_on_me (Music_iterator*);
+  
+  virtual Music_output *get_output_p ();     
+  virtual void prepare (Moment);
+  virtual void process();
+  virtual void finish();
+  virtual void start();
+
+  virtual Moment now_mom () const;
+
+  
 protected:
-    virtual Global_translator *global_l() { return this; }
-    virtual int depth_i() const;
-    virtual Translator *ancestor_l(int);
+
 };