struct Subtle_req;
struct Staff;
struct Staff_column;
-struct Staff_elem;
-struct Staff_elem_info;
struct Staff_symbol;
struct Staff_walker;
struct Stem;
}
if (bar_p_){
- announce_element(Staff_elem_info(bar_p_, bar_req_l_) );
+ announce_element(Score_elem_info(bar_p_, bar_req_l_) );
}
}
c_l->error("unknown clef type ");
}
void
-Clef_register::acknowledge_element(Staff_elem_info info)
+Clef_register::acknowledge_element(Score_elem_info info)
{
if (info.elem_l_->name() == Bar::static_name()) {
if (!clef_p_){
{
clef_p_ = new Clef_item;
clef_p_->read(*this);
- announce_element(Staff_elem_info(clef_p_,
+ announce_element(Score_elem_info(clef_p_,
clef_req_l_));
}
#include "collision.hh"
void
-Collision_register::acknowledge_element(Staff_elem_info i)
+Collision_register::acknowledge_element(Score_elem_info i)
{
if (!(i.elem_l_->name() == Note_column::static_name()))
return;
if (!col_p_)
col_p_ = new Collision;
- col_p_->add((Note_column*)i.elem_l_);
+ col_p_->add((Note_column*)i.elem_l_->item());
}
void
}
void
-Complex_walker::typeset_element(Staff_elem *elem_p)
+Complex_walker::typeset_element(Score_elem *elem_p)
{
if (!elem_p)
return;
assert (!dynamic_p_) ; // TODO
dynamic_p_ = new Text_item(td_p);
- announce_element(Staff_elem_info(dynamic_p_, dreq_l));
+ announce_element(Score_elem_info(dynamic_p_, dreq_l));
} else if (dreq_l->span_dynamic()) {
Span_dynamic_req* span_l = dreq_l->span_dynamic();
assert(!new_cresc_p);
new_cresc_p = new Crescendo;
new_cresc_p->grow_dir_i_ = span_l->dynamic_dir_i_;
- announce_element(Staff_elem_info(new_cresc_p, span_l));
+ announce_element(Score_elem_info(new_cresc_p, span_l));
}
}
}
delete cresc_p_;
}
void
-Dynamic_register::acknowledge_element(Staff_elem_info i)
+Dynamic_register::acknowledge_element(Score_elem_info i)
{
if (i.elem_l_->name() == Note_column::static_name()) {
if (dynamic_p_) dynamic_p_->add_support(i.elem_l_);
6 * paper()->internote()));
}
- Staff_elem_info itinf(note_p_,note_req_l_);
+ Score_elem_info itinf(note_p_,note_req_l_);
announce_element(itinf);
}
virtual void pre_move_processing();
virtual void post_move_processing();
virtual bool try_request(Request*);
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
public:
int c0_position_i_;
String clef_type_str_;
Collision* col_p_;
protected:
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
public:
Collision_register();
/* *************** */
void regs_process_requests();
- void typeset_element(Staff_elem *elem_p);
- void announce_element(Staff_elem_info);
+ void typeset_element(Score_elem *elem_p);
+ void announce_element(Score_elem_info);
virtual void process_requests();
virtual void do_post_move();
virtual void do_pre_move();
~Dynamic_register();
NAME_MEMBERS(Dynamic_register);
protected:
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual bool try_request(Request *req_l);
virtual void process_requests();
virtual void pre_move_processing();
spacing calculation.
*/
-class Item : public Staff_elem {
+class Item : public virtual Score_elem {
public:
/// indirection to the column it is in
PCol * pcol_l_;
virtual void process_requests();
virtual void pre_move_processing();
virtual void post_move_processing();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
Key_register();
NAME_MEMBERS(Key_register);
private:
struct Rest_req;
struct Rhythmic_grouping_req;
struct Rhythmic_req;
+struct Score_elem;
+struct Score_elem_info;
struct Script_req;
struct Skip_req;
struct Slur_req;
struct Rest_column;
struct Rest_collision_register;
struct Rest_collision;
+struct Vertical_spanner;
+struct Vertical_brace;
#endif // LILY_PROTO_HH
Link_array<Item *> tied_l_arr_;
/* *************** */
virtual void process_requests();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
Local_key_register();
NAME_MEMBERS(Local_key_register);
int dir_i_;
/* *************** */
- bool acceptable_elem_b(Staff_elem const*)const;
+ bool acceptable_elem_b(Score_elem const*)const;
protected:
virtual void set_feature(Feature);
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
virtual void post_move_processing();
public:
virtual void sync_features() ;
virtual void pre_move_processing();
virtual void post_move_processing();
- virtual void acknowledge_element(Staff_elem_info info);
+ virtual void acknowledge_element(Score_elem_info info);
virtual bool try_request(Request*);
virtual void process_requests();
virtual ~Register_group_register();
#include "staff-info.hh"
/**
- a struct which processes requests, and creates the #Staff_elem#s.
+ a struct which processes requests, and creates the #Score_elem#s.
It may use derived classes. Hungarian postfix: register
*/
class Request_register {
/**
Invoke walker method to typeset element. Default: pass on to daddy.
*/
- virtual void typeset_element(Staff_elem*elem_p);
+ virtual void typeset_element(Score_elem*elem_p);
/**
take note of item/spanner
Default: ignore the info
*/
- virtual void acknowledge_element(Staff_elem_info) {}
+ virtual void acknowledge_element(Score_elem_info) {}
/**
Announce element. Default: pass on to daddy. Utility
*/
- virtual void announce_element(Staff_elem_info);
+ virtual void announce_element(Score_elem_info);
/**
Set Feature of the register(s). Default: ignore Feature.
*/
Rest_collision* rest_collision_p_;
Array< Collision *> collision_l_arr_;
protected:
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
public:
Rest_collision_register();
Array<Script_req *> script_req_l_arr_;
/* *************** */
- bool acceptable_elem_b(Staff_elem*);
+ bool acceptable_elem_b(Score_elem*);
public:
NAME_MEMBERS(Script_register);
Script_register();
protected:
virtual bool try_request(Request*);
virtual void process_requests();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
virtual void post_move_processing();
virtual void set_feature(Feature);
virtual bool acceptable_request_b(Request*);
virtual void process_requests();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
virtual void post_move_processing();
public:
length of stems of notes they encompass.
*/
-class Spanner:public Staff_elem {
+class Spanner:public virtual Score_elem {
public:
PCol *left_col_l_, *right_col_l_;
#include "class-name.hh"
-/** Both Spanner and Item are Staff_elem's. Most Staff_elem's depend
- on other Staff_elem's, eg, Beam needs to know and set direction of
+/** Both Spanner and Item are Score_elem's. Most Score_elem's depend
+ on other Score_elem's, eg, Beam needs to know and set direction of
Stem. So the Beam has to be calculated *before* Stem. This is
- accomplished with the dependencies field of struct Staff_elem.
+ accomplished with the dependencies field of struct Score_elem.
(elem)
*/
-class Staff_elem {
+class Score_elem {
/// member: the symbols
Molecule *output; // should scrap, and use temp var?
NULL.
*/
Offset offset_;
- Array<Staff_elem*> dependancy_l_arr_;
+ Array<Score_elem*> dependancy_l_arr_;
public:
enum Status {
ORPHAN, // not yet added to pstaff
PRECALCED, // calcs before spacing done
POSTCALCING, // busy calculating. This is used to trap cyclic deps.
POSTCALCED, // after spacing calcs done
+ VERTICALCING, // height determined
+ VERTICALCED,
OUTPUT, // molecule has been output
DELETED, // to catch malloc mistakes.
} status;
PStaff *pstaff_l_;
/* *************** */
- Staff_elem(Staff_elem const&);
+ Score_elem(Score_elem const&);
String TeXstring () const ;
virtual void print() const;
virtual Interval width() const;
virtual Interval height() const;
Paper_def *paper() const;
- virtual ~Staff_elem();
- Staff_elem();
- NAME_MEMBERS(Staff_elem);
+ virtual ~Score_elem();
+ Score_elem();
+ NAME_MEMBERS(Score_elem);
/**
translate the symbol. The symbol does not have to be created yet.
/**
add a dependency. It may be the 0 pointer, in which case, it is ignored.
*/
- void add_dependency(Staff_elem* );
- void substitute_dependency(Staff_elem* old, Staff_elem * newdep);
+ void add_dependency(Score_elem* );
+ void substitute_dependency(Score_elem* old, Score_elem * newdep);
protected:
virtual Interval do_height()const;
/// do calculations after determining horizontal spacing
virtual void do_post_processing();
- Array<Staff_elem*> dependant_l_arr_;
+ /// do calculations after height of spanners/items is determined.
+ virtual void do_verticalcing();
+ Array<Score_elem*> dependant_l_arr_;
};
virtual bool try_request(Request * r);
virtual Staff_info get_staff_info();
virtual bool acceptable_request_b(Request*) const ;
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
public:
/* *************** */
/// A symbol which sits along the staff
class Staff_side {
- Array<Staff_elem*> support_l_arr_;
+ Array<Score_elem*> support_l_arr_;
int staff_size_i_;
- Staff_elem * elem_l_;
+ Score_elem * elem_l_;
Interval support_height()const;
Staff_symbol* staff_sym_l_;
void read_staff_sym();
void set_staffsym(Staff_symbol*);
- Staff_side(Staff_elem*);
- void add_support(Staff_elem*);
+ Staff_side(Score_elem*);
+ void add_support(Score_elem*);
protected:
int get_position_i()const;
/*
- staffeleminfo.hh -- declare Staff_elem_info
+ staffeleminfo.hh -- declare Score_elem_info
source file of the LilyPond music typesetter
#include "proto.hh"
/// data container.
-struct Staff_elem_info {
- Staff_elem * elem_p_;
+struct Score_elem_info {
+ Score_elem * elem_p_;
Request*req_l_;
Voice const * voice_l_;
Voice_group_registers * group_regs_l_;
Request_register * origin_reg_l_;
/* *** */
- Staff_elem_info(Staff_elem*, Request*, Request_register*);
- Staff_elem_info();
+ Score_elem_info(Score_elem*, Request*, Request_register*);
+ Score_elem_info();
};
#endif // STAFFELEMINFO_HH
virtual void set_feature(Feature dir_i_);
virtual bool try_request(Request*);
virtual void process_requests();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void pre_move_processing();
virtual void post_move_processing();
};
virtual void process_requests();
virtual void pre_move_processing();
virtual void post_move_processing();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
public:
Text_register();
NAME_MEMBERS(Text_register);
protected:
virtual ~Tie_register();
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual bool try_request(Request*);
virtual bool acceptable_request_b(Request*);
virtual void sync_features();
--- /dev/null
+/*
+ vertical-spanner.hh -- declare Vertical_spanner
+
+ source file of the LilyPond music typesetter
+
+ (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+*/
+
+
+#ifndef VERTICAL_SPANNER_HH
+#define VERTICAL_SPANNER_HH
+
+#include "staff-elem.hh"
+
+class Vertical_spanner: virtual public Score_elem {
+public:
+ PStaff *lower_pstaff_l_;
+ PStaff *upper_pstaff_l_;
+ NAME_MEMBERS(Vertical_spanner);
+
+ Vertical_spanner();
+
+};
+#endif // VERTICAL_SPANNER_HH
protected:
virtual void pre_move_processing();
virtual bool acceptable_request_b(Request*);
- virtual void acknowledge_element(Staff_elem_info info);
+ virtual void acknowledge_element(Score_elem_info info);
virtual bool try_request(Request*);
virtual void do_print() const;
};
Array<Item*> prebreak_item_p_arr_;
Array<Item*> nobreak_item_p_arr_;
Array<Item*> postbreak_item_p_arr_;
- Array<Staff_elem_info> announce_info_arr_;
+ Array<Score_elem_info> announce_info_arr_;
Complex_walker * walk_l_;
/* *************** */
- void typeset_musical_item(Staff_elem * elem_p);
+ void typeset_musical_item(Score_elem * elem_p);
Walker_registers(Complex_walker*);
void do_announces();
virtual Staff_info get_staff_info();
- virtual void announce_element(Staff_elem_info);
- virtual void acknowledge_element(Staff_elem_info);
+ virtual void announce_element(Score_elem_info);
+ virtual void acknowledge_element(Score_elem_info);
virtual void typeset_breakable_item(Item * pre_p , Item * nobreak_p, Item * post_p);
- virtual void typeset_element(Staff_elem*elem_p);
+ virtual void typeset_element(Score_elem*elem_p);
virtual void pre_move_processing();
virtual void post_move_processing();
virtual Paper_def * paper() const;
}
void
-Key_register::acknowledge_element(Staff_elem_info info)
+Key_register::acknowledge_element(Score_elem_info info)
{
Command_req * r_l = info.req_l_->command() ;
if (r_l && r_l->clefchange()) {
else
kit_p_ = new Key_item(c0_i);
kit_p_->read(*this);
- announce_element(Staff_elem_info(kit_p_, keyreq_l_));
+ announce_element(Score_elem_info(kit_p_, keyreq_l_));
}
void
}
if (meter_p_)
- announce_element(Staff_elem_info(meter_p_, meter_req_l_) );
+ announce_element(Score_elem_info(meter_p_, meter_req_l_) );
}
void
#include "rest-column.hh"
bool
-Note_column_register::acceptable_elem_b(Staff_elem const*elem_C)const
+Note_column_register::acceptable_elem_b(Score_elem const*elem_C)const
{
char const*nC = elem_C->name();
return (nC == Script::static_name() || nC == Notehead::static_name()
{
if (!ncol_p_){
ncol_p_ = new Note_column;
- announce_element(Staff_elem_info(ncol_p_, 0));
+ announce_element(Score_elem_info(ncol_p_, 0));
}
return ncol_p_;
}
{
if (!restcol_p_) {
restcol_p_ = new Rest_column;
- announce_element(Staff_elem_info(restcol_p_,0));
+ announce_element(Score_elem_info(restcol_p_,0));
}
return restcol_p_;
}
void
-Note_column_register::acknowledge_element(Staff_elem_info i)
+Note_column_register::acknowledge_element(Score_elem_info i)
{
if (!acceptable_elem_b(i.elem_l_))
return;
char const*nC = i.elem_l_->name();
if (nC == Script::static_name()) {
- script_l_arr_.push((Script*)i.elem_l_);
+ script_l_arr_.push((Script*)i.elem_l_->item());
} else if (nC == Notehead::static_name()) {
- Notehead * h_l = (Notehead*)i.elem_l_;
+ Notehead * h_l = (Notehead*)i.elem_l_->item();
if (h_l->rest_b_)
rest_col_l()->add(h_l);
else
note_col_l()->add(h_l);
}
else if (nC == Stem::static_name()){
- stem_l_ = (Stem*)i.elem_l_;
+ stem_l_ = (Stem*)i.elem_l_->item();
}
}
}
void
-Register_group_register::acknowledge_element(Staff_elem_info info)
+Register_group_register::acknowledge_element(Score_elem_info info)
{
Request_register* origin = info.origin_reg_l_arr_[0];
if (!contains_b(origin) && !origin->contains_b(this)) // am i sure?
}
void
-Request_register::announce_element(Staff_elem_info i)
+Request_register::announce_element(Score_elem_info i)
{
i.origin_reg_l_arr_.push(this);
daddy_reg_l_->announce_element(i);
}
void
-Request_register::typeset_element(Staff_elem*p)
+Request_register::typeset_element(Score_elem*p)
{
daddy_reg_l_->typeset_element(p);
}
#include "note-column.hh"
void
-Rest_collision_register::acknowledge_element(Staff_elem_info i)
+Rest_collision_register::acknowledge_element(Score_elem_info i)
{
char const * nC = i.elem_l_->name();
if (nC == Collision::static_name()) {
- collision_l_arr_.push((Collision*)i.elem_l_);
+ collision_l_arr_.push((Collision*)i.elem_l_->item());
}
else if (nC == Rest_column ::static_name()) {
if (!rest_collision_p_)
rest_collision_p_ = new Rest_collision;
- rest_collision_p_->add((Rest_column*)i.elem_l_);
+ rest_collision_p_->add((Rest_column*)i.elem_l_->item());
}
}
Script_req* l=script_req_l_arr_[i];
Script *p =new Script( l);
script_p_arr_.push(p);
- announce_element(Staff_elem_info(p, l));
+ announce_element(Score_elem_info(p, l));
}
}
bool
-Script_register::acceptable_elem_b(Staff_elem*s_l)
+Script_register::acceptable_elem_b(Score_elem*s_l)
{
char const *nC = s_l->name();
return (nC == Stem::static_name());
}
void
-Script_register::acknowledge_element(Staff_elem_info info)
+Script_register::acknowledge_element(Score_elem_info info)
{
- Staff_elem *elem_l = info.elem_l_;
+ Score_elem *elem_l = info.elem_l_;
if (!acceptable_elem_b(elem_l))
return;
for (int i=0; i < script_p_arr_.size(); i++) {
Script*script_l = script_p_arr_[i];
if (elem_l->name() == Stem::static_name())
- script_l->set_stem((Stem*)elem_l);
+ script_l->set_stem((Stem*)elem_l->item());
}
}
}
void
-Slur_register::acknowledge_element(Staff_elem_info info)
+Slur_register::acknowledge_element(Score_elem_info info)
{
if (info.elem_l_->name() == Note_column::static_name()) {
- Note_column *col_l =(Note_column*) info.elem_l_ ;// ugh
+ Note_column *col_l =(Note_column*) info.elem_l_->item() ;// ugh
for (int i = 0; i < slur_l_stack_.size(); i++)
slur_l_stack_[i]->add(col_l );
for (int i = 0; i < end_slur_l_arr_.size(); i++)
Slur * s_p =new Slur;
requests_arr_.push(slur_req_l);
start_slur_l_arr_.push(s_p);
- announce_element(Staff_elem_info(s_p, slur_req_l));
+ announce_element(Score_elem_info(s_p, slur_req_l));
}
}
for (int i=0; i < start_slur_l_arr_.size(); i++)
for (int i=0; i < dependant_l_arr_.size(); i++) {
dependant_l_arr_[i]->
- substitute_dependency((Staff_elem*)this, span_p);
+ substitute_dependency((Score_elem*)this, span_p);
}
span_p->left_col_l_ = c1;
/*
- staff-elem-info.cc -- implement Staff_elem_info
+ staff-elem-info.cc -- implement Score_elem_info
source file of the LilyPond music typesetter
#include "staff-elem-info.hh"
#include "request.hh"
-Staff_elem_info::Staff_elem_info(Staff_elem*s_l, Request*r_l)
+Score_elem_info::Score_elem_info(Score_elem*s_l, Request*r_l)
{
elem_l_ = s_l;
voice_l_ = (r_l)?r_l->voice_l():0;
req_l_ = r_l;
}
-Staff_elem_info::Staff_elem_info()
+Score_elem_info::Score_elem_info()
{
elem_l_ = 0;
voice_l_ = 0;
/*
- staff-elem.cc -- implement Staff_elem
+ staff-elem.cc -- implement Score_elem
source file of the LilyPond music typesetter
#include "debug.hh"
String
-Staff_elem::TeXstring() const
+Score_elem::TeXstring() const
{
Molecule m(*output);
m.translate(offset_); // ugh?
return m.TeXstring();
}
-Staff_elem::Staff_elem(Staff_elem const&s)
+Score_elem::Score_elem(Score_elem const&s)
:dependancy_l_arr_(s.dependancy_l_arr_),
dependant_l_arr_(s.dependant_l_arr_)
{
TODO:
If deleted, then remove dependant_l_arr_ depency!
*/
-Staff_elem::~Staff_elem()
+Score_elem::~Score_elem()
{
assert(status < DELETED);
delete output;
}
void
-Staff_elem::translate(Offset O)
+Score_elem::translate(Offset O)
{
offset_ += O;
}
Interval
-Staff_elem::do_width() const
+Score_elem::do_width() const
{
Interval r;
}
Interval
-Staff_elem::width() const
+Score_elem::width() const
{
Interval r=do_width();
return r;
}
Interval
-Staff_elem::do_height() const
+Score_elem::do_height() const
{
Interval r;
if (!output){
}
Interval
-Staff_elem::height() const
+Score_elem::height() const
{
Interval r=do_height();
}
void
-Staff_elem::print()const
+Score_elem::print()const
{
#ifndef NPRINT
mtor << name() << "{\n";
-Staff_elem::Staff_elem()
+Score_elem::Score_elem()
{
pstaff_l_=0;
offset_ = Offset(0,0);
Paper_def*
-Staff_elem::paper() const
+Score_elem::paper() const
{
assert(pstaff_l_);
return pstaff_l_->pscore_l_->paper_l_;
}
void
-Staff_elem::add_processing()
+Score_elem::add_processing()
{
if (status >= VIRGIN)
return;
}
void
-Staff_elem::pre_processing()
+Score_elem::pre_processing()
{
if (status >= PRECALCED )
return;
status = PRECALCED;
}
void
-Staff_elem::post_processing()
+Score_elem::post_processing()
{
if (status >= POSTCALCED)
return;
}
void
-Staff_elem::molecule_processing()
+Score_elem::molecule_processing()
{
if (status >= OUTPUT)
return;
}
void
-Staff_elem::do_post_processing()
+Score_elem::do_post_processing()
{
}
void
-Staff_elem::do_pre_processing()
+Score_elem::do_pre_processing()
+{
+}
+void
+Score_elem::do_verticalcing()
{
}
void
-Staff_elem::do_add_processing()
+Score_elem::do_add_processing()
{
}
void
-Staff_elem::substitute_dependency(Staff_elem * old, Staff_elem * newdep)
+Score_elem::substitute_dependency(Score_elem * old, Score_elem * newdep)
{
bool hebbes_b=false;
for (int i=0; i < dependancy_l_arr_.size(); i++) {
}
void
-Staff_elem::add_dependency(Staff_elem * p)
+Score_elem::add_dependency(Score_elem * p)
{
for (int i=0; i < dependancy_l_arr_.size(); i ++)
if (dependancy_l_arr_[i] == p)
dependancy_l_arr_.push(p);
p->dependant_l_arr_.push(p);
}
-IMPLEMENT_STATIC_NAME(Staff_elem);
+IMPLEMENT_STATIC_NAME(Score_elem);
Molecule*
-Staff_elem::brew_molecule_p()const
+Score_elem::brew_molecule_p()const
{
Atom a(paper()->lookup_l()->fill(Box(Interval(0,0), Interval(0,0))));
return new Molecule (a);
}
Offset
-Staff_elem::offset() const
+Score_elem::offset() const
{
return offset_;
}
}
void
-Staff_registers::acknowledge_element(Staff_elem_info i)
+Staff_registers::acknowledge_element(Score_elem_info i)
{
Register_group_register::acknowledge_element(i);
if ( i.elem_l_->name() == Staff_symbol::static_name())
- staff_sym_l_ = (Staff_symbol*)i.elem_l_;
+ staff_sym_l_ = (Staff_symbol*)i.elem_l_->item();
}
staff_sym_l_ = s_l;
}
-Staff_side::Staff_side(Staff_elem * elem_l)
+Staff_side::Staff_side(Score_elem * elem_l)
{
inter_f_ = 2 PT;
staff_size_i_ = 0;
}
void
-Staff_side::add_support(Staff_elem*i)
+Staff_side::add_support(Score_elem*i)
{
support_l_arr_.push(i);
elem_l_->add_dependency(i);
void
Staff_sym_register::process_requests()
{
- announce_element(Staff_elem_info(span_p_, 0));
+ announce_element(Score_elem_info(span_p_, 0));
}
void
{
Molecule *out =0;
if ( invisible_b() )
- return Staff_elem::brew_molecule_p();
+ return Score_elem::brew_molecule_p();
Real bot = stem_bottom_f_;
Real top = stem_top_f_;
return true;
}
void
-Text_register::acknowledge_element(Staff_elem_info i)
+Text_register::acknowledge_element(Score_elem_info i)
{
if (text_p_ && i.elem_l_->name() == Note_column::static_name()) {
text_p_->add_support(i.elem_l_);
{
if (text_req_l_) {
text_p_ = new Text_item(text_req_l_->tdef_p_, text_req_l_->dir_i_); // ugh
- announce_element(Staff_elem_info(text_p_, text_req_l_));
+ announce_element(Score_elem_info(text_p_, text_req_l_));
}
}
void
}
void
-Voice_registers::acknowledge_element(Staff_elem_info i)
+Voice_registers::acknowledge_element(Score_elem_info i)
{
if (i.voice_l_ != voice_l_)
return;
}
void
-Walker_registers::announce_element(Staff_elem_info info)
+Walker_registers::announce_element(Score_elem_info info)
{
if (info.elem_l_->name() == Bar::static_name()) {
walk_l_->allow_break();
}
void
-Walker_registers::acknowledge_element(Staff_elem_info )
+Walker_registers::acknowledge_element(Score_elem_info )
{
assert(false);
}
{
Request dummy_req;
for (int i = 0; i < announce_info_arr_.size(); i++){
- Staff_elem_info info = announce_info_arr_[i];
+ Score_elem_info info = announce_info_arr_[i];
mtor << "Announcing " << info.elem_l_->name()<<"\n";
if (!info.req_l_)
}
void
-Walker_registers::typeset_element(Staff_elem *elem_p)
+Walker_registers::typeset_element(Score_elem *elem_p)
{
typeset_musical_item(elem_p);
}
void
-Walker_registers::typeset_musical_item(Staff_elem * elem_p)
+Walker_registers::typeset_musical_item(Score_elem * elem_p)
{
walk_l_->typeset_element(elem_p);
}