2 inputscore.cc -- implement Input_score
4 source file of the LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
10 #include "inputscore.hh"
11 #include "inputstaff.hh"
12 #include "inputmusic.hh"
14 #include "paperdef.hh"
19 Input_score::add(Input_staff
*s
)
21 staffs_
.bottom().add(s
);
25 Input_score::set(Paperdef
*p
)
31 Input_score::Input_score(Input_score
const&s
)
33 paper_p_
= (s
.paper_p_
)? new Paperdef(*s
.paper_p_
) :0;
34 defined_ch_c_l_
= s
.defined_ch_c_l_
;
35 errorlevel_i_
= s
.errorlevel_i_
;
36 score_wide_music_p_
= (s
.score_wide_music_p_
) ?
37 s
.score_wide_music_p_
->clone():0;
43 Paperdef
* paper_p
=new Paperdef(*paper_p_
);
44 Score
*s_p
= new Score(paper_p
);
45 s_p
->defined_ch_c_l_
= defined_ch_c_l_
;
46 s_p
->errorlevel_i_
= errorlevel_i_
;
48 for (iter_top(staffs_
,i
); i
.ok(); i
++) {
49 Staff
* staf_p
=i
->parse(s_p
, score_wide_music_p_
);
57 Input_score::set(Input_music
*m_p
)
59 delete score_wide_music_p_
;
60 score_wide_music_p_
=m_p
;
64 Input_score::~Input_score()
67 delete score_wide_music_p_
;
70 Input_score::Input_score()
72 score_wide_music_p_
=0;
79 Input_score::print()const
82 mtor
<< "Input_score {\n";
83 for (iter_top(staffs_
,i
); i
.ok(); i
++) {