You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
1.6 KiB

#pragma once
#include <fstream>
#include <functional>
#include <iostream>
#include <list>
#include <map>
#include <memory>
#include <mutex>
#include <set>
#include <sstream>
#include <string>
#include <vector>
//
namespace xsync {
using namespace std;
#pragma pack(1)
typedef struct {
uint16_t type;
uint16_t index;
uint16_t cmd;
uint16_t ndata;
uint32_t data[]; // first is always checksum
} iflytop_xsync_packet_header_t;
typedef struct {
uint32_t eventid;
uint32_t data[];
} iflytop_xsync_event_report_packet_t;
#pragma pack()
typedef enum {
ktimecode_report_event = 0,
kxsync_work_state_report_event = 1,
} iflytop_event_type_t;
typedef enum {
kxsync_packet_type_none = 0,
kxsync_packet_type_reg_read = 1,
kxsync_packet_type_reg_write = 2,
kxsync_packet_type_reg_read_regs = 3,
kxsync_packet_type_timecode_report = 4,
} xsync_protocol_cmd_t;
typedef enum {
kxsync_packet_type_cmd = 0,
kxsync_packet_type_receipt = 1,
kxsync_packet_type_report = 2,
} xsync_protocol_packet_type_t;
typedef enum {
kxsync_device_type_none = 0,
kxsync_device_type_xsync = 1,
kxsync_device_type_puck_station = 2,
kxsync_device_type_encoder = 3,
} xsync_device_type_t;
typedef enum {
xsync_stm32_action_none = 0, //
xsync_stm32_action_generator_new_mac = 1, //
xsync_stm32_action_factory_reset = 2, //
xsync_stm32_action_reboot = 3, //
xsync_stm32_action_storage_cfg = 4, //
} xsync_stm32_action_t;
typedef enum {
obtaining_ip_mode_type_static = 0,
obtaining_ip_mode_type_dhcp = 1,
} obtaining_ip_mode_t;
} // namespace xsync