X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Frest-collision.hh;h=c2ae9cd1fd1e4c772ea60cb438cc108fba22a15c;hb=7181c77e5d46a271f5f76e99bee7f844611e23e4;hp=e500c2aa12f39f9e84e057c0ad94950083756656;hpb=01d84d552854fb399bd0e819502c6c2db2a1b214;p=lilypond.git diff --git a/lily/include/rest-collision.hh b/lily/include/rest-collision.hh index e500c2aa12..c2ae9cd1fd 100644 --- a/lily/include/rest-collision.hh +++ b/lily/include/rest-collision.hh @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 1997--1999 Han-Wen Nienhuys + (c) 1997--2000 Han-Wen Nienhuys */ @@ -11,15 +11,44 @@ #define REST_COLLISION_HH #include "lily-proto.hh" -#include "item.hh" +#include "lily-guile.hh" + + + +/* + Move rests in note-columns so that they do not collide. + + properties: + + read-only + + maximum-rest-count -- kill off rests so we don't more than this + number left. + + minimum-distance -- minimum distance between notes and rests. + + read/write + + elements -- list of elts (both rests and notes) participating in the + collision. + + + sets in elements: + + rest-collision -- pointer to self. -class Rest_collision : public Item { -public: - void add_column (Note_column*); - Interval rest_dim () const; - Rest_collision(); -protected: - virtual void do_pre_processing(); + + +*/ + +class Rest_collision // interface +{ +public: + static void add_column (Score_element*me,Score_element*); + static void set_interface (Score_element*me); + static bool has_interface (Score_element*); + static Real force_shift_callback (Score_element *, Axis); + static SCM do_shift (Score_element*,SCM); }; #endif // REST_COLLISION_HH