tx-gxx-linux/device/gxx-linux/scanner/iscanner.h

49 lines
1.5 KiB
C++

#pragma once
#include <memory>
#include <functional>
#include "commondef.h"
#include "BlockingQueue.h"
#include "fsmstate.h"
class IImageHandler;
class ICapturer;
class IScanner
{
public:
virtual ~IScanner(){}
virtual void try_scan(const std::string encodehexstr) = 0;
virtual void configparam(HGScanConfig config)=0;
virtual void start_scan()=0;
virtual void stop_scan()=0;
virtual int count()=0;
virtual int mode()=0;
virtual void put(ScanEvent evt)=0;
virtual bool is_runscan()=0;
virtual void set_imagehandler(std::shared_ptr<IImageHandler> handler = nullptr)=0;
virtual void clear_error()=0;
virtual bool paper_ready()=0;
virtual bool get_keeplastpaper()=0;
virtual void set_motorboardcallback(MotorBoardGlue glue)=0;
virtual void set_imgprocparams(HGImgProcParms parmas)=0;
virtual void test_autocorrect(int colormode)=0;
virtual void test_cap(HGScanConfig config)=0;
virtual bool set_hgimgconfig(GScanCap config)=0;
virtual void add_scansever(HGIntInfo event)=0;
virtual void set_sleeptime(int val)=0;
virtual int get_sleeptime()=0;
virtual void resettime()=0;
virtual int get_sleepstatus()=0;
virtual void set_sleepstatus(bool off)=0;
virtual int getimageprocedone()=0;
virtual void set_paprent(void* parent)=0;
virtual bool getpaperon()=0;
virtual int getmbstatus()=0;
virtual void setfeedmode(int value)=0;
virtual void settrayposition(int value)=0;
virtual std::string getmbversion()=0;
virtual void clean_paper_road() = 0;
virtual std::shared_ptr<ICapturer> get_capture(void) = 0;
};