X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fgrob-info.hh;h=8fa83120c7516e24ee9d5d8997bd42ace96014a7;hb=9e781b7dc83b60a543ce218aa1a5f139f74c760f;hp=e088d7216663c86c3332923d8c1e91cf45c815e5;hpb=0387f04497978e37b335a8b99eec905499d6ad0f;p=lilypond.git diff --git a/lily/include/grob-info.hh b/lily/include/grob-info.hh index e088d72166..8fa83120c7 100644 --- a/lily/include/grob-info.hh +++ b/lily/include/grob-info.hh @@ -1,9 +1,20 @@ /* - grob-info.hh -- declare Grob_info + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 1997--2014 Han-Wen Nienhuys - (c) 1997--2008 Han-Wen Nienhuys + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . */ #ifndef STAFFELEMINFO_HH @@ -21,7 +32,7 @@ class Grob_info Translator *origin_trans_; Grob *grob_; Direction start_end_; - + friend class Engraver; public: Direction start_end () const { return start_end_; } @@ -31,12 +42,21 @@ public: Context *context () const; Stream_event *event_cause () const; Stream_event *ultimate_event_cause () const; - vector origin_contexts (Translator *) const; + vector origin_contexts (Translator *) const; Grob_info (Translator *, Grob *); Grob_info (); Item *item () const; Spanner *spanner () const; + static bool less (Grob_info i, Grob_info j); + + /* + For contexts that change staves, it may be desirable to emit a + grob into a staff other than the current one. If this is non-null, + this grob should be announced in this context instead of the + daddy_context_. + */ + Context *rerouting_daddy_context_; }; #endif // STAFFELEMINFO_HH