From: fred Date: Sun, 24 Mar 2002 19:46:35 +0000 (+0000) Subject: lilypond-0.0.71pre X-Git-Tag: release/1.5.59~4540 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=10c89cd3a935e1098a8bc7693d4d52fe326d4a52;p=lilypond.git lilypond-0.0.71pre --- diff --git a/lily/include/midi-walker.hh b/lily/include/midi-walker.hh index 96005c8931..dea2478d24 100644 --- a/lily/include/midi-walker.hh +++ b/lily/include/midi-walker.hh @@ -7,8 +7,35 @@ #ifndef MIDIWALKER_HH #define MIDIWALKER_HH -#if 0 + #include "lily-proto.hh" + +#if 0 + +// sketch. . . +class Midi_register { +}; + +class Midi_group_reg : public Midi_register, public Acceptor { + +}; + +class Midi_staff_reg : public Midi_group_reg { +}; + + +class Midi_note_reg : public Midi_register { + +}; + +class Midi_voice_reg : public Midi_group_reg, public Interpreter { + +}; + +class Midi_score_reg: public Midi_group_reg, public Global_acceptor { +}; + + #include "grouping.hh" #include "staff-walker.hh" #include "pcursor.hh" diff --git a/lily/include/register-group.hh b/lily/include/register-group.hh index 0c47919b6b..466b47361b 100644 --- a/lily/include/register-group.hh +++ b/lily/include/register-group.hh @@ -14,17 +14,19 @@ #include "plist.hh" #include "score-elem-info.hh" #include "register.hh" +#include "acceptor.hh" + /** Group a number of registers. Usually delegates everything to its contents. Postfix: group */ -class Register_group_register : public Request_register { +class Register_group_register : public Request_register, public virtual Acceptor { protected: + Pointer_list reg_list_; Link_array group_l_arr_; Link_array nongroup_l_arr_; - String id_str_; Array announce_info_arr_; @@ -33,25 +35,17 @@ protected: virtual bool removable_b()const; public: - int iterator_count_; + Input_register * ireg_l_; void check_removal(); Register_group_register(); ~Register_group_register(); - /// Score_register = 0, Staff_registers = 1, etc) - virtual int depth_i()const; - /** - Go up in the tree. default: choose next parent - */ - Register_group_register * ancestor_l(int l=1); - - Input_register * ireg_l_; + /** Junk #reg_l#. - Pre: - #reg_l# is in #reg_list_# + #reg_l# is in #reg_list_# */ virtual void terminate_register(Request_register * reg_l); @@ -75,12 +69,20 @@ public: virtual Register_group_register * find_register_l(String name,String id); virtual void do_announces(); virtual void announce_element(Score_elem_info); - virtual Register_group_register* find_get_reg_l(String name, String id); - virtual Register_group_register * get_default_interpreter(); - + + virtual void add(Request_register* reg_p); virtual bool contains_b(Request_register*)const; + + virtual Acceptor* find_get_acceptor_l(String name, String id); + virtual Acceptor * get_default_interpreter(); + /** + Go up in the tree. default: choose next parent + */ + Acceptor * ancestor_l(int l=1); + int depth_i() const; + }; #endif // REGISTERGROUP_HH