Index: /trunk/psLib/src/astronomy/psMetadata.h
===================================================================
--- /trunk/psLib/src/astronomy/psMetadata.h	(revision 1376)
+++ /trunk/psLib/src/astronomy/psMetadata.h	(revision 1377)
@@ -10,6 +10,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2004-08-04 00:55:17 $
+*  @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2004-08-04 20:59:04 $
 *
 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -18,9 +18,13 @@
 #define PS_METADATA_H
 
+
 /// @addtogroup Metadata
 /// @{
 
-/** Maximum length of time string */
-#define MAX_STRING_LENGTH 256
+/** Maximum length of string */
+#define MAX_STRING_LENGTH 1024
+
+/** Maximum length of FITS line */
+#define FITS_LINE_SIZE 80
 
 /** Metadata item type.
@@ -29,14 +33,15 @@
  */
 typedef enum {
-    PS_META_ITEM_SET = 0,                 ///< Null. Metadata is in psMetadataItem.items
-    PS_META_S32,                          ///< Signed 32-bit integer data.
-    PS_META_F32,                          ///< Single-precision float data.
-    PS_META_F64,                          ///< Double-precision float data.
-    PS_META_STR,                          ///< String data (Stored in as void *).
-    PS_META_IMG,                          ///< Image data (Stored in as void *).
-    PS_META_JPEG,                         ///< JPEG data (Stored in as void .
-    PS_META_PNG,                          ///< PNG data (Stored in as void *).
-    PS_META_ASTROM,                       ///< Astrometric coefficients (Stored in as void *).
-    PS_META_UNKNOWN,                      ///< Other data (Stored in as void *).
+    PS_META_ITEM_SET = 0,                ///< Null. Metadata is in psMetadataItem.items
+    PS_META_BOOL,                        ///< Boolean data.
+    PS_META_S32,                         ///< Signed 32-bit integer data.
+    PS_META_F32,                         ///< Single-precision float data.
+    PS_META_F64,                         ///< Double-precision float data.
+    PS_META_STR,                         ///< String data (Stored in as void *).
+    PS_META_IMG,                         ///< Image data (Stored in as void *).
+    PS_META_JPEG,                        ///< JPEG data (Stored in as void .
+    PS_META_PNG,                         ///< PNG data (Stored in as void *).
+    PS_META_ASTROM,                      ///< Astrometric coefficients (Stored in as void *).
+    PS_META_UNKNOWN,                     ///< Other data (Stored in as void *).
     PS_META_NTYPE                       ///< Number of types. Must be last.
 } psMetadataType;
@@ -54,9 +59,10 @@
         union
             {
-                psS32 S32;                    ///< Signed 32-bit integer data.
-                psF32 F32;                    ///< Single-precision float data.
-                psF64 F64;                    ///< Double-precision float data.
+                bool B;
+                psS32 S32;                  ///< Signed 32-bit integer data.
+                psF32 F32;                  ///< Single-precision float data.
+                psF64 F64;                  ///< Double-precision float data.
                 psPTR V;                    ///< Pointer to other type of data.
-            }data;                              ///< Union for data types.
+            }data;                          ///< Union for data types.
         char *comment;                      ///< Optional comment ("", not NULL).
         psList *restrict items;             ///< List of psMetadataItems with same name.
@@ -96,7 +102,7 @@
  */
 psMetadataItem *psMetadataItemAlloc(
-    const char *name,                     ///< Name of metadata item.
-    psMetadataType type,                  ///< Type of metadata item.
-    const char *comment,                  ///< Comment for metadata item.
+    const char *name,                    ///< Name of metadata item.
+    psMetadataType type,                 ///< Type of metadata item.
+    const char *comment,                 ///< Comment for metadata item.
     ...                                 ///< Arguments for name formatting and metadata item data.
 );
@@ -116,7 +122,7 @@
  */
 psMetadataItem *psMetadataItemAllocV(
-    const char *name,                     ///< Name of metadata item.
-    psMetadataType type,                  ///< Type of metadata item.
-    const char *comment,                  ///< Comment for metadata item.
+    const char *name,                    ///< Name of metadata item.
+    psMetadataType type,                 ///< Type of metadata item.
+    const char *comment,                 ///< Comment for metadata item.
     va_list list                        ///< Arguments for name formatting and metadata item data.
 );
