summaryrefslogtreecommitdiffstats
path: root/Vector.h
diff options
context:
space:
mode:
authorHisham Muhammad <hisham@gobolinux.org>2011-11-18 06:08:56 +0000
committerHisham Muhammad <hisham@gobolinux.org>2011-11-18 06:08:56 +0000
commit7ca10817122d3b7b30fabb1cadb75e5ee14b364e (patch)
tree14fa282dcad8eac9401fa463484b0b1693f43e1f /Vector.h
parent38856488815711138aa9d0ba32cca66694717171 (diff)
Mega-commit with features and tweaks for 1.0:
* Performance improvements * Support for splitting CPU meters into two or four columns (thanks to Wim Heirman) * Switch from PLPA, which is now deprecated, to HWLOC. * Bring back support for native Linux sched_setaffinity, so we don't have to use HWLOC where we don't need to. * Support for typing in user names and column fields in selection panels.
Diffstat (limited to 'Vector.h')
-rw-r--r--Vector.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/Vector.h b/Vector.h
index fc189bfa..20c0036c 100644
--- a/Vector.h
+++ b/Vector.h
@@ -18,6 +18,8 @@ in the source distribution for its full text.
#include <assert.h>
+#define swap(a_,x_,y_) do{ void* tmp_ = a_[x_]; a_[x_] = a_[y_]; a_[y_] = tmp_; }while(0)
+
#ifndef DEFAULT_SIZE
#define DEFAULT_SIZE -1
#endif
@@ -45,7 +47,14 @@ int Vector_count(Vector* this);
void Vector_prune(Vector* this);
-void Vector_sort(Vector* this);
+// If I were to use only one sorting algorithm for both cases, it would probably be this one:
+/*
+
+*/
+
+void Vector_quickSort(Vector* this);
+
+void Vector_insertionSort(Vector* this);
void Vector_insert(Vector* this, int idx, void* data_);
@@ -59,8 +68,16 @@ void Vector_moveDown(Vector* this, int idx);
void Vector_set(Vector* this, int idx, void* data_);
+#ifdef DEBUG
+
extern Object* Vector_get(Vector* this, int idx);
+#else
+
+#define Vector_get(v_, idx_) ((v_)->array[idx_])
+
+#endif
+
extern int Vector_size(Vector* this);
/*

© 2014-2024 Faster IT GmbH | imprint | privacy policy