CCfits 2.7
CCfits.h
1// Astrophysics Science Division,
2// NASA/ Goddard Space Flight Center
3// HEASARC
4// http://heasarc.gsfc.nasa.gov
5// e-mail: ccfits@legacy.gsfc.nasa.gov
6//
7// Original author: Ben Dorman
8
9#ifndef CCFITS_H
10#define CCFITS_H 1
11
12// fitsio
13#include "fitsio.h"
14// string
15#include <string>
16
17namespace CCfits {
18 class ExtHDU;
19 class Column;
20
21} // namespace CCfits
22#include <map>
23#include <sys/types.h>
24#include "longnam.h"
25#include "float.h"
26
27
28namespace CCfits {
32 static const int BITPIX = -32;
33 static const int NAXIS = 2;
34 static const int MAXDIM = 99;
35 extern const unsigned long USBASE;
36 extern const unsigned long ULBASE;
37
38 extern char BSCALE[7];
39 extern char BZERO[6];
40
41
42
43 typedef enum {Read=READONLY,Write=READWRITE} RWmode;
44
45
81 typedef enum {
82 Tnull,
83 Tbit = TBIT,
84 Tbyte = TBYTE,
85 Tlogical = TLOGICAL,
86 Tstring = TSTRING,
87 Tushort = TUSHORT,
88 Tshort = TSHORT,
89 Tuint = TUINT,
90 Tint = TINT,
91 Tulong = TULONG,
92 Tlong = TLONG,
93 Tlonglong = TLONGLONG,
94 Tfloat = TFLOAT,
95 Tdouble = TDOUBLE,
96 Tcomplex = TCOMPLEX,
97 Tdblcomplex = TDBLCOMPLEX,
98 VTbit = -TBIT,
99 VTbyte = -TBYTE,
100 VTlogical = -TLOGICAL,
101 VTstring = -TSTRING,
102 VTushort = -TUSHORT,
103 VTshort = -TSHORT,
104 VTuint = -TUINT,
105 VTint = -TINT,
106 VTulong = -TULONG,
107 VTlong = -TLONG,
108 VTlonglong = -TLONGLONG,
109 VTfloat = -TFLOAT,
110 VTdouble = -TDOUBLE,
111 VTcomplex = -TCOMPLEX,
112 VTdblcomplex= -TDBLCOMPLEX
113 } ValueType;
114
115
116 // GroupTbl isn't a real CFITSIO HDU type, but we use it when creating
117 // new Grouping Tables
118 typedef enum {AnyHdu=-1, ImageHdu, AsciiTbl, BinaryTbl, GroupTbl} HduType;
119
120
121
122 typedef enum {Inotype = 0, Ibyte=BYTE_IMG,
123 Ishort = SHORT_IMG,
124 Ilong = LONG_IMG,
125 Ifloat = FLOAT_IMG,
126 Idouble = DOUBLE_IMG,
127 Iushort = USHORT_IMG,
128 Iulong = ULONG_IMG,
129 Ilonglong = LONGLONG_IMG} ImageType;
130
131
132
133 typedef std::string String;
134
135
136
137 typedef std::multimap<String,CCfits::ExtHDU*> ExtMap;
138
142 typedef std::multimap<std::string,CCfits::Column*> ColMap;
143
144
145
146 typedef ExtMap::const_iterator ExtMapConstIt;
147
148
149
150 typedef ExtMap::iterator ExtMapIt;
151
152} // namespace CCfits
153
154
155#endif
Namespace enclosing all CCfits classes and globals definitions.
Definition AsciiTable.cxx:26
ValueType
CCfits value types and their CFITSIO equivalents (in caps)
Definition CCfits.h:81
std::multimap< std::string, CCfits::Column * > ColMap
Type definition for a table's column container.
Definition CCfits.h:142