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 OBITIMAGEDESC_H
00028 #define OBITIMAGEDESC_H
00029 #include "Obit.h"
00030 #include "ObitErr.h"
00031 #include "ObitInfoList.h"
00032
00033
00053
00059 #define ObitImageDescUnref(in) ObitUnref (in)
00060
00066 #define ObitImageDescRef(in) ObitRef (in)
00067
00074 #define ObitImageDescIsA(in) ObitIsA (in, ObitImageDescGetClass())
00075
00077 #define IM_MAXDIM 7
00078
00079 #define IMLEN_VALUE 41
00080
00081 #define IMLEN_KEYWORD 21
00082
00083
00088 enum obitCoordType {
00090 OBIT_Equatorial,
00092 OBIT_Galactic,
00094 OBIT_Ecliptic
00095 };
00097 typedef enum obitCoordType ObitCoordType;
00098
00104 typedef struct {
00105 #include "ObitImageDescDef.h"
00106 } ObitImageDesc;
00107
00108
00110 void ObitImageDescClassInit (void);
00111
00113 ObitImageDesc* newObitImageDesc (gchar *name);
00114
00116 gconstpointer ObitImageDescGetClass (void);
00117
00119 ObitImageDesc*
00120 ObitImageDescCopy (ObitImageDesc* in,
00121 ObitImageDesc* out, ObitErr *err);
00122
00124 void ObitImageDescCopyDesc (ObitImageDesc* in, ObitImageDesc* out,
00125 ObitErr *err);
00126
00128 ObitImageDesc* ObitImageDescDefault (gchar *name);
00129
00131 void ObitImageDescCo (ObitImageDesc* in, ObitImageDesc* out,
00132 ObitErr *err);
00133
00135 void ObitImageDescIndex (ObitImageDesc* in);
00136
00138 gboolean ObitImageDescCvtPixel(ObitImageDesc* in, ObitImageDesc* out,
00139 gfloat *inPixel, gfloat *outPixel, ObitErr *err);
00140
00143 gboolean
00144 ObitImageDescCvtZern(ObitImageDesc* in, ObitImageDesc* out,
00145 gint nZern, gfloat *ZCoef,
00146 gfloat *inPixel, gfloat *outPixel, ObitErr *err);
00147
00149 void ObitImageDescGetPos(ObitImageDesc* in, gfloat *inPixel,
00150 gdouble *pos, ObitErr *err);
00151
00153 void ObitImageDescGetPixel(ObitImageDesc* in, gdouble *pos,
00154 gfloat *outPixel, ObitErr *err);
00155
00157 gboolean ObitImageDescOverlap(ObitImageDesc *in1, ObitImageDesc *in2, ObitErr *err);
00158
00160 gfloat ObitImageDescRotate(ObitImageDesc *in);
00161
00163 void ObitImageDescGetPoint(ObitImageDesc *in, gdouble *RAPnt, gdouble *DecPnt);
00164
00166 gfloat ObitImageDescAngle (ObitImageDesc *in, gfloat y, gfloat x);
00167
00168
00174 typedef struct {
00175 #include "ObitImageDescClassDef.h"
00176 } ObitImageDescClassInfo;
00177
00178 #endif
00179