4 #include "scriptdef.hh"
7 #define VIRTUALCONS(T,R) R *T::clone() const { return new T(*this); } struct T
8 #define RCONS(T) VIRTUALCONS(T, Request)
23 Barcheck_req::print() const
31 Request::print() const
34 mtor << "Req{ unknown }\n";
39 Span_req::print() const
42 mtor << "Span_req {" << spantype << "}\n";
50 Request::Request(Request const&)
54 Melodic_req::Melodic_req()
63 Melodic_req::height() const
65 return name + octave*7;
68 Rhythmic_req::Rhythmic_req()
76 Rhythmic_req::print() const
78 mtor << "rhythmic: " << balltype ;
83 mtor<<"xPlet factor"<<plet_factor<<"\n";
87 Melodic_req::print() const
89 mtor << "note: " << name << " oct: "<< octave;
93 Note_req::print() const
96 Rhythmic_req::print();
100 Rest_req::print() const
103 Rhythmic_req::print();
108 Rhythmic_req::duration() const {
109 return wholes(balltype,dots)*plet_factor;
122 Script_req::Script_req(int d , Script_def*def)
128 Script_req::Script_req(Script_req const &s)
131 scriptdef = new Script_def(*s.scriptdef);
135 Script_req::print() const
137 mtor << " dir " << dir ;
142 Script_req::~Script_req()
147 Text_req::Text_req(Text_req const& s)
149 spec = new Text_def(*s.spec);
152 Text_req::Text_req(int d , Text_def*def)
159 Text_req::print() const
161 mtor << " dir " << dir ;
166 Text_req::~Text_req()