X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fdispatcher.hh;h=f0eb30ba6dc41d8d8ad392e362d6ec480a7fa49d;hb=c4e2aaeeb8a936aeadaf423cd2a292e2f51ecc8a;hp=f4fe9156bcde77d5fe72a58029c6db17dc052468;hpb=7f309e69558db5225b92ae003c0818c68988013d;p=lilypond.git diff --git a/lily/include/dispatcher.hh b/lily/include/dispatcher.hh index f4fe9156bc..f0eb30ba6d 100644 --- a/lily/include/dispatcher.hh +++ b/lily/include/dispatcher.hh @@ -27,8 +27,8 @@ class Dispatcher : public Smob { public: - int print_smob (SCM, scm_print_state *); - SCM mark_smob (); + int print_smob (SCM, scm_print_state *) const; + SCM mark_smob () const; static const char type_p_name_[]; virtual ~Dispatcher (); private: @@ -38,17 +38,18 @@ private: (dist . priority) pair. */ SCM dispatchers_; SCM listen_classes_; - DECLARE_LISTENER (dispatch); + void dispatch (SCM); /* priority counter. Listeners with low priority receive events first. */ int priority_count_; - void internal_add_listener (Listener, SCM event_class, int priority); + void internal_add_listener (SCM callback, SCM event_class, int priority); public: Dispatcher (); void broadcast (Stream_event *ev); bool is_listened_class (SCM); SCM listened_types (); void add_listener (Listener, SCM event_class); + void add_listener (SCM callback, SCM event_class); void remove_listener (Listener, SCM event_class); void register_as_listener (Dispatcher *dist); void unregister_as_listener (Dispatcher *dist);