82 std::chrono::milliseconds timeout = std::chrono::milliseconds(500));
91 std::vector<uint64_t>
read_register(uint64_t addr, uint8_t size)
const {
return read(0x00, addr,
size) ; }
92 void write_register(uint64_t addr, std::vector<uint64_t> && data)
const { write(0x01, addr, std::move(data)) ; }
94 std::vector<uint64_t>
read_buffer(uint64_t addr, uint8_t size)
const {
return read(0x08, addr,
size) ; }
95 void write_buffer(uint64_t addr, std::vector<uint64_t> && data)
const { write(0x09, addr, std::move(data)) ; }
97 bool validate_connection()
const ;
102 command_result send_command_retry( std::string cmd,
size_t retry = std::numeric_limits<size_t>::max() )
const ;
105 command_result send_command_interruptible( std::string cmd, std::function<
bool()> can_retry)
const ;
112 void write( uint8_t command_id, uint64_t addr, std::vector<uint64_t> && data)
const;
113 std::vector<uint64_t> read(uint8_t command_id, uint64_t addr, uint8_t size)
const;
118 int m_connection_id = -1;
120 std::chrono::milliseconds m_timeout{5};