CCfits  2.4
CCfits.h
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