radio_tool 0.2.1
Loading...
Searching...
No Matches
yaesu_radio.hpp
1
18#pragma once
19
20#include <radio_tool/radio/radio.hpp>
21#include <radio_tool/h8sx/h8sx.hpp>
22
23#include <functional>
24#include <libusb-1.0/libusb.h>
25
26namespace radio_tool::radio
27{
29 {
30 public:
31 static const auto VID = 0x045b;
32 static const auto PID = 0x0025;
33
34 YaesuRadio(libusb_device_handle* h)
35 : h8sx(h) {}
36
37 auto WriteFirmware(const std::string& file) -> void override;
38 auto ToString() const -> const std::string override;
39
40 static auto SupportsDevice(const libusb_device_descriptor& dev) -> bool
41 {
42 return dev.idVendor == VID && dev.idProduct == PID;
43 }
44
45 static auto Create(libusb_device_handle* h) -> YaesuRadio* {
46 return new YaesuRadio(h);
47 }
48 private:
49 h8sx::H8SX h8sx;
50 };
51} // namespace radio_tool::radio
auto WriteFirmware(const std::string &file) -> void override
Definition: yaesu_radio.cpp:42
auto ToString() const -> const std::string override
Definition: yaesu_radio.cpp:30