00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef OBITFILEFITS_H
00029 #define OBITFILEFITS_H
00030 #include "fitsio.h"
00031 #include "Obit.h"
00032 #include "ObitErr.h"
00033 #include "ObitThread.h"
00034 #include "ObitInfoList.h"
00035 #include "ObitFile.h"
00036
00037
00059
00060
00062 typedef struct {
00063 #include "ObitFileFITSDef.h"
00064 } ObitFileFITS;
00065
00066
00067
00073 #define ObitFileFITSUnref(in) ObitUnref (in)
00074
00080 #define ObitFileFITSRef(in) ObitRef (in)
00081
00088 #define ObitFileFITSIsA(in) ObitIsA (in, ObitFileFITSGetClass())
00089
00090
00091
00092
00094 void ObitFileFITSClassInit (void);
00095
00097 ObitFileFITS* newObitFileFITS (gchar* name);
00098
00100 gconstpointer ObitFileFITSGetClass (void);
00101
00103 ObitFileFITS* ObitFileFITSZap (ObitFileFITS *in, ObitErr *err);
00104
00106 ObitIOCode ObitFileFITSZapHDU (ObitFileFITS *in, ObitErr *err);
00107
00109 ObitFileFITS* ObitFileFITSCopy (ObitFileFITS *in, ObitFileFITS *out, ObitErr *err);
00110
00112 ObitIOCode
00113 ObitFileFITSOpen (ObitFileFITS *in, gchar *fileName, gint disk,
00114 ObitIOAccess access, ObitErr *err);
00115
00117 ObitIOCode ObitFileFITSClose (ObitFileFITS *in, ObitErr *err);
00118
00120 gboolean ObitFileFITSExist (gchar *fileName, ObitErr *err);
00121
00123 ObitIOCode ObitFileFITSNum (ObitFileFITS *in, gint hdunum, gint *hdutype,
00124 ObitErr *err);
00125
00127 ObitIOCode ObitFileFITSName (ObitFileFITS *in, gint hdutype, gchar *extname,
00128 gint extver, ObitErr *err);
00129
00131 ObitIOCode
00132 ObitFileFITSReadKeyStr (ObitFileFITS *in, gchar *Name,
00133 gchar *Value, gchar *Comment, ObitErr *err);
00134
00136 ObitIOCode
00137 ObitFileFITSReadKeyFlt (ObitFileFITS *in, gchar *Name,
00138 gfloat *Value, gchar *Comment, ObitErr *err);
00139
00141 ObitIOCode
00142 ObitFileFITSReadKeyDbl (ObitFileFITS *in, gchar *Name,
00143 gdouble *Value, gchar *Comment, ObitErr *err);
00144
00146 ObitIOCode
00147 ObitFileFITSReadKeyLng (ObitFileFITS *in, gchar *Name,
00148 glong *Value, gchar *Comment, ObitErr *err);
00149
00151 ObitIOCode
00152 ObitFileFITSReadHistory (ObitFileFITS *in, gchar *hiCard, ObitErr *err);
00153
00155 ObitIOCode
00156 ObitFileFITSWriteKeyStr (ObitFileFITS *in, gchar *Name, gboolean update,
00157 gchar *Value, gchar *Comment, ObitErr *err);
00158
00160 ObitIOCode
00161 ObitFileFITSWriteKeyFlt (ObitFileFITS *in, gchar *Name, gboolean update,
00162 gfloat Value, gchar *Comment, ObitErr *err);
00163
00165 ObitIOCode
00166 ObitFileFITSWriteKeyDbl (ObitFileFITS *in, gchar *Name, gboolean update,
00167 gdouble Value, gchar *Comment, ObitErr *err);
00168
00170 ObitIOCode
00171 ObitFileFITSWriteKeyLng (ObitFileFITS *in, gchar *Name, gboolean update,
00172 glong Value, gchar *Comment, ObitErr *err);
00173
00175 ObitIOCode
00176 ObitFileFITSWriteHisKeyStr (fitsfile *inFptr, gchar *Name, gchar *Value,
00177 gchar *Comment, ObitErr *err);
00178
00180 ObitIOCode
00181 ObitFileFITSWriteHisKeyFlt (fitsfile *inFptr, gchar *Name, gfloat Value,
00182 gchar *Comment, ObitErr *err);
00183
00185 ObitIOCode
00186 ObitFileFITSWriteHisKeyDbl (fitsfile *inFptr, gchar *Name, gdouble Value,
00187 gchar *Comment, ObitErr *err);
00188
00190 ObitIOCode
00191 ObitFileFITSWriteHisKeyLng (fitsfile *inFptr, gchar *Name, glong Value,
00192 gchar *Comment, ObitErr *err);
00193
00195 ObitIOCode
00196 ObitFileFITSWriteDate (ObitFileFITS *in, ObitErr *err);
00197
00199 ObitIOCode
00200 ObitFileFITSWriteHistory (ObitFileFITS *in, gchar *hiCard, ObitErr *err);
00201
00203 ObitIOCode
00204 ObitFileFITSAddKeys (ObitFileFITS *in, gint morekeys, ObitErr *err);
00205
00206
00212 typedef struct {
00213 #include "ObitFileFITSClassDef.h"
00214 } ObitFileFITSClassInfo;
00215
00216
00217 #endif