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 OBIT_H
00029 #define OBIT_H
00030 #include <glib.h>
00031 #include <string.h>
00032 #include "memwatch.h"
00033 #include <stdio.h>
00034 #include <stdlib.h>
00035 #include <math.h>
00036 #include "ObitTypes.h"
00037 #include "ObitErr.h"
00054
00055
00056
00062 #define OBIT_ID 0x4f626974
00063
00068 typedef struct {
00069 #include "ObitDef.h"
00070 } Obit;
00071
00072
00074 Obit* newObit (gchar* name);
00075
00076 typedef gpointer (*newObitFP)(gchar* name);
00077
00079 void ObitClassInit (void);
00080 typedef void (*ObitClassInitFP) (void);
00081
00083 gconstpointer ObitGetClass (void);
00084 typedef gconstpointer (*ObitGetClassFP)(void);
00085
00087 Obit* ObitCopy (Obit *in, Obit *out, ObitErr *err);
00088 typedef gpointer (*ObitCopyFP) (gpointer in, gpointer out,
00089 ObitErr *err);
00090
00092 Obit* ObitClone (Obit *in, Obit *out);
00093 typedef gpointer (*ObitCloneFP) (Obit* in, Obit* out);
00094
00096 gpointer ObitRef (gpointer in);
00097 typedef gpointer (*ObitRefFP) (gpointer in);
00098
00100 gpointer ObitUnref (gpointer in);
00101 typedef gpointer (*ObitUnrefFP) (gpointer *in);
00102
00105 gboolean ObitIsA (gpointer in, gconstpointer type);
00106 typedef gboolean (*ObitIsAFP) (gpointer in, gconstpointer class);
00107
00109 gfloat ObitMagicF (void);
00110
00112 void ObitTrimTrail (gchar *str);
00113
00115 gboolean ObitStrCmp (gchar *str1, gchar *str2, gint maxlen);
00116
00118 gchar* ObitToday (void);
00119
00121 typedef void (*ObitInitFP) (gpointer in);
00122 typedef void (*ObitClearFP) (gpointer in);
00123
00124
00126 void ObitClassInfoDefFn (gpointer inClass);
00127 typedef void (*ObitClassInfoDefFnFP) (gpointer inClass);
00128
00134 typedef struct {
00135 #include "ObitClassDef.h"
00136 } ObitClassInfo;
00137
00139 gboolean ObitInfoIsA (ObitClassInfo* in, ObitClassInfo* type);
00140 typedef gboolean (*ObitInfoIsAFP) (ObitClassInfo* in, ObitClassInfo* type);
00141
00142
00143 #endif