refacor(stats): split stat module into more files
This commit is contained in:
parent
770265ee80
commit
79bc8b7424
4 changed files with 33 additions and 26 deletions
|
|
@ -28,7 +28,6 @@ PING_SRCS = $(CLI_SRCS) \
|
||||||
$(PING_SRC_DIR)/core/loop.c \
|
$(PING_SRC_DIR)/core/loop.c \
|
||||||
$(PING_SRC_DIR)/core/send.c \
|
$(PING_SRC_DIR)/core/send.c \
|
||||||
$(PING_SRC_DIR)/core/callback.c \
|
$(PING_SRC_DIR)/core/callback.c \
|
||||||
$(PING_SRC_DIR)/stats/stats.c \
|
|
||||||
$(PING_SRC_DIR)/tracker/init.c \
|
$(PING_SRC_DIR)/tracker/init.c \
|
||||||
$(PING_SRC_DIR)/tracker/record_send.c \
|
$(PING_SRC_DIR)/tracker/record_send.c \
|
||||||
$(PING_SRC_DIR)/tracker/record_recv.c \
|
$(PING_SRC_DIR)/tracker/record_recv.c \
|
||||||
|
|
@ -38,6 +37,10 @@ PING_SRCS = $(CLI_SRCS) \
|
||||||
$(PING_SRC_DIR)/output/summary.c \
|
$(PING_SRC_DIR)/output/summary.c \
|
||||||
$(PING_SRC_DIR)/output/flood.c \
|
$(PING_SRC_DIR)/output/flood.c \
|
||||||
$(PING_SRC_DIR)/scheduler/scheduler.c \
|
$(PING_SRC_DIR)/scheduler/scheduler.c \
|
||||||
|
$(PING_SRC_DIR)/stats/stats_get.c \
|
||||||
|
$(PING_SRC_DIR)/stats/stats_init.c \
|
||||||
|
$(PING_SRC_DIR)/stats/stats_update.c \
|
||||||
|
|
||||||
|
|
||||||
PING_TESTS_DIR = tests
|
PING_TESTS_DIR = tests
|
||||||
PING_TESTS = $(PING_TESTS_DIR)/test_main.c \
|
PING_TESTS = $(PING_TESTS_DIR)/test_main.c \
|
||||||
|
|
|
||||||
|
|
@ -7,31 +7,6 @@
|
||||||
static double compute_mdev_ms(const struct ping_stats *s, double avg_ms);
|
static double compute_mdev_ms(const struct ping_stats *s, double avg_ms);
|
||||||
/* -------------------- */
|
/* -------------------- */
|
||||||
|
|
||||||
void
|
|
||||||
ping_stats_init(struct ping_stats *s)
|
|
||||||
{
|
|
||||||
s->min_ns = INT64_MAX;
|
|
||||||
s->max_ns = INT64_MIN;
|
|
||||||
s->sum_ns = 0;
|
|
||||||
s->sum_sq_ns = 0;
|
|
||||||
s->count = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
ping_stats_update(struct ping_stats *s, int64_t rtt_ns)
|
|
||||||
{
|
|
||||||
int64_t rtt_us;
|
|
||||||
|
|
||||||
if (rtt_ns < s->min_ns)
|
|
||||||
s->min_ns = rtt_ns;
|
|
||||||
if (rtt_ns > s->max_ns)
|
|
||||||
s->max_ns = rtt_ns;
|
|
||||||
s->sum_ns += rtt_ns;
|
|
||||||
rtt_us = rtt_ns / 1000;
|
|
||||||
s->sum_sq_ns += rtt_us * rtt_us;
|
|
||||||
s->count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
ping_stats_get(const struct ping_stats *s,
|
ping_stats_get(const struct ping_stats *s,
|
||||||
double *min_ms, double *max_ms, double *avg_ms, double *mdev_ms)
|
double *min_ms, double *max_ms, double *avg_ms, double *mdev_ms)
|
||||||
12
src/ping/stats/stats_init.c
Normal file
12
src/ping/stats/stats_init.c
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
#include "internal/ping/stats.h"
|
||||||
|
|
||||||
|
void
|
||||||
|
ping_stats_init(struct ping_stats *s)
|
||||||
|
{
|
||||||
|
s->min_ns = INT64_MAX;
|
||||||
|
s->max_ns = INT64_MIN;
|
||||||
|
s->sum_ns = 0;
|
||||||
|
s->sum_sq_ns = 0;
|
||||||
|
s->count = 0;
|
||||||
|
}
|
||||||
|
|
||||||
17
src/ping/stats/stats_update.c
Normal file
17
src/ping/stats/stats_update.c
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
#include "internal/ping/stats.h"
|
||||||
|
|
||||||
|
void
|
||||||
|
ping_stats_update(struct ping_stats *s, int64_t rtt_ns)
|
||||||
|
{
|
||||||
|
int64_t rtt_us;
|
||||||
|
|
||||||
|
if (rtt_ns < s->min_ns)
|
||||||
|
s->min_ns = rtt_ns;
|
||||||
|
if (rtt_ns > s->max_ns)
|
||||||
|
s->max_ns = rtt_ns;
|
||||||
|
s->sum_ns += rtt_ns;
|
||||||
|
rtt_us = rtt_ns / 1000;
|
||||||
|
s->sum_sq_ns += rtt_us * rtt_us;
|
||||||
|
s->count++;
|
||||||
|
}
|
||||||
|
|
||||||
Loading…
Add table
Reference in a new issue