3 #ifndef __ARC_DATASPEED_H__ 
    4 #define __ARC_DATASPEED_H__ 
    8 #include <arc/Logger.h> 
   10 #define DATASPEED_AVERAGING_PERIOD 60 
   24     time_t last_activity_time;
 
   25     unsigned long long int N;
 
   26     unsigned long long int Nall;
 
   27     unsigned long long int Nmax;
 
   28     time_t first_speed_failure;
 
   32     time_t min_speed_time;
 
   33     time_t max_inactivity_time;
 
   34     unsigned long long int min_speed;
 
   35     unsigned long long int min_average_speed;
 
   37     std::string verbose_prefix;
 
   39     bool min_speed_failed;
 
   40     bool min_average_speed_failed;
 
   41     bool max_inactivity_time_failed;
 
   60                                     unsigned long long int all,
 
   61                                     unsigned long long int max,
 
   62                                     double instant, 
double average);
 
   65     void print_statistics(FILE *o, time_t t);
 
   71     DataSpeed(time_t base = DATASPEED_AVERAGING_PERIOD);
 
   84     DataSpeed(
unsigned long long int min_speed, time_t min_speed_time,
 
   85               unsigned long long int min_average_speed,
 
   86               time_t max_inactivity_time,
 
   87               time_t base = DATASPEED_AVERAGING_PERIOD);
 
   93     void verbose(
const std::string& prefix);
 
  104                        time_t min_speed_time);
 
  120     void set_base(time_t base_ = DATASPEED_AVERAGING_PERIOD);
 
  138     bool transfer(
unsigned long long int n = 0);
 
  140     void hold(
bool disable);
 
  143       return min_speed_failed;
 
  147       return min_average_speed_failed;
 
  151       return max_inactivity_time_failed;
 
  161 #endif // __ARC_DATASPEED_H__