2 registergroup.hh -- declare Register_group_register
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
10 #ifndef REGISTERGROUP_HH
11 #define REGISTERGROUP_HH
15 #include "score-elem-info.hh"
16 #include "register.hh"
19 Group a number of registers. Usually delegates everything to its contents.
22 class Register_group_register : public Request_register {
24 Pointer_list<Request_register*> reg_list_;
25 virtual void do_print()const;
32 #reg_l# is in #reg_list_#
34 virtual void terminate_register(Request_register * reg_l);
36 NAME_MEMBERS(Register_group_register);
39 Remove #reg_l# from the list, and return it.
41 virtual Request_register * get_register_p(Request_register*reg_l);
42 virtual void set_feature(Feature i);
43 virtual bool acceptable_request_b(Request*)const;
44 virtual void sync_features() ;
45 virtual void pre_move_processing();
46 virtual void post_move_processing();
47 virtual void acknowledge_element(Score_elem_info info);
48 virtual bool try_request(Request*);
49 virtual void process_requests();
50 virtual ~Register_group_register();
51 virtual void add(Request_register* reg_p);
52 void add(Array<Request_register*> reg_p_arr);
53 virtual bool contains_b(Request_register*)const;
56 #endif // REGISTERGROUP_HH