code_app/app/demo/device_user.h

104 lines
1.9 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef __DEVICE_USER_H__
#define __DEVICE_USER_H__
#include "base/HGDef.h"
#include <QDialog>
#if defined(HG_CMP_MSC)
#include "twain_user/HGTwain.h"
class DeviceUserMgr : public QObject
{
Q_OBJECT
public:
DeviceUserMgr(QWidget *wnd);
~DeviceUserMgr();
// 弹出设备选择对话框选择twain源
class DeviceUser* OpenDeviceUser();
private:
QWidget *m_wnd;
HGTwainDSM m_twainDSM;
};
class DeviceUser : public QObject
{
Q_OBJECT
friend class DeviceUserMgr;
DeviceUser(QWidget *wnd, HGTwainDS ds);
public:
~DeviceUser();
// 获取设备名字
QString GetName();
// 弹出配置对话框
HGResult ShowSettingDlg();
// 弹出扫描对话框
HGResult StartScan();
private:
static void HGAPI DSCloseReqFunc(HGTwainDS ds, HGPointer param);
static void HGAPI DSImageFunc(HGTwainDS ds, HGImage image, HGPointer param);
signals:
void newImage(void *image);
private:
QWidget *m_wnd;
HGTwainDS m_twainDS;
};
#else
#include "sane_user/HGSane.h"
class DeviceUserMgr : public QObject
{
Q_OBJECT
public:
DeviceUserMgr(QWidget *wnd);
~DeviceUserMgr();
// 弹出设备选择对话框,选择设备
class DeviceUser* OpenDeviceUser();
private:
QWidget *m_wnd;
HGSaneManager m_saneMgr;
};
class DeviceUser : public QObject
{
Q_OBJECT
friend class DeviceUserMgr;
DeviceUser(QWidget *wnd, HGSaneSource source, HGSaneDevice dev);
public:
~DeviceUser();
// 获取设备名字
QString GetName();
// 弹出配置对话框
HGResult ShowSettingDlg();
// 弹出扫描对话框
HGResult StartScan();
private:
static void HGAPI DeviceImageFunc(HGSaneDevice dev, HGImage image, HGPointer param);
signals:
void newImage(void *image);
private:
QWidget *m_wnd;
HGSaneSource m_source;
HGSaneDevice m_saneDev;
};
#endif
#endif /* __DEVICE_USER_H__ */