Go to the documentation of this file.
5 #ifndef CCF_PROTOCOLS_ARAVIS_LIB_COM_ADPT_HPP_H_
6 #define CCF_PROTOCOLS_ARAVIS_LIB_COM_ADPT_HPP_H_
71 {ARV_BUFFER_STATUS_UNKNOWN,
"Unknown error"},
72 {ARV_BUFFER_STATUS_SUCCESS,
"Success"},
73 {ARV_BUFFER_STATUS_CLEARED,
"Buffer cleared"},
74 {ARV_BUFFER_STATUS_TIMEOUT,
"Timeout"},
75 {ARV_BUFFER_STATUS_MISSING_PACKETS,
"Missing packets"},
76 {ARV_BUFFER_STATUS_WRONG_PACKET_ID,
"Wrong packet ID"},
77 {ARV_BUFFER_STATUS_SIZE_MISMATCH,
"Size mismatch"},
78 {ARV_BUFFER_STATUS_FILLING,
"Buffer filling"},
79 {ARV_BUFFER_STATUS_ABORTED,
"Aborted"}
91 std::string& message);
98 virtual void ReadUser(
const std::string& name,
99 ctd::param::Parameter& par);
102 bool& frame_received,
103 const double timeout,
106 virtual void ScanUser(std::vector<ctd::param::Parameter>& pars);
112 virtual void WriteUser(
const ctd::param::Parameter& par);
122 bool& ignore_unknown);
166 virtual void _Write(ctd::param::Parameter& par);
167 void _UpdateObjectParStatus(
const ctd::param::Parameter& par);
168 void _GetCameraAttributesList(ArvGc* gen_i_cam);
169 void _GetFlags(ArvGc* gen_i_cam,
const std::string& name);
170 void _GetNode(
const std::string& name, ArvGc* gen_i_cam, ArvGcNode** node);
171 int16_t _MonoPixelFormatToBits(std::string par_value);
172 int16_t _MonoPixelFormatToBits(ctd::param::Parameter& par);
173 bool _PackedPixelFormat(ArvPixelFormat pixel_format);
177 void _GetIntEnumValue(
const std::string& name,
178 ctd::param::Parameter& par);
180 std::map<std::string, ArvAttributeInfo> m_attributes;
181 std::map<ccf::protocols::aravis::ArvDatatype, std::vector<std::string>> m_data_type_map;
183 double m_delay_start_after_stop;
184 double m_last_frame_recv;
185 gulong m_sig_handler_id;
186 uint32_t m_stream_bytes_max;
187 double m_time_last_stop;
188 std::string m_host_address;
193 #endif // CCF_PROTOCOLS_ARAVIS_LIB_COM_ADPT_HPP_H_
const std::string GIGE_PAR_ACQUISITION_STOP
Definition: comAdptAravis.hpp:49
virtual void InitialiseUser()
Definition: comAdptAravis.cpp:92
virtual void CheckStatusUser(ccf::common::HwStatus &status, std::string &message)
Definition: comAdptAravis.cpp:187
int32_t m_cur_expo_win_start_x
Definition: comAdptAravis.hpp:160
virtual void _AdjustStreamBytesPerSecHook()
Definition: hooks.cpp:14
double m_cur_expo_frame_rate
Definition: comAdptAravis.hpp:157
Definition: comAdptAravis.cpp:26
CCF Com. Int. implementing communication based on the Aravis open-source glib/gobject-based library f...
Definition: comAdptAravis.hpp:25
virtual int8_t _WriteParHook(ctd::param::Parameter &par, bool &ignore_unknown)
Definition: hooks.cpp:59
double p_timestamp_frequency
Definition: comAdptAravis.hpp:140
int32_t m_cur_expo_bin_y
Definition: comAdptAravis.hpp:159
virtual void StopUser()
Definition: comAdptAravis.cpp:646
int32_t m_cur_expo_bin_x
Definition: comAdptAravis.hpp:158
virtual void CheckConnectionUser(bool &connected)
Definition: comAdptAravis.cpp:157
virtual bool IsConnectedUser() const
Definition: comAdptAravis.cpp:203
ExpoMode
Exposure modes.
Definition: base.hpp:201
ArvFrame p_frame_buffers[100]
Definition: comAdptAravis.hpp:130
virtual void ReceiveUser(ccf::common::DataFrame &frame, bool &frame_received, const double timeout, bool &timed_out)
Definition: comAdptAravis.cpp:439
int32_t m_bytes_per_pixel
Definition: comAdptAravis.hpp:151
bool p_term_fr_acq_thr
Definition: comAdptAravis.hpp:127
const std::string GIGE_PAR_STREAM_BYTES_PER_SECOND
Definition: comAdptAravis.hpp:58
const std::string GIGE_PAR_TIMESTAMP_TICK_FREQ
Definition: comAdptAravis.hpp:59
virtual double GetTheoreticFrameRateUser()
Definition: comAdptAravis.cpp:1151
double m_cur_expo_time
Definition: comAdptAravis.hpp:156
const double CONNECT_TIMEOUT
Definition: comAdptAravis.hpp:32
bool GetAcqThrExecFlag()
Definition: comAdptAravis.cpp:977
bool p_waiting_for_frame
Definition: comAdptAravis.hpp:139
const std::string GIGE_PAR_SENSOR_WIDTH
Definition: comAdptAravis.hpp:57
const std::string GIGE_PAR_TRIGGER_SOURCE
Definition: comAdptAravis.hpp:62
int32_t m_sensor_height
Definition: comAdptAravis.hpp:152
const std::string GIGE_PAR_ACQUISITION_START
Definition: comAdptAravis.hpp:48
ArvDevice * p_device
Definition: comAdptAravis.hpp:129
std::string m_vendor
Definition: comAdptAravis.hpp:150
uint32_t p_frame_count
Definition: comAdptAravis.hpp:132
Image in which to store frames received.
Definition: defines.hpp:18
const std::string GIGE_PAR_PIXELFORMAT
Definition: comAdptAravis.hpp:53
bool p_frame_buffers_in_use[100]
Definition: comAdptAravis.hpp:131
const std::string GIGE_PAR_ACQUISITION_ABORT
Definition: comAdptAravis.hpp:46
virtual void ReadUser(const std::string &name, ctd::param::Parameter &par)
Definition: comAdptAravis.cpp:365
virtual ~ComAdptAravis()
Definition: comAdptAravis.cpp:120
const uint32_t STREAM_BYTES_PER_SECOND_MAX
Definition: comAdptAravis.hpp:38
int32_t p_acq_thr_buf_index
Definition: comAdptAravis.hpp:138
virtual void ConnectUser()
Definition: comAdptAravis.cpp:219
const std::string GIGE_PAR_ACQUISITION_MODE
Definition: comAdptAravis.hpp:47
int32_t m_sensor_width
Definition: comAdptAravis.hpp:153
bool p_ignore_frame_skipping
Definition: comAdptAravis.hpp:133
double p_last_missing_data_log
Definition: comAdptAravis.hpp:134
const std::string GIGE_PAR_PAYLOAD_SIZE
Definition: comAdptAravis.hpp:52
void _ClearCamHandle()
Definition: comAdptAravis.cpp:660
void _Reset()
Definition: comAdptAravis.cpp:135
const std::string GIGE_PAR_PACKET_SIZE
Definition: comAdptAravis.hpp:51
ArvStream * p_stream
Definition: comAdptAravis.hpp:137
virtual void StartUser()
Definition: comAdptAravis.cpp:609
virtual void ScanUser(std::vector< ctd::param::Parameter > &pars)
Definition: comAdptAravis.cpp:577
int32_t m_cur_expo_win_height
Definition: comAdptAravis.hpp:163
const std::string GIGE_PAR_SENSOR_HEIGHT
Definition: comAdptAravis.hpp:55
const std::string GIGE_PAR_SENSOR_TYPE
Definition: comAdptAravis.hpp:56
const std::string GIGE_PAR_FRAME_TRIGGER_MODE
Definition: comAdptAravis.hpp:60
virtual int8_t _ReadBasicParsHook()
Definition: hooks.cpp:40
const uint32_t STREAM_BYTES_PER_SECOND_MIN
Definition: comAdptAravis.hpp:37
ccf::common::ExpoMode p_expo_mode
Definition: comAdptAravis.hpp:125
const int32_t DEFAULT_PACKET_SIZE
Definition: comAdptAravis.hpp:36
std::map< ArvBufferStatus, std::string > p_status_map
Definition: comAdptAravis.hpp:136
struct sched_param p_fr_acq_thr_sched_par
Definition: comAdptAravis.hpp:142
const double FRAME_REC_THR_SLEEP_TIME
Definition: comAdptAravis.hpp:33
int32_t m_cur_expo_win_start_y
Definition: comAdptAravis.hpp:161
bool p_exec_fr_acq_thr
Definition: comAdptAravis.hpp:126
virtual void DisconnectUser()
Definition: comAdptAravis.cpp:335
const uint16_t MAX_NB_OF_RECEP_BUFFERS
Definition: comAdptAravis.hpp:34
const uint16_t NB_OF_INPUT_BUFFERS
Definition: comAdptAravis.hpp:35
int32_t m_cur_expo_win_width
Definition: comAdptAravis.hpp:162
int32_t p_payload_size
Definition: comAdptAravis.hpp:135
const std::map< int, std::string > ARV_BUFFER_STATUS_STRING
Definition: comAdptAravis.hpp:69
const std::string GIGE_PAR_SENSOR_BITS
Definition: comAdptAravis.hpp:54
Frame class used to store the data and metadata for one frames received from the camera.
Definition: dataFrame.hpp:15
ComAdptAravis()
Definition: comAdptAravis.cpp:28
HwStatus
HW status values.
Definition: base.hpp:132
void FrameReceptionThread(void *com_adapter)
Thread dedicated to receive the image frames to ensure the minimum possible delay in receiving these.
Definition: frameReceptionThread.cpp:15
std::thread * p_fr_acq_thr
Definition: comAdptAravis.hpp:141
int32_t p_cur_buffer_index
Definition: comAdptAravis.hpp:128
const std::string GIGE_PAR_TRIGGER_MODE
Definition: comAdptAravis.hpp:61
const std::string GIGE_PAR_DEVICE_VENDOR_NAME
Definition: comAdptAravis.hpp:50
virtual void WriteUser(const ctd::param::Parameter &par)
Definition: comAdptAravis.cpp:855
Class to be used as parent for CCF Communication Adapters.
Definition: comAdptBase.hpp:31