tx-gxx-linux/device/gxx-linux/usb/usbtransmit.h

23 lines
531 B
C++

#pragma once
#include "itransmit.h"
#include <future>
#include <threadex.h>
#include <ThreadPool.h>
class UsbDevice;
class UsbTransmit : public ITransmit
{
public:
UsbTransmit(std::shared_ptr<UsbDevice> usb);
virtual ~UsbTransmit() override;
virtual void write(MemoryPtr memroy) override;
virtual bool is_writing() override;
virtual void cannel() override;
virtual int write_bulk(void* data,int size) override;
private:
std::shared_ptr<UsbDevice> usb;
std::shared_ptr<ThreadEx> runthread;
};