Go to the documentation of this file.
5 #ifndef CCF_STDPUB_PUB_FITS_HPP_H_
6 #define CCF_STDPUB_PUB_FITS_HPP_H_
9 #include <CCfits/CCfits.h>
10 #include <CCfits/FITS.h>
11 #include <CCfits/PHDU.h>
13 #include <dit/fits/fits.hpp>
54 PubFits(
const uint16_t proc_thread_nb,
55 const uint16_t pub_thread_nb,
56 const std::string& pub_name);
73 const uint16_t pub_thread_nb,
74 const std::string& pub_name,
78 int64_t& nb_of_frames);
95 std::string m_setup_file_basename;
96 int32_t m_setup_max_size;
97 int32_t m_setup_nb_of_frames;
99 bool m_setup_overwrite;
101 int32_t m_setup_frame_interval;
102 double m_setup_frame_period;
104 int32_t m_setup_expo_nb;
106 std::string m_stat_cur_filename;
107 std::string m_stat_prev_filename;
109 int32_t m_stat_frames_stored;
110 double m_stat_last_frame_storage_time;
111 int32_t m_stat_size_frames_stored;
114 uint32_t m_stat_frame_count;
116 std::shared_ptr<CCfits::FITS> m_fits_handle;
119 std::string m_det_system;
120 std::string m_det_cam_name;
121 std::string m_det_cam_id;
122 std::string m_det_cam_model;
123 std::string m_det_cam_chip_model;
124 std::string m_det_cam_type;
129 #endif // CCF_STDPUB_PUB_FITS_HPP_H_
virtual void PublishUser(ccf::common::DataFrame &frame)
Definition: pubFits.cpp:93
const std::string SETUP_KEY_NB_OF_FRAMES
Definition: pubFits.hpp:29
static bool s_initialised
Definition: pubFits.hpp:23
static char s_padding_bytes[2880]
Definition: pubFits.hpp:24
virtual void ActivateUser()
Definition: pubFits.cpp:118
const std::string SETUP_KEY_REC_MODE
Definition: pubFits.hpp:32
virtual void CreateObjectUser(const uint16_t proc_thread_nb, const uint16_t pub_thread_nb, const std::string &pub_name, ccf::common::PubBase **new_object)
Definition: pubFits.cpp:134
const std::string RECORDING_MODE_ALL
Definition: pubFits.hpp:50
virtual void DeactivateUser()
Definition: pubFits.cpp:129
ExpoMode
Exposure modes.
Definition: base.hpp:201
virtual void CheckForDeactivationUser()
Definition: pubFits.cpp:378
Standard FITS Publisher.
Definition: pubFits.hpp:20
const std::string RECORDING_MODE_INTERVAL
Definition: pubFits.hpp:51
const std::string FORMAT_MEF
Definition: pubFits.hpp:42
virtual void EstimateExecutionUser(double &duration, int64_t &nb_of_frames)
Definition: pubFits.cpp:421
RecordingMode
Definition: pubFits.hpp:44
std::string FormatToStr(const Format format)
Definition: pubFits.cpp:158
const std::string SETUP_KEY_BASENAME
Definition: pubFits.hpp:27
const std::string RECORDING_MODE_PERIODIC
Definition: pubFits.hpp:52
const std::string SETUP_KEY_FORMAT
Definition: pubFits.hpp:30
std::string RecordingModeToStr(const RecordingMode mode)
Definition: pubFits.cpp:190
const std::string SETUP_KEY_MAX_SIZE
Definition: pubFits.hpp:28
virtual void InitialiseUser()
Definition: pubFits.cpp:60
Format
Definition: pubFits.hpp:34
Class for implementing CCF Data Publishers.
Definition: pubBase.hpp:119
PubFits()
Definition: pubFits.cpp:51
const std::string SETUP_KEY_OVERWRITE
Definition: pubFits.hpp:31
Format FormatToNb(const std::string &format)
Definition: pubFits.cpp:145
const std::string FORMAT_CUBE
Definition: pubFits.hpp:41
virtual ~PubFits()
Definition: pubFits.cpp:56
const std::string FORMAT_SINGLE
Definition: pubFits.hpp:40
void DecodeRecMode(const std::string &rec_mode_specifier)
Definition: pubFits.cpp:167
Definition: pubDdt.hpp:18
Frame class used to store the data and metadata for one frames received from the camera.
Definition: dataFrame.hpp:15