+#include "staff-symbol.hh"
+#include "engraver-group-engraver.hh"
+#include "engraver.hh"
+#include "lily-guile.hh"
+#include "paper-column.hh"
+#include "paper-def.hh"
+
+#include "side-position-interface.hh"
+#include "staff-symbol-referencer.hh"
+#include "item.hh"
+#include "group-interface.hh"
+
+/**
+ put stuff over or next to bars. Examples: bar numbers, marginal notes,
+ rehearsal marks.
+ */
+class Mark_engraver : public Engraver
+{
+public:
+ VIRTUAL_COPY_CONS(Translator);
+ Mark_engraver ();
+protected:
+ Item* text_p_;
+
+protected:
+ virtual void do_pre_move_processing ();
+ virtual void acknowledge_element (Score_element_info);
+ void create_items(Request*);
+ virtual bool do_try_music (Music *req_l);
+ virtual void do_process_music ();
+ virtual void do_post_move_processing ();
+ virtual void do_creation_processing ();
+
+private:
+ Mark_req * mark_req_l_;
+};