mirror of http://192.168.1.51:8099/lmh188/twain3.0
39 lines
1.4 KiB
C++
39 lines
1.4 KiB
C++
#pragma once
|
|
#include "GScan.h"
|
|
#include <memory>
|
|
#include "BlockingQueue.h"
|
|
|
|
class IGDevice;
|
|
|
|
class GScan200 : public IScanner
|
|
{
|
|
public:
|
|
GScan200();
|
|
virtual ~GScan200();
|
|
virtual void open(int vid, int pid) override;
|
|
virtual void regist_deviceevent_callback(deviceevent_callback callback, void* usrdata = 0) override;
|
|
virtual int aquire_bmpdata(std::vector<unsigned char>& bmpdata) override;
|
|
virtual BOOL IsConnected() override;
|
|
virtual std::string GetFWVersion() override;
|
|
virtual std::string GetSerialNum() override;
|
|
virtual bool is_scan() override;
|
|
virtual BOOL Get_Scanner_PaperOn() override;
|
|
virtual void config_params(GScanCap¶ms) override;
|
|
virtual void Scanner_StartScan(UINT16 count) override;
|
|
virtual void Stop_scan() override;
|
|
virtual void ResetScanner() override;
|
|
virtual bool Get_IsImageQueueEmpty() override;
|
|
virtual void reset() override;
|
|
virtual void clear_hwerror() override;
|
|
virtual void setdecodepixtype(int twpixtype) override;
|
|
virtual UINT32 get_ErrorCode() override;
|
|
virtual void Set_ErrorCode(UINT32 value) override;
|
|
virtual int get_scanned_num() override;
|
|
private:
|
|
static void image_call_s(void *fdata, int fsize, void *bdata, int bsize, void *userdata);
|
|
static void event_call_g200(int error_value, void* userdata);
|
|
void image_call(void *fdata, int fsize, void *bdata, int bsize);
|
|
BlockingQueue<int> error_msg;
|
|
std::shared_ptr<IGDevice> m_dev;
|
|
};
|