summaryrefslogtreecommitdiff
path: root/apps/JAWS3/bench/mkfiles.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'apps/JAWS3/bench/mkfiles.cpp')
-rw-r--r--apps/JAWS3/bench/mkfiles.cpp156
1 files changed, 0 insertions, 156 deletions
diff --git a/apps/JAWS3/bench/mkfiles.cpp b/apps/JAWS3/bench/mkfiles.cpp
deleted file mode 100644
index 42bc2c969fa..00000000000
--- a/apps/JAWS3/bench/mkfiles.cpp
+++ /dev/null
@@ -1,156 +0,0 @@
-// $Id$
-
-#include "ace/OS.h"
-#include "ace/Get_Opt.h"
-//FUZZ: disable check_for_math_include/
-#include <math.h>
-
-static float gammln (float xx);
-static float poidev (float xm);
-
-int main (int argc, char *argv[])
-{
- ACE_Get_Opt options (argc, argv, "m:s:x:n:");
- // m -- median file size in kB
- // x -- maximum file size in kB
- // n -- number of files
-
- long median = 8;
- long maximum = 1024;
- long number = 1000;
-
- int c;
- while ((c = options ()) != -1)
- {
- switch (c)
- {
- case 'm':
- median = ACE_OS::atoi (options.optarg);
- break;
- case 'x':
- maximum = ACE_OS::atoi (options.optarg);
- break;
- case 'n':
- number = ACE_OS::atoi (options.optarg);
- break;
- default:
- break;
- }
- }
-
- char filename[1024];
- const char *seventyfive_bytes = "\
-01010101010101010101010101010101010101010101010101010101010101010101010101\n\
-";
-
- int seen_max = 0;
-
- long i;
- for (i = 0; i < number; i++)
- {
- long size = 0;
- float p = ::floor (::pow (2, poidev (::log (2 * median)/::log (2)) - 1));
- if (p > maximum)
- p = maximum;
- p *= 1024;
- if (p < 1.0)
- p = 1.0;
- size = (long) p;
- if (i == (number - 1))
- if (! seen_max)
- size = maximum * 1024;
- else
- seen_max = (size == (maximum * 1024));
-
- ::sprintf (filename, "file%011ld.html", i);
- FILE *fp = ::fopen (filename, "w+b");
- while (size > 75)
- {
- fprintf (fp, "%s", seventyfive_bytes);
- size -= 75;
- }
- if (size > 15)
- {
- fprintf (fp, "%0*.0f\n", (int) (size - 1), p);
- }
- else
- {
- fprintf (fp, "%015.0f\n", p + 16 - size);
- }
- fclose (fp);
- }
-
- return 0;
-}
-
-static float
-gammln (float xx)
-{
- double x, y, tmp, ser;
- static const double cof[6] = { 76.18009172947146,
- -86.50532032941677,
- 24.01409824083091,
- -1.231739572450155,
- 0.1208650973866179e-2,
- -0.5395239384953e-5 };
- int j;
-
- y = x = xx;
- tmp = x + 5.5;
- tmp -= (x+0.5) * ::log (tmp);
-
- ser = 1.000000000190015;
- for (j = 0; j < 6; j++)
- ser += cof[j]/++y;
-
- return -tmp + ::log (2.5066282746310005 * ser / x);
-}
-
-static float
-poidev (float xm)
-{
- static const double PI = 3.141592654;
- static float sq, alxm, g, oldm = -1.0;
- float em, t, y, fem;
-
- if (xm < 2.0)
- {
- if (xm != oldm)
- {
- oldm = xm;
- g = ::exp (-xm);
- }
- em = -1.0;
- t = 1.0;
- do
- {
- ++em;
- t *= (1.0 + ::rand ())/RAND_MAX;
- }
- while (t > g);
- }
- else
- {
- if (xm != oldm)
- {
- oldm = xm;
- sq = ::sqrt (2.0 + xm);
- alxm = log (xm);
- g = xm * alxm - gammln (xm + 1.0);
- }
- do
- {
- do
- {
- y = ::tan (PI * (1.0 + ::rand ())/RAND_MAX);
- em = sq * y + xm;
- }
- while (em < 0.0);
- fem = ::floor (em);
- t = 0.9 * (1.0 + y * y) * ::exp (fem * alxm - gammln (fem + 1.0) - g);
- }
- while ((1.0 + ::rand ())/RAND_MAX > t);
- }
-
- return em;
-}