@@ -139,6 +145,6 @@
  */
 bool psMetadataAddItem(
-    psMetadata *restrict md,              ///< Metadata collection to insert metadat item.
-    int where,                            ///< Location to be added.
+    psMetadata *restrict md,             ///< Metadata collection to insert metadat item.
+    int where,                           ///< Location to be added.
     psMetadataItem *restrict item       ///< Metadata item to be added.
 );
@@ -151,9 +157,9 @@
  */
 bool psMetadataAdd(
-    psMetadata *restrict md,              ///< Metadata collection to insert metadat item.
-    int where,                            ///< Location to be added.
-    const char *name,                     ///< Name of metadata item.
-    psMetadataType type,                  ///< Type of metadata item.
-    const char *comment,                  ///< Comment for metadata item.
+    psMetadata *restrict md,             ///< Metadata collection to insert metadat item.
+    int where,                           ///< Location to be added.
+    const char *name,                    ///< Name of metadata item.
+    psMetadataType type,                 ///< Type of metadata item.
+    const char *comment,                 ///< Comment for metadata item.
     ...                                 ///< Arguments for name formatting and metadata item data.
 );
@@ -169,6 +175,6 @@
  */
 bool psMetadataRemove(
-    psMetadata *restrict md,              ///< Metadata collection to insert metadat item.
-    int where,                            ///< Location to be removed.
+    psMetadata *restrict md,             ///< Metadata collection to insert metadat item.
+    int where,                           ///< Location to be removed.
     const char *restrict key            ///< Name of metadata key.
 );
@@ -182,5 +188,5 @@
  */
 psMetadataItem *psMetadataLookup(
-    psMetadata *restrict md,              ///< Metadata collection to insert metadat item.
+    psMetadata *restrict md,             ///< Metadata collection to insert metadat item.
     const char *restrict key            ///< Name of metadata key.
 );
@@ -193,5 +199,5 @@
  */
 psMetadataItem *psMetadataGet(
-    psMetadata *restrict md,              ///< Metadata collection to insert metadat item.
+    psMetadata *restrict md,             ///< Metadata collection to insert metadat item.
     int where                           ///< Location to be retrieved.
 );
@@ -204,5 +210,5 @@
  */
 bool psMetadataSetIterator(
-    psMetadata *restrict md,              ///< Metadata collection to iterate.
+    psMetadata *restrict md,             ///< Metadata collection to iterate.
     int where                           ///< Location of iterator.
 );
@@ -215,6 +221,6 @@
  */
 psMetadataItem *psMetadataGetNext(
-    psMetadata *restrict md,              ///< Metadata collection to iterate.
-    const char *restrict match,           ///< Beginning of key name.
+    psMetadata *restrict md,             ///< Metadata collection to iterate.
+    const char *restrict match,          ///< Beginning of key name.
     int which                           ///< Iterator to be used.
 );
@@ -227,6 +233,6 @@
  */
 psMetadataItem *psMetadataGetPrevious(
-    psMetadata *restrict md,              ///< Metadata collection to iterate.
-    const char *restrict match,           ///< Beginning of key name.
+    psMetadata *restrict md,             ///< Metadata collection to iterate.
+    const char *restrict match,          ///< Beginning of key name.
     int which                           ///< Iterator to be used.
 );
@@ -243,6 +249,6 @@
  */
 void psMetadataItemPrint(
-    FILE *fd,                                     ///< Pointer to file to write metadata item.
-    const char *format,                           ///< Format to print metadata item.
+    FILE *fd,                                    ///< Pointer to file to write metadata item.
+    const char *format,                          ///< Format to print metadata item.
     const psMetadataItem *restrict metadataItem ///< Metadata item to print.
 );
@@ -255,7 +261,7 @@
  */
 psMetadata *psMetadataReadHeader(
-    psMetadata *output,                   ///< Resulting metadata from read.
-    const char *extname,                  ///< File name extension string.
-    int extnum,                           ///< File name extension number.
+    psMetadata *output,                  ///< Resulting metadata from read.
+    const char *extname,                 ///< File name extension string.
+    int extnum,                          ///< File name extension number.
     const char *filename                ///< Name of file to read.
 );
@@ -268,7 +274,7 @@
  */
 psMetadata *psMetadataFReadHeader(
-    psMetadata *output,                   ///< Resulting metadata from read.
-    const char *extname,                  ///< File name extension string.
-    int extnum,                           ///< File name extension number.
+    psMetadata *output,                  ///< Resulting metadata from read.
+    const char *extname,                 ///< File name extension string.
+    int extnum,                          ///< File name extension number.
     fitsfile *fd                        ///< Pointer to file to read.
 );
