[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[or-cvs] [tor/master] Add a median_int32 and find_nth_int32



Author: Nick Mathewson <nickm@xxxxxxxxxxxxxx>
Date: Mon, 14 Sep 2009 23:14:03 -0400
Subject: Add a median_int32 and find_nth_int32
Commit: 0edc39303d32537ed95c171de6a7ad0f068b60df

---
 src/common/container.c |    1 +
 src/common/container.h |    6 ++++++
 2 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/src/common/container.c b/src/common/container.c
index c649787..12ac252 100644
--- a/src/common/container.c
+++ b/src/common/container.c
@@ -1220,6 +1220,7 @@ IMPLEMENT_ORDER_FUNC(find_nth_int, int)
 IMPLEMENT_ORDER_FUNC(find_nth_time, time_t)
 IMPLEMENT_ORDER_FUNC(find_nth_double, double)
 IMPLEMENT_ORDER_FUNC(find_nth_uint32, uint32_t)
+IMPLEMENT_ORDER_FUNC(find_nth_int32, int32_t)
 IMPLEMENT_ORDER_FUNC(find_nth_long, long)
 
 /** Return a newly allocated digestset_t, optimized to hold a total of
diff --git a/src/common/container.h b/src/common/container.h
index e626552..4495a7a 100644
--- a/src/common/container.h
+++ b/src/common/container.h
@@ -627,6 +627,7 @@ void digestset_free(digestset_t* set);
 int find_nth_int(int *array, int n_elements, int nth);
 time_t find_nth_time(time_t *array, int n_elements, int nth);
 double find_nth_double(double *array, int n_elements, int nth);
+int32_t find_nth_int32(int32_t *array, int n_elements, int nth);
 uint32_t find_nth_uint32(uint32_t *array, int n_elements, int nth);
 long find_nth_long(long *array, int n_elements, int nth);
 static INLINE int
@@ -649,6 +650,11 @@ median_uint32(uint32_t *array, int n_elements)
 {
   return find_nth_uint32(array, n_elements, (n_elements-1)/2);
 }
+static INLINE int32_t
+median_int32(int32_t *array, int n_elements)
+{
+  return find_nth_int32(array, n_elements, (n_elements-1)/2);
+}
 static INLINE long
 median_long(long *array, int n_elements)
 {
-- 
1.5.6.5