Update to 2.0.0 tree from current Fremantle build
[opencv] / apps / cvenv / EiC / stdClib / eicfftoa.c
diff --git a/apps/cvenv/EiC/stdClib/eicfftoa.c b/apps/cvenv/EiC/stdClib/eicfftoa.c
deleted file mode 100644 (file)
index 778cf9b..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-/* eicfftoa.c
- *
- *     (C) Copyright Dec 29 1995, Edmond J. Breen.
- *                ALL RIGHTS RESERVED.
- * This code may be copied for personal, non-profit use only.
- *
- */
-
-
-
-/*#define DBL_MIN_EXP -100 */
-
-#include <math.h>
-#include <limits.h>
-#include <float.h>
-
-#include "stdliblocal.h"
-
-char *fftoa(double d, char *str, int p, char type, int trunc)
-{
-    /*
-     * Convert a floating-point number into a
-     * formatted 'f','e' or 'E' type string.
-     * (c) Edmond J.Breen, March 1995.
-     * where:  'p'  represents the precision
-     *                i.e. the number of digits
-     *                that will be placed after
-     *                the decimal point.
-     *                A precision of 0 suppresses
-     *                the decimal point.
-     *         'type' is either 'f', 'e' or 'E'.
-     *                'f' ->  [-]mmm.dddd
-     *                'e' ->  [-]m.dddde+xx
-     *                      | [-]m.dddde-xx
-     *                'E' ->  [-]m.ddddE+xx
-     *                      | [-]m.ddddE-xx
-     *         'trunc' if trunc != 0 then trailing
-     *                 zeros will be removed.
-     *                 i.e. 'g' or 'G' format.
-     */
-    double M;
-    int i, j, width, spt, dec, prec;
-    static char *s;
-
-    prec = p;
-    i = 0;
-    if (d < 0)
-       str[0] = '-', s = &str[1], d = -d;
-    else
-       s = str;
-    if (d >= 1) {              /* collect integer part */
-       int k, c;
-       double D = floor(d);
-       d -= D;
-       do {
-           j = fmod(D,10.0);
-           s[i++] = j + '0';
-           D -= j;
-       } while ((D /= 10) >= 1);
-       /* now reverse the string */
-       for (k = i, j = 0, k--; j < k; j++, k--) {
-           c = s[j];
-           s[j] = s[k];
-           s[k] = c;
-       }
-    }
-    dec = i;
-    if (!dec) {                        /* check for numbers less than 1 */
-       if (type != 'f') {      /* assume 'e' or 'E' format */
-           if (d != 0) {       /* d == d might be a safety check? */
-               while ((d *= 10) < 1 && dec > DBL_MIN_EXP)
-                   --dec;
-               --dec;
-           }
-           if (d >= 1)
-               prec++, d /= 10;
-       } else
-           s[i++] = '0';
-    }
-    if (dec < 0)
-       width = prec;
-    else if (type == 'f')
-       width = prec + (dec > 0 ? dec : 1);
-    else
-       width = prec + 1;
-
-    M = DBL_EPSILON/(FLT_RADIX*2.0); /* precision value */
-    while(1) { /* now collect fraction */
-       d *= 10;
-       j = (int) d;
-       d -= j;
-       M *=10;
-       if((i < width) && (d >= M && d <= (1-M)))
-           s[i++] = (char) j + '0';
-       else
-           break;
-    } 
-    if(d>=0.5)
-       j++;
-    s[i++] = (char) j + '0';
-    while(i<=width)
-       s[i++] = '0';
-    
-    /* Have to round see ANSI176,13.9.5.2 */
-    if (!strround(s, width + 1)) /* watch for over flow */
-       s[0] = '1', width++, dec++;
-
-    if (p != 0) {              /* add in decimal point */
-       if (type == 'f') {
-           if (dec > 0)
-               spt = dec;
-           else
-               spt = 1;
-       } else
-           spt = 1;
-       for (i = width; i > spt; i--)
-           s[i] = s[i - 1];
-       s[spt] = '.';
-    } else
-       width--;
-
-    if (trunc) {               /* remove trailing zeros */
-       while (width && s[width] == '0')
-           width--;
-       if (s[width] == '.')
-           width--;
-    }
-    if (type != 'f') {         /* add in exponent */
-       s[++width] = type;
-       if (dec >= 0) {
-           s[++width] = '+';
-           if (dec != 0)
-               dec = dec - 1;
-           if (dec < 10)
-               s[++width] = '0';
-       } else if (dec < 0) {
-           s[++width] = '-';
-           if (dec > -10)
-               s[++width] = '0';
-           dec = -dec;
-       }
-       itoa(dec, &s[++width], 10);
-    } else
-       s[width + 1] = 0;
-    return str;
-}
-
-
-
-
-
-
-
-