src/utils_latency.[ch]: get_rate(): Make lower bound exclusive.
[collectd.git] / src / utils_latency.h
index e7c2fc3..8fdf024 100644 (file)
@@ -1,6 +1,6 @@
 /**
  * collectd - src/utils_latency.h
- * Copyright (C) 2013  Florian Forster
+ * Copyright (C) 2013       Florian Forster
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
  **/
 
 #include "collectd.h"
+
 #include "utils_time.h"
 
+#ifndef HISTOGRAM_NUM_BINS
+# define HISTOGRAM_NUM_BINS 1000
+#endif
+
 struct latency_counter_s;
 typedef struct latency_counter_s latency_counter_t;
 
@@ -44,4 +49,18 @@ cdtime_t latency_counter_get_average (latency_counter_t *lc);
 cdtime_t latency_counter_get_percentile (latency_counter_t *lc,
     double percent);
 
+/*
+ * NAME
+ *  latency_counter_get_rate(counter,lower,upper,now)
+ *
+ * DESCRIPTION
+ *   Calculates rate of latency values fall within requested interval.
+ *   Interval specified as (lower,upper], i.e. the lower boundary is exclusive,
+ *   the upper boundary is inclusive.
+ *   When lower is zero, then the interval is (0, upper].
+ *   When upper is zero, then the interval is (lower, infinity).
+ */
+double latency_counter_get_rate (const latency_counter_t *lc,
+    cdtime_t lower, cdtime_t upper, const cdtime_t now);
+
 /* vim: set sw=2 sts=2 et : */