2022-05-03 03:56:07 +00:00
|
|
|
#include "../../sdk/hginclude/huagaoxxx_warraper_ex.h"
|
|
|
|
//#include "../../sdk/hginclude/hg_log.h"
|
|
|
|
#include "../hgdev/scanner_manager.h"
|
|
|
|
#include <iostream>
|
|
|
|
|
|
|
|
|
2022-05-17 09:21:01 +00:00
|
|
|
#ifndef VERSION_MAJOR
|
|
|
|
#define VERSION_MAJOR 1
|
|
|
|
#define VERSION_MINOR 0
|
2022-05-03 03:56:07 +00:00
|
|
|
#define VERSION_YEAR 2022
|
|
|
|
#define VERSION_BUILD 10129
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define MAKE_VERSION(a, b, c, d) \
|
2022-05-17 07:57:09 +00:00
|
|
|
((((unsigned long long)(a) & 0x0ffff) << 48) \
|
|
|
|
| (((unsigned long long)(b) & 0x0ffff) << 32) \
|
|
|
|
| (((unsigned long long)(c) & 0x0ffff) << 16) \
|
|
|
|
| (((unsigned long long)(d) & 0x0ffff) << 0))
|
2022-05-03 03:56:07 +00:00
|
|
|
|
|
|
|
extern "C"
|
|
|
|
{
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_initialize(sane_callback callback, void* reserve)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
2022-05-17 07:04:55 +00:00
|
|
|
// hg_log::init(LOG_TYPE_CONSOLE);
|
2022-05-03 03:56:07 +00:00
|
|
|
|
2022-05-17 09:21:01 +00:00
|
|
|
hg_scanner_mgr::set_version(VERSION_MAJOR, VERSION_MINOR, VERSION_YEAR, VERSION_BUILD);
|
2022-05-03 03:56:07 +00:00
|
|
|
hg_scanner_mgr::instance(callback);
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
return SCANNER_ERR_OK;
|
2022-05-03 03:56:07 +00:00
|
|
|
}
|
|
|
|
void hg_scanner_uninitialize(void)
|
|
|
|
{
|
|
|
|
hg_scanner_mgr::clear();
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:57:09 +00:00
|
|
|
unsigned long long hg_scanner_get_version(void)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
2022-05-17 09:21:01 +00:00
|
|
|
return MAKE_VERSION(VERSION_MAJOR, VERSION_MINOR, VERSION_YEAR, VERSION_BUILD);
|
2022-05-03 03:56:07 +00:00
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_enum(ScannerInfo* scanner_list, long* count, bool local_only)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_enum(scanner_list, count, local_only);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_open(scanner_handle* h, const char* name, bool shared, const char* user, const char* pwd, const char* check, char* rsc)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_open(h, name, shared, user, pwd, check, rsc);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_close(scanner_handle h, bool force)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_close(h, force);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_get_parameter(scanner_handle h, unsigned param_no, char* data, long* len)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_get_parameter(h, param_no, data, len);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_set_parameter(scanner_handle h, unsigned param_no, void* data, long len)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_set_parameter(h, param_no, data, len);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_start(scanner_handle h, void* async_event, int num)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_start(h, async_event, num);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_stop(scanner_handle h)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_stop(h);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_get_img_info(scanner_handle h, SANE_Parameters* bmi, long len)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_get_img_info(h, bmi, len);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_read_img_data(scanner_handle h, unsigned char* data, long* len)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_read_img_data(h, data, len);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_get_status(scanner_handle h, int setstutas)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_get_status(h, setstutas);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_reset(scanner_handle h)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_reset(h);
|
|
|
|
}
|
|
|
|
|
2022-05-17 07:04:55 +00:00
|
|
|
scanner_err hg_scanner_control(scanner_handle h, unsigned long code, void* data, unsigned* len)
|
2022-05-03 03:56:07 +00:00
|
|
|
{
|
|
|
|
return hg_scanner_mgr::instance()->hg_scanner_control(h, code, data, len);
|
|
|
|
}
|
|
|
|
}
|