2 simplestaff.hh -- part of LilyPond
4 (c) 1996 Han-Wen Nienhuys
14 mega-stupido staffs and cols: they do notes one at each moment.
19 /// column of Simple_staff: store one request
20 struct Simple_column : Staff_column {
22 svec<Rhythmic_req *> notes;
29 virtual void typeset_item(Item *, int=1);
31 Molecule *create_command_mol(Command *com);
33 void take_request(Request *rq);
34 virtual void process_requests();
36 Simple_column(Score_column*s,Simple_staff*rs);
40 /// Simple staff: one voicegroup at a time
41 struct Simple_staff : Staff {
42 /// indirection to the PStaff.
46 Staff_column*create_col(Score_column*);
48 virtual Item *get_TYPESET_item(Command*);
49 virtual Stem *get_stem(Stem_req *rq)=0;
50 virtual Notehead *get_notehead(Note_req *rq)=0;
51 virtual Rest *get_rest(Rest_req *rq);
52 virtual void set_output(PScore *);
54 void process_commands( PCursor<Command*> &where);
60 struct Simple_walker: Staff_walker {
62 svec<Notehead *>noteheads;
67 virtual void process_command(Command*);
68 virtual void process_requests();
69 Simple_walker(Simple_staff*);
71 Simple_staff *staff();
75 #endif // SIMPLESTAFF_HH