]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/translator.hh
Run grand replace for 2015.
[lilypond.git] / lily / include / translator.hh
index 0b35812015005a8e8610ac414e0de7f3af4fbc0b..d342d3363cbcfb03c1159c1d57eb894f287a85d7 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1997--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 1997--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
   LilyPond is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -117,8 +117,14 @@ enum Translator_precompute_index
 /*
   Translate music into grobs.
 */
-class Translator
+class Translator : public Smob<Translator>
 {
+public:
+  int print_smob (SCM, scm_print_state *);
+  SCM mark_smob ();
+  static const char type_p_name_[];
+  virtual ~Translator ();
+private:
   void init ();
 
 public:
@@ -136,9 +142,8 @@ public:
   virtual void initialize ();
   virtual void finalize ();
 
-  /* should maybe be virtual */
-  void connect_to_context (Context *c);
-  void disconnect_from_context (Context *c);
+  virtual void connect_to_context (Context *c);
+  virtual void disconnect_from_context (Context *c);
 
   void stop_translation_timestep ();
   void start_translation_timestep ();
@@ -149,7 +154,6 @@ public:
   Global_context *get_global_context () const;
 
   TRANSLATOR_DECLARATIONS (Translator);
-  DECLARE_SMOBS (Translator);
 
 protected:                      // should be private.
   Context *daddy_context_;
@@ -173,7 +177,6 @@ void add_translator (Translator *trans);
 Translator *get_translator (SCM s);
 Moment get_event_length (Stream_event *s, Moment now);
 Moment get_event_length (Stream_event *s);
-DECLARE_UNSMOB (Translator, translator);
 
 /*
   This helper is only meaningful inside listen_* methods.