|
|
@ -4,7 +4,10 @@ |
|
|
|
|
|
|
|
#include <map>
|
|
|
|
|
|
|
|
#include "xsync_errcode.hpp"
|
|
|
|
#include "xsync_regs.hpp"
|
|
|
|
#include "xsync_utils.hpp"
|
|
|
|
#include "xsync_v2_sig_type.hpp"
|
|
|
|
|
|
|
|
#define TAG "XSYNC"
|
|
|
|
|
|
|
@ -58,11 +61,9 @@ class Xsync : public IXsync { |
|
|
|
xsync_on_camera_sync_msg_t m_on_camera_sync_msg_cb = nullptr; |
|
|
|
xsync_on_timecode_msg_t m_on_timecode_msg_cb = nullptr; |
|
|
|
xsync_on_record_sig_change_msg_t m_on_record_sig_change_msg_cb = nullptr; |
|
|
|
xsync_devic_state_cb_t m_xsync_devic_state_cb = nullptr; |
|
|
|
|
|
|
|
int txpacket_index = 0; |
|
|
|
uint8_t m_xync_cmd_rxdata_cache[2560]; |
|
|
|
xsync_net_state_t m_net_state = kxsync_net_state_disconnect; |
|
|
|
std::recursive_mutex lock_; |
|
|
|
|
|
|
|
public: |
|
|
@ -77,12 +78,11 @@ class Xsync : public IXsync { |
|
|
|
xs_error_code_t disConnect(); |
|
|
|
|
|
|
|
virtual xs_error_code_t changeXsyncIp(string xsync_ip) override; |
|
|
|
virtual bool isXsyncOnline() override; |
|
|
|
virtual bool ping() override; |
|
|
|
|
|
|
|
virtual void registerOnTimecodeMsgCallback(xsync_on_timecode_msg_t cb) override; |
|
|
|
virtual void registerOnCameraSyncMsgCallback(xsync_on_camera_sync_msg_t cb) override; |
|
|
|
virtual void registerOnRecordSigChangeMsgCallback(xsync_on_record_sig_change_msg_t cb) override; |
|
|
|
virtual void registerDeviceStateCallback(xsync_devic_state_cb_t cb) override; |
|
|
|
|
|
|
|
virtual xs_error_code_t generatorNewMac() override; |
|
|
|
virtual xs_error_code_t factoryReset() override; |
|
|
@ -241,7 +241,14 @@ xs_error_code_t Xsync::changeXsyncIp(string xsync_ip) { |
|
|
|
disConnect(); |
|
|
|
return connect(xsync_ip); |
|
|
|
} |
|
|
|
bool Xsync::isXsyncOnline() { return true; } |
|
|
|
bool Xsync::ping() { |
|
|
|
uint32_t readbak; |
|
|
|
xs_error_code_t ecode = reg_read(reg::kproduct_type_id, readbak, 10); |
|
|
|
if (ecode != kxs_ec_success) { |
|
|
|
return false; |
|
|
|
} |
|
|
|
return true; |
|
|
|
} |
|
|
|
|
|
|
|
xs_error_code_t Xsync::connect(string xsync_ip) { |
|
|
|
lock_guard<recursive_mutex> lock(lock_); |
|
|
@ -291,7 +298,6 @@ xs_error_code_t Xsync::connect(string xsync_ip) { |
|
|
|
m_xsync_timecode_udp_listener = xsync_timecode_udp_listener; |
|
|
|
m_xsync_camera_sync_udp_listener = xsync_camera_sync_udp_listener; |
|
|
|
|
|
|
|
m_net_state = kxsync_net_state_connected; |
|
|
|
return ecode; |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::disConnect() { |
|
|
@ -312,14 +318,12 @@ xs_error_code_t Xsync::disConnect() { |
|
|
|
m_xsync_camera_sync_udp_listener = nullptr; |
|
|
|
} |
|
|
|
|
|
|
|
m_net_state = kxsync_net_state_disconnect; |
|
|
|
return kxs_ec_success; |
|
|
|
} |
|
|
|
|
|
|
|
void Xsync::registerOnTimecodeMsgCallback(xsync_on_timecode_msg_t cb) { m_on_timecode_msg_cb = cb; } |
|
|
|
void Xsync::registerOnCameraSyncMsgCallback(xsync_on_camera_sync_msg_t cb) { m_on_camera_sync_msg_cb = cb; } |
|
|
|
void Xsync::registerOnRecordSigChangeMsgCallback(xsync_on_record_sig_change_msg_t cb) { m_on_record_sig_change_msg_cb = cb; } |
|
|
|
void Xsync::registerDeviceStateCallback(xsync_devic_state_cb_t cb) { m_xsync_devic_state_cb = cb; } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::readSn(string &sn) { |
|
|
|
sn = ""; |
|
|
@ -327,6 +331,7 @@ xs_error_code_t Xsync::readSn(string &sn) { |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::readMac(string &mac) { |
|
|
|
mac = ""; |
|
|
|
|
|
|
|
return kxs_ec_success; |
|
|
|
} |
|
|
|
|
|
|
|