huago-corrcet_tools/HuaGoCorrect/IScanner.h

63 lines
1.9 KiB
C++

#pragma once
#include "ImageMatQueue.h"
#include "IUsb.h"
#include "commondef.h"
#include <functional>
class IScanner
{
public:
virtual ~IScanner() {};
virtual void open(int vid, int pid, int index)=0;
virtual int aquire_image(std::string& image, int num)=0;
virtual bool IsConnected() = 0;
virtual std::string GetFWVersion() = 0;
virtual void SetFWVersion() = 0;
virtual std::string GetSerialNum() = 0;
virtual void SetSerialNum(std::string serial) = 0;
virtual void SetRatio(int tyepe, int ration) = 0;
virtual void GetRatio(int type, int& ratio) = 0;
virtual void Reboot() = 0;
virtual void PowerOff() = 0;
virtual bool is_scan() = 0;
virtual bool Get_Scanner_PaperOn() = 0;
virtual void Config_Scanner(HGScanConfig config) = 0;
virtual void Scanner_StartScan(unsigned short count) = 0;
virtual void Stop_scan() = 0;
virtual void ResetScanner() = 0;
virtual bool Get_IsImageQueueEmpty() = 0;
virtual void reset() = 0;
virtual void run() = 0;
virtual void ActiveteUSB() = 0;
virtual int GetScanNum() = 0;
virtual void ClrRollerNum() = 0;
virtual void ClrScanNum() = 0;
virtual void SendFlatData(CorrectParam param, int index) = 0;
virtual CaptureParams GetFlatData() = 0;
virtual void StartFlat(bool iscolor) = 0;
virtual void DevStateChange() = 0;
virtual int getMatSum() = 0;
virtual void close() = 0;
virtual void GetExpose(int& Aside, int& Bside) = 0;
virtual void SetExpose(int aside, int bside) = 0;
virtual void GetSptime(int type, int& time) = 0;
virtual void SetSptime(int type, int time) = 0;
virtual void GetSleepTime(int& sleeptime) = 0;
virtual void SetSleepTime(int sleeptime) = 0;
virtual bool Updata(std::string filename, std::function<void(long, long)> func) = 0;
void SetPath(std::string csFilePath)
{
csPath = csFilePath;
}
std::string GetPath()
{
return csPath;
}
std::shared_ptr<IUsb> m_usb;
//protected:
ImageMatQueue m_pImages;
HWND h;
std::string csPath;
};