Index: trunk/psLib/src/image/psImage.h
===================================================================
--- trunk/psLib/src/image/psImage.h	(revision 664)
+++ trunk/psLib/src/image/psImage.h	(revision 692)
@@ -7,6 +7,6 @@
  *  @author Ross Harman, MHPCC
  *   
- *  @version $Revision: 1.5 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-05-13 20:03:35 $
+ *  @version $Revision: 1.6 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-05-14 22:39:58 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -16,4 +16,6 @@
 
 #include <complex.h>
+
+#include "psType.h"
 
 /******************************************************************************/
@@ -35,21 +37,25 @@
 typedef struct psImage
 {
-    psType type;                        ///< Image data type and dimension.
-    unsigned int numCols;               ///< Number of rows in image
-    unsigned int numRows;               ///< Number of columns in image.
-    int col0;                           ///< Row position relative to parent.
-    int row0;                           ///< Column position relative to parent.
+    const psType type;                  ///< Image data type and dimension.
+    const unsigned int numCols;         ///< Number of columns in image
+    const unsigned int numRows;         ///< Number of rows in image.
+    const int col0;                     ///< Column position relative to parent.
+    const int row0;                     ///< Row position relative to parent.
 
     union {
-        void    **v;                    ///< void pointer to data
-        uint8_t **ui8;                  ///< Pointers to char integer data.
-        int16_t **i16;                  ///< Pointers to short integer data.
-        int32_t **i32;                  ///< Pointers to integer data.
-        float **f32;                    ///< Pointers to floating point data.
-        complex float **c32;            ///< Pointers to complex floating point data.
+        uint8_t **ui8;                  ///< unsigned 8-bit integer data.
+        uint16_t **ui16;                ///< unsigned 16-bit integer data.
+        uint32_t **ui32;                ///< unsigned 32-bit integer data.
+        int8_t **i8;                    ///< signed 8-bit integer data.
+        int16_t **i16;                  ///< signed 16-bit integer data.
+        int32_t **i32;                  ///< signed 32-bit integer data.
+        float **f32;                    ///< single-precision float data.
+        double **f64;                   ///< double-precision float data.
+        complex float **c32;            ///< single-precision complex data.
+        void    **v;                    ///< void pointers to data
     } data;                             ///< Union for data types.
-    struct psImage *parent;             ///< Parent, if a subimage.
+    const struct psImage *parent;       ///< Parent, if a subimage.
     int nChildren;                      ///< Number of subimages.
-    struct psImage *children;           ///< Children of this region.
+    struct psImage** children;          ///< Children of this region.
 }
 psImage;
@@ -70,5 +76,5 @@
     unsigned int numCols,               ///< Number of rows in image.
     unsigned int numRows,               ///< Number of columns in image.
-    psType type                         ///< Type of data for image.
+    const psElemType type               ///< Type of data for image.
 );
 
@@ -82,9 +88,9 @@
 psImage *psImageSubset(
     psImage *out,                       ///< Subimage to return, or NULL.
-    const psImage *image,               ///< Parent image.
+    psImage *image,                     ///< Parent image.
     unsigned int numCols,               ///< Subimage width (<= image.nCols - col0).
     unsigned int numRows,               ///< Subimage height (<= image.nRows - row0).
-    int col0,                           ///< Subimage col-offset (0 <= col0 < nCol).
-    int row0                            ///< Subimage row-offset (0 <= row0 < nCol).
+    unsigned int col0,                  ///< Subimage col-offset (0 <= col0 < nCol).
+    unsigned int row0                   ///< Subimage row-offset (0 <= row0 < nCol).
 );
 
