]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/input-register.hh
release: 0.0.46.jcn1
[lilypond.git] / lily / include / input-register.hh
1 /*
2   input-register.hh -- declare Input_register
3
4   source file of the LilyPond music typesetter
5
6   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
7 */
8
9
10 #ifndef INPUT_REGISTER_HH
11 #define INPUT_REGISTER_HH
12
13 #include "plist.hh"
14 #include "string.hh"
15 #include "proto.hh"
16 #include "input.hh"
17
18 struct Input_register : Input { 
19     IPointerList<Input_register*> ireg_list_;
20     String name_str_;
21     
22     void add(Input_register*);
23     Input_register();
24     bool group_b() const;
25     ~Input_register();
26     /** Get an Input_register with a certain name
27
28       @return 0 if not found.
29       */
30     Input_register *get_ireg_l(String name) const;
31     Input_register(Input_register const&);
32     /** 
33       The names of all non -groups.
34       */
35     Array<String> get_nongroups_str_arr() const;
36     void print() const;
37     /**
38       Construct the registers.
39      */
40     Array<Request_register*> get_nongroup_p_arr()const;
41 };
42
43 Request_register * get_nongroup_register_p(String);
44
45 #endif // INPUT_REGISTER_HH