Index: /trunk/psLib/configure.ac
===================================================================
--- /trunk/psLib/configure.ac	(revision 4127)
+++ /trunk/psLib/configure.ac	(revision 4128)
@@ -119,7 +119,7 @@
 ]])], [], [AC_MSG_ERROR([MySQL 4.1.2 or newer is required.  Obtain it at  http://www.mysql.com or use --with-mysql to specify location.])])
 
-  CFLAGS="${CFLAGS=} -DBUILD_PSDB"
-  PSLIB_CFLAGS="${PSLIB_CFLAGS=} -DBUILD_PSDB"
 else
+  CFLAGS="${CFLAGS=} -DOMIT_PSDB"
+  PSLIB_CFLAGS="${PSLIB_CFLAGS=} -DOMIT_PSDB"
   AC_MSG_RESULT([disable building MySQL functionality])
 fi
Index: /trunk/psLib/pslib.kdevses
===================================================================
--- /trunk/psLib/pslib.kdevses	(revision 4127)
+++ /trunk/psLib/pslib.kdevses	(revision 4128)
@@ -2,29 +2,23 @@
 <!DOCTYPE KDevPrjSession>
 <KDevPrjSession>
- <DocsAndViews NumberOfDocuments="8" >
+ <DocsAndViews NumberOfDocuments="6" >
   <Doc0 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/test/collections/tst_psPixels.c" >
    <View0 line="329" Type="Source" />
   </Doc0>
-  <Doc1 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/test/astronomy/tst_psAstrometry01.c" >
-   <View0 line="982" Type="Source" />
+  <Doc1 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/src/image/psImagePixelManip.c" >
+   <View0 line="353" Type="Source" />
   </Doc1>
-  <Doc2 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/test/image/tst_psImage.c" >
-   <View0 line="28" Type="Source" />
+  <Doc2 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/src/image/psImageErrors.dat" >
+   <View0 line="0" Type="Source" />
   </Doc2>
-  <Doc3 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/test/image/tst_psImageStructManip.c" >
-   <View0 line="47" Type="Source" />
+  <Doc3 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/src/astronomy/psCoord.h" >
+   <View0 line="386" Type="Source" />
   </Doc3>
-  <Doc4 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/test/image/tst_psImageConvolve.c" >
-   <View0 line="435" Type="Source" />
+  <Doc4 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/src/astronomy/psCoord.c" >
+   <View0 line="1175" Type="Source" />
   </Doc4>
-  <Doc5 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/src/image/psImageConvolve.c" >
-   <View0 line="456" Type="Source" />
+  <Doc5 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/autogen.sh" >
+   <View0 line="95" Type="Source" />
   </Doc5>
-  <Doc6 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/src/dataIO/psFits.c" >
-   <View0 line="627" Type="Source" />
-  </Doc6>
-  <Doc7 NumberOfViews="1" URL="file:///home/desonia/panstarrs/psLib/test/image/tst_psImageStats.c" >
-   <View0 line="114" Type="Source" />
-  </Doc7>
  </DocsAndViews>
  <pluginList>
Index: /trunk/psLib/src/dataIO/psDB.c
===================================================================
--- /trunk/psLib/src/dataIO/psDB.c	(revision 4127)
+++ /trunk/psLib/src/dataIO/psDB.c	(revision 4128)
@@ -12,11 +12,11 @@
  *  @author Joshua Hoblitt
  *
- *  @version $Revision: 1.20 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-06-03 23:48:38 $
+ *  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2005 Joshua Hoblitt, University of Hawaii
  */
 
-#ifdef BUILD_PSDB
+#ifndef OMIT_PSDB
 
 #include <stdio.h>
@@ -1623,3 +1623,3 @@
 }
 
-#endif // BUILD_PSDB
+#endif // OMIT_PSDB
Index: /trunk/psLib/src/dataIO/psDB.h
===================================================================
--- /trunk/psLib/src/dataIO/psDB.h	(revision 4127)
+++ /trunk/psLib/src/dataIO/psDB.h	(revision 4128)
@@ -10,6 +10,6 @@
  *  @author Joshua Hoblitt
  *
- *  @version $Revision: 1.6 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-18 00:55:36 $
+ *  @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2005 Joshua Hoblitt, University of Hawaii
@@ -19,5 +19,5 @@
 #define PS_DB_H 1
 
-#ifdef BUILD_PSDB
+#ifndef OMIT_PSDB
 
 #include "psType.h"
@@ -109,5 +109,5 @@
  * string.  The value of the psMetadataItem.data element is unused for the
  * PS_META_PRIMITIVE types.  Other psMetadata types beyond PS_META_STR and
- * PS_META_PRIMITIVE are not allowed in a table definition.  
+ * PS_META_PRIMITIVE are not allowed in a table definition.
  *
  * Database indexes can be specified setting the "comment" field to "Primary
@@ -276,5 +276,5 @@
 /// @}
 
-#endif // BUILD_PSDB
+#endif // OMIT_PSDB
 
 #endif // PS_DB_H
Index: /trunk/psLib/src/dataManip/psMinimize.c
===================================================================
--- /trunk/psLib/src/dataManip/psMinimize.c	(revision 4127)
+++ /trunk/psLib/src/dataManip/psMinimize.c	(revision 4128)
@@ -9,6 +9,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.120 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-25 20:26:55 $
+ *  @version $Revision: 1.121 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -28,5 +28,4 @@
 #include "psImage.h"
 #include "psImageStructManip.h"
-#include "psImageIO.h"
 /*****************************************************************************/
 /* DEFINE STATEMENTS                                                         */
Index: /trunk/psLib/src/db/psDB.c
===================================================================
--- /trunk/psLib/src/db/psDB.c	(revision 4127)
+++ /trunk/psLib/src/db/psDB.c	(revision 4128)
@@ -12,11 +12,11 @@
  *  @author Joshua Hoblitt
  *
- *  @version $Revision: 1.20 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-06-03 23:48:38 $
+ *  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2005 Joshua Hoblitt, University of Hawaii
  */
 
-#ifdef BUILD_PSDB
+#ifndef OMIT_PSDB
 
 #include <stdio.h>
@@ -1623,3 +1623,3 @@
 }
 
-#endif // BUILD_PSDB
+#endif // OMIT_PSDB
Index: /trunk/psLib/src/db/psDB.h
===================================================================
--- /trunk/psLib/src/db/psDB.h	(revision 4127)
+++ /trunk/psLib/src/db/psDB.h	(revision 4128)
@@ -10,6 +10,6 @@
  *  @author Joshua Hoblitt
  *
- *  @version $Revision: 1.6 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-18 00:55:36 $
+ *  @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2005 Joshua Hoblitt, University of Hawaii
@@ -19,5 +19,5 @@
 #define PS_DB_H 1
 
-#ifdef BUILD_PSDB
+#ifndef OMIT_PSDB
 
 #include "psType.h"
@@ -109,5 +109,5 @@
  * string.  The value of the psMetadataItem.data element is unused for the
  * PS_META_PRIMITIVE types.  Other psMetadata types beyond PS_META_STR and
- * PS_META_PRIMITIVE are not allowed in a table definition.  
+ * PS_META_PRIMITIVE are not allowed in a table definition.
  *
  * Database indexes can be specified setting the "comment" field to "Primary
@@ -276,5 +276,5 @@
 /// @}
 
-#endif // BUILD_PSDB
+#endif // OMIT_PSDB
 
 #endif // PS_DB_H
Index: /trunk/psLib/src/fft/psImageFFT.c
===================================================================
--- /trunk/psLib/src/fft/psImageFFT.c	(revision 4127)
+++ /trunk/psLib/src/fft/psImageFFT.c	(revision 4128)
@@ -5,6 +5,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 05:18:20 $
+ *  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -19,5 +19,4 @@
 #include "psMemory.h"
 #include "psLogMsg.h"
-#include "psImageIO.h"
 #include "psImageStructManip.h"
 
Index: /trunk/psLib/src/image/Makefile.am
===================================================================
--- /trunk/psLib/src/image/Makefile.am	(revision 4127)
+++ /trunk/psLib/src/image/Makefile.am	(revision 4128)
@@ -15,5 +15,4 @@
 	psImagePixelExtract.c \
 	psImageStructManip.c \
-	psImageIO.c \
 	psImageGeomManip.c \
 	psImagePixelManip.c \
@@ -33,5 +32,4 @@
 	psImagePixelExtract.h \
 	psImageStructManip.h \
-	psImageIO.h \
 	psImageGeomManip.h \
 	psImagePixelManip.h \
Index: /trunk/psLib/src/image/image.i
===================================================================
--- /trunk/psLib/src/image/image.i	(revision 4127)
+++ /trunk/psLib/src/image/image.i	(revision 4128)
@@ -6,5 +6,4 @@
 %include "psImageFFT.h"
 %include "psImage.h"
-%include "psImageIO.h"
 %include "psImageGeomManip.h"
 %include "psImagePixelManip.h"
Index: /trunk/psLib/src/image/psImage.c
===================================================================
--- /trunk/psLib/src/image/psImage.c	(revision 4127)
+++ /trunk/psLib/src/image/psImage.c	(revision 4128)
@@ -9,6 +9,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.66 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 05:18:20 $
+ *  @version $Revision: 1.67 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -352,4 +352,19 @@
 
     return numFreed;
+}
+
+bool p_psImagePrint (FILE *f, psImage *a, char *name)
+{
+
+    fprintf (f, "matrix: %s\n", name);
+
+    for (int j = 0; j < a[0].numRows; j++) {
+        for (int i = 0; i < a[0].numCols; i++) {
+            fprintf (f, "%f  ", p_psImageGetElementF64(a, i, j));
+        }
+        fprintf (f, "\n");
+    }
+    fprintf (f, "\n");
+    return (true);
 }
 
