• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  **********************************************************************
3  * Copyright (c) 2011-2012,International Business Machines
4  * Corporation and others.  All Rights Reserved.
5  **********************************************************************
6  */
7 
8 #ifndef SIEVE_H
9 #define SIEVE_H
10 
11 #ifndef U_LOTS_OF_TIMES
12 #define U_LOTS_OF_TIMES 1000000
13 #endif
14 
15 #include "unicode/utypes.h"
16 /**
17  * Calculate the standardized sieve time (1 run)
18  */
19 U_INTERNAL double uprv_calcSieveTime(void);
20 
21 /**
22  * Calculate the mean time, with margin of error
23  * @param times array of times (modified/sorted)
24  * @param timeCount length of array - on return, how many remain after throwing out outliers
25  * @param marginOfError out parameter: gives +/- margin of err at 95% confidence
26  * @return the mean time, or negative if error/imprecision.
27  */
28 U_INTERNAL double uprv_getMeanTime(double *times, uint32_t *timeCount, double *marginOfError);
29 
30 /**
31  * Get the standardized sieve time. (Doesn't recalculate if already computed.
32  * @param marginOfError out parameter: gives +/- margin of error at 95% confidence.
33  * @return the mean time, or negative if error/imprecision.
34  */
35 U_INTERNAL double uprv_getSieveTime(double *marginOfError);
36 
37 #endif
38