PRECOMPUTED_VIRTUAL everywhere.
* lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
* lily/context.cc (now_mom): non-recursive now_mom()
* lily/grob.cc (Grob): look properties up directly.
2005-07-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ * lily/include/translator.hh (class Translator): remove
+ PRECOMPUTED_VIRTUAL everywhere.
+
+ * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
+
+ * lily/context.cc (now_mom): non-recursive now_mom()
+
* lily/include/profile.hh: new file.
* lily/profile.cc: new file.
protected:
TRANSLATOR_DECLARATIONS (Accidental_engraver);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
void acknowledge_tie (Grob_info);
void acknowledge_arpeggio (Grob_info);
void acknowledge_rhythmic_head (Grob_info);
void acknowledge_finger (Grob_info);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void initialize ();
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
+ void process_acknowledged ();
virtual void finalize ();
virtual void derived_mark () const;
{
public:
TRANSLATOR_DECLARATIONS (Ambitus_engraver);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
void acknowledge_note_head (Grob_info);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void finalize ();
virtual void derived_mark () const;
void acknowledge_rhythmic_head (Grob_info);
void acknowledge_note_column (Grob_info);
protected:
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *);
private:
Item *arpeggio_;
TRANSLATOR_DECLARATIONS (Auto_beam_engraver);
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
+ void process_music ();
virtual bool try_music (Music *);
virtual void finalize ();
DECLARE_ACKNOWLEDGER(bar_line);
DECLARE_ACKNOWLEDGER(stem);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
+ void process_acknowledged ();
private:
bool test_moment (Direction, Moment);
protected:
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
+ void stop_translation_timestep ();
+ void process_acknowledged ();
private:
void typeset_bar ();
protected:
Item *text_;
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
DECLARE_ACKNOWLEDGER(break_aligned);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
void create_items ();
TRANSLATOR_DECLARATIONS (Bar_number_engraver);
};
void set_melisma (bool);
Moment last_stem_added_at_;
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
virtual void finalize ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual bool valid_start_point ();
virtual bool valid_end_point ();
protected:
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void start_translation_timestep ();
+ void process_music ();
void set_melisma (bool);
private:
Music *start_ev_;
void add_to_group (SCM, Item *);
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void derived_mark () const;
public:
TRANSLATOR_DECLARATIONS (Break_align_engraver);
protected:
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
private:
Music *breathing_sign_event_;
{
TRANSLATOR_DECLARATIONS (Chord_name_engraver);
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
virtual bool try_music (Music *);
virtual void finalize ();
virtual void derived_mark () const;
protected:
virtual void finalize ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(stem);
};
Direction octave_dir_;
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(bar_line);
private:
Item *clef_;
protected:
TRANSLATOR_DECLARATIONS (Cluster_spanner_engraver);
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(note_column);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void finalize ();
private:
Link_array<Music> cluster_notes_;
protected:
DECLARE_ACKNOWLEDGER(note_column);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
public:
TRANSLATOR_DECLARATIONS (Collision_engraver);
};
protected:
virtual void initialize ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void start_translation_timestep ();
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
};
void
Moment
Context::now_mom () const
{
- return daddy_context_->now_mom ();
+ Context const *p = this;
+ while (p->daddy_context_)
+ {
+ p = p->daddy_context_;
+ }
+
+ return p->now_mom ();
}
int
{
public:
TRANSLATOR_DECLARATIONS (Custos_engraver);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void start_translation_timestep ();
DECLARE_ACKNOWLEDGER(bar);
DECLARE_ACKNOWLEDGER(note_head);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
virtual void finalize ();
private:
DECLARE_ACKNOWLEDGER(stem);
DECLARE_ACKNOWLEDGER(rhythmic_head);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
Dot_column_engraver::Dot_column_engraver ()
protected:
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(stem);
DECLARE_ACKNOWLEDGER(note_column);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
Drum_notes_engraver::Drum_notes_engraver ()
protected:
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void create_audio_elements ();
private:
protected:
virtual void finalize ();
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
};
Dynamic_engraver::Dynamic_engraver ()
TRANSLATOR_DECLARATIONS (Dynamic_performer);
protected:
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void create_audio_elements ();
private:
DECLARE_ACKNOWLEDGER(lyric_syllable);
virtual void finalize ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
};
Extender_engraver::Extender_engraver ()
Grob *figure_;
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
};
Figured_bass_engraver::Figured_bass_engraver ()
TRANSLATOR_DECLARATIONS (Fingering_engraver);
protected:
virtual bool try_music (Music *m);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(rhythmic_head);
DECLARE_ACKNOWLEDGER(stem);
{
public:
TRANSLATOR_DECLARATIONS (Forbid_line_break_engraver);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void start_translation_timestep ();
};
Forbid_line_break_engraver::Forbid_line_break_engraver ()
protected:
DECLARE_ACKNOWLEDGER(rhythmic_head);
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
private:
Spanner *line_;
Spanner *last_line_;
{
void consider_change_grace_settings ();
protected:
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void start_translation_timestep ();
virtual void derived_mark () const;
virtual void initialize ();
TRANSLATOR_DECLARATIONS (Grid_line_span_engraver);
protected:
DECLARE_ACKNOWLEDGER(grid_point);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
Grid_line_span_engraver::Grid_line_span_engraver ()
public:
TRANSLATOR_DECLARATIONS (Grid_point_engraver);
protected:
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
};
void
protected:
virtual void initialize ();
DECLARE_ACKNOWLEDGER(grob);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void start_translation_timestep ();
+ void stop_translation_timestep ();
Array<Grob_pq_entry> started_now_;
};
ext = ly_scm2interval (d->dimension_);
- SCM extra = get_property (a == X_AXIS
- ? "extra-X-extent"
- : "extra-Y-extent");
+ SCM extra = (a == X_AXIS)
+ ? get_property ("extra-X-extent")
+ : get_property ("extra-Y-extent");
/* Signs ? */
if (scm_is_pair (extra))
ext[SMALLER] += scm_to_double (scm_car (extra));
}
- extra = get_property (a == X_AXIS
- ? "minimum-X-extent"
- : "minimum-Y-extent");
+ extra = (a == X_AXIS)
+ ? get_property ("minimum-X-extent")
+ : get_property ("minimum-Y-extent");
+
if (scm_is_pair (extra))
ext.unite (Interval (scm_to_double (scm_car (extra)),
scm_to_double (scm_cdr (extra))));
virtual Spanner *get_spanner ();
DECLARE_ACKNOWLEDGER(grob);
virtual void add_element (Grob *e);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void start_translation_timestep ();
SCM interesting_;
public:
int push_count_;
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(note_column);
};
DECLARE_ACKNOWLEDGER(lyric_syllable);
virtual void finalize ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
private:
};
protected:
Spanner *staffline_;
Link_array<Grob> elts_;
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual void finalize ();
DECLARE_ACKNOWLEDGER(grob);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
+ void process_acknowledged ();
virtual Spanner *get_spanner ();
virtual void add_element (Grob *);
public:
VIRTUAL_COPY_CONSTRUCTOR ( Translator_group, Engraver_group_engraver);
Engraver_group_engraver ();
virtual void derived_mark () const;
- PRECOMPUTED_VIRTUAL void do_announces ();
+ void do_announces ();
virtual void announce_grob (Grob_info);
int pending_grob_count () const;
private:
virtual void build_ligature (Spanner *ligature, Array<Grob_info> primitives);
virtual void transform_heads (Spanner *ligature,
Array<Grob_info> primitives); /* abstract method */
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
#endif // GREGORIAN_LIGATURE_ENGRAVER_HH
class Ligature_engraver : public Engraver
{
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void finalize ();
DECLARE_ACKNOWLEDGER(rest);
DECLARE_ACKNOWLEDGER(note_head);
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual Spanner *create_ligature_spanner (); /* abstract method */
virtual void typeset_ligature (Spanner *ligature,
Array<Grob_info> primitives); /* abstract method */
typedef SCM (*Scheme_function_2) (...);
typedef SCM (*Scheme_function_3) (...);
#endif
+
+
+#define scm_cdr ly_cdr
+#define scm_car ly_car
+#define scm_is_pair ly_is_pair
+
+inline SCM ly_car (SCM x) { return SCM_CAR (x); }
+inline SCM ly_cdr (SCM x) { return SCM_CDR (x); }
+inline bool ly_is_pair (SCM x) { return SCM_I_CONSP (x); }
+
+
+
+
#endif /* LILY_GUILE_HH */
public:
VIRTUAL_COPY_CONSTRUCTOR (Translator_group,Performer_group_performer);
- PRECOMPUTED_VIRTUAL void do_announces ();
+ void do_announces ();
virtual void announce_element (Audio_element_info);
virtual void play_element (Audio_element *p);
virtual int get_tempo () const;
virtual void initialize ();
virtual void finalize ();
virtual void announce_grob (Grob_info);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
/*
Translator interface
virtual void start_spanner ();
virtual void stop_spanner ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *);
virtual ~Staff_symbol_engraver ();
DECLARE_ACKNOWLEDGER(grob);
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
};
#endif /* STAFF_SYMBOL_ENGRAVER_HH */
protected:
virtual void initialize ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
public:
Rational measure_length () const;
virtual void initialize ();
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
virtual void fetch_precomputable_methods (Translator_group_void_method[]);
TRANSLATOR_METHOD_PRECOMPUTE_COUNT,
};
-/* nothing */
-#define PRECOMPUTED_VIRTUAL
-
-
/*
Translate music into grobs.
*/
virtual void initialize ();
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
+ void process_music ();
+ void process_acknowledged ();
Score_context *get_score_context () const;
Global_context *get_global_context () const;
DECLARE_ACKNOWLEDGER(bar_line);
DECLARE_ACKNOWLEDGER(axis_group);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
};
virtual void initialize ();
virtual void finalize ();
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(clef);
DECLARE_ACKNOWLEDGER(bar_line);
protected:
virtual bool try_music (Music *ev);
virtual void create_audio_elements ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
private:
Music *key_ev_;
protected:
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
DECLARE_ACKNOWLEDGER(ledgered);
DECLARE_ACKNOWLEDGER(staff_symbol);
class Lyric_engraver : public Engraver
{
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
public:
TRANSLATOR_DECLARATIONS (Lyric_engraver);
protected:
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void create_audio_elements ();
private:
protected:
Item *text_;
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
DECLARE_ACKNOWLEDGER(bar_line);
void create_items (Music *);
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
private:
Music *mark_ev_;
Spanner *grouping_;
Rational stop_grouping_mom_;
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual void finalize ();
DECLARE_ACKNOWLEDGER(note_column);
};
TRANSLATOR_DECLARATIONS (Melisma_translator);
protected:
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void process_music ();
+ void start_translation_timestep ();
Music *event_;
};
void create_items (Music *);
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
};
Metronome_mark_engraver::Metronome_mark_engraver ()
protected:
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
virtual void finalize ();
private:
public:
TRANSLATOR_DECLARATIONS (New_fingering_engraver);
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
DECLARE_ACKNOWLEDGER(rhythmic_head);
DECLARE_ACKNOWLEDGER(stem);
void add_fingering (Grob *, Music *, Music *);
protected:
DECLARE_ACKNOWLEDGER(rhythmic_head);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
private:
Spanner *line_;
protected:
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
};
Note_heads_engraver::Note_heads_engraver ()
Link_array<Music> events_;
Link_array<Item> texts_;
virtual bool try_music (Music *m);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
};
bool
protected:
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void create_audio_elements ();
private:
DECLARE_ACKNOWLEDGER(note_column);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
virtual void derived_mark () const;
private:
Spanner *span_;
Link_array<Music> props_;
DECLARE_ACKNOWLEDGER(grob)
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual bool try_music (Music*);
};
DECLARE_ACKNOWLEDGER(note_head);
DECLARE_ACKNOWLEDGER(stem);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *);
private:
Item *text_;
protected:
virtual void finalize ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
+ void process_music ();
};
Percent_repeat_engraver::Percent_repeat_engraver ()
DECLARE_ACKNOWLEDGER(text_script);
DECLARE_ACKNOWLEDGER(slur);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
public:
TRANSLATOR_DECLARATIONS (Phrasing_slur_engraver);
virtual void initialize ();
virtual void finalize ();
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
DECLARE_ACKNOWLEDGER(note_column);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
private:
virtual void initialize ();
virtual bool try_music (Music *);
virtual void create_audio_elements ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
private:
Link_array<Audio_piano_pedal> audios_;
DECLARE_ACKNOWLEDGER( note_head);
DECLARE_ACKNOWLEDGER( dots);
DECLARE_ACKNOWLEDGER( text_spanner);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual bool try_music (Music*);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
private:
Item *trill_head_;
Item *trill_group_;
TRANSLATOR_DECLARATIONS (Repeat_acknowledge_engraver);
protected:
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void start_translation_timestep ();
+ void process_music ();
virtual void initialize ();
};
Link_array<Grob> note_columns_;
protected:
DECLARE_ACKNOWLEDGER(note_column);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
public:
TRANSLATOR_DECLARATIONS (Rest_collision_engraver);
};
Grob *rest_;
protected:
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void start_translation_timestep ();
+ void process_music ();
public:
TRANSLATOR_DECLARATIONS (Rest_engraver);
DECLARE_ACKNOWLEDGER(dot_column);
DECLARE_ACKNOWLEDGER(stem);
DECLARE_ACKNOWLEDGER(rhythmic_head);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
};
Rhythmic_column_engraver::Rhythmic_column_engraver ()
TRANSLATOR_DECLARATIONS (Script_column_engraver);
protected:
DECLARE_ACKNOWLEDGER(side_position);
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
};
Script_column_engraver::Script_column_engraver ()
protected:
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
DECLARE_ACKNOWLEDGER( slur);
DECLARE_ACKNOWLEDGER( rhythmic_head);
Spanner *sep_span_;
DECLARE_ACKNOWLEDGER(item);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
public:
TRANSLATOR_DECLARATIONS (Separating_line_group_engraver);
};
Item *double_percent_;
protected:
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void start_translation_timestep ();
+ void process_music ();
};
Slash_repeat_engraver::Slash_repeat_engraver ()
DECLARE_ACKNOWLEDGER(tie);
DECLARE_ACKNOWLEDGER(text_script);
void acknowledge_extra_object (Grob_info);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void finalize ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
public:
TRANSLATOR_DECLARATIONS (Slur_engraver);
protected:
virtual bool try_music (Music *ev);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void start_translation_timestep ();
+ void process_music ();
void set_melisma (bool);
private:
Music *start_ev_;
DECLARE_ACKNOWLEDGER(staff_spacing);
DECLARE_ACKNOWLEDGER(note_spacing);
DECLARE_ACKNOWLEDGER(rhythmic_head);
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void process_music ();
virtual void finalize ();
};
DECLARE_ACKNOWLEDGER(arpeggio);
protected:
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_acknowledged ();
+ void stop_translation_timestep ();
private:
Item *span_arpeggio_;
TRANSLATOR_DECLARATIONS (Span_bar_engraver);
protected:
DECLARE_ACKNOWLEDGER(bar_line);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
Span_bar_engraver::Span_bar_engraver ()
protected:
virtual bool try_music (Music *);
virtual void acknowledge_audio_element (Audio_element_info);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
private:
Audio_dynamic *audio_;
virtual void finalize ();
virtual void initialize ();
virtual void create_audio_elements ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
private:
Audio_staff *audio_staff_;
DECLARE_ACKNOWLEDGER(lyric_syllable);
DECLARE_ACKNOWLEDGER(stanza_number);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
Stanza_number_align_engraver::Stanza_number_align_engraver ()
SCM last_stanza_;
public:
TRANSLATOR_DECLARATIONS (Stanza_number_engraver);
- PRECOMPUTED_VIRTUAL void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void process_music ();
+ void stop_translation_timestep ();
DECLARE_ACKNOWLEDGER(lyric_syllable);
};
void make_stem (Grob_info);
DECLARE_ACKNOWLEDGER(rhythmic_head);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual bool try_music (Music *);
};
DECLARE_ACKNOWLEDGER(system_start_delimiter);
DECLARE_ACKNOWLEDGER(staff_symbol);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
virtual void finalize ();
};
protected:
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
};
Tab_note_heads_engraver::Tab_note_heads_engraver ()
protected:
virtual bool try_music (Music *event);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void create_audio_elements ();
private:
TRANSLATOR_DECLARATIONS (Text_engraver);
protected:
virtual bool try_music (Music *m);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_acknowledged ();
+ void stop_translation_timestep ();
+ void process_acknowledged ();
DECLARE_ACKNOWLEDGER(stem);
DECLARE_ACKNOWLEDGER(rhythmic_head);
virtual void finalize ();
DECLARE_ACKNOWLEDGER(note_column);
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
private:
Spanner *span_;
Spanner *tie_column_;
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void derived_mark () const;
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void start_translation_timestep ();
DECLARE_ACKNOWLEDGER(note_head);
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
void typeset_tie (Grob *);
public:
TRANSLATOR_DECLARATIONS (Tie_engraver);
bool ties_created_;
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void start_translation_timestep ();
+ void stop_translation_timestep ();
+ void start_translation_timestep ();
virtual void acknowledge_audio_element (Audio_element_info);
virtual bool try_music (Music *);
- PRECOMPUTED_VIRTUAL void process_music ();
+ void process_music ();
public:
TRANSLATOR_DECLARATIONS (Tie_performer);
};
SCM last_time_fraction_;
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
- PRECOMPUTED_VIRTUAL void process_music ();
+ void stop_translation_timestep ();
+ void process_music ();
public:
TRANSLATOR_DECLARATIONS (Time_signature_engraver);
};
protected:
- PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
+ void stop_translation_timestep ();
virtual void create_audio_elements ();
virtual void derived_mark () const;
SCM prev_fraction_;
void
Engraver_dispatch_list::apply (Grob_info gi)
{
+ Translator *origin = gi.origin_translator ();
for (int i = 0; i < dispatch_entries_.size (); i++)
{
Engraver_dispatch_entry const &e (dispatch_entries_[i]);
- if (e.engraver_ == gi.origin_translator ())
+ if (e.engraver_ == origin)
continue;
(*e.function_) (e.engraver_, gi);