Index: /trunk/psLib/src/image/psImage.h
===================================================================
--- /trunk/psLib/src/image/psImage.h	(revision 4127)
+++ /trunk/psLib/src/image/psImage.h	(revision 4128)
@@ -11,6 +11,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.53 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 23:57:37 $
+ *  @version $Revision: 1.54 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -176,4 +176,14 @@
 );
 
+/** print image pixel values.
+ *
+ *  @return bool    TRUE is successful, otherwise FALSE.
+ */
+bool p_psImagePrint(
+    FILE *f,                           ///< Destination stream
+    psImage *a,                        ///< image to print
+    char *name                         ///< name of the image (for title)
+);
+
 /** Interpolate image pixel value given floating point coordinates.
  *
Index: /trunk/psLib/src/image/psImageConvolve.c
===================================================================
--- /trunk/psLib/src/image/psImageConvolve.c	(revision 4127)
+++ /trunk/psLib/src/image/psImageConvolve.c	(revision 4128)
@@ -5,6 +5,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.16 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 05:18:20 $
+ *  @version $Revision: 1.17 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -20,5 +20,4 @@
 #include "psLogMsg.h"
 #include "psError.h"
-#include "psImageIO.h"
 
 #include "psImageErrors.h"
Index: /trunk/psLib/src/image/psImageFFT.c
===================================================================
--- /trunk/psLib/src/image/psImageFFT.c	(revision 4127)
+++ /trunk/psLib/src/image/psImageFFT.c	(revision 4128)
@@ -5,6 +5,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 05:18:20 $
+ *  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -19,5 +19,4 @@
 #include "psMemory.h"
 #include "psLogMsg.h"
-#include "psImageIO.h"
 #include "psImageStructManip.h"
 
Index: unk/psLib/src/image/psImageIO.c
===================================================================
--- /trunk/psLib/src/image/psImageIO.c	(revision 4127)
+++ 	(revision )
@@ -1,436 +1,0 @@
-/** @file  psImageIO.c
- *
- *  @brief Contains image I/O routines.
- *
- *  This file defines the file input/output functions for the psImage structure.
- *
- *  @author Robert DeSonia, MHPCC
- *
- *  @version $Revision: 1.19 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-04-29 02:25:10 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- */
-
-#include <fitsio.h>
-#include <unistd.h>
-
-#include "psImageIO.h"
-#include "psError.h"
-#include "psMemory.h"
-#include "psLogMsg.h"
-
-#include "psImageErrors.h"
-
-psImage* psImageReadSection(psImage* output,
-                            psS32 col,
-                            psS32 row,
-                            psS32 numCols,
-                            psS32 numRows,
-                            psS32 z,
-                            char *extname,
-                            psS32 extnum,
-                            char *filename)
-{
-    fitsfile *fptr = NULL;      /* Pointer to the FITS file */
-    psS32 status = 0;           /* CFITSIO file vars */
-    psS32 nAxis = 0;
-    psS32 anynull = 0;
-    psS32 bitPix = 0;           /* Pixel type */
-    long nAxes[3];
-    long firstPixel[3];         /* lower-left corner of image subset */
-    long lastPixel[3];          /* upper-right corner of image subset */
-    long increment[3];          /* increment for image subset */
-    char fitsErr[80] = "";      /* CFITSIO error message string */
-    psS32 hduType = IMAGE_HDU;
-    psS32 fitsDatatype = 0;
-    psS32 datatype = 0;
-
-    psLogMsg(__func__,PS_LOG_WARN, "psImageReadSection is deprecated.  Consider using psFitsReadImage instead.");
-
-    if (filename == NULL) {
-        psError(PS_ERR_BAD_PARAMETER_NULL, true,
-                PS_ERRORTEXT_psImageIO_FILENAME_NULL);
-        psFree(output);
-        return NULL;
-    }
-
-    /* Open the FITS file */
-    (void)fits_open_file(&fptr, filename, READONLY, &status);
-    if (fptr == NULL || status != 0) {
-        fits_get_errstatus(status, fitsErr);
-        psError(PS_ERR_BAD_PARAMETER_VALUE, true,
-                PS_ERRORTEXT_psImageIO_FILENAME_INVALID,
-                filename, fitsErr);
-        psFree(output);
-        return NULL;
-    }
-
-    /* find the specified extension */
-    if (extname != NULL) {
-        if (fits_movnam_hdu(fptr, hduType, extname, 0, &status) != 0) {
-            fits_get_errstatus(status, fitsErr);
-            status = 0;
-            (void)fits_close_file(fptr, &status);
-            psError(PS_ERR_LOCATION_INVALID, true,
-                    PS_ERRORTEXT_psImageIO_EXTNAME_INVALID,
-                    extname, filename, fitsErr);
-            psFree(output);
-            return NULL;
-        }
-    } else {
-        if (fits_movabs_hdu(fptr, extnum + 1, &hduType, &status) != 0) {
-            fits_get_errstatus(status, fitsErr);
-            status = 0;
-            (void)fits_close_file(fptr, &status);
-            psError(PS_ERR_LOCATION_INVALID, true,
-                    PS_ERRORTEXT_psImageIO_EXTNUM_INVALID,
-                    extnum, filename, fitsErr);
-            psFree(output);
-            return NULL;
-        }
-    }
-
-    /* Get the data type 'bitPix' from the FITS image */
-    if (fits_get_img_equivtype(fptr, &bitPix, &status) != 0) {
-        fits_get_errstatus(status, fitsErr);
-        status = 0;
-        (void)fits_close_file(fptr, &status);
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_DATATYPE_UNKNOWN,
-                filename, fitsErr);
-        psFree(output);
-        return NULL;
-    }
-
-    /* Get the dimensions 'nAxis' from the FITS image */
-    if (fits_get_img_dim(fptr, &nAxis, &status) != 0) {
-        (void)fits_get_errstatus(status, fitsErr);
-        status = 0;
-        (void)fits_close_file(fptr, &status);
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_IMAGE_DIM_UNKNOWN,
-                filename, fitsErr);
-        psFree(output);
-        return NULL;
-    }
-
-    /* Validate the number of axis */
-    if ((nAxis < 2) || (nAxis > 3)) {
-        status = 0;
-        (void)fits_close_file(fptr, &status);
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_IMAGE_DIMENSION_UNSUPPORTED,
-                nAxis);
-        psFree(output);
-        return NULL;
-    }
-
-    /* Get the Image size from the FITS file */
-    if (fits_get_img_size(fptr, nAxis, nAxes, &status) != 0) {
-        (void)fits_get_errstatus(status, fitsErr);
-        status = 0;
-        (void)fits_close_file(fptr, &status);
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_IMAGE_SIZE_UNKNOWN,
-                filename, fitsErr);
-        psFree(output);
-        return NULL;
-    }
-
-    if (numCols < 1) {
-        numCols += nAxes[0] - col;
-    }
-    if (numRows < 1) {
-        numRows += nAxes[1] - row;
-    }
-
-    firstPixel[0] = col + 1;
-    firstPixel[1] = row + 1;
-    firstPixel[2] = z + 1;
-
-    lastPixel[0] = firstPixel[0] + numCols - 1;
-    lastPixel[1] = firstPixel[1] + numRows - 1;
-    lastPixel[2] = z + 1;
-
-    increment[0] = 1;
-    increment[1] = 1;
-    increment[2] = 1;
-
-    switch (bitPix) {
-    case BYTE_IMG:
-        datatype = PS_TYPE_U8;
-        fitsDatatype = TBYTE;
-        break;
-    case SBYTE_IMG:
-        datatype = PS_TYPE_S8;
-        fitsDatatype = TSBYTE;
-        break;
-    case USHORT_IMG:
-        datatype = PS_TYPE_U16;
-        fitsDatatype = TUSHORT;
-        break;
-    case SHORT_IMG:
-        datatype = PS_TYPE_S16;
-        fitsDatatype = TSHORT;
-        break;
-    case ULONG_IMG:
-        datatype = PS_TYPE_U32;
-        fitsDatatype = TUINT;
-        break;
-    case LONG_IMG:
-        datatype = PS_TYPE_S32;
-        fitsDatatype = TINT;
-        break;
-    case LONGLONG_IMG:
-        datatype = PS_TYPE_S64;
-        fitsDatatype = TLONGLONG;
-        break;
-    case FLOAT_IMG:
-        datatype = PS_TYPE_F32;
-        fitsDatatype = TFLOAT;
-        break;
-    case DOUBLE_IMG:
-        datatype = PS_TYPE_F64;
-        fitsDatatype = TDOUBLE;
-        break;
-    default:
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_FITS_TYPE_UNSUPPORTED,
-                bitPix, filename);
-        psFree(output);
-        return NULL;
-    }
-    output = psImageRecycle(output, numCols, numRows, datatype);
-    if (fits_read_subset(fptr, fitsDatatype, firstPixel, lastPixel, increment,
-                         NULL, output->data.V[0], &anynull, &status) != 0) {
-        psFree(output);
-        (void)fits_get_errstatus(status, fitsErr);
-        status = 0;
-        (void)fits_close_file(fptr, &status);
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_READ_FAILED,
-                filename, fitsErr);
-        return NULL;
-    }
-
-    (void)fits_close_file(fptr, &status);
-
-    return output;
-}
-
-psBool psImageWriteSection(psImage* input,
-                           psS32 col0,
-                           psS32 row0,
-                           psS32 z,
-                           char *extname,
-                           psS32 extnum,
-                           char *filename)
-{
-    psS32 numCols = 0;
-    psS32 numRows = 0;
-
-    psS32 status = 0;             /* CFITSIO status */
-    fitsfile *fptr = NULL;      /* pointer to the FITS file */
-    long nAxes[3];              /* Image axis vars */
-    long firstPixel[3];         /* First Pixel to read */
-    long lastPixel[3];          /* Last Pixel to read */
-    char fitsErr[80];           /* FITSIO message string */
-    psS32 datatype = 0;           /* the datatype of the image */
-    psS32 bitPix = 0;             /* FITS bitPix value */
-    psS32 hduType = IMAGE_HDU;    /* the HDU type (image,table, etc.) */
-    double bscale = 1.0;
-    double bzero = 0.0;
-    psBool createNewHDU = false;
-
-    psLogMsg(__func__,PS_LOG_WARN, "psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.");
-
-    /* need a valid image to write */
-    if (input == NULL) {
-        psError(PS_ERR_BAD_PARAMETER_NULL, true,
-                PS_ERRORTEXT_psImage_IMAGE_NULL);
-        return false;
-    }
-
-    numRows = input->numRows;
-    numCols = input->numCols;
-
-    switch (input->type.type) {
-    case PS_TYPE_U8:
-        bitPix = BYTE_IMG;
-        datatype = TBYTE;
-        break;
-    case PS_TYPE_S8:
-        bitPix = BYTE_IMG;
-        bzero = INT8_MIN;
-        datatype = TSBYTE;
-        break;
-    case PS_TYPE_U16:
-        bitPix = SHORT_IMG;
-        bzero = -1.0f * INT16_MIN;
-        datatype = TUSHORT;
-        break;
-    case PS_TYPE_S16:
-        bitPix = SHORT_IMG;
-        datatype = TSHORT;
-        break;
-    case PS_TYPE_U32:
-        bitPix = LONG_IMG;
-        bzero = -1.0f * INT32_MIN;
-        datatype = TUINT;
-        break;
-    case PS_TYPE_S32:
-        bitPix = LONG_IMG;
-        datatype = TINT;
-        break;
-    case PS_TYPE_F32:
-        bitPix = FLOAT_IMG;
-        datatype = TFLOAT;
-        break;
-    case PS_TYPE_F64:
-        bitPix = DOUBLE_IMG;
-        datatype = TDOUBLE;
-        break;
-    default: {
-            char* typeStr;
-            PS_TYPE_NAME(typeStr,input->type.type);
-            psError(PS_ERR_BAD_PARAMETER_TYPE, true,
-                    PS_ERRORTEXT_psImageIO_TYPE_UNSUPPORTED,
-                    typeStr);
-            return false;
-        }
-    }
-
-    /* Open the FITS file */
-    if (access(filename, F_OK) == 0) {     // file
-        // exists
-        (void)fits_open_file(&fptr, filename, READWRITE, &status);
-        if (fptr == NULL || status != 0) {
-            fits_get_errstatus(status, fitsErr);
-            psError(PS_ERR_BAD_PARAMETER_VALUE, true,
-                    PS_ERRORTEXT_psImageIO_FILENAME_INVALID,
-                    filename, fitsErr);
-            return false;
-        }
-
-        /* find the specified extension */
-        if (extname != NULL) {
-            if (fits_movnam_hdu(fptr, hduType, extname, 0, &status) != 0) {
-                fits_get_errstatus(status, fitsErr);
-                status = 0;
-                (void)fits_close_file(fptr, &status);
-                psError(PS_ERR_LOCATION_INVALID, true,
-                        PS_ERRORTEXT_psImageIO_EXTNAME_INVALID,
-                        extname, filename, fitsErr);
-                return false;
-            }
-        } else {
-            psS32 numHDUs = 0;
-
-            fits_get_num_hdus(fptr, &numHDUs, &status);
-            if (numHDUs < extnum) {
-                status = 0;
-                (void)fits_close_file(fptr, &status);
-                psError(PS_ERR_LOCATION_INVALID, true,
-                        PS_ERRORTEXT_psImageIO_WRITE_EXTNUM_INVALID,
-                        extnum, numHDUs);
-                return false;
-            } else if (numHDUs == extnum) {
-                createNewHDU = true;
-            } else if (fits_movabs_hdu(fptr, extnum + 1, &hduType, &status) != 0) {
-                fits_get_errstatus(status, fitsErr);
-                status = 0;
-                (void)fits_close_file(fptr, &status);
-                psError(PS_ERR_LOCATION_INVALID, true,
-                        PS_ERRORTEXT_psImageIO_EXTNUM_INVALID,
-                        extnum, filename, fitsErr);
-                return false;
-            }
-        }
-
-    } else {
-        // file does not exist
-
-        (void)fits_create_file(&fptr, filename, &status);
-        if (fptr == NULL || status != 0) {
-            fits_get_errstatus(status, fitsErr);
-            psError(PS_ERR_IO, true,
-                    PS_ERRORTEXT_psImageIO_FILENAME_CREATE_FAILED,
-                    filename, fitsErr);
-            return false;
-        }
-        createNewHDU = true;
-    }
-
-    if (createNewHDU) {
-        /* create the mandatory image keywords */
-        nAxes[0] = col0 + numCols;
-        nAxes[1] = row0 + numRows;
-        nAxes[2] = z + 1;
-        if (fits_create_img(fptr, bitPix, 3, nAxes, &status) != 0) {
-            (void)fits_get_errstatus(status, fitsErr);
-            status = 0;
-            (void)fits_close_file(fptr, &status);
-            psError(PS_ERR_IO, true,
-                    PS_ERRORTEXT_psImageIO_CREATE_HDU_FAILED,
-                    filename, fitsErr);
-            return false;
-        }
-        // set the bscale/bzero
-        fits_write_key_dbl(fptr, "BZERO", bzero, 12, "Pixel Value Offset", &status);
-        fits_write_key_dbl(fptr, "BSCALE", bscale, 12, "Pixel Value Scale", &status);
-        fits_set_bscale(fptr, bscale, bzero, &status);
-
-        if (extname != NULL) {
-            /* create the extension for the Primary HDU */
-            if (fits_write_key_str(fptr, "EXTNAME", extname, "Extension Name", &status) != 0) {
-                (void)fits_get_errstatus(status, fitsErr);
-                status = 0;
-                (void)fits_close_file(fptr, &status);
-                psError(PS_ERR_IO, true,
-                        PS_ERRORTEXT_psImageIO_CREATE_EXTENSION_FAILED,
-                        filename, fitsErr);
-                return false;
-            }
-        }
-    }
-
-    firstPixel[0] = col0 + 1;
-    firstPixel[1] = row0 + 1;
-    firstPixel[2] = z + 1;
-
-    lastPixel[0] = firstPixel[0] + numCols - 1;
-    lastPixel[1] = firstPixel[1] + numRows - 1;
-    lastPixel[2] = z + 1;
-
-    if (fits_write_subset(fptr, datatype, firstPixel, lastPixel, input->data.V[0], &status) != 0) {
-        (void)fits_get_errstatus(status, fitsErr);
-        status = 0;
-        (void)fits_close_file(fptr, &status);
-        psError(PS_ERR_IO, true,
-                PS_ERRORTEXT_psImageIO_WRITE_FAILED,
-                filename, fitsErr);
-        return false;
-    }
-
-    status = 0;
-    (void)fits_close_file(fptr, &status);
-
-    return true;
-}
-
-bool p_psImagePrint (FILE *f, psImage *a, char *name)
-{
-
-    fprintf (f, "matrix: %s\n", name);
-
-    for (int j = 0; j < a[0].numRows; j++) {
-        for (int i = 0; i < a[0].numCols; i++) {
-            fprintf (f, "%f  ", p_psImageGetElementF64(a, i, j));
-        }
-        fprintf (f, "\n");
-    }
-    fprintf (f, "\n");
-    return (true);
-}
-
Index: unk/psLib/src/image/psImageIO.h
===================================================================
--- /trunk/psLib/src/image/psImageIO.h	(revision 4127)
+++ 	(revision )
@@ -1,106 +1,0 @@
-
-/** @file  psImageIO.h
- *
- *  @brief Contains image input/output routines
- *
- *  This file defines the file input/output functions for the psImage structure.
- *
- *  @ingroup ImageIO
- *
- *  @author Robert DeSonia, MHPCC
- *
- *  @version $Revision: 1.10 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-04-29 02:25:10 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- */
-#ifndef PS_IMAGEIO_H
-#define PS_IMAGEIO_H
-
-#include "psImage.h"
-
-/// @addtogroup ImageIO
-/// @{
-
-/** Read an image or subimage from a FITS file specified by a filename.
- *
- *  return psImage* The image read from the specified file.  NULL
- *                          signifies that a problem had occured.
- */
-psImage* psImageReadSection(
-    psImage* output,
-    /**< the output psImage to recycle, or NULL if new psImage desired */
-
-    psS32 col0,
-    /**< the column index of the origin to start reading */
-
-    psS32 row0,
-    /**< the row index of the origin to start reading */
-
-    psS32 numCols,
-    /**< the number of desired columns to read */
-
-    psS32 numRows,
-    /**< the number of desired rows to read */
-
-    psS32 z,
-    /**< the z index to read if file is organized as a 3D image cube. */
-
-    char *extname,
-    /**< the image extension to read (this should match the EXTNAME keyword in
-        *   the extension If NULL, the extnum parameter is to be used instead
-        */
-
-    psS32 extnum,
-    /**< the image extension to read (0=PHU, 1=first extension, etc.)  This is
-        *   only used if extname is NULL
-        */
-
-    char *filename
-    /**< the filename of the FITS image file to read */
-);
-
-/** Read an image or subimage from a FITS file specified by a filename.
- *
- *  return psBool         TRUE is successful, otherwise FALSE.
- */
-psBool psImageWriteSection(
-    psImage* input,
-    /**< the psImage to write */
-
-    psS32 col0,
-    /**< the column index of the origin to start writing */
-
-    psS32 row0,
-    /**< the row index of the origin to start writing */
-
-    psS32 z,
-    /**< the z index to start writing */
-
-    char *extname,
-    /**< the image extension to write (this should match the EXTNAME keyword in
-    *   the extension If NULL, the extnum parameter is to be used instead
-    */
-
-    psS32 extnum,
-    /**< the image extension to write (0=PHU, 1=first extension, etc.)  This is
-    *   only used if extname is NULL.
-    */
-
-    char *filename
-    /**< the filename of the FITS image file to write */
-);
-
-/** print image pixel values.
- *
- *  @return bool    TRUE is successful, otherwise FALSE.
- */
-bool p_psImagePrint(
-    FILE *f,                           ///< Destination stream
-    psImage *a,                        ///< image to print
-    char *name                         ///< name of the image (for title)
-);
-
-/// @}
-
-#endif // PS_IMAGEIO_H
Index: /trunk/psLib/src/imageops/psImageConvolve.c
===================================================================
--- /trunk/psLib/src/imageops/psImageConvolve.c	(revision 4127)
+++ /trunk/psLib/src/imageops/psImageConvolve.c	(revision 4128)
@@ -5,6 +5,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.16 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 05:18:20 $
+ *  @version $Revision: 1.17 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -20,5 +20,4 @@
 #include "psLogMsg.h"
 #include "psError.h"
-#include "psImageIO.h"
 
 #include "psImageErrors.h"
Index: /trunk/psLib/src/math/psMinimize.c
===================================================================
--- /trunk/psLib/src/math/psMinimize.c	(revision 4127)
+++ /trunk/psLib/src/math/psMinimize.c	(revision 4128)
@@ -9,6 +9,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.120 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-25 20:26:55 $
+ *  @version $Revision: 1.121 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -28,5 +28,4 @@
 #include "psImage.h"
 #include "psImageStructManip.h"
-#include "psImageIO.h"
 /*****************************************************************************/
 /* DEFINE STATEMENTS                                                         */
Index: /trunk/psLib/src/mathtypes/psImage.c
===================================================================
--- /trunk/psLib/src/mathtypes/psImage.c	(revision 4127)
+++ /trunk/psLib/src/mathtypes/psImage.c	(revision 4128)
@@ -9,6 +9,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.66 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 05:18:20 $
+ *  @version $Revision: 1.67 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -352,4 +352,19 @@
 
     return numFreed;
+}
+
+bool p_psImagePrint (FILE *f, psImage *a, char *name)
+{
+
+    fprintf (f, "matrix: %s\n", name);
+
+    for (int j = 0; j < a[0].numRows; j++) {
+        for (int i = 0; i < a[0].numCols; i++) {
+            fprintf (f, "%f  ", p_psImageGetElementF64(a, i, j));
+        }
+        fprintf (f, "\n");
+    }
+    fprintf (f, "\n");
+    return (true);
 }
 
