30 bool Write(std::unique_ptr<apacket> packet)
override;
35 bool Start()
override;
44 void Reset()
override;
#define error(format, args...)
Definition: fec_private.h:201
Definition: logging.h:464
Definition: transport.h:110
Definition: usb_libusb.h:24
~LibUsbConnection() override
Definition: usb_libusb.cpp:38
bool Write(std::unique_ptr< apacket > packet) override
Definition: usb_libusb.cpp:191
uint64_t GetSessionId() const
Definition: usb_libusb.cpp:241
void Reset() override
Definition: usb_libusb.cpp:140
void StartWriteThread() REQUIRES(mutex_)
Definition: usb_libusb.cpp:109
std::mutex mutex_
Definition: usb_libusb.h:85
std::atomic< bool > detached_
Definition: usb_libusb.h:70
void Init()
Definition: usb_libusb.cpp:33
bool Start() override
Definition: usb_libusb.cpp:75
bool Attach(std::string *error) override
Definition: usb_libusb.cpp:213
void HandleStop(const std::string &reason)
Definition: usb_libusb.cpp:63
LibUsbConnection(std::unique_ptr< LibUsbDevice > device)
Definition: usb_libusb.cpp:30
void OnError(const std::string &error)
Definition: usb_libusb.cpp:43
bool IsDetached()
Definition: usb_libusb.cpp:237
std::condition_variable cv_write_
Definition: usb_libusb.h:89
std::once_flag error_flag_
Definition: usb_libusb.h:91
std::unique_ptr< LibUsbDevice > device_
Definition: usb_libusb.h:78
void StartReadThread() REQUIRES(mutex_)
Definition: usb_libusb.cpp:94
bool SupportsDetach() const override
Definition: usb_libusb.cpp:209
bool DoTlsHandshake(RSA *key, std::string *auth_key) override
Definition: usb_libusb.cpp:135
void Stop() override
Definition: usb_libusb.cpp:154
uint64_t MaxSpeedMbps() override
Definition: usb_libusb.cpp:205
uint64_t NegotiatedSpeedMbps() override
Definition: usb_libusb.cpp:201
bool Detach(std::string *error) override
Definition: usb_libusb.cpp:225
bool running_ GUARDED_BY(mutex_)
Definition: usb_libusb_device.h:45
#define REQUIRES(...)
Definition: thread_annotations.h:50