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
00029 #ifndef OBITTABLEIM_H
00030 #define OBITTABLEIM_H
00031
00032 #include "Obit.h"
00033 #include "ObitErr.h"
00034 #include "ObitTable.h"
00035 #include "ObitData.h"
00036
00037
00139
00140
00142 #define MAXKEYCHARTABLEIM 24
00143
00145 typedef struct {
00146 #include "ObitTableIMDef.h"
00147 } ObitTableIM;
00148
00150 typedef struct {
00151 #include "ObitTableIMRowDef.h"
00152 } ObitTableIMRow;
00153
00154
00160 #define ObitTableIMUnref(in) ObitUnref (in)
00161
00167 #define ObitTableIMRef(in) ObitRef (in)
00168
00175 #define ObitTableIMIsA(in) ObitIsA (in, ObitTableIMGetClass())
00176
00182 #define ObitTableIMRowUnref(in) ObitUnref (in)
00183
00189 #define ObitTableIMRowRef(in) ObitRef (in)
00190
00197 #define ObitTableIMRowIsA(in) ObitIsA (in, ObitTableIMRowGetClass())
00198
00199
00200
00202 void ObitTableIMRowClassInit (void);
00203
00205 ObitTableIMRow* newObitTableIMRow (ObitTableIM *table);
00206
00208 gconstpointer ObitTableIMRowGetClass (void);
00209
00210
00212 void ObitTableIMClassInit (void);
00213
00215 ObitTableIM* newObitTableIM (gchar* name);
00216
00218 ObitTableIM*
00219 newObitTableIMValue (gchar* name, ObitData *file, glong *ver,
00220 ObitIOAccess access,
00221 oint numBand, oint numPol, oint npoly,
00222 ObitErr *err);
00223
00225 void ObitTableIMClassInit (void);
00226
00228 gconstpointer ObitTableIMGetClass (void);
00229
00231 ObitTableIM* ObitTableIMCopy (ObitTableIM *in, ObitTableIM *out,
00232 ObitErr *err);
00233
00235 ObitTableIM* ObitTableIMClone (ObitTableIM *in, ObitTableIM *out);
00236
00238 ObitTableIM* ObitTableIMConvert (ObitTable *in);
00239
00241 ObitIOCode ObitTableIMOpen (ObitTableIM *in, ObitIOAccess access,
00242 ObitErr *err);
00243
00245 ObitIOCode
00246 ObitTableIMReadRow (ObitTableIM *in, glong iIMRow, ObitTableIMRow *row,
00247 ObitErr *err);
00248
00250 void
00251 ObitTableIMSetRow (ObitTableIM *in, ObitTableIMRow *row,
00252 ObitErr *err);
00253
00255 ObitIOCode
00256 ObitTableIMWriteRow (ObitTableIM *in, glong iIMRow, ObitTableIMRow *row,
00257 ObitErr *err);
00258
00260 ObitIOCode ObitTableIMClose (ObitTableIM *in, ObitErr *err);
00261
00262
00268 typedef struct {
00269 #include "ObitTableIMClassDef.h"
00270 } ObitTableIMClassInfo;
00271
00277 typedef struct {
00278 #include "ObitTableIMRowClassDef.h"
00279 } ObitTableIMRowClassInfo;
00280 #endif