]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/misc.hh
* lily/object-key-dumper-scheme.cc: new file.
[lilypond.git] / lily / include / misc.hh
index e659602e991497492d17a7611972426150918e2d..72da2c90e969341fd16cdd30fbea94aacd0c0179 100644 (file)
@@ -1,40 +1,41 @@
+/*
+  misc.hh -- declare miscellaneous functions.
+
+  source file of the GNU LilyPond music typesetter
+
+  (c) 2005 Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+*/
+
 #ifndef MISC_HH
 #define MISC_HH
 
-#include <stdlib.h>
+#include <cstdlib>
 
-#include "real.hh"
 #include "array.hh"
 #include "interval.hh"
 
-double log_2(double x) ;
-int intlog2(int d);
-
-#if 0
-                               // defined in real.hh
-inline int
-abs (int i){
-    return (i < 0)?-i:i;
-}
-#endif
+double log_2 (double x) ;
+int intlog2 (int d);
 
 inline int
-sign (int i) {
-    if (i<0) return -1;
-    else if (i) return 1;
-    else return 0;
+sign (int i)
+{
+  if (i<0)
+    return -1;
+  else if (i)
+    return 1;
+  else return 0;
 }
 
-#ifndef STANDALONE
-#include "lily-proto.hh"
-Interval itemlist_width (const Array<Item*> &its);
-#endif
+Array<String> split_string (String s, char c);
 
-void set_frobnify (void*, size_t);
-int get_lower_bound (Array<Real> const& positions, Real x);
-Slice get_bounds_slice (Array<Real> const& positions, Real x);
-Interval get_bounds_iv (Array<Real> const& positions, Real x);
-Interval quantise_iv (Array<Real> const& positions, Real period, Real x);
+inline Real
+linear_interpolate (Real x, Real x1, Real x2,  Real y1, Real  y2)
+{
+  return (x2 - x) / (x2 - x1) * y1 +
+    (x - x1) / (x2 - x1) * y2 ;
+}
 
 #endif