ifw-ccf 6.0.0
 
Loading...
Searching...
No Matches
fits.hpp
Go to the documentation of this file.
1
6
7#ifndef CCF_COMMON_FITS_HPP_H_
8#define CCF_COMMON_FITS_HPP_H_
9
10// TODO:Could be added in ifw::core::dit::fits.
11
12#include <fitsio.h>
13#include <CCfits/CCfits.h>
14#include <CCfits/FITS.h>
15#include <CCfits/PHDU.h>
16
17#include <ifw/core/utils/param/parameterSet.hpp>
18#include <ifw/core/dit/fits/fits.hpp>
19
20
21namespace ifw::ccf::common::fits {
22
24 int BitpixToCfitsioDataType(const int8_t bitpix);
25
27 double DataTypeToBzero(const int fits_data_type);
28
30 int8_t BitpixToBytesPerPixel(const int8_t bitpix);
31
33 uint16_t GetNbOfHdus(std::shared_ptr<CCfits::FITS>& fits_handle);
34
39 void GetKeys(std::shared_ptr<CCfits::FITS>& fits_handle,
40 const int16_t hdu_nb,
41 const std::vector<std::string>& keys,
42 std::map<std::string, std::pair<std::string, std::string>>& key_values,
43 const bool ignore_missing_keys = false);
44
53 void LoadImageData(const std::string& filename,
54 const int16_t hdu_nb,
55 ifw::fnd::datatype::DataType& pixel_data_type,
56 void** image_buffer,
57 uint32_t& image_size,
58 std::map<std::string, std::pair<std::string, std::string>>& key_values,
59 const std::list<std::string>& req_keys = std::list<std::string>());
60
62 void AppendImageExtension(std::shared_ptr<CCfits::FITS>& fits_handle,
63 const ifw::core::dit::did::Did& dictionary,
64 const std::string& ext_name,
65 const ifw::fnd::fits::BitPix bitpix,
66 const std::vector<int32_t>& naxes,
67 const uint32_t image_size,
68 const void* image_buffer,
69 const uint16_t nb_of_hdr_blocks = 1);
70
71}
72
73#endif // CCF_COMMON_FITS_HPP_H_
Definition fits.cpp:13
double DataTypeToBzero(const int fits_data_type)
Convert the data type into the corresponding BZERO value.
Definition fits.cpp:178
void LoadImageData(const std::string &filename, const int16_t hdu_nb, ifw::fnd::datatype::DataType &pixel_data_type, void **image_buffer, uint32_t &image_size, std::map< std::string, std::pair< std::string, std::string > > &key_values, const std::list< std::string > &req_keys)
Definition fits.cpp:78
uint16_t GetNbOfHdus(std::shared_ptr< CCfits::FITS > &fits_handle)
Return number of HDUs in the FITS file referenced to by the handle.
Definition fits.cpp:246
int BitpixToCfitsioDataType(const int8_t bitpix)
Extract category name from PAF key.
Definition fits.cpp:16
void GetKeys(std::shared_ptr< CCfits::FITS > &fits_handle, const int16_t hdu_nb, const std::vector< std::string > &keys, std::map< std::string, std::pair< std::string, std::string > > &key_values, const bool ignore_missing_keys)
Definition fits.cpp:44
void AppendImageExtension(std::shared_ptr< CCfits::FITS > &fits_handle, const ifw::core::dit::did::Did &dictionary, const std::string &ext_name, const ifw::fnd::fits::BitPix bitpix, const std::vector< int32_t > &naxes, const uint32_t image_size, const void *image_buffer, const uint16_t nb_of_hdr_blocks)
Append an image extension to the existing FITS file.
Definition fits.cpp:207
int8_t BitpixToBytesPerPixel(const int8_t bitpix)
Convert the value of BITPIX into the corresponding bytes per pixel.
Definition fits.cpp:71