]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/include/polynomial.hh
Imported Upstream version 2.16.0
[lilypond.git] / flower / include / polynomial.hh
index 6959dc40bfddbad1d68ce09976bb8637a516cf11..1959688d8d15ce2bf14f1cfe69c2ca44e16947f3 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1993--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 1993--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
   LilyPond is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
 #include "arithmetic-operator.hh"
 #include "real.hh"
 
-/// structure for a polynomial in one var. 
+/// structure for a polynomial in one var.
 struct Polynomial
 {
   /// degree of polynomial
-  int degree ()const;
+  ssize_t degree ()const;
 
-  /// coefficients 
+  /// coefficients
   vector<Real> coefs_;
 
   // leading coef
@@ -44,6 +44,7 @@ struct Polynomial
   Real lc () const;
   void print () const;
   Real eval (Real) const;
+  Real minmax (Real, Real, bool) const;
   void print_sols (vector<Real>) const;
   void check_sols (vector<Real>) const;
   void check_sol (Real x) const;
@@ -62,7 +63,7 @@ struct Polynomial
   void operator *= (Polynomial const &p2);
   void operator -= (Polynomial const &p2);
   Polynomial (Real a, Real b = 0.0);
-  Polynomial (){}
+  Polynomial () {}
   void set_negate (const Polynomial &src);
 
   /// take the derivative