2 group-interface.hh -- declare Group_interface
4 source file of the GNU LilyPond music typesetter
6 (c) 1999--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
9 #ifndef GROUP_INTERFACE_HH
10 #define GROUP_INTERFACE_HH
15 Look at Score element ELT as thing which has a list property called
16 NAME_. Normally the list would contain Grobs, but
17 sometimes it can be different things.
19 todo: reename as list_interface?
22 struct Group_interface
25 static int count (Grob *, SCM);
26 static void add_thing (Grob *, SCM, SCM);
29 struct Pointer_group_interface : public Group_interface
32 static void add_grob (Grob *, SCM nm, Grob *e);
35 Link_array<Grob> extract_grob_array (Grob const *elt, SCM symbol);
36 Link_array<Item> extract_item_array (Grob const *elt, SCM symbol);
38 #endif /* GROUP_INTERFACE_HH */