Changeset 1407 for trunk/psLib/src/astronomy/psMetadata.h
- Timestamp:
- Aug 6, 2004, 2:06:06 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/astronomy/psMetadata.h (modified) (19 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/astronomy/psMetadata.h
r1394 r1407 1 1 2 /** @file psMetadata.h 2 3 * … … 10 11 * @author Ross Harman, MHPCC 11 12 * 12 * @version $Revision: 1.1 5$ $Name: not supported by cvs2svn $13 * @date $Date: 2004-08-0 5 20:55:22$13 * @version $Revision: 1.16 $ $Name: not supported by cvs2svn $ 14 * @date $Date: 2004-08-07 00:06:06 $ 14 15 * 15 16 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii 16 17 */ 17 18 #ifndef PS_METADATA_H 18 # define PS_METADATA_H19 20 # include <stdarg.h>21 # include <stdio.h>22 # include <fitsio.h>23 24 # include "psHash.h"25 # include "psList.h"19 # define PS_METADATA_H 20 21 # include <stdarg.h> 22 # include <stdio.h> 23 # include <fitsio.h> 24 25 # include "psHash.h" 26 # include "psList.h" 26 27 27 28 /// @addtogroup Metadata … … 33 34 */ 34 35 typedef enum { 35 PS_META_ITEM_SET = 0, ///< Null. Metadata is in psMetadataItem.items36 PS_META_BOOL, ///< Boolean data.37 PS_META_S32, ///< Signed 32-bit integer data.38 PS_META_F32, ///< Single-precision float data.39 PS_META_F64, ///< Double-precision float data.40 PS_META_STR, ///< String data (Stored in as void *).41 PS_META_IMG, ///< Image data (Stored in as void *).42 PS_META_JPEG, ///< JPEG data (Stored in as void .43 PS_META_PNG, ///< PNG data (Stored in as void *).44 PS_META_ASTROM, ///< Astrometric coefficients (Stored in as void *).45 PS_META_UNKNOWN, ///< Other data (Stored in as void *).46 PS_META_NTYPE ///< Number of types. Must be last.36 PS_META_ITEM_SET = 0, // /< Null. Metadata is in psMetadataItem.items 37 PS_META_BOOL, // /< Boolean data. 38 PS_META_S32, // /< Signed 32-bit integer data. 39 PS_META_F32, // /< Single-precision float data. 40 PS_META_F64, // /< Double-precision float data. 41 PS_META_STR, // /< String data (Stored in as void *). 42 PS_META_IMG, // /< Image data (Stored in as void *). 43 PS_META_JPEG, // /< JPEG data (Stored in as void . 44 PS_META_PNG, // /< PNG data (Stored in as void *). 45 PS_META_ASTROM, // /< Astrometric coefficients (Stored in as void *). 46 PS_META_UNKNOWN, // /< Other data (Stored in as void *). 47 PS_META_NTYPE // /< Number of types. Must be last. 47 48 } psMetadataType; 48 49 … … 54 55 typedef struct psMetadataItem 55 56 { 56 const int id; ///< Unique ID for metadata item. 57 char *restrict name; ///< Name of metadata item. 58 psMetadataType type; ///< Type of metadata item. 59 union 60 { 57 const int id; // /< Unique ID for metadata item. 58 char *restrict name; // /< Name of metadata item. 59 psMetadataType type; // /< Type of metadata item. 60 union { 61 61 bool B; 62 psS32 S32; ///< Signed 32-bit integer data.63 psF32 F32; ///< Single-precision float data.64 psF64 F64; ///< Double-precision float data.65 psPTR V; ///< Pointer to other type of data.66 } data; ///< Union for data types.67 char *comment; ///< Optional comment ("", not NULL).68 psList *restrict items; ///< List of psMetadataItems with same name.62 psS32 S32; // /< Signed 32-bit integer data. 63 psF32 F32; // /< Single-precision float data. 64 psF64 F64; // /< Double-precision float data. 65 psPTR V; // /< Pointer to other type of data. 66 } data; // /< Union for data types. 67 char *comment; // /< Optional comment ("", not NULL). 68 psList *restrict items; // /< List of psMetadataItems with same name. 69 69 } 70 70 psMetadataItem; … … 78 78 typedef struct psMetadata 79 79 { 80 psList *restrict list;81 psHash *restrict table;80 psList *restrict list; 81 psHash *restrict table; 82 82 } 83 83 psMetadata; 84 84 85 86 85 /*****************************************************************************/ 86 87 87 /* FUNCTION PROTOTYPES */ 88 88 89 /*****************************************************************************/ 89 90 … … 101 102 * @return psMetadataItem*: Pointer metadata item. 102 103 */ 103 psMetadataItem *psMetadataItemAlloc( 104 const char *name, ///< Name of metadata item. 105 psMetadataType type, ///< Type of metadata item. 106 const char *comment, ///< Comment for metadata item. 107 ... ///< Arguments for name formatting and metadata item data. 108 ); 104 psMetadataItem *psMetadataItemAlloc(const char *name, // /< Name of metadata item. 105 psMetadataType type, // /< Type of metadata item. 106 const char *comment, // /< Comment for metadata item. 107 ... // /< Arguments for name formatting and metadata item data. 108 ); 109 109 110 110 /** Create a metadata item with va_list. … … 121 121 * @return psMetadataItem*: Pointer metadata item. 122 122 */ 123 psMetadataItem *psMetadataItemAllocV( 124 const char *name, ///< Name of metadata item.125 psMetadataType type, ///< Type ofmetadata item.126 const char *comment, ///< Comment for metadata item.127 va_list list ///< Arguments for name formatting and metadata itemdata.128 );123 psMetadataItem *psMetadataItemAllocV(const char *name, // /< Name of metadata item. 124 psMetadataType type, // /< Type of metadata item. 125 const char *comment, // /< Comment for metadata item. 126 va_list list // /< Arguments for name formatting and metadata item 127 // data. 128 ); 129 129 130 130 /** Create a metadata collection. … … 134 134 * @return psMetadata*: Pointer metadata. 135 135 */ 136 psMetadata *psMetadataAlloc( 137 void ///< Void. 138 ); 136 psMetadata *psMetadataAlloc(void // /< Void. 137 ); 139 138 140 139 /** Add existing metadata item to metadata collection. … … 144 143 * @return bool: True for success, false for failure. 145 144 */ 146 bool psMetadataAddItem( 147 psMetadata *restrict md, ///< Metadata collection to insert metadat item. 148 int where, ///< Location to be added. 149 psMetadataItem *restrict item ///< Metadata item to be added. 150 ); 145 bool psMetadataAddItem(psMetadata * restrict md, // /< Metadata collection to insert metadat item. 146 int where, // /< Location to be added. 147 psMetadataItem * restrict item // /< Metadata item to be added. 148 ); 151 149 152 150 /** Create and add a metadata item to metadata collection. … … 156 154 * @return bool: True for success, false for failure. 157 155 */ 158 bool psMetadataAdd( 159 psMetadata *restrict md, ///< Metadata collection to insert metadat item. 160 int where, ///< Location to be added. 161 const char *name, ///< Name of metadata item. 162 psMetadataType type, ///< Type of metadata item. 163 const char *comment, ///< Comment for metadata item. 164 ... ///< Arguments for name formatting and metadata item data. 165 ); 156 bool psMetadataAdd(psMetadata * restrict md, // /< Metadata collection to insert metadat item. 157 int where, // /< Location to be added. 158 const char *name, // /< Name of metadata item. 159 psMetadataType type, // /< Type of metadata item. 160 const char *comment, // /< Comment for metadata item. 161 ... // /< Arguments for name formatting and metadata item data. 162 ); 166 163 167 164 /** Remove an item from metadata collection. … … 174 171 * @return bool: True for success, false for failure. 175 172 */ 176 bool psMetadataRemove( 177 psMetadata *restrict md, ///< Metadata collection to insert metadat item. 178 int where, ///< Location to be removed. 179 const char *restrict key ///< Name of metadata key. 180 ); 173 bool psMetadataRemove(psMetadata * restrict md, // /< Metadata collection to insert metadat item. 174 int where, // /< Location to be removed. 175 const char *restrict key // /< Name of metadata key. 176 ); 181 177 182 178 /** Find an item in the metadata collection based on key name. … … 187 183 * @return psMetadataItem*: Pointer metadata item. 188 184 */ 189 psMetadataItem *psMetadataLookup( 190 psMetadata *restrict md, ///< Metadata collection to insert metadatitem.191 const char *restrict key ///< Name of metadata key.192 );185 psMetadataItem *psMetadataLookup(psMetadata * restrict md, // /< Metadata collection to insert metadat 186 // item. 187 const char *restrict key // /< Name of metadata key. 188 ); 193 189 194 190 /** Find an item in the metadata collection based on list index. … … 198 194 * @return psMetadataItem*: Pointer metadata item. 199 195 */ 200 psMetadataItem *psMetadataGet( 201 psMetadata *restrict md, ///< Metadata collection to insert metadat item. 202 int where ///< Location to be retrieved. 203 ); 196 psMetadataItem *psMetadataGet(psMetadata * restrict md, // /< Metadata collection to insert metadat item. 197 int where // /< Location to be retrieved. 198 ); 204 199 205 200 /** Set or reset metadata iterator. … … 209 204 * @return void: void. 210 205 */ 211 bool psMetadataSetIterator( 212 psMetadata *restrict md, ///< Metadata collection to iterate. 213 int where ///< Location of iterator. 214 ); 206 bool psMetadataSetIterator(psMetadata * restrict md, // /< Metadata collection to iterate. 207 int where // /< Location of iterator. 208 ); 215 209 216 210 /** Get next metadata item. … … 220 214 * @return psMetadataItem*: Pointer metadata item. 221 215 */ 222 psMetadataItem *psMetadataGetNext( 223 psMetadata *restrict md, ///< Metadata collection to iterate. 224 const char *restrict match, ///< Beginning of key name. 225 int which ///< Iterator to be used. 226 ); 216 psMetadataItem *psMetadataGetNext(psMetadata * restrict md, // /< Metadata collection to iterate. 217 const char *restrict match, // /< Beginning of key name. 218 int which // /< Iterator to be used. 219 ); 227 220 228 221 /** Get previous metadata item. … … 232 225 * @return psMetadataItem*: Pointer metadata item. 233 226 */ 234 psMetadataItem *psMetadataGetPrevious( 235 psMetadata *restrict md, ///< Metadata collection to iterate. 236 const char *restrict match, ///< Beginning of key name. 237 int which ///< Iterator to be used. 238 ); 227 psMetadataItem *psMetadataGetPrevious(psMetadata * restrict md, // /< Metadata collection to iterate. 228 const char *restrict match, // /< Beginning of key name. 229 int which // /< Iterator to be used. 230 ); 239 231 240 232 /** Print metadata item to file. … … 248 240 * @return psMetadataItem*: Pointer metadata item. 249 241 */ 250 void psMetadataItemPrint( 251 FILE *fd, ///< Pointer to file to write metadata item. 252 const char *format, ///< Format to print metadata item. 253 const psMetadataItem *restrict metadataItem ///< Metadata item to print. 254 ); 242 void psMetadataItemPrint(FILE * fd, // /< Pointer to file to write metadata item. 243 const char *format, // /< Format to print metadata item. 244 const psMetadataItem * restrict metadataItem // /< Metadata item to print. 245 ); 255 246 256 247 /** Read metadata header. … … 261 252 * @return psMetadata*: Pointer metadata. 262 253 */ 263 psMetadata *psMetadataReadHeader( 264 psMetadata *output, ///< Resulting metadata from read. 265 char *extname, ///< File name extension string. 266 int extnum, ///< File name extension number. Starts at 1. 267 char *filename ///< Name of file to read. 268 ); 254 psMetadata *psMetadataReadHeader(psMetadata * output, // /< Resulting metadata from read. 255 char *extname, // /< File name extension string. 256 int extnum, // /< File name extension number. Starts at 1. 257 char *filename // /< Name of file to read. 258 ); 269 259 270 260 /** Read metadata header. … … 274 264 * @return psMetadata*: Pointer metadata. 275 265 */ 276 psMetadata *psMetadataFReadHeader( 277 psMetadata *output, ///< Resulting metadata from read.278 char *extName, ///< File name extension string.279 int extNum, ///< File name extension number.280 fitsfile *fd ///< Pointer to file to read.281 ); 266 psMetadata *psMetadataFReadHeader(psMetadata * output, // /< Resulting metadata from read. 267 char *extName, // /< File name extension string. 268 int extNum, // /< File name extension number. 269 fitsfile * fd // /< Pointer to file to read. 270 ); 271 282 272 /// @} 283 273
Note:
See TracChangeset
for help on using the changeset viewer.
