Home | History | Annotate | Download | only in howExpensiveIs
      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