diff options
Diffstat (limited to 'src/core/global.c')
-rw-r--r-- | src/core/global.c | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/core/global.c b/src/core/global.c index 83d8f4a..d38656b 100644 --- a/src/core/global.c +++ b/src/core/global.c @@ -28,10 +28,66 @@ +/* Décompte des émissions et réceptions */ +static GMutex _network_mutex; +static size_t _bytes_received = 0; +static size_t _bytes_sent = 0; + /* Gestionnaire de tâches parallèles */ static GWorkQueue *_queue = NULL; + +/****************************************************************************** +* * +* Paramètres : received = quantité d'octets reçus jusqu'à présent. [OUT] * +* sent = quantité d'octets émis jusqu'à présent. [OUT] * +* * +* Description : Fournit les volumes d'octets échangés sur le réseau. * +* * +* Retour : - * +* * +* Remarques : - * +* * +******************************************************************************/ + +void get_network_stats(size_t *received, size_t *sent) +{ + g_mutex_lock(&_network_mutex); + + *received = _bytes_received; + *sent = _bytes_sent; + + g_mutex_unlock(&_network_mutex); + +} + + +/****************************************************************************** +* * +* Paramètres : received = quantité d'octets reçus supplémentaire. * +* sent = quantité d'octets émis supplémentaire. * +* * +* Description : Augmente les volumes d'octets échangés sur le réseau. * +* * +* Retour : - * +* * +* Remarques : - * +* * +******************************************************************************/ + +void update_network_stats(size_t received, size_t sent) +{ + g_mutex_lock(&_network_mutex); + + _bytes_received += received; + _bytes_sent += sent; + + g_mutex_unlock(&_network_mutex); + +} + + /****************************************************************************** * * * Paramètres : queue = nouveau gestionnaire à mémoriser ou NULL. * |