/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 2006--2010 Han-Wen Nienhuys <hanwen@lilypond.org>
+ Copyright (C) 2006--2015 Han-Wen Nienhuys <hanwen@lilypond.org>
LilyPond is free software: you can redistribute it and/or modify
#include "engraver.hh"
#include "item.hh"
#include "text-interface.hh"
-#include "translator.icc"
+#include "translator.icc"
class Instrument_switch_engraver : public Engraver
{
void stop_translation_time_step ();
void process_music ();
+
+ virtual void derived_mark () const;
};
+void
+Instrument_switch_engraver::derived_mark () const
+{
+ scm_gc_mark (cue_name_);
+}
Instrument_switch_engraver::Instrument_switch_engraver ()
{
Instrument_switch_engraver::process_music ()
{
SCM cue_text = get_property ("instrumentCueName");
-
+
if (!scm_is_eq (cue_name_, cue_text))
{
if (Text_interface::is_markup (cue_text))
text_ = 0;
}
+void
+Instrument_switch_engraver::boot ()
+{
+
+}
+
ADD_TRANSLATOR (Instrument_switch_engraver,
- /* doc */
- "Create a cue text for taking instrument.",
-
- /* create */
- "InstrumentSwitch ",
-
- /* read */
- "instrumentCueName ",
-
- /* write */
- ""
- );
+ /* doc */
+ "Create a cue text for taking instrument.",
+
+ /* create */
+ "InstrumentSwitch ",
+
+ /* read */
+ "instrumentCueName ",
+
+ /* write */
+ ""
+ );