Main Page | Class List | Directories | File List | Class Members | File Members

ObitTypes.h

Go to the documentation of this file.
00001 /* $Id: ObitTypes.h,v 1.2 2005/03/29 14:02:42 bcotton Exp $                            */
00002 /*--------------------------------------------------------------------*/
00003 /*;  Copyright (C) 2002-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 OBITTYPES_H 
00029 #define OBITTYPES_H 
00030 #include <glib.h>
00031 
00032 /*-------- Obit: Software for the recently deceased ------------------*/
00040 /*-------------------------- Macroes  -----------------------------------*/
00042 #ifndef DG2RAD  
00043 #define DG2RAD G_PI / 180.0
00044 #endif
00045 
00047 #ifndef RAD2DG  
00048 #define RAD2DG 180.0 / G_PI
00049 #endif
00050 
00052 #ifndef RAD2AS  
00053 #define RAD2AS 3600.0 * RAD2DG
00054 #endif
00055 
00057 #ifndef AS2RAD  
00058 #define AS2RAD DG2RAD / 3600.0
00059 #endif
00060 /*-------------- type definitions----------------------------------*/
00062 /* if sizeof (gint32) == sizeof (gfloat) */
00063 typedef gint32 oint;
00064 
00065 /* if sizeof(glong) == sizeof(gfloat)
00066    typedef glong oint;*/
00067 
00068 /*-------------------- unions -------------------------------------*/
00071   union ObitInfoListEquiv { 
00072     oint    itg;
00073     gfloat  flt;
00074     gdouble dbl;
00075   };
00076 
00077 /*-------------- enumerations -------------------------------------*/
00083 enum obitIOStatus {
00085   OBIT_Inactive, 
00087   OBIT_Defined,  
00089   OBIT_Active,
00091   OBIT_Modified,
00093   OBIT_ErrorExist
00094 }; /* end enum obitIOStatus */
00096 typedef enum obitIOStatus ObitIOStatus;
00097 
00103 enum obitIOType {
00105   OBIT_IO_FITS=0, 
00107   OBIT_IO_AIPS,
00109   OBIT_IO_MEM,
00111   OBIT_IO_Binary,
00113   OBIT_IO_Text
00114 }; /* end enum obitIOType */
00115 
00117 typedef enum obitIOType ObitIOType;
00118 
00124 enum obitIOAccess {
00126   OBIT_IO_None, 
00128   OBIT_IO_ReadOnly, 
00130   OBIT_IO_ReadCal, 
00132   OBIT_IO_WriteOnly,
00134   OBIT_IO_ReadWrite
00135 }; /* end enum obitIOAccess */
00136 
00138 typedef enum obitIOAccess ObitIOAccess;
00139 
00145 enum obitIOSize {
00147   OBIT_IO_byRow,
00149   OBIT_IO_byPlane
00150 }; /* end enum obitIOSize */
00151 
00153 typedef enum obitIOSize ObitIOSize;
00154 
00159 enum obitIOCode {
00161   OBIT_IO_OK=0, 
00163   OBIT_IO_EOF, 
00165   OBIT_IO_SpecErr,
00167   OBIT_IO_OpenErr,
00169   OBIT_IO_CloseErr,
00171   OBIT_IO_ReadErr,
00173   OBIT_IO_WriteErr,
00175   OBIT_IO_DeleteErr,
00177   OBIT_IO_NotFoundErr
00178 }; /* end enum obitIOCode */
00179 
00181 typedef enum obitIOCode ObitIOCode;
00182 
00187 enum obitInfoType {
00189   OBIT_byte = 0,  
00191   OBIT_short, 
00193   OBIT_int,   
00195   OBIT_oint,   
00197   OBIT_long,  
00199   OBIT_ubyte, 
00201   OBIT_ushort,
00203   OBIT_uint,  
00205   OBIT_ulong, 
00207   OBIT_float, 
00209   OBIT_double,
00211   OBIT_complex,
00213   OBIT_dcomplex,
00215   OBIT_string,
00217   OBIT_bool,
00219   OBIT_bits
00220 }; /* end enum obitInfoType */
00221 
00223 typedef enum obitInfoType ObitInfoType;
00224 
00225 
00226 #endif /* OBITTYPES_H */ 

Generated on Fri Aug 31 22:13:04 2007 for Obit by  doxygen 1.3.9.1