]> git.donarmstrong.com Git - lilypond.git/blob - lily/audio-item.cc
release: 1.3.37
[lilypond.git] / lily / audio-item.cc
1 /*
2   audio-item.cc -- implement Audio items.
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--2000 Jan Nieuwenhuizen <janneke@gnu.org>
7 */
8 #include "debug.hh"
9 #include "audio-item.hh"
10 #include "midi-item.hh"
11 #include "audio-column.hh"
12
13 Audio_instrument::Audio_instrument (String instrument_str)
14 {
15   str_ = instrument_str;
16 }
17
18 Audio_item::Audio_item ()
19 {
20   audio_column_l_ = 0;
21 }
22
23 Audio_note::Audio_note (Musical_pitch p, Moment m, int transposing_i)
24 {
25   pitch_ = p;
26   length_mom_ = m;
27   tied_ = 0;
28   transposing_i_ = transposing_i;
29 }
30
31 void
32 Audio_note::tie_to (Audio_note* t)
33 {
34   tied_ = t;
35   Audio_note* first = t;
36   while (first->tied_)
37     first = first->tied_;
38   first->length_mom_ += length_mom_;
39   length_mom_ = 0;
40 }
41
42                     
43 Audio_key::Audio_key (Key_def const& k)
44 {
45   key_ = k;
46 }
47
48 Audio_dynamic::Audio_dynamic (int volume)
49 {
50   volume_i_ = volume;
51 }
52
53 Audio_tempo::Audio_tempo (int per_minute_4_i)
54 {
55   per_minute_4_i_ = per_minute_4_i;
56 }
57
58 Audio_time_signature::Audio_time_signature (int beats, int one_beat)
59 {
60   beats_i_ = beats;
61   one_beat_i_ = one_beat;
62 }
63
64 Audio_text::Audio_text (Audio_text::Type type, String text_str)
65 {
66   text_str_ = text_str;
67   type_ = type;
68 }
69
70 Audio_tie::Audio_tie ()
71 {
72   note_l_drul_[RIGHT] = 0;
73   note_l_drul_[LEFT] = 0;
74 }
75
76 void
77 Audio_tie::set_note (Direction d, Audio_note* note_l)
78 {
79   assert (!note_l_drul_[d]);
80   note_l_drul_[d] = note_l;
81   //set_bound (d, head_l);
82
83   //  add_dependency (head_l);
84 }
85
86 void
87 Audio_item::do_print () const
88 {
89 #ifndef NPRINT
90   if (audio_column_l_)
91     {
92       DEBUG_OUT << "at: "<< audio_column_l_->at_mom ();
93     }
94 #endif
95 }
96