00001 /* $Id: ObitOTFSkyModel.h,v 1.4 2005/10/06 19:33:28 bcotton Exp $ */ 00002 /*--------------------------------------------------------------------*/ 00003 /*; Copyright (C) 2003-2004 */ 00004 /*; Associated Universities, Inc. Washington DC, USA. */ 00005 /*; */ 00006 /*; This program is free software; you can redistribute it and/or */ 00007 /*; modify it under the terms of the GNU General Public License as */ 00008 /*; published by the Free Software Foundation; either version 2 of */ 00009 /*; the License, or (at your option) any later version. */ 00010 /*; */ 00011 /*; This program is distributed in the hope that it will be useful, */ 00012 /*; but WITHOUT ANY WARRANTY; without even the implied warranty of */ 00013 /*; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ 00014 /*; GNU General Public License for more details. */ 00015 /*; */ 00016 /*; You should have received a copy of the GNU General Public */ 00017 /*; License along with this program; if not, write to the Free */ 00018 /*; Software Foundation, Inc., 675 Massachusetts Ave, Cambridge, */ 00019 /*; MA 02139, USA. */ 00020 /*; */ 00021 /*; Correspondence this software should be addressed as follows: */ 00022 /*; Internet email: bcotton@nrao.edu. */ 00023 /*; Postal address: William Cotton */ 00024 /*; National Radio Astronomy Observatory */ 00025 /*; 520 Edgemont Road */ 00026 /*; Charlottesville, VA 22903-2475 USA */ 00027 /*--------------------------------------------------------------------*/ 00028 #ifndef OBITOTFSKYMODEL_H 00029 #define OBITOTFSKYMODEL_H 00030 00031 #include <string.h> 00032 #include <stdio.h> 00033 #include <stdlib.h> 00034 #include <math.h> 00035 #include <glib.h> 00036 #include "Obit.h" 00037 #include "ObitErr.h" 00038 #include "ObitThread.h" 00039 #include "ObitInfoList.h" 00040 #include "ObitTableSkyModel.h" 00041 00042 /*-------- Obit: Software for the recently deceased ------------------*/ 00062 /*-------------- enumerations -------------------------------------*/ 00067 enum obitOTFProj { 00069 OBIT_OTF_SIN = 0, 00071 OBIT_OTF_ARC, 00073 OBIT_OTF_TAN 00074 }; /* end enum obitIOType */ 00075 00077 typedef enum obitOTFProj ObitOTFProj; 00078 00079 /*--------------Class definitions-------------------------------------*/ 00081 typedef struct { 00082 #include "ObitOTFSkyModelDef.h" /* this class definition */ 00083 } ObitOTFSkyModel; 00084 00085 /*----------------------------- Macroes ---------------------------*/ 00091 #define ObitOTFSkyModelUnref(in) ObitUnref (in) 00092 00098 #define ObitOTFSkyModelRef(in) ObitRef (in) 00099 00106 #define ObitOTFSkyModelIsA(in) ObitIsA (in, ObitOTFSkyModelGetClass()) 00107 00108 /*---------------Public functions---------------------------*/ 00110 void ObitOTFSkyModelClassInit (void); 00111 00113 ObitOTFSkyModel* newObitOTFSkyModel (gchar* name); 00114 00116 ObitOTFSkyModel* ObitOTFSkyModelCreate (glong ndetect); 00118 typedef void (*ObitOTFSkyModelCreateFP) (glong ndetect); 00119 00121 gconstpointer ObitOTFSkyModelGetClass (void); 00122 00124 ObitOTFSkyModel* 00125 ObitOTFSkyModelCopy (ObitOTFSkyModel *in, ObitOTFSkyModel *out, ObitErr *err); 00126 00128 ObitIOCode ObitOTFSkyModelRead (ObitOTFSkyModel **in, ObitTableSkyModel *table, ObitErr *err); 00129 00131 ObitIOCode ObitOTFSkyModelWrite (ObitOTFSkyModel *in, ObitTableSkyModel *table, ObitErr *err); 00132 00134 ObitOTFProj ObitOTFSkyModelProj (gchar *string); 00135 00136 /*----------- ClassInfo Structure -----------------------------------*/ 00142 typedef struct { 00143 #include "ObitOTFSkyModelClassDef.h" 00144 } ObitOTFSkyModelClassInfo; 00145 00146 #endif /* OBITOTFSKYMODEL_H */