Arc::DataSpeed Class Reference
Keeps track of average and instantaneous transfer speed.
More...
#include <DataSpeed.h>
Detailed Description
Keeps track of average and instantaneous transfer speed.
Also detects data transfer inactivity and other transfer timeouts.
Constructor & Destructor Documentation
Arc::DataSpeed::DataSpeed |
( |
time_t |
base = DATASPEED_AVERAGING_PERIOD |
) |
|
Constructor
- Parameters:
-
| base | time period used to average values (default 1 minute). |
Arc::DataSpeed::DataSpeed |
( |
unsigned long long int |
min_speed, |
|
|
time_t |
min_speed_time, |
|
|
unsigned long long int |
min_average_speed, |
|
|
time_t |
max_inactivity_time, |
|
|
time_t |
base = DATASPEED_AVERAGING_PERIOD | |
|
) |
| | |
Constructor
- Parameters:
-
| base | time period used to average values (default 1 minute). |
| min_speed | minimal allowed speed (Butes per second). If speed drops and holds below threshold for min_speed_time_ seconds error is triggered. |
| min_speed_time | |
| min_average_speed_ | minimal average speed (Bytes per second) to trigger error. Averaged over whole current transfer time. |
| max_inactivity_time | - if no data is passing for specified amount of time (seconds), error is triggered. |
Member Function Documentation
void Arc::DataSpeed::hold |
( |
bool |
disable |
) |
|
Turn off speed control.
- Parameters:
-
| disable | true to turn off. |
void Arc::DataSpeed::set_base |
( |
time_t |
base_ = DATASPEED_AVERAGING_PERIOD |
) |
|
Set averaging time period.
- Parameters:
-
| base | time period used to average values (default 1 minute). |
void Arc::DataSpeed::set_max_data |
( |
unsigned long long int |
max = 0 |
) |
|
Set amount of data to be transferred. Used in verbose messages.
- Parameters:
-
| max | amount of data in bytes. |
void Arc::DataSpeed::set_max_inactivity_time |
( |
time_t |
max_inactivity_time |
) |
|
Set inactivity tiemout.
- Parameters:
-
| max_inactivity_time | - if no data is passing for specified amount of time (seconds), error is triggered. |
void Arc::DataSpeed::set_min_average_speed |
( |
unsigned long long int |
min_average_speed |
) |
|
Set minmal avaerage speed.
- Parameters:
-
| min_average_speed_ | minimal average speed (Bytes per second) to trigger error. Averaged over whole current transfer time. |
void Arc::DataSpeed::set_min_speed |
( |
unsigned long long int |
min_speed, |
|
|
time_t |
min_speed_time | |
|
) |
| | |
Set minimal allowed speed.
- Parameters:
-
| min_speed | minimal allowed speed (Butes per second). If speed drops and holds below threshold for min_speed_time_ seconds error is triggered. |
| min_speed_time | |
void Arc::DataSpeed::set_progress_indicator |
( |
show_progress_t |
func = NULL |
) |
|
Specify which external function will print verbose messages. If not specified internal one is used.
- Parameters:
-
| pointer | to function which prints information. |
bool Arc::DataSpeed::transfer |
( |
unsigned long long int |
n = 0 |
) |
|
Inform object, about amount of data has been transferred. All errors are triggered by this method. To make them work application must call this method periodically even with zero value.
- Parameters:
-
| n | amount of data transferred (bytes). |
void Arc::DataSpeed::verbose |
( |
const std::string & |
prefix |
) |
|
Print information about current speed and amout of data.
- Parameters:
-
| 'prefix' | add this string at the beginning of every string. |
void Arc::DataSpeed::verbose |
( |
bool |
val |
) |
|
Activate printing information about current time speeds, amount of transferred data.
The documentation for this class was generated from the following file: