Index: trunk/psLib/test/image/tst_psImageGeomManip.c
===================================================================
--- trunk/psLib/test/image/tst_psImageGeomManip.c	(revision 4069)
+++ 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;
 }
