X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fpointer-group-interface.hh;h=84967180fe07e0ce02f08f7769abe6404e54a1fd;hb=b7a0cffbf9d1069860368f289a5b50e9d1d90ba8;hp=7ec2d625133c1a1e2fbcdad1c9596db9d32ab03b;hpb=9d4a5bbc9687aef811a60aabd9cb839412984e96;p=lilypond.git diff --git a/lily/include/pointer-group-interface.hh b/lily/include/pointer-group-interface.hh index 7ec2d62513..84967180fe 100644 --- a/lily/include/pointer-group-interface.hh +++ b/lily/include/pointer-group-interface.hh @@ -1,9 +1,20 @@ /* - pointer-group-interface.hh -- declare Pointer_group_interface + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2005--2009 Han-Wen Nienhuys - (c) 2005--2006 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 POINTER_GROUP_INTERFACE_HH @@ -19,10 +30,14 @@ public: static int count (Grob *, SCM); static void add_grob (Grob *, SCM nm, Grob *e); static void add_grob (Grob *, SCM nm, SCM x); + static void add_unordered_grob (Grob *, SCM nm, Grob *); + static void set_ordered (Grob *, SCM, bool); + static Grob_array *get_grob_array (Grob*, SCM); + static Grob *find_grob (Grob*, SCM, bool (*pred) (Grob*)); }; -Link_array__Grob_ const &internal_extract_grob_array (Grob const *elt, SCM symbol); -Link_array__Item_ internal_extract_item_array (Grob const *elt, SCM symbol); +vector const &internal_extract_grob_array (Grob const *elt, SCM symbol); +vector internal_extract_item_array (Grob const *elt, SCM symbol); #define extract_grob_array(x, prop) internal_extract_grob_array (x, ly_symbol2scm (prop)) #define extract_item_array(x, prop) internal_extract_item_array (x, ly_symbol2scm (prop)) @@ -32,9 +47,9 @@ Link_array__Item_ internal_extract_item_array (Grob const *elt, SCM symbol); representation of grob sets again. */ #define extract_grob_set(grob, prop, set) \ - Link_array__Grob_ const &set (internal_extract_grob_array (grob, ly_symbol2scm (prop))) + vector const &set (internal_extract_grob_array (grob, ly_symbol2scm (prop))) #define extract_item_set(grob, prop, set) \ - Link_array__Item_ set (internal_extract_item_array (grob, ly_symbol2scm (prop))) + vector set (internal_extract_item_array (grob, ly_symbol2scm (prop))) #endif /* POINTER_GROUP_INTERFACE_HH */