X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=flower%2Finclude%2Freal.hh;h=7345079680082673f73bb85760384ea6c3d3adf1;hb=9e781b7dc83b60a543ce218aa1a5f139f74c760f;hp=ec98982cdfca77fa38fceaa8eecb0122b252fc7d;hpb=8aad615ea7bb31f49a0c2afc21eea5ff5de20437;p=lilypond.git diff --git a/flower/include/real.hh b/flower/include/real.hh index ec98982cdf..7345079680 100644 --- a/flower/include/real.hh +++ b/flower/include/real.hh @@ -1,54 +1,58 @@ /* - real.hh -- declare Real + This file is part of LilyPond, the GNU music typesetter. - source file of the Flower Library + Copyright (C) 1997--2014 Han-Wen Nienhuys - (c) 1997--1999 Han-Wen Nienhuys -*/ + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . +*/ #ifndef REAL_HH #define REAL_HH - -#include -#include +#include +#include +#include +using namespace std; typedef double Real; -const Real infinity_f = HUGE_VAL; +extern const Real infinity_f; + +/* namespace std { */ template inline T abs (T x) { return x > 0 ? x : -x; } -template inline int sign (T x) -{ - if (x) - return x > 0 ? 1 : -1; - return 0; -} +/* } namespace std */ -template inline T max (T x, T y) -{ - return x >? y; -} - -template inline T sqr (T x) +inline Real +distance (Real x, Real y) { - return x*x; + return abs (x - y); } - -template inline T min (T x, T y) +template inline int sign (T x) { - return x T (0) ? 1 : -1; + return 0; } -inline Real -distance (Real x,Real y) +template inline T sqr (T x) { - return abs (x-y); + return x * x; } #endif