Index: /branches/jch-memory/psLib/src/sys/Makefile.am
===================================================================
--- /branches/jch-memory/psLib/src/sys/Makefile.am	(revision 11014)
+++ /branches/jch-memory/psLib/src/sys/Makefile.am	(revision 11015)
@@ -15,4 +15,5 @@
 	psString.c     \
 	psTrace.c      \
+	psType.c       \
     strcasestr.c 
 
Index: /branches/jch-memory/psLib/src/sys/psMemory.c
===================================================================
--- /branches/jch-memory/psLib/src/sys/psMemory.c	(revision 11014)
+++ /branches/jch-memory/psLib/src/sys/psMemory.c	(revision 11015)
@@ -10,6 +10,6 @@
 *  @author Joshua Hoblitt, University of Hawaii
 *
-*  @version $Revision: 1.88.2.24 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2007-01-10 22:30:23 $
+*  @version $Revision: 1.88.2.25 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-01-11 00:20:31 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -34,15 +34,4 @@
 #include "psMemory.h"
 #include "psError.h"
-
-#include "psBitSet.h"
-#include "psFits.h"
-#include "psPixels.h"
-#include "psSphereOps.h"
-#include "psMinimizeLMM.h"
-#include "psImageConvolve.h"
-#include "psTime.h"
-#include "psLine.h"
-#include "psRegion.h"
-#include "psHistogram.h"
 
 #define MUTEX_LOCK(mutexPtr) \
@@ -838,180 +827,4 @@
 }
 
