55 INT64 = ULONGLONG_IMG,
85 fitsio_type = TUSHORT;
94 fitsio_type = TLONGLONG;
97 fitsio_type = TULONGLONG;
100 fitsio_type = TFLOAT;
103 fitsio_type = TDOUBLE;
106 throw std::runtime_error(fmt::format(
"{}: Unsupported data type for FITS: {}",
107 IFWLOC,
static_cast<int>(data_type)));
163 throw std::runtime_error(fmt::format(
"{}: Unsupported data type for FITS BITPIX: {}",
164 IFWLOC,
static_cast<int>(data_type)));
175 inline static int BitpixToCfitsioDataType(
BitPix bitpix) {
176 int cfitsio_datatype;
181 cfitsio_datatype = TSBYTE;
185 cfitsio_datatype = TBYTE;
189 cfitsio_datatype = TSHORT;
193 cfitsio_datatype = TUSHORT;
197 cfitsio_datatype = TINT;
201 cfitsio_datatype = TUINT;
205 cfitsio_datatype = TLONGLONG;
209 cfitsio_datatype = TULONGLONG;
213 cfitsio_datatype = TFLOAT;
217 cfitsio_datatype = TDOUBLE;
221 cfitsio_datatype = -1;
223 return cfitsio_datatype;
232 inline static int BitPixInBytes(
BitPix bitpix) {
237 return ifw::fnd::datatype::DU_SIZE_1;
241 return ifw::fnd::datatype::DU_SIZE_1;
245 return ifw::fnd::datatype::DU_SIZE_2;
249 return ifw::fnd::datatype::DU_SIZE_2;
253 return ifw::fnd::datatype::DU_SIZE_4;
257 return ifw::fnd::datatype::DU_SIZE_4;
261 return ifw::fnd::datatype::DU_SIZE_8;
265 return ifw::fnd::datatype::DU_SIZE_8;
269 return ifw::fnd::datatype::DU_SIZE_4;
273 return ifw::fnd::datatype::DU_SIZE_8;