iusbdevice.h 455 B

12345678910111213141516171819202122232425
  1. #ifndef IUSBDEVICE_H
  2. #define IUSBDEVICE_H
  3. #include <stdint.h>
  4. #include <chrono>
  5. #include <vector>
  6. namespace noolitelib
  7. {
  8. using Data = std::vector<unsigned char>;
  9. class IUsbDevice
  10. {
  11. public:
  12. virtual ~IUsbDevice() = default;
  13. virtual void openDevice(uint16_t vendorId, uint16_t productId) = 0;
  14. virtual void close() = 0;
  15. virtual bool sendDataToDevice(const Data &data, std::chrono::milliseconds timeout) = 0;
  16. };
  17. }
  18. #endif // IUSBDEVICE_H