Index: /trunk/psLib/src/mathtypes/psImage.h
===================================================================
--- /trunk/psLib/src/mathtypes/psImage.h	(revision 4127)
+++ /trunk/psLib/src/mathtypes/psImage.h	(revision 4128)
@@ -11,6 +11,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.53 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-05-19 23:57:37 $
+ *  @version $Revision: 1.54 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -176,4 +176,14 @@
 );
 
+/** print image pixel values.
+ *
+ *  @return bool    TRUE is successful, otherwise FALSE.
+ */
+bool p_psImagePrint(
+    FILE *f,                           ///< Destination stream
+    psImage *a,                        ///< image to print
+    char *name                         ///< name of the image (for title)
+);
+
 /** Interpolate image pixel value given floating point coordinates.
  *
Index: /trunk/psLib/src/pslib_strict.h
===================================================================
--- /trunk/psLib/src/pslib_strict.h	(revision 4127)
+++ /trunk/psLib/src/pslib_strict.h	(revision 4128)
@@ -9,6 +9,6 @@
 *  @author Eric Van Alst, MHPCC
 *
-*  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-05-19 02:09:39 $
+*  @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-06-07 02:29:44 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -98,8 +98,4 @@
 #include "psImageConvolve.h"
 
-/// @defgroup ImageIO Image File I/O Functions
-/// @ingroup Image
-#include "psImageIO.h"
-
 /// @defgroup ImageStats Image Statistical Functions
 /// @ingroup Image
Index: /trunk/psLib/test/dataIO/verified/tst_psDB.stderr
===================================================================
--- /trunk/psLib/test/dataIO/verified/tst_psDB.stderr	(revision 4127)
+++ /trunk/psLib/test/dataIO/verified/tst_psDB.stderr	(revision 4128)
@@ -290,5 +290,5 @@
     psDBDumpCols shall dump all cols from a test table.
 <DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[]
+    [key_string]=[]
 
 ---> TESTPOINT PASSED (psDB{dbDumpCols} | tst_psDB.c)
Index: /trunk/psLib/test/image/Makefile.am
===================================================================
--- /trunk/psLib/test/image/Makefile.am	(revision 4127)
+++ /trunk/psLib/test/image/Makefile.am	(revision 4128)
@@ -24,5 +24,4 @@
 	tst_psImageStructManip \
 	tst_psImageConvolve \
-	tst_psImageIO \
 	tst_psImageInterpolate
 
Index: /trunk/psLib/test/image/tst_psImageGeomManip.c
===================================================================
--- /trunk/psLib/test/image/tst_psImageGeomManip.c	(revision 4127)
+++ /trunk/psLib/test/image/tst_psImageGeomManip.c	(revision 4128)
@@ -6,6 +6,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-06-01 20:37:39 $
+ *  @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-06-07 02:29:44 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -536,22 +536,33 @@
     mkdir("temp",0777);
     remove
-        ("temp/fOut.fits")
-        ;
-    remove
-        ("temp/sOut.fits")
-        ;
-    remove
-        ("temp/fBiOut.fits")
-        ;
-    remove
-        ("temp/sBiOut.fits");
-    ;
+        ("temp/out.fits");
     psS32 index = 0;
     psBool fail = false;
     psF32 radianRot;
+
+    psFits* fOutFile = psFitsAlloc("temp/fOut.fits");
+    psFits* sOutFile = psFitsAlloc("temp/sOut.fits");
+    psFits* fBiOutFile = psFitsAlloc("temp/fBiOut.fits");
+    psFits* sBiOutFile = psFitsAlloc("temp/sBiOut.fits");
+    if (fOutFile == NULL ||sOutFile == NULL || fBiOutFile == NULL || sBiOutFile == NULL) {
+        psError(PS_ERR_UNKNOWN, true, "Can not create output files, so why continue!?");
+        return 1;
+    }
+
+    psFits* fTruthFile = psFitsAlloc("verified/fOut.fits");
+    psFits* sTruthFile = psFitsAlloc("verified/sOut.fits");
+    psFits* fBiTruthFile = psFitsAlloc("verified/fBiOut.fits");
+    psFits* sBiTruthFile = psFitsAlloc("verified/sBiOut.fits");
+    if (fTruthFile == NULL ||sTruthFile == NULL || fBiTruthFile == NULL || sBiTruthFile == NULL) {
+        psError(PS_ERR_UNKNOWN, true, "Can not open truth files, so why continue!?");
+        return 1;
+    }
+
+    char hduName[80];
+    psRegion regionAll = psRegionSet(0,0,0,0);
     for (psS32 rot=-180;rot<=180;rot+=45) {
         psImage* oldOut = fOut;
         psImage* oldBiOut = fBiOut;
-
+        snprintf(hduName, 80, "%+d", rot);
         if (rot == 90) {
             radianRot = M_PI_2;
@@ -578,26 +589,31 @@
         sOut = psImageRotate(sOut,sImg,radianRot,-1.0,PS_INTERPOLATE_FLAT);
         sBiOut = psImageRotate(sBiOut,sImg,radianRot,-1.0,PS_INTERPOLATE_BILINEAR);
-        if (! psImageWriteSection(fOut,0,0,0,NULL,index,"temp/fOut.fits") ) {
-            psError(PS_ERR_UNKNOWN, true,"Can not write to temp/fOut.fits, so why continue!?");
+
+        if (! psFitsWriteImage(fOutFile, NULL, fOut, 1, hduName) ) {
+            psError(PS_ERR_UNKNOWN, true,"Can not write fOut.");
             return 20;
         }
-        if (! psImageWriteSection(sOut,0,0,0,NULL,index,"temp/sOut.fits") ) {
-            psError(PS_ERR_UNKNOWN, true,"Can not write to temp/sOut.fits, so why continue!?");
+        if (! psFitsWriteImage(sOutFile, NULL, sOut, 1, hduName) ) {
+            psError(PS_ERR_UNKNOWN, true,"Can not write sOut.");
             return 21;
         }
-        if (! psImageWriteSection(fBiOut,0,0,0,NULL,index,"temp/fBiOut.fits") ) {
-            psError(PS_ERR_UNKNOWN, true,"Can not write to temp/fBiOut.fits, so why continue!?");
+        if (! psFitsWriteImage(fBiOutFile, NULL, fBiOut, 1, hduName) ) {
+            psError(PS_ERR_UNKNOWN, true,"Can not write fBiOut.fits.");
             return 40;
         }
-        if (! psImageWriteSection(sBiOut,0,0,0,NULL,index,"temp/sBiOut.fits") ) {
-            psError(PS_ERR_UNKNOWN, true,"Can not write to temp/sBiOut.fits, so why continue!?");
+        if (! psFitsWriteImage(sBiOutFile, NULL, sBiOut, 1, hduName) ) {
+            psError(PS_ERR_UNKNOWN, true,"Can not write sBiOut.fits.");
             return 41;
         }
 
         // now, let's compare this with the verified file
-        fTruth = psImageReadSection(fTruth,0,0,0,0,0,NULL,index,"temp/fOut.fits");
-        sTruth = psImageReadSection(sTruth,0,0,0,0,0,NULL,index,"temp/sOut.fits");
-        fBiTruth = psImageReadSection(fBiTruth,0,0,0,0,0,NULL,index,"temp/fBiOut.fits");
-        sBiTruth = psImageReadSection(sBiTruth,0,0,0,0,0,NULL,index,"temp/sBiOut.fits");
+        psFitsMoveExtNum(fTruthFile, index, false);
+        psFitsMoveExtNum(sTruthFile, index, false);
+        psFitsMoveExtNum(fBiTruthFile, index, false);
+        psFitsMoveExtNum(sBiTruthFile, index, false);
+        fTruth = psFitsReadImage(fTruth, fTruthFile, regionAll, 0);
+        sTruth = psFitsReadImage(sTruth, sTruthFile, regionAll, 0);
+        fBiTruth = psFitsReadImage(fBiTruth, fBiTruthFile, regionAll, 0);
+        sBiTruth = psFitsReadImage(sBiTruth, sBiTruthFile, regionAll, 0);
         if (fTruth == NULL) {
             psError(PS_ERR_UNKNOWN, true,"verified psF32 image failed to be read (%d deg. rotation)",
@@ -743,4 +759,14 @@
     psFree(fBiOut);
 
+    psFree(fOutFile);
+    psFree(sOutFile);
+    psFree(fBiOutFile);
+    psFree(sBiOutFile);
+
+    psFree(fTruthFile);
+    psFree(sTruthFile);
+    psFree(fBiTruthFile);
+    psFree(sBiTruthFile);
+
     return 0;
 }
Index: unk/psLib/test/image/tst_psImageIO.c
===================================================================
--- /trunk/psLib/test/image/tst_psImageIO.c	(revision 4127)
+++ 	(revision )
@@ -1,388 +1,0 @@
-/** @file  tst_psImageIO.c
- *
- *  @brief Contains the tests for psImageIO.[ch]
- *
- *
- *  @author Robert DeSonia, MHPCC
- *
- *  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-04-07 20:27:42 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- */
-
-#include <math.h>
-#include <float.h>
-#include <string.h>
-#include <stdlib.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <fitsio.h>
-
-#include "psTest.h"
-#include "pslib_strict.h"
-
-#define GENIMAGE(img,c,r,TYP, valueFcn) \
-img = psImageAlloc(c,r,PS_TYPE_##TYP); \
-for (psU32 row=0;row<r;row++) { \
-    ps##TYP* imgRow = img->data.TYP[row]; \
-    for (psU32 col=0;col<c;col++) { \
-        imgRow[col] = (ps##TYP)(valueFcn); \
-    } \
-}
-
-static psS32 testImageRead(void);
-static psS32 testImageWrite(void);
-
-testDescription tests[] = {
-                              {
-                                  testImageRead,567,"psImageReadSection",0,false
-                              },
-                              {
-                                  testImageWrite,569,"psImageWriteSection",0,false
-                              },
-                              {
-                                  NULL
-                              }
-                          };
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psLogSetLevel(PS_LOG_INFO);
-
-    if (! runTestSuite(stderr,"psImage",tests,argc,argv)) {
-        psAbort(__FILE__,"One or more tests failed");
-    }
-    return 0;
-}
-
-psS32 testImageRead(void)
-{
-    psS32 N = 256;
-    psS32 M = 128;
-    psImage* image = NULL;
-
-    /*
-        This function shall open the specified FITS file, read the specified data
-        and place the data into a psImage structure. This function shall generate
-        an error message and return NULL if any of the input parameters are out of
-        range, image file doesn't exist or image is zero or one dimensional.
-
-        Verify the returned psImage structure contains expected values, if the input
-        parameter filename specifies an available FITS file with known 2dimensional
-        data, input parameters col, row, ncol, nrow, z specify data range with the
-        FITS file. Cases should include 1x1, Nx1, 1xN, NxN and MxN sub images and
-        total FITS file image. (done in macro)
-
-        Verify the returned psImage structure is equal to the input parameter
-        'output', if specified. (done in macro)
-
-        */
-
-    /* generate FITS file to read */
-
-    #define testReadTypeSize(m, n, readM0, readN0, readM, readN, TYP, filename) \
-    { \
-        psImage* img = NULL; \
-        psImage* img2 = NULL; \
-        psImage* img3 = NULL; \
-        psImage* img4 = NULL; \
-        /*        psImage* img_ref = NULL; */ \
-        \
-        GENIMAGE(img,m,n,TYP,row+2*col); \
-        img2 = psImageCopy(img2,img,PS_TYPE_##TYP); \
-        GENIMAGE(img3,m,n,TYP,row+2*col); \
-        psImageClip(img3,32.0,32.0,120.0,120.0); \
-        img4 = psImageCopy(img4,img3,PS_TYPE_##TYP); \
-        remove(filename); \
-        if (! psImageWriteSection(img3,0,0,1,NULL,0,filename)) { \
-            psError(PS_ERR_UNKNOWN, true,"Failed to write test image %s",filename); \
-            return 1; \
-        } \
-        if (! psImageWriteSection(img,0,0,0,NULL,0,filename)) { \
-            psError(PS_ERR_UNKNOWN, true,"Failed to write test image %s",filename); \
-            return 2; \
-        } \
-        if (! psImageWriteSection(img,0,0,1,NULL,1,filename)) { \
-            psError(PS_ERR_UNKNOWN, true,"Failed to write test image %s",filename); \
-            return 3; \
-        } \
-        if (! psImageWriteSection(img3,0,0,0,NULL,1,filename)) { \
-            psError(PS_ERR_UNKNOWN, true,"Failed to write test image %s",filename); \
-            return 4; \
-        } \
-        psFree(img); \
-        img = NULL; \
-        /*        img_ref = img = psImageAlloc(2,2,PS_TYPE_F32); */ \
-        psFree(img3); \
-        img3 = NULL; \
-        img = psImageReadSection(img,readM0,readN0,readM,readN,0,NULL,0,filename); \
-        /*        if (img_ref != img) { */ \
-        /*            psError(PS_ERR_UNKNOWN, true,"psImageReadSection didn't recycle the psImage?"); */ \
-        /*            return 5; */ \
-        /*        } */ \
-        img3 = psImageReadSection(img3,readM0,readN0,readM,readN,1,NULL,0,filename); \
-        if (img3 == NULL) { \
-            psError(PS_ERR_UNKNOWN, true,"Failed to read test image %s",filename); \
-            return 6; \
-        } \
-        for (psU32 row = readN0; row < readN; row++) { \
-            ps##TYP* imgRow = img->data.TYP[row-readN0]; \
-            ps##TYP* img2Row = img2->data.TYP[row]; \
-            ps##TYP* img3Row = img3->data.TYP[row-readN0]; \
-            ps##TYP* img4Row = img4->data.TYP[row]; \
-            for (psU32 col = readM0; col < readM; col++) { \
-                if (fabsf(imgRow[col-readM0]-img2Row[col]) > FLT_EPSILON) { \
-                    psError(PS_ERR_UNKNOWN, true,"Image changed in I/O operation at %d,%d,0 (%.2f vs %.2f) for %s", \
-                            col,row,(psF32)imgRow[col-readM0],(psF32)img2Row[col],filename); \
-                    return 7; \
-                } \
-                if (fabsf(img3Row[col-readM0]-img4Row[col]) > FLT_EPSILON) { \
-                    psError(PS_ERR_UNKNOWN, true,"Image changed in I/O operation at %d,%d,1 (%.2f vs %.2f) for %s", \
-                            col,row,(psF32)img3Row[col-readM0],(psF32)img4Row[col],filename); \
-                    return 8; \
-                } \
-            } \
-        } \
-        psFree(img); \
-        img = NULL; \
-        psFree(img3); \
-        img3 = NULL; \
-        img3 = psImageReadSection(img3,readM0,readN0,readM,readN,0,NULL,1,filename); \
-        img = psImageReadSection(img,readM0,readN0,readM,readN,1,NULL,1,filename); \
-        if (img == NULL) { \
-            psError(PS_ERR_UNKNOWN, true,"Failed to read test image %s",filename); \
-            return 9; \
-        } \
-        for (psU32 row = readN0; row < readN; row++) { \
-            ps##TYP* imgRow = img->data.TYP[row-readN0]; \
-            ps##TYP* img2Row = img2->data.TYP[row]; \
-            ps##TYP* img3Row = img3->data.TYP[row-readN0]; \
-            ps##TYP* img4Row = img4->data.TYP[row]; \
-            for (psU32 col = readM0; col < readM; col++) { \
-                if (fabsf(imgRow[col-readM0]-img2Row[col]) > FLT_EPSILON) { \
-                    psError(PS_ERR_UNKNOWN, true,"Image changed in I/O operation at %d,%d,0 (%.2f vs %.2f) for %s", \
-                            col,row,(psF32)imgRow[col-readM0],(psF32)img2Row[col],filename); \
-                    return 10; \
-                } \
-                if (fabsf(img3Row[col-readM0]-img4Row[col]) > FLT_EPSILON) { \
-                    psError(PS_ERR_UNKNOWN, true,"Image changed in I/O operation at %d,%d,1 (%.2f vs %.2f) for %s", \
-                            col,row,(psF32)img3Row[col-readM0],(psF32)img4Row[col],filename); \
-                    return 11; \
-                } \
-            } \
-        } \
-        psFree(img); \
-        psFree(img2); \
-        psFree(img3); \
-        psFree(img4); \
-    }
-
-    #define testReadType(TYP,filename) \
-    mkdir("tmpImages",0777); \
-    testReadTypeSize(1,1,0,0,1,1,TYP,"tmpImages/1x1_" filename); \
-    testReadTypeSize(M,1,M/4,0,M/2,1,TYP,"tmpImages/Mx1_" filename); \
-    testReadTypeSize(1,N,0,N/4,1,N/2,TYP,"tmpImages/1xN_" filename); \
-    testReadTypeSize(M,N,M/4,N/4,M/2,N/2,TYP,"tmpImages/MxN_" filename);
-
-    testReadType(U8,"U8.fits");
-    //    testReadType(S8,"S8.fits");   Not a requirement
-    testReadType(S16,"S16.fits");
-    //    testReadType(U16,"U16.fits"); Not a requirement
-    testReadType(S32,"S32.fits");
-    //    testReadType(U32,"U32.fits"); Not a requirement
-    testReadType(F32,"F32.fits");
-    testReadType(F64,"F64.fits");
-
-    /*
-    Verify the returned psImage structure pointer is null, error log message is
-    generated and program execution doesn't stop, if input parameter filename
-    specifies a file that doesn't exist.
-    */
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error as file doesn't exist.");
-    image = psImageReadSection(image,0,0,M,N,0,NULL,0,"foobar.fits");
-    if (image != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"Image returned though filename did not exist.");
-        return 12;
-    }
-
-    /*
-    Verify the returned psImage structure pointer is null, error log message is
-    generatedand program execution doesn't stop, if input parameter filename
-    is null.Verify the returned psImage structurepointer is null, error log
-    message is generated and program execution doesn't stop, if input
-    parameters col,row, ncol, nrow and/or z specify a data range which is not
-    within the data range of the FITS file.
-    */
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error as filename is NULL.");
-    image = psImageReadSection(image,0,0,M,N,0,NULL,0,NULL);
-    if (image != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"Image returned though filename was NULL.");
-        return 13;
-    }
-
-    /*
-    Verify the returned psImage structure pointer is null, error log message is
-    generated and program execution doesn't stop,if input parameters extname
-    and/or extnum specify an extension which is not valid in the FITS file.
-    */
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error as extnum is invalid.");
-    image = psImageReadSection(image,0,0,M,N,0,NULL,4,"tmpImages/MxN_F32.fits");
-    if (image != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"Image returned though extnum was invalid.");
-        return 14;
-    }
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error as extname is invalid.");
-    image = psImageReadSection(image,0,0,M,N,0,"bogus",0,"tmpImages/MxN_F32.fits");
-    if (image != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"Image returned though extnum was invalid.");
-        return 15;
-    }
-
-    /*
-    Verify the returned psImage structure pointer is null, error log message is
-    generated and program execution doesn't stop,if input parameter filename
-    specifies a FITS file that is zero or one dimensional.
-
-    XXX
-    N.B: since I can't write anything but 2 or 3 dimensional image, I can't
-    do this programatically at this time.  I verified that this functionality
-    exists in the source code via inspection. (line 101 in psImageIO.c for v1.3)
-    -rdd
-    */
-
-    return 0;
-}
-
-psS32 testImageWrite(void)
-{
-    psImage* img = NULL;
-    psImage* img2 = NULL;
-    psS32 m = 64;
-    psS32 n = 96;
-
-    /*
-    This function shall write the specified section within a psImage structure
-    to a FITS file. If the specifiedfile exists, then data should overwrite the
-    section to write. If the specified file doesn't exist, it shall be created.
-    If an extenstion is specified, then a basic primary header data unit shall
-    be created.
-    */
-
-    /*
-    Verify a FITS file named filename is generated and contains expected
-    values, if the input parameter input contains known data values, input
-    parameters col, row, ncol, nrow specify a valid data region within psImage
-    structure.
-
-    Verify a FITS file named filename is generated and contains a primary
-    header data unit with extension with expected values, if the input
-    parameter input contains known data values, input parameters col, row,
-    ncol, nrow specify a valid data region within psImage structure and
-    extname and/or extnum specify an extenstion to write.
-
-    N.B. : these are done in testImageRead tests, see above.
-    */
-
-    /*
-    Verify a FITS file named filename is overwritten and contains
-    expected values, if the input parameter input contains known data values,
-    input parameters col, row, ncol, nrow specify a valid data region within
-    psImage structure.
-    */
-
-    GENIMAGE(img,m,n,F32,0);
-    GENIMAGE(img2,m,n,F32,row+2*col);
-    mkdir("tmpImages",0777);
-    remove
-        ("writeTest.fits")
-        ;
-    if (! psImageWriteSection(img,0,0,0,NULL,0,"tmpImages/writeTest.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"Couldn't write writeTest.fits.");
-        return 14;
-    }
-    if (! psImageWriteSection(img2,0,0,0,NULL,0,"tmpImages/writeTest.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"Couldn't overwrite writeTest.fits.");
-        return 15;
-    }
-    psFree(img);
-    psFree(img2);
-
-    // Did it really overwrite the pixel values?  Let's read it in and see.
-    img = psImageReadSection(NULL,0,0,m,n,0,NULL,0,"tmpImages/writeTest.fits");
-    if (img == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"Could not read in writeTest.fits.");
-        return 16;
-    }
-    for (psU32 row=0;row<n;row++) {
-        psF32* imgRow = img->data.F32[row];
-        for (psU32 col=0;col<m;col++) {
-            if (fabsf(imgRow[col] - (row+2*col)) > FLT_EPSILON) {
-                psError(PS_ERR_UNKNOWN, true,"The image values were not overwritten at %d,%d (%.2f vs %.2f)",
-                        col,row,imgRow[col],(row+2*col));
-                return 17;
-            }
-        }
-    }
-
-    psFree(img);
-
-    /*
-    Verify false is returned and program execution is not stopped, if the input image
-    is null.
-    */
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message because input image is null.");
-    if ( psImageWriteSection(NULL,0,0,0,NULL,0,"tmpImages/writeTest.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"psImageWriteSection did not return false when input image is NULL.");
-        return 20;
-    }
-
-    /*
-    Verify error message generated when invalid path specified for output file.
-    */
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error for passing invalid image type.");
-    GENIMAGE(img,32,32,U8,row+2*col);
-    if ( psImageWriteSection(img,0,0,0,NULL,0,"panstarrs/writeFits.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"psImageWriteSection did not return false for invalid path name.");
-        return 22;
-    }
-
-    /*
-    Verify error message generated when an invalid FITs file is specified
-    */
-    FILE *fileptr = fopen("tmpImages/writeInvalidFile.fits","w");
-    fprintf(fileptr," ");
-    fclose(fileptr);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error for passing invalid FITS file.");
-    if ( psImageWriteSection(img,0,0,0,NULL,0,"tmpImages/writeInvalidFile.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"psImageWriteSection did not return false for invalid FITS file.");
-        return 22;
-    }
-    remove
-        ("tmpImages/writeInvalidFile.fits");
-
-    /*
-    Verify error message when invalid extension name is provided
-    */
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error for invalid extension name.");
-    if ( psImageWriteSection(img,0,0,0,"ext2",0,"tmpImages/writeTest.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"psImageWriteSection did not return false for invalid extension name.");
-        return 23;
-    }
-
-    /*
-    Verified error message when invalid extension number is provided
-    */
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error for invalid extension number.");
-    if ( psImageWriteSection(img,0,0,0,NULL,99,"tmpImages/writeTest.fits")) {
-        psError(PS_ERR_UNKNOWN, true,"psImageWriteSection did not return false for invalid extension number.");
-        return 24;
-    }
-
-    psFree(img);
-
-    return 0;
-}
Index: /trunk/psLib/test/image/verified/tst_psImageGeomManip.stderr
===================================================================
--- /trunk/psLib/test/image/verified/tst_psImageGeomManip.stderr	(revision 4127)
+++ /trunk/psLib/test/image/verified/tst_psImageGeomManip.stderr	(revision 4128)
@@ -57,148 +57,4 @@
 \**********************************************************************************/
 
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageWriteSection
-    psImageWriteSection is deprecated.  Consider using psFitsWriteImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
-<DATE><TIME>|<HOST>|W|psImageReadSection
-    psImageReadSection is deprecated.  Consider using psFitsReadImage instead.
 <DATE><TIME>|<HOST>|I|testImageRotate
     Following should be an error
