Index: trunk/psLib/src/collections/psArray.c
===================================================================
--- trunk/psLib/src/collections/psArray.c	(revision 1897)
+++ trunk/psLib/src/collections/psArray.c	(revision 1920)
@@ -9,6 +9,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.15 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-09-14 20:01:52 $
+ *  @version $Revision: 1.16 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-09-28 23:26:48 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -21,4 +21,5 @@
 /******************************************************************************/
 #include<stdlib.h>                         // for qsort, etc.
+#include<string.h>
 
 #include "psMemory.h"
@@ -58,5 +59,5 @@
 }
 
-psArray* psArrayRealloc(unsigned int nalloc, psArray* restrict in)
+psArray* psArrayRealloc(psArray* restrict in, unsigned int nalloc)
 {
     if (in == NULL) {
@@ -88,4 +89,27 @@
 }
 
+bool psArrayRemove(psArray* psArr,
+                   psPTR data)
+{
+    bool success = false;
+
+    if (psArr == NULL) {
+        return success;
+    }
+
+    int n = psArr->n;
+    psPTR* psArrData = psArr->data;
+    for (int i = n-1; i<0; i--) {
+        if (psArrData[i] == data) {
+            memmove(psArrData[i],psArrData[i+1],(n-i-1)*sizeof(psPTR));
+            n--;
+            success = true;
+        }
+    }
+    psArr->n = n; // reset the array size to indicate the removed item(s)
+
+    return success;
+}
+
 void psArrayElementFree(psArray* restrict psArr)
 {
Index: trunk/psLib/src/collections/psArray.h
===================================================================
--- trunk/psLib/src/collections/psArray.h	(revision 1897)
+++ trunk/psLib/src/collections/psArray.h	(revision 1920)
@@ -12,6 +12,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.16 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-08-11 19:47:31 $
+ *  @version $Revision: 1.17 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-09-28 23:26:48 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -20,4 +20,6 @@
 #ifndef PS_ARRAY_H
 #define PS_ARRAY_H
+
+#include<stdbool.h>
 
 #include "psType.h"
@@ -67,6 +69,19 @@
  */
 psArray* psArrayRealloc(
-    unsigned int nalloc,               ///< Total number of elements to make available.
-    psArray* restrict psArr            ///< array to reallocate.
+    psArray* restrict psArr,           ///< array to reallocate.
+    unsigned int nalloc                ///< Total number of elements to make available.
+);
+
+/** Remove an element from the array
+ *
+ *  Finds and removes the specified data pointer from the list.  
+ *
+ * @return bool:  TRUE if the specified data pointer was found and removed, 
+ *                otherwise FALSE.
+ *
+ */
+bool psArrayRemove(
+    psArray* psArr,                    ///< array to operate on
+    psPTR data                         ///< the data pointer to remove from psArray
 );
 
Index: trunk/psLib/src/collections/psVector.c
===================================================================
--- trunk/psLib/src/collections/psVector.c	(revision 1897)
+++ trunk/psLib/src/collections/psVector.c	(revision 1920)
@@ -10,6 +10,6 @@
 *  @author Robert DeSonia, MHPCC
 *
-*  @version $Revision: 1.26 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2004-09-25 02:06:12 $
+*  @version $Revision: 1.27 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2004-09-28 23:26:48 $
 *
 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -64,5 +64,5 @@
 }
 
-psVector* psVectorRealloc(unsigned int nalloc, psVector* restrict in)
+psVector* psVectorRealloc(psVector* restrict in, unsigned int nalloc)
 {
     int elementSize = 0;
Index: trunk/psLib/src/collections/psVector.h
===================================================================
--- trunk/psLib/src/collections/psVector.h	(revision 1897)
+++ trunk/psLib/src/collections/psVector.h	(revision 1920)
@@ -12,6 +12,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-09-25 02:06:12 $
+ *  @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-09-28 23:26:48 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -83,6 +83,6 @@
  */
 psVector* psVectorRealloc(
-    unsigned int nalloc,               ///< Total number of elements to make available.
-    psVector* restrict psVec           ///< Vector to reallocate.
+    psVector* restrict psVec,          ///< Vector to reallocate.
+    unsigned int nalloc                ///< Total number of elements to make available.
 );
 
