ifw-ccf 5.0.2
Loading...
Searching...
No Matches
fits.hpp
Go to the documentation of this file.
1
5#ifndef CCF_COMMON_FITS_HPP_H_
6#define CCF_COMMON_FITS_HPP_H_
7
8// TODO:Could be added in ifw::core::dit::fits.
9
10#include <fitsio.h>
11#include <CCfits/CCfits.h>
12#include <CCfits/FITS.h>
13#include <CCfits/PHDU.h>
14
15#include <ifw/core/utils/param/parameterSet.hpp>
16#include <ifw/core/dit/fits/fits.hpp>
17
18
19namespace ifw::ccf::common::fits {
20
22 int BitpixToCfitsioDataType(const int8_t bitpix);
23
25 double DataTypeToBzero(const int fits_data_type);
26
28 int8_t BitpixToBytesPerPixel(const int8_t bitpix);
29
31 uint16_t GetNbOfHdus(std::shared_ptr<CCfits::FITS>& fits_handle);
32
37 void GetKeys(std::shared_ptr<CCfits::FITS>& fits_handle,
38 const int16_t hdu_nb,
39 const std::vector<std::string>& keys,
40 std::map<std::string, std::pair<std::string, std::string>>& key_values,
41 const bool ignore_missing_keys = false);
42
51 void LoadImageData(const std::string& filename,
52 const int16_t hdu_nb,
53 ifw::fnd::datatype::DataType& pixel_data_type,
54 void** image_buffer,
55 uint32_t& image_size,
56 std::map<std::string, std::pair<std::string, std::string>>& key_values,
57 const std::list<std::string>& req_keys = std::list<std::string>());
58
60 void AppendImageExtension(std::shared_ptr<CCfits::FITS>& fits_handle,
61 const ifw::core::dit::did::Did& dictionary,
62 const std::string& ext_name,
63 const ifw::fnd::fits::BitPix bitpix,
64 const std::vector<int32_t>& naxes,
65 const uint32_t image_size,
66 const void* image_buffer,
67 const uint16_t nb_of_hdr_blocks = 1);
68
69}
70
71#endif // CCF_COMMON_FITS_HPP_H_
Definition fits.cpp:12
double DataTypeToBzero(const int fits_data_type)
Convert the data type into the corresponding BZERO value.
Definition fits.cpp:177
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:77
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:245
int BitpixToCfitsioDataType(const int8_t bitpix)
Extract category name from PAF key.
Definition fits.cpp:15
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:43
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:206
int8_t BitpixToBytesPerPixel(const int8_t bitpix)
Convert the value of BITPIX into the corresponding bytes per pixel.
Definition fits.cpp:70