radio_tool 0.2.1
Loading...
Searching...
No Matches
radio.hpp
1
18#pragma once
19
20#include <string>
21#include <sstream>
22#include <iomanip>
23#include <functional>
24
25namespace radio_tool::radio
26{
27 class RadioOperations;
28 typedef std::function<RadioOperations *()> CreateRadioOps;
29
34 {
35 public:
36 virtual auto ToString() const -> const std::wstring = 0;
37 virtual auto OpenDevice() const -> RadioOperations * = 0;
38 };
39
44 {
45 public:
46 virtual ~RadioOperations() = default;
47
51 virtual auto WriteFirmware(const std::string &file) -> void = 0;
52
53 //virtual auto WriteCodeplug();
54 //virtual auto ReadCodeplug();
55
59 virtual auto ToString() const -> const std::string = 0;
60 };
61
66 {
67 public:
68 virtual auto ListDevices(const uint16_t &idx_offset) const -> const std::vector<RadioInfo *> = 0;
69 };
70} // namespace radio_tool::radio
virtual auto WriteFirmware(const std::string &file) -> void=0
virtual auto ToString() const -> const std::string=0