2 thread-devnull-engraver.cc -- implement Thread_devnull_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 2000--2001 Jan Nieuwenhuizen <janneke@gnu.org>
11 #include "musical-request.hh"
12 #include "translator-group.hh"
14 class Thread_devnull_engraver
: public Engraver
17 VIRTUAL_COPY_CONS (Translator
);
20 virtual void acknowledge_grob (Grob_info
);
23 ADD_THIS_TRANSLATOR (Thread_devnull_engraver
);
26 Thread_devnull_engraver::acknowledge_grob (Grob_info i
)
28 SCM s
= get_property ("devNullThread");
30 /* No need, next if will never be true */
31 if (s
== ly_symbol2scm ("never"))
35 if (s
== ly_symbol2scm ("allways")
37 && daddy_trans_l_
->id_str_
.left_str (3) == "two"
38 && (to_boolean (get_property ("unison"))
39 || to_boolean (get_property ("unisilence")))
40 && to_boolean (get_property ("soloADue"))))
42 /* Ugh, we can suicide them, but they remain living */
43 i
.elem_l_
->suicide ();