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 #ifndef OBITAIPSOBJECT_H
00028 #define OBITAIPSOBJECT_H
00029 #include <glib.h>
00030 #include "Obit.h"
00031 #include "ObitErr.h"
00032 #include "ObitAIPS.h"
00033 #include "ObitAIPSCat.h"
00034
00035
00045 #define MAXAIPSOBJDIM 5
00046
00047
00049 typedef gchar AIPSObj[32];
00050
00052 typedef gchar AIPSObjClass[8];
00053
00055 typedef gchar AIPSKey[8];
00056
00058 typedef oint AIPSKeyDim[MAXAIPSOBJDIM];
00059
00060
00065 enum obitAIPSObjectType {
00067 OBIT_AIPSObjectInt = 4,
00069 OBIT_AIPSObjectRe = 2,
00071 OBIT_AIPSObjectDP = 1,
00073 OBIT_AIPSObjectCar = 3,
00075 OBIT_AIPSObjectLog = 5,
00076 };
00077
00079 typedef enum obitAIPSObjectType ObitAIPSObjectType;
00080
00081
00083 union ObitAIPSCatEquiv {
00084 oint itg[256];
00085 gfloat flt[256];
00086 double dbl[256];
00087 };
00088
00089
00091 void ObitAIPSObjectOBinit (oint *ierr);
00092
00094 void ObitAIPSObjectOBvhkw (AIPSObjClass class, AIPSKey keyword, ObitAIPSObjectType type, oint *ierr);
00095
00097 void ObitAIPSObjectOBkeyv (oint objnum, AIPSKey keywrd, oint *keypnt, gint *ierr, ObitErr *err);
00098
00100 void ObitAIPSObjectOBrget (oint objnum, AIPSKey keywrd, ObitAIPSObjectType *type,
00101 AIPSKeyDim dim, gpointer value, gchar *valuec,
00102 ObitErr *err);
00103
00105 void ObitAIPSObjectOBcrea (AIPSObj name, AIPSObjClass class, ObitErr *err);
00106
00108 void ObitAIPSObjectOBfree (AIPSObj name, ObitErr *err);
00109
00111 void ObitAIPSObjectOBname (AIPSObj name, oint *objnum, ObitErr *err);
00112
00114 void ObitAIPSObjectOBclass (oint objnum, oint *classno, AIPSObjClass name, ObitErr *err);
00115
00117 void ObitAIPSObjectOBput (oint objnum, AIPSKey keywrd, ObitAIPSObjectType type,
00118 AIPSKeyDim dim, gpointer value, gchar *valuec,
00119 ObitErr *err);
00120
00122 void ObitAIPSObjectOBget (oint objnum, AIPSKey keywrd, ObitAIPSObjectType *type,
00123 AIPSKeyDim dim, gpointer value, gchar *valuec,
00124 ObitErr *err);
00125
00127 gboolean
00128 ObitAIPSObjectOBinfo (oint objnum, AIPSKey keywrd, ObitAIPSObjectType *type,
00129 AIPSKeyDim dim, ObitErr *err);
00130
00132 void ObitAIPSObjectOBdskc (AIPSObj name, oint *disk, oint *cno, ObitErr *err);
00133
00135 void ObitAIPSObjectOBhget (AIPSObj name, union ObitAIPSCatEquiv cat, ObitErr *err);
00136
00138 void ObitAIPSObjectOBhput (AIPSObj name, union ObitAIPSCatEquiv cat, ObitErr *err);
00139
00141 void ObitAIPSObjectOBcopy (AIPSObj namein, AIPSObj namout, ObitErr *err);
00142
00143 #endif
00144