2022-05-03 10:25:52 +00:00
|
|
|
|
#ifndef __HGTWAIN_H__
|
|
|
|
|
#define __HGTWAIN_H__
|
|
|
|
|
|
|
|
|
|
#include "../base/HGDef.h"
|
|
|
|
|
#include "../base/HGBaseErr.h"
|
|
|
|
|
#include "HGTwainErr.h"
|
|
|
|
|
#include "../base/HGImage.h"
|
|
|
|
|
|
|
|
|
|
HG_DECLARE_HANDLE(HGTwainDSM);
|
|
|
|
|
HG_DECLARE_HANDLE(HGTwainDS);
|
|
|
|
|
|
2023-04-12 04:58:24 +00:00
|
|
|
|
#pragma pack(push)
|
|
|
|
|
#pragma pack(4)
|
|
|
|
|
|
2023-04-07 06:18:56 +00:00
|
|
|
|
/* TWAIN设备自定义信息 */
|
|
|
|
|
typedef struct
|
|
|
|
|
{
|
2023-05-12 07:14:18 +00:00
|
|
|
|
HGInt vid; // VID
|
|
|
|
|
HGInt pid; // PID
|
|
|
|
|
HGChar sn[32]; // 设备序列号
|
|
|
|
|
HGChar type[32]; // 设备型号
|
|
|
|
|
HGChar fwVer[32]; // 设备固件版本号
|
|
|
|
|
HGChar ip[32]; // 设备IP
|
|
|
|
|
HGChar mac[32]; // 设备MAC
|
|
|
|
|
HGChar driverVer[32]; // 驱动版本号
|
2023-06-05 02:59:54 +00:00
|
|
|
|
HGChar vendor[128]; // 制造商
|
|
|
|
|
HGChar copyright[64]; // 版权信息
|
2023-05-12 07:14:18 +00:00
|
|
|
|
HGChar comUrl[128]; // 公司网址
|
|
|
|
|
HGChar comTel[32]; // 公司电话
|
|
|
|
|
HGChar comAddr[256]; // 公司地址
|
|
|
|
|
HGChar comGps[256]; // 公司地图定位
|
|
|
|
|
HGInt rollerCount; // 滚轴计数
|
|
|
|
|
HGInt totalCount; // 历史张数
|
2023-04-07 06:18:56 +00:00
|
|
|
|
}HGTwainDeviceCustomInfo;
|
|
|
|
|
|
2024-01-29 06:41:37 +00:00
|
|
|
|
typedef struct
|
|
|
|
|
{
|
|
|
|
|
HGUInt type;
|
|
|
|
|
union
|
|
|
|
|
{
|
|
|
|
|
HGChar valueChar;
|
|
|
|
|
HGByte valueByte;
|
|
|
|
|
HGShort valueShort;
|
|
|
|
|
HGUShort valueUShort;
|
|
|
|
|
HGInt valueInt;
|
|
|
|
|
HGUInt valueUInt;
|
|
|
|
|
HGBool valueBool;
|
|
|
|
|
HGFloat valueFloat;
|
|
|
|
|
HGChar valueStr32[32];
|
|
|
|
|
HGChar valueStr64[64];
|
|
|
|
|
HGChar valueStr128[128];
|
|
|
|
|
HGChar valueStr255[255];
|
|
|
|
|
};
|
|
|
|
|
}HGCapValue;
|
|
|
|
|
|
2023-04-07 06:18:56 +00:00
|
|
|
|
#pragma pack(pop)
|
|
|
|
|
|
2024-01-29 06:41:37 +00:00
|
|
|
|
#define HGCAPVALUE_TYPE_CHAR 1
|
|
|
|
|
#define HGCAPVALUE_TYPE_BYTE 2
|
|
|
|
|
#define HGCAPVALUE_TYPE_SHORT 3
|
|
|
|
|
#define HGCAPVALUE_TYPE_USHORT 4
|
|
|
|
|
#define HGCAPVALUE_TYPE_INT 5
|
|
|
|
|
#define HGCAPVALUE_TYPE_UINT 6
|
|
|
|
|
#define HGCAPVALUE_TYPE_BOOL 7
|
|
|
|
|
#define HGCAPVALUE_TYPE_FLOAT 8
|
|
|
|
|
#define HGCAPVALUE_TYPE_STR32 9
|
|
|
|
|
#define HGCAPVALUE_TYPE_STR64 10
|
|
|
|
|
#define HGCAPVALUE_TYPE_STR128 11
|
|
|
|
|
#define HGCAPVALUE_TYPE_STR255 12
|
|
|
|
|
|
2023-05-20 08:08:55 +00:00
|
|
|
|
#define HGTWAIN_EVENT_TYPE_WORKING 1L
|
|
|
|
|
#define HGTWAIN_EVENT_TYPE_SCANFINISHED 2L
|
2023-12-02 08:29:10 +00:00
|
|
|
|
#define HGTWAIN_EVENT_TYPE_CLOSEDSREQ 3L
|
2023-05-20 08:08:55 +00:00
|
|
|
|
|
2023-10-16 02:10:47 +00:00
|
|
|
|
#define HGTWAIN_IMAGE_TYPE_NORMAL 0L
|
|
|
|
|
|
2023-03-27 03:17:11 +00:00
|
|
|
|
/* ds回调
|
2022-05-03 10:25:52 +00:00
|
|
|
|
*/
|
2023-05-20 08:08:55 +00:00
|
|
|
|
typedef void (HGAPI *HGDSEventFunc)(HGTwainDS ds, HGUInt event, HGPointer param);
|
2023-10-16 02:38:35 +00:00
|
|
|
|
typedef HGUInt (HGAPI* HGDSImageFunc)(HGTwainDS ds, HGImage image, HGUInt type, HGPointer param);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-03-27 03:17:11 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_CreateDSM(HWND hwnd, HGTwainDSM *dsm);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-03-27 03:17:11 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_DestroyDSM(HGTwainDSM dsm);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-03-27 03:17:11 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSCount(HGTwainDSM dsm, HGUInt* count);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-03-29 08:16:19 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSNameWithIndex(HGTwainDSM dsm, HGUInt index, HGChar* name, HGUInt maxLen);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-08-15 07:28:23 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_CreateDS(HGTwainDSM dsm, HGUInt index, HGTwainDS *ds);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-08-15 07:28:23 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_CreateDefaultDS(HGTwainDSM dsm, HGTwainDS* ds);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-08-15 07:28:23 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_CreateSelectedDS(HGTwainDSM dsm, HGTwainDS* ds);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-08-15 07:28:23 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_CreateSelectedDSEx(HGTwainDSM dsm, HGTwainDS* ds);
|
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_DestroyDS(HGTwainDS ds);
|
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_OpenDS(HGTwainDS ds);
|
2023-04-04 05:18:13 +00:00
|
|
|
|
|
2022-05-03 10:25:52 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_CloseDS(HGTwainDS ds);
|
|
|
|
|
|
2023-03-29 08:16:19 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSName(HGTwainDS ds, HGChar* name, HGUInt maxLen);
|
|
|
|
|
|
2023-04-08 00:53:10 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSDeviceName(HGTwainDS ds, HGChar* name, HGUInt maxLen);
|
|
|
|
|
|
2023-04-07 06:18:56 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSDeviceCustomInfo(HGTwainDS ds, HGTwainDeviceCustomInfo *info);
|
|
|
|
|
|
2023-05-12 07:14:18 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_LoginDS(HGTwainDS ds, const HGChar *user, const HGChar *pwd);
|
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_LogoutDS(HGTwainDS ds);
|
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_ClearDSRollerCount(HGTwainDS ds);
|
|
|
|
|
|
2023-05-17 10:29:08 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSDriverLog(HGTwainDS ds, const HGChar *fileName);
|
2023-05-12 07:14:18 +00:00
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_ClearDSDriverLog(HGTwainDS ds);
|
|
|
|
|
|
2023-05-17 10:29:08 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetDSDeviceLog(HGTwainDS ds, const HGChar *fileName);
|
2023-05-12 07:14:18 +00:00
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_ClearDSDeviceLog(HGTwainDS ds);
|
|
|
|
|
|
2023-05-20 08:08:55 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_EnableDSUIOnly(HGTwainDS ds, HWND parent, HGDSEventFunc eventFunc, HGPointer eventParam);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-05-20 08:08:55 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_EnableDS(HGTwainDS ds, HGBool showUI, HWND parent, HGDSEventFunc eventFunc, HGPointer eventParam,
|
2023-03-27 03:17:11 +00:00
|
|
|
|
HGDSImageFunc imageFunc, HGPointer imageParam);
|
2022-05-03 10:25:52 +00:00
|
|
|
|
|
2023-05-20 08:27:48 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_EnableDSWithSingleScan(HGTwainDS ds, HWND parent, HGDSEventFunc eventFunc, HGPointer eventParam,
|
2023-05-12 02:29:48 +00:00
|
|
|
|
HGDSImageFunc imageFunc, HGPointer imageParam);
|
|
|
|
|
|
2022-05-03 10:25:52 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_DisableDS(HGTwainDS ds);
|
|
|
|
|
|
2024-01-29 06:41:37 +00:00
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_SetCapbility(HGTwainDS ds, HGUShort cap, const HGCapValue *value, HGBool reset);
|
|
|
|
|
|
|
|
|
|
HGEXPORT HGResult HGAPI HGTwain_GetCapbility(HGTwainDS ds, HGUShort cap, HGCapValue *value);
|
|
|
|
|
|
2023-04-04 05:18:13 +00:00
|
|
|
|
#endif /* __HGTWAIN_H__ */
|