-bool psMemCheckType(psDataType type,
-                    psPtr ptr)
-{
-    if (!ptr) {
-        return false;
-    }
-
-    switch(type) {
-    case PS_DATA_ARRAY:
-        if (psMemCheckArray(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_BITSET:
-        if (psMemCheckBitSet(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_CUBE:
-        if (psMemCheckCube(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_FITS:
-        if (psMemCheckFits(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_HASH:
-        if (psMemCheckHash(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_HISTOGRAM:
-        if (psMemCheckHistogram(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_IMAGE:
-        if (psMemCheckImage(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_KERNEL:
-        if (psMemCheckKernel(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_LINE:
-        if (psMemCheckLine(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_LIST:
-        if (psMemCheckList(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_LOOKUPTABLE:
-        if (psMemCheckLookupTable(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_METADATA:
-        if (psMemCheckMetadata(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_METADATAITEM:
-        if (psMemCheckMetadataItem(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_MINIMIZATION:
-        if (psMemCheckMinimization(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_PIXELS:
-        if (psMemCheckPixels(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_PLANE:
-        if (psMemCheckPlane(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_PLANEDISTORT:
-        if (psMemCheckPlaneDistort(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_PLANETRANSFORM:
-        if (psMemCheckPlaneTransform(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_POLYNOMIAL1D:
-        if (psMemCheckPolynomial1D(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_POLYNOMIAL2D:
-        if (psMemCheckPolynomial2D(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_POLYNOMIAL3D:
-        if (psMemCheckPolynomial3D(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_POLYNOMIAL4D:
-        if (psMemCheckPolynomial4D(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_PROJECTION:
-        if (psMemCheckProjection(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_REGION:
-        if (psMemCheckRegion(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_SCALAR:
-        if (psMemCheckScalar(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_SPHERE:
-        if (psMemCheckSphere(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_SPHEREROT:
-        if (psMemCheckSphereRot(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_SPLINE1D:
-        if (psMemCheckSpline1D(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_STATS:
-        if (psMemCheckStats(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_STRING:
-        if (psMemCheckString(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_TIME:
-        if (psMemCheckTime(ptr)) {
-            return true;
-        }
-        break;
-    case PS_DATA_VECTOR:
-        if (psMemCheckVector(ptr)) {
-            return true;
-        }
-        break;
-    default:
-        // error state -- fall through to returning false
-        break;
-    }
-
-    return false;
-}
-
 bool psMemSetThreadSafety(bool safe)
 {
Index: /branches/jch-memory/psLib/src/sys/psMemory.h
===================================================================
--- /branches/jch-memory/psLib/src/sys/psMemory.h	(revision 11014)
+++ /branches/jch-memory/psLib/src/sys/psMemory.h	(revision 11015)
@@ -14,6 +14,6 @@
  *  @ingroup MemoryManagement
  *
- *  @version $Revision: 1.61.2.11 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-01-09 22:23:05 $
+ *  @version $Revision: 1.61.2.12 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-01-11 00:20:31 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -240,13 +240,4 @@
 
 
-/** Checks the deallocator to see if the pointer matches the desired datatype.
- *
- *  @return bool:       True if type matches, otherwise false.
- */
-bool psMemCheckType(
-    psDataType type,                   ///< The desired psDataType to match
-    psPtr ptr                          ///< The desired pointer to match
-);
-
 /** Activate or Deactivate thread safety and mutex locking in the memory management.
  *
Index: /branches/jch-memory/psLib/src/sys/psType.h
===================================================================
--- /branches/jch-memory/psLib/src/sys/psType.h	(revision 11014)
+++ /branches/jch-memory/psLib/src/sys/psType.h	(revision 11015)
@@ -10,6 +10,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.52 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2006-10-14 00:02:31 $
+*  @version $Revision: 1.52.2.1 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-01-11 00:20:31 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -300,4 +300,13 @@
 psMath;
 
+/** Checks the deallocator to see if the pointer matches the desired datatype.
+ *
+ *  @return bool:       True if type matches, otherwise false.
+ */
+bool psMemCheckType(
+    psDataType type,                   ///< The desired psDataType to match
+    psPtr ptr                          ///< The desired pointer to match
+);
+
 /// @}
 
Index: /trunk/psLib/src/sys/psType.c
===================================================================
--- /trunk/psLib/src/sys/psType.c	(revision 11015)
+++ /trunk/psLib/src/sys/psType.c	(revision 11015)
@@ -0,0 +1,208 @@
+/** @file  psType.c
+*
+*  @brief Contains psType checking functions
+*
+*  @author Robert DeSonia, MHPCC
+*  @author Robert Lupton, Princeton University
+*  @author Joshua Hoblitt, University of Hawaii
+*
+*  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-01-11 00:20:31 $
+*
+*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
+*/
+
+#if HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <stdbool.h>
+
+#include "psType.h"
+
+#include "psBitSet.h"
+#include "psFits.h"
+#include "psPixels.h"
+#include "psSphereOps.h"
+#include "psMinimizeLMM.h"
+#include "psImageConvolve.h"
+#include "psTime.h"
+#include "psLine.h"
+#include "psRegion.h"
+#include "psHistogram.h"
+
+bool psMemCheckType(psDataType type,
+                    psPtr ptr)
+{
+    if (!ptr) {
+        return false;
+    }
+
+    switch(type) {
+    case PS_DATA_ARRAY:
+        if (psMemCheckArray(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_BITSET:
+        if (psMemCheckBitSet(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_CUBE:
+        if (psMemCheckCube(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_FITS:
+        if (psMemCheckFits(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_HASH:
+        if (psMemCheckHash(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_HISTOGRAM:
+        if (psMemCheckHistogram(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_IMAGE:
+        if (psMemCheckImage(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_KERNEL:
+        if (psMemCheckKernel(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_LINE:
+        if (psMemCheckLine(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_LIST:
+        if (psMemCheckList(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_LOOKUPTABLE:
+        if (psMemCheckLookupTable(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_METADATA:
+        if (psMemCheckMetadata(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_METADATAITEM:
+        if (psMemCheckMetadataItem(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_MINIMIZATION:
+        if (psMemCheckMinimization(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_PIXELS:
+        if (psMemCheckPixels(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_PLANE:
+        if (psMemCheckPlane(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_PLANEDISTORT:
+        if (psMemCheckPlaneDistort(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_PLANETRANSFORM:
+        if (psMemCheckPlaneTransform(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_POLYNOMIAL1D:
+        if (psMemCheckPolynomial1D(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_POLYNOMIAL2D:
+        if (psMemCheckPolynomial2D(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_POLYNOMIAL3D:
+        if (psMemCheckPolynomial3D(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_POLYNOMIAL4D:
+        if (psMemCheckPolynomial4D(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_PROJECTION:
+        if (psMemCheckProjection(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_REGION:
+        if (psMemCheckRegion(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_SCALAR:
+        if (psMemCheckScalar(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_SPHERE:
+        if (psMemCheckSphere(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_SPHEREROT:
+        if (psMemCheckSphereRot(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_SPLINE1D:
+        if (psMemCheckSpline1D(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_STATS:
+        if (psMemCheckStats(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_STRING:
+        if (psMemCheckString(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_TIME:
+        if (psMemCheckTime(ptr)) {
+            return true;
+        }
+        break;
+    case PS_DATA_VECTOR:
+        if (psMemCheckVector(ptr)) {
+            return true;
+        }
+        break;
+    default:
+        // error state -- fall through to returning false
+        break;
+    }
+
+    return false;
+}
