+/****************/
+
+class System_start_delimiter_engraver : public Engraver
+{
+public:
+ TRANSLATOR_DECLARATIONS (System_start_delimiter_engraver);
+
+protected:
+ Bracket_nesting_group *nesting_;
+
+ DECLARE_ACKNOWLEDGER (system_start_delimiter);
+ DECLARE_ACKNOWLEDGER (system_start_text);
+ DECLARE_ACKNOWLEDGER (staff_symbol);
+
+ void process_music ();
+ virtual void finalize ();
+};
+
+System_start_delimiter_engraver::System_start_delimiter_engraver ()
+{
+ nesting_ = 0;
+}
+
+void
+System_start_delimiter_engraver::process_music ()
+{
+ if (!nesting_)
+ {
+ nesting_ = new Bracket_nesting_group ();
+ SCM hierarchy = get_property ("systemStartDelimiterHierarchy");
+ SCM delimiter_name = get_property ("systemStartDelimiter");
+
+ nesting_->from_list (hierarchy);
+ nesting_->create_grobs (this, delimiter_name);
+ nesting_->set_bound (LEFT, unsmob_grob (get_property ("currentCommandColumn")));
+ }