]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/misc.hh
35a10dfaf94e264457525fe83d2d6c58f69b378c
[lilypond.git] / lily / include / misc.hh
1 #ifndef MISC_HH
2 #define MISC_HH
3
4 #include "real.hh"
5 #include "varray.hh"
6 #include "interval.hh"
7
8 double log_2(double x) ;
9 int intlog2(int d);
10 #if ! defined(_ABS_)
11 inline int
12 abs (int i){
13     return (i < 0)?-i:i;
14 }
15 #endif
16 inline int
17 sign (int i) {
18     if (i<0) return -1;
19     else if (i) return 1;
20     else return 0;
21 }
22
23 #ifndef STANDALONE
24 #include "lily-proto.hh"
25 Interval itemlist_width (const Array<Item*> &its);
26 #endif
27
28 int get_lower_bound (Array<Real> const& positions, Real x);
29 Slice get_bounds_slice (Array<Real> const& positions, Real x);
30 Interval get_bounds_iv (Array<Real> const& positions, Real x);
31 Interval quantise_iv (Array<Real> const& positions, Real period, Real x);
32
33 #endif
34