CCfits
2.4
|
00001 // Astrophysics Science Division, 00002 // NASA/ Goddard Space Flight Center 00003 // HEASARC 00004 // http://heasarc.gsfc.nasa.gov 00005 // e-mail: ccfits@legacy.gsfc.nasa.gov 00006 // 00007 // Original author: Ben Dorman 00008 00009 #ifndef CCFITS_H 00010 #define CCFITS_H 1 00011 00012 // fitsio 00013 #include "fitsio.h" 00014 // string 00015 #include <string> 00016 00017 namespace CCfits { 00018 class ExtHDU; 00019 00020 } // namespace CCfits 00021 #include <map> 00022 #include <sys/types.h> 00023 #include "longnam.h" 00024 #include "float.h" 00025 00026 00027 namespace CCfits { 00031 static const int BITPIX = -32; 00032 static const int NAXIS = 2; 00033 static const int MAXDIM = 99; 00034 extern const unsigned long USBASE; 00035 extern const unsigned long ULBASE; 00036 00037 extern char BSCALE[7]; 00038 extern char BZERO[6]; 00039 00040 00041 00042 typedef enum {Read=READONLY,Write=READWRITE} RWmode; 00043 00044 00079 typedef enum {Tnull, Tbit = TBIT, Tbyte = TBYTE, Tlogical = TLOGICAL, Tstring = TSTRING, Tushort = TUSHORT, Tshort = TSHORT,Tuint = TUINT,Tint = TINT, Tulong = TULONG,Tlong = TLONG, Tlonglong = TLONGLONG, Tfloat = TFLOAT, Tdouble = TDOUBLE, Tcomplex = TCOMPLEX, Tdblcomplex=TDBLCOMPLEX, VTbit= -TBIT, VTbyte=-TBYTE,VTlogical=-Tlogical, VTushort=-TUSHORT,VTshort=-TSHORT,VTuint=-TUINT, VTint=-TINT,VTulong=-TULONG,VTlong=-TLONG,VTlonglong=-TLONGLONG,VTfloat=-TFLOAT,VTdouble=-TDOUBLE,VTcomplex=-TCOMPLEX,VTdblcomplex=-TDBLCOMPLEX} ValueType; 00080 00081 00082 00083 typedef enum {AnyHdu=-1, ImageHdu, AsciiTbl, BinaryTbl} HduType; 00084 00085 00086 00087 typedef enum {Inotype = 0, Ibyte=BYTE_IMG, 00088 Ishort = SHORT_IMG, 00089 Ilong = LONG_IMG, 00090 Ifloat = FLOAT_IMG, 00091 Idouble = DOUBLE_IMG, 00092 Iushort = USHORT_IMG, 00093 Iulong = ULONG_IMG} ImageType; 00094 00095 00096 00097 typedef std::string String; 00098 00099 00100 00101 typedef std::multimap<String,CCfits::ExtHDU*> ExtMap; 00102 00103 00104 00105 typedef ExtMap::const_iterator ExtMapConstIt; 00106 00107 00108 00109 typedef ExtMap::iterator ExtMapIt; 00110 00111 } // namespace CCfits 00112 00113 00114 #endif