diff mbox

[i-g-t,06/18] stats: Add a getter for the population property

Message ID 1435417696-28115-7-git-send-email-damien.lespiau@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Lespiau, Damien June 27, 2015, 3:08 p.m. UTC
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
---
 lib/igt_stats.c       | 14 ++++++++++++++
 lib/igt_stats.h       |  2 ++
 lib/tests/igt_stats.c | 14 ++++++++++++++
 3 files changed, 30 insertions(+)
diff mbox

Patch

diff --git a/lib/igt_stats.c b/lib/igt_stats.c
index c7d5fbd..12cabba 100644
--- a/lib/igt_stats.c
+++ b/lib/igt_stats.c
@@ -91,6 +91,20 @@  void igt_stats_fini(igt_stats_t *stats)
 	free(stats->values);
 }
 
+
+/**
+ * igt_stats_is_population:
+ * @stats: An #igt_stats_t instance
+ *
+ * Returns: #true if @stats represents a population, #false if only a sample.
+ *
+ * See igt_stats_set_population() for more details.
+ */
+bool igt_stats_is_population(igt_stats_t *stats)
+{
+	return stats->is_population;
+}
+
 /**
  * igt_stats_set_population:
  * @stats: An #igt_stats_t instance
diff --git a/lib/igt_stats.h b/lib/igt_stats.h
index d2c1cc7..ebc28ca 100644
--- a/lib/igt_stats.h
+++ b/lib/igt_stats.h
@@ -26,6 +26,7 @@ 
 #define __IGT_STATS_H__
 
 #include <stdint.h>
+#include <stdbool.h>
 
 /**
  * igt_stats_t:
@@ -45,6 +46,7 @@  typedef struct {
 
 void igt_stats_init(igt_stats_t *stats, unsigned int capacity);
 void igt_stats_fini(igt_stats_t *stats);
+bool igt_stats_is_population(igt_stats_t *stats);
 void igt_stats_set_population(igt_stats_t *stats, bool full_population);
 void igt_stats_push(igt_stats_t *stats, uint64_t value);
 double igt_stats_get_mean(igt_stats_t *stats);
diff --git a/lib/tests/igt_stats.c b/lib/tests/igt_stats.c
index 59097c8..5c5e86a 100644
--- a/lib/tests/igt_stats.c
+++ b/lib/tests/igt_stats.c
@@ -35,6 +35,19 @@  static void test_init_zero(void)
 	igt_assert(stats.mean == 0.);
 }
 
+static void test_init(void)
+{
+	igt_stats_t stats;
+
+	igt_stats_init(&stats, 2);
+
+	/*
+	 * Make sure we default to representing only a sample of a bigger
+	 * population.
+	 */
+	igt_assert(igt_stats_is_population(&stats) == false);
+}
+
 static void test_mean(void)
 {
 	igt_stats_t stats;
@@ -115,6 +128,7 @@  static void test_std_deviation(void)
 igt_simple_main
 {
 	test_init_zero();
+	test_init();
 	test_mean();
 	test_invalidate_mean();
 	test_std_deviation();