From a4349b13df5d1bd72def65143970e5ffc4ce75f6 Mon Sep 17 00:00:00 2001 From: Miroslav Lichvar Date: Tue, 19 Jul 2022 16:02:38 +0200 Subject: [PATCH] samplefilt: add function to get maximum number of samples --- samplefilt.c | 8 ++++++++ samplefilt.h | 1 + test/unit/samplefilt.c | 2 ++ 3 files changed, 11 insertions(+) diff --git a/samplefilt.c b/samplefilt.c index c3ee8b3..6b06130 100644 --- a/samplefilt.c +++ b/samplefilt.c @@ -162,6 +162,14 @@ SPF_GetNumberOfSamples(SPF_Instance filter) /* ================================================== */ +int +SPF_GetMaxSamples(SPF_Instance filter) +{ + return filter->max_samples; +} + +/* ================================================== */ + double SPF_GetAvgSampleDispersion(SPF_Instance filter) { diff --git a/samplefilt.h b/samplefilt.h index e55a776..8d72b85 100644 --- a/samplefilt.h +++ b/samplefilt.h @@ -39,6 +39,7 @@ extern void SPF_DestroyInstance(SPF_Instance filter); extern int SPF_AccumulateSample(SPF_Instance filter, NTP_Sample *sample); extern int SPF_GetLastSample(SPF_Instance filter, NTP_Sample *sample); extern int SPF_GetNumberOfSamples(SPF_Instance filter); +extern int SPF_GetMaxSamples(SPF_Instance filter); extern double SPF_GetAvgSampleDispersion(SPF_Instance filter); extern void SPF_DropSamples(SPF_Instance filter); extern int SPF_GetFilteredSample(SPF_Instance filter, NTP_Sample *sample); diff --git a/test/unit/samplefilt.c b/test/unit/samplefilt.c index 22df125..19d2f70 100644 --- a/test/unit/samplefilt.c +++ b/test/unit/samplefilt.c @@ -45,6 +45,8 @@ test_unit(void) filter = SPF_CreateInstance(min_samples, max_samples, 2.0, combine_ratio); + TEST_CHECK(max_samples == SPF_GetMaxSamples(filter)); + for (j = 0, sum_count = 0, sum_err = 0.0; j < 100; j++) { DEBUG_LOG("iteration %d/%d", i, j);