2 moment.hh -- declare Moment
4 source file of the GNU LilyPond music typesetter
6 (c) 1999--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
13 #include "rational.hh"
16 Musical timing (Main-timing, grace-timing) with glue for
21 DECLARE_SIMPLE_SMOBS (Moment
,);
26 Moment (Rational
, Rational
);
29 Moment
operator - () const;
31 void operator += (Moment
const &m
);
32 void operator -= (Moment
const &m
);
34 void operator *= (Moment
const &m
);
35 void operator /= (Moment
const &m
);
36 void operator %= (Moment
const &m
);
41 void set_infinite (int k
);
43 bool to_bool () const;
47 Deliver a copy of THIS as a smobified SCM
49 String
to_string () const;
50 static int compare (Moment
const &, Moment
const &);
51 SCM
as_scheme () const;
53 IMPLEMENT_ARITHMETIC_OPERATOR (Moment
, +);
54 IMPLEMENT_ARITHMETIC_OPERATOR (Moment
, -);
55 IMPLEMENT_ARITHMETIC_OPERATOR (Moment
, /);
56 IMPLEMENT_ARITHMETIC_OPERATOR (Moment
, *);
57 IMPLEMENT_ARITHMETIC_OPERATOR (Moment
, %);
59 DECLARE_UNSMOB (Moment
, moment
);
60 int compare (Moment
const &, Moment
const &);
61 INSTANTIATE_COMPARE (Moment
const &, Moment::compare
);
63 Moment
robust_scm2moment (SCM
, Moment
);
66 ostream
&operator << (ostream
&, Moment
const &);
69 bool moment_less (SCM a
, SCM b
);
71 #endif /* MOMENT_HH */