新增协议

This commit is contained in:
13038267101 2022-12-31 17:02:23 +08:00
parent d6cb1ca104
commit 7397197ef3
3 changed files with 268 additions and 264 deletions

View File

@ -52,9 +52,9 @@ static const RELA Rela[] = {
{HGPDTTOOLDB_TITLE_PAPER_SEPARATION_STRENGTH, HGPDTTOOLDB_ENTRYNAME_PAPER_SEPARATION_STRENGTH}, {HGPDTTOOLDB_TITLE_PAPER_SEPARATION_STRENGTH, HGPDTTOOLDB_ENTRYNAME_PAPER_SEPARATION_STRENGTH},
{HGPDTTOOLDB_TITLE_MECH_PAPER_FEEDING_INCLINATION, HGPDTTOOLDB_ENTRYNAME_MECH_PAPER_FEEDING_INCLINATION}, {HGPDTTOOLDB_TITLE_MECH_PAPER_FEEDING_INCLINATION, HGPDTTOOLDB_ENTRYNAME_MECH_PAPER_FEEDING_INCLINATION},
{HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_1, HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_1}, {HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_1, HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_1},
{HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_2, HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_2}, //{HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_2, HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_2},
{HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_3, HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_3}, //{HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_3, HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_3},
{HGPDTTOOLDB_TITLE_PRESSUER_TEST, HGPDTTOOLDB_ENTRYNAME_PRESSUER_TEST}, //{HGPDTTOOLDB_TITLE_PRESSUER_TEST, HGPDTTOOLDB_ENTRYNAME_PRESSUER_TEST},
{HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT, HGPDTTOOLDB_ENTRYNAME_CLEAR_ROLLER_COUNT} {HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT, HGPDTTOOLDB_ENTRYNAME_CLEAR_ROLLER_COUNT}
}; };
@ -188,7 +188,7 @@ void Form_mainInterface::on_testDistortion(QString name, void *data)
msg.exec(); msg.exec();
if (msg.clickedButton() == msg.button(QMessageBox::Yes)) if (msg.clickedButton() == msg.button(QMessageBox::Yes))
{ {
func_test_go(HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1, L"null", m_hg); // func_test_go(HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1, L"null", m_hg);
} }
else else
{ {

View File

@ -5,7 +5,45 @@
#include <map> #include <map>
#include <iostream> #include <iostream>
#include "huagao/hgscanner_error.h" #include "huagao/hgscanner_error.h"
#include "sane/sane_option_definitions.h";
static struct Test_Map
{
const wchar_t* name; // DIAL_SWITCH
const wchar_t* title; // 歪斜检测
}Test_Map_NO[] =
{
{HGPDTTOOLDB_NAME_DIAL_SWITCH ,HGPDTTOOLDB_TITLE_DIAL_SWITCH},
{HGPDTTOOLDB_NAME_ROCKER_SWITCH ,HGPDTTOOLDB_TITLE_ROCKER_SWITCH},
{HGPDTTOOLDB_NAME_BOOT_STATUS ,HGPDTTOOLDB_TITLE_BOOT_STATUS},
{HGPDTTOOLDB_NAME_LCD_DISPLAY ,HGPDTTOOLDB_TITLE_LCD_DISPLAY},
{HGPDTTOOLDB_NAME_KEY_FUNCTION ,HGPDTTOOLDB_TITLE_KEY_FUNCTION},
{HGPDTTOOLDB_NAME_COUNTING_MODE ,HGPDTTOOLDB_TITLE_COUNTING_MODE},
{HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE ,HGPDTTOOLDB_TITLE_CIS_ORIGINAL_IMAGE},
{HGPDTTOOLDB_NAME_HOST_FAN ,HGPDTTOOLDB_TITLE_HOST_FAN},
{HGPDTTOOLDB_NAME_LED_LIGHT ,HGPDTTOOLDB_TITLE_LED_LIGHT},
{HGPDTTOOLDB_NAME_RESET ,HGPDTTOOLDB_TITLE_RESET},
{HGPDTTOOLDB_NAME_PAPER_FEED ,HGPDTTOOLDB_TITLE_PAPER_FEED},
{HGPDTTOOLDB_NAME_SCANNING_SENSOR ,HGPDTTOOLDB_TITLE_SCANNING_SENSOR},
{HGPDTTOOLDB_NAME_PLACE_CORRECTION_PAPER ,HGPDTTOOLDB_TITLE_PLACE_CORRECTION_PAPER},
{HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD ,HGPDTTOOLDB_TITLE_AUTO_FLAT_FIELD},
{HGPDTTOOLDB_NAME_IMAGE_QUALITY ,HGPDTTOOLDB_TITLE_IMAGE_QUALITY},
{HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY ,HGPDTTOOLDB_TITLE_COLORCARD_IMAGEING_QUALITY},
{HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY ,HGPDTTOOLDB_TITLE_COLORCARD_BIAS_IMAGEING_QUALITY},
{HGPDTTOOLDB_NAME_CLARITY_QUALITY ,HGPDTTOOLDB_TITLE_CLARITY_QUALITY},
{HGPDTTOOLDB_NAME_DISTORTION ,HGPDTTOOLDB_TITLE_DISTORTION},
{HGPDTTOOLDB_NAME_SEPARATER_MOTOR ,HGPDTTOOLDB_TITLE_SEPARATER_MOTOR},
{HGPDTTOOLDB_NAME_CLEAR_PAPER_PATH ,HGPDTTOOLDB_TITLE_CLEAR_PAPER_PATH},
{HGPDTTOOLDB_NAME_SKEW_DETECTION ,HGPDTTOOLDB_TITLE_SKEW_DETECTION},
{HGPDTTOOLDB_NAME_ULTRASONIC_MODULE ,HGPDTTOOLDB_TITLE_ULTRASONIC_MODULE},
{HGPDTTOOLDB_NAME_COVER_SENSOR ,HGPDTTOOLDB_TITLE_COVER_SENSOR },
{HGPDTTOOLDB_NAME_REBOOT_DEVICE ,HGPDTTOOLDB_TITLE_REBOOT_DEVICE},
{HGPDTTOOLDB_NAME_MECH_PAPER_FEEDING_INCLINATION ,HGPDTTOOLDB_TITLE_MECH_PAPER_FEEDING_INCLINATION},
{HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT ,HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT},
{HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT ,HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT},
{HGPDTTOOLDB_NAME_PAPER_SEPARATION_STRENGTH ,HGPDTTOOLDB_TITLE_PAPER_SEPARATION_STRENGTH},
{HGPDTTOOLDB_NAME_CONFIGURE_SPEED_MODE ,HGPDTTOOLDB_TITLE_CONFIGURE_SPEED_MODE},
{HGPDTTOOLDB_NAME_DORMANCY ,HGPDTTOOLDB_TITLE_DORMANCY},
};
static std::string StringToUtf(std::string strValue) static std::string StringToUtf(std::string strValue)
{ {
@ -66,7 +104,6 @@ int get_json_config_file()
fclose(fp); fclose(fp);
std::cout << buf << std::endl; std::cout << buf << std::endl;
} }
static std::wstring set_test_name_ =L""; static std::wstring set_test_name_ =L"";
class test class test
{ {
@ -85,7 +122,7 @@ public:
std::wstring wstr = L""; std::wstring wstr = L"";
size_t l = 0; size_t l = 0;
bool type = true; bool type = true;
wchar_t buf[128] =L"";
int ret = str_to_wchar((char*)data, (wchar_t*)wstr.c_str(), &l); int ret = str_to_wchar((char*)data, (wchar_t*)wstr.c_str(), &l);
if (ret == ERROR_INSUFFICIENT_BUFFER) if (ret == ERROR_INSUFFICIENT_BUFFER)
{ {
@ -104,78 +141,51 @@ public:
{ {
case SANE_EVENT_SCAN_FINISHED: case SANE_EVENT_SCAN_FINISHED:
{ {
SANE_Bool io_type = false; SANE_Bool close = false;
unsigned int io_len = sizeof(SANE_Bool); unsigned int closelen = sizeof(SANE_Bool);
if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SKEW_DETECTION) == 0) if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SKEW_DETECTION) == 0)
{ {
if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_PAPER_SKEW) != 0) if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_PAPER_SKEW) != 0)
{ {
type = false; type = false;
wchar_t buf[128] = L"未检测到纸张倾斜,原因--->"; wcscpy(buf, L"未检测到纸张倾斜, 原因--->");
wcscat(buf, wstr.c_str());
wstr = buf;
} }
else
type = true;
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE) == 0)
{
io_type = false;
h->io_control(IO_CTRL_CODE_SET_CIS_IMAGE, &io_type, &io_len);
} }
else if(wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_ULTRASONIC_MODULE) == 0) else if(wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_ULTRASONIC_MODULE) == 0)
{ {
if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_DOUBLE_FEEDING) != 0) if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_DOUBLE_FEEDING) != 0)
{ {
type = false; type = false;
wchar_t buf[128] = L"未检测到双张,原因--->"; wcscpy(buf, L"未检测到双张, 原因--->");
wcscat(buf, wstr.c_str());
wstr = buf;
} }
else
type = true;
} }
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_COVER_SENSOR) == 0) else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_COVER_SENSOR) == 0)
{ {
if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_COVER_OPENNED) != 0) if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_COVER_OPENNED) != 0)
{ {
type = false; type = false;;
wchar_t buf[128] = L"未检测到设备开盖,原因--->"; wcscpy(buf, L"未检测到设备开盖, 原因--->");
wcscat(buf, wstr.c_str());
wstr = buf;
} }
else
type = true;
} }
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_PAPER_FEED) == 0) else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_PAPER_FEED) == 0)
{ {
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0) if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{ {
type = false; type = false;
wchar_t buf[128] = L"走纸检测失败,原因--->"; wcscpy(buf, L"走纸检测失败, 原因--->");
wcscat(buf, wstr.c_str());
wstr = buf;
} }
else
type = true;
} }
else if(wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD) == 0) else if(wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD) == 0)
{ {
if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_AUTO_FAIL_OVER) != 0) if (strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_AUTO_FAIL_OVER) != 0)
{ {
type = false; type = false;
wchar_t buf[128] = L"平场校正失败,原因--->"; wcscpy(buf, L"平场校正失败, 原因--->");
wcscat(buf, wstr.c_str());
wstr = buf;
} }
else
type = true;
} }
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_DISTORTION) == 0) else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_DISTORTION) == 0)
{ {
wchar_t buf[128]=L"";
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0 || strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_DISTORTION) == 0) if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0 || strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_DISTORTION) == 0)
{ {
type = false; type = false;
@ -186,18 +196,80 @@ public:
type = true; type = true;
wcscpy(buf, L"畸变修正完成:"); wcscpy(buf, L"畸变修正完成:");
} }
wcscat(buf, wstr.c_str());
int len = sizeof(buf) / sizeof(buf[0]);
wstr.resize(len);
wstr = buf;
SANE_Bool close = false;
unsigned int closelen = sizeof(SANE_Bool);
ret = h->io_control(IO_CTRL_CODE_GET_DPI_COLOR_CHECK_VAL, &close, &closelen);//结束恢复默认 ret = h->io_control(IO_CTRL_CODE_GET_DPI_COLOR_CHECK_VAL, &close, &closelen);//结束恢复默认
} }
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_IMAGE_QUALITY) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"扫描图像质量确认失败, 原因--->");
}
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SCANNING_SENSOR) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"扫描传感器检查失败, 原因--->");
}
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE) == 0)
{
h->io_control(IO_CTRL_CODE_SET_CIS_IMAGE, &close, &closelen);
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_PRESSUER_TEST_RGB_200DPI) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_PRESSUER_TEST_GRAY_200DPI) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_PRESSUER_TEST_RGB_300DPI) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_PRESSUER_TEST_GRAY_300DPI) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"压力测试失败, 原因--->");
}
else
{
type = true;
wcscpy(buf, L"压力测试完成--->");
}
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"色卡纸成像质量评估失败, 原因--->");
}
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"色卡纸偏色成像质量评估失败, 原因--->");
}
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CLARITY_QUALITY) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"清晰度质量评估失败, 原因--->");
}
}
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST) == 0)
{
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0)
{
type = false;
wcscpy(buf, L"单张测试失败, 原因--->");
}
}
wcscat(buf, wstr.c_str());
ret = h->io_control(IO_CTRL_CODE_RESTORE_SETTINGS, NULL, NULL);//结束恢复默认 ret = h->io_control(IO_CTRL_CODE_RESTORE_SETTINGS, NULL, NULL);//结束恢复默认
h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_RESULT, (void*)wstr.c_str(), type); h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_RESULT, (void*)buf, type);
} }
break; break;
case SANE_EVENT_ERROR: case SANE_EVENT_ERROR:
@ -209,7 +281,6 @@ public:
{ {
if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD) == 0) if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD) == 0)
{ {
//std::string str = StringToUtf((char*)data);
h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_FALT_INFO, (wchar_t*)wstr.c_str(), type); h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_FALT_INFO, (wchar_t*)wstr.c_str(), type);
} }
} }
@ -219,7 +290,11 @@ public:
if ( wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE) == 0 if ( wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE) == 0
||wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_IMAGE_QUALITY) == 0 ||wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_IMAGE_QUALITY) == 0
//||wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_DISTORTION) == 0 //||wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_DISTORTION) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SCANNING_SENSOR) == 0) || wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SCANNING_SENSOR) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CLARITY_QUALITY) == 0
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST) == 0)
{ {
h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_HAVE_IMAGE, data, true); h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_HAVE_IMAGE, data, true);
} }
@ -244,24 +319,14 @@ public:
else if ("G4" == fw1.substr(0, 2)) else if ("G4" == fw1.substr(0, 2))
fw_ = 4; fw_ = 4;
} }
int a = 0;
} }
~test() ~test()
{} {}
struct ptrcmp
{
bool operator()(const wchar_t* NAME1, const wchar_t* NAME2)const
{
return wcscmp(NAME1, NAME2) < 0;
}
};
std::map<std::wstring, int(test::*)(void *)> test_map_; std::map<std::wstring, int(test::*)(void *)> test_map_;
void init_test_map_() void init_test_map_()
{ {
test_map_[HGPDTTOOLDB_NAME_DIAL_SWITCH] = &test::test_dial_switch;
test_map_[HGPDTTOOLDB_NAME_ROCKER_SWITCH] = &test::test_pocker_switch;
test_map_[HGPDTTOOLDB_NAME_BOOT_STATUS] = &test::test_boot_status;
test_map_[HGPDTTOOLDB_NAME_LCD_DISPLAY] = &test::test_lcd_display;
test_map_[HGPDTTOOLDB_NAME_CLEAR_PAPER_PATH] = &test::tset_clear_paper_path; test_map_[HGPDTTOOLDB_NAME_CLEAR_PAPER_PATH] = &test::tset_clear_paper_path;
test_map_[HGPDTTOOLDB_NAME_KEY_FUNCTION] = &test::test_key_funtion; test_map_[HGPDTTOOLDB_NAME_KEY_FUNCTION] = &test::test_key_funtion;
test_map_[HGPDTTOOLDB_NAME_COUNTING_MODE] = &test::test_count_mode; test_map_[HGPDTTOOLDB_NAME_COUNTING_MODE] = &test::test_count_mode;
@ -273,26 +338,29 @@ public:
test_map_[HGPDTTOOLDB_NAME_LED_LIGHT] = &test::test_led_light; test_map_[HGPDTTOOLDB_NAME_LED_LIGHT] = &test::test_led_light;
test_map_[HGPDTTOOLDB_NAME_RESET] = &test::test_reset; test_map_[HGPDTTOOLDB_NAME_RESET] = &test::test_reset;
test_map_[HGPDTTOOLDB_NAME_PAPER_FEED] = &test::test_paper_feed; test_map_[HGPDTTOOLDB_NAME_PAPER_FEED] = &test::test_paper_feed;
test_map_[HGPDTTOOLDB_NAME_COVER_SENSOR] = &test::test_cover_sensor;
test_map_[HGPDTTOOLDB_NAME_SCANNING_SENSOR] = &test::test_scanning_sensor; test_map_[HGPDTTOOLDB_NAME_SCANNING_SENSOR] = &test::test_scanning_sensor;
test_map_[HGPDTTOOLDB_NAME_CONFIGURE_SPEED_MODE] = &test::test_configure_speed_mode; test_map_[HGPDTTOOLDB_NAME_CONFIGURE_SPEED_MODE] = &test::test_configure_speed_mode;
test_map_[HGPDTTOOLDB_NAME_PLACE_CORRECTION_PAPER] = &test::test_place_correction_paper; test_map_[HGPDTTOOLDB_NAME_PLACE_CORRECTION_PAPER] = &test::test_place_correction_paper;
test_map_[HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD] = &test::test_auto_flat_field; test_map_[HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD] = &test::test_auto_flat_field;
test_map_[HGPDTTOOLDB_NAME_REBOOT_DEVICE] = &test::test_reboot_device; test_map_[HGPDTTOOLDB_NAME_REBOOT_DEVICE] = &test::test_reboot_device;
test_map_[HGPDTTOOLDB_NAME_IMAGE_QUALITY] = &test::test_image_quality; test_map_[HGPDTTOOLDB_NAME_IMAGE_QUALITY] = &test::test_image_quality;
test_map_[HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY] = &test::test_colorcard_imageing_quality;
test_map_[HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY] = &test::test_colorcard_bias_imageing_quality;
test_map_[HGPDTTOOLDB_NAME_CLARITY_QUALITY] = &test::test_clarity_quality;
test_map_[HGPDTTOOLDB_NAME_DISTORTION] = &test::test_distortion; test_map_[HGPDTTOOLDB_NAME_DISTORTION] = &test::test_distortion;
test_map_[HGPDTTOOLDB_NAME_DORMANCY] = &test::test_dormancy; test_map_[HGPDTTOOLDB_NAME_DORMANCY] = &test::test_dormancy;
test_map_[HGPDTTOOLDB_NAME_SKEW_GEAR] = &test::test_skew_gear; test_map_[HGPDTTOOLDB_NAME_SKEW_GEAR] = &test::test_skew_gear;
test_map_[HGPDTTOOLDB_NAME_PAPER_SEPARATION_STRENGTH] = &test::test_paper_separation_strength; test_map_[HGPDTTOOLDB_NAME_PAPER_SEPARATION_STRENGTH] = &test::test_paper_separation_strength;
test_map_[HGPDTTOOLDB_NAME_MECH_PAPER_FEEDING_INCLINATION] = &test::test_mech_paper_feeding_inclination; test_map_[HGPDTTOOLDB_NAME_MECH_PAPER_FEEDING_INCLINATION] = &test::test_mech_paper_feeding_inclination;
test_map_[HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1] = &test::test_single_page_test_1;
test_map_[HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_2] = &test::test_single_page_test_2;
test_map_[HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_3] = &test::test_single_page_test_3;
test_map_[HGPDTTOOLDB_NAME_PRESSUER_TEST] = &test::test_pressuer_test;
test_map_[HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT] = &test::test_clear_roller_count; test_map_[HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT] = &test::test_clear_roller_count;
test_map_[HGPDTTOOLDB_NAME_COVER_SENSOR] = &test::test_single_page_test;
test_map_[HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST] = &test::test_single_page_test;
test_map_[HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY] = &test::test_single_page_test;
test_map_[HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY] = &test::test_single_page_test;
test_map_[HGPDTTOOLDB_NAME_CLARITY_QUALITY] = &test::test_single_page_test;
test_map_[HGPDTTOOLDB_NAME_PRESSUER_TEST_RGB_200DPI] = &test::test_pressuer_test_rgb_200dpi;
test_map_[HGPDTTOOLDB_NAME_PRESSUER_TEST_GRAY_200DPI] = &test::test_pressuer_test_gray_200dpi;
test_map_[HGPDTTOOLDB_NAME_PRESSUER_TEST_RGB_300DPI] = &test::test_pressuer_test_rgb_300dpi;
test_map_[HGPDTTOOLDB_NAME_PRESSUER_TEST_GRAY_300DPI] = &test::test_pressuer_test_gray_300dpi;
} }
int set_test(const wchar_t* str) int set_test(const wchar_t* str)
{ {
@ -331,28 +399,7 @@ public:
return fw; return fw;
} }
/* 拨码开关校验 */
int test_dial_switch(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 检查船型开关功能 */
int test_pocker_switch(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 设备上电并观察开机状态 */
int test_boot_status(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 检查液晶显示 */
int test_lcd_display(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 清理纸道功能确认 */ /* 清理纸道功能确认 */
int tset_clear_paper_path(void *data) int tset_clear_paper_path(void *data)
{ {
@ -502,11 +549,7 @@ public:
{ {
return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL); return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL);
} }
/* 开盖传感器检查 */
int test_cover_sensor(void *data) //端点返回 使用单张扫描测试
{
return helper_->io_control(IO_CTRL_CODE_TEST_SINGLE, NULL, NULL);
}
/* 扫描传感器检查 */ /* 扫描传感器检查 */
int test_scanning_sensor(void *data) int test_scanning_sensor(void *data)
{ {
@ -653,21 +696,6 @@ public:
{ {
return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL); return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL);
} }
/* 色卡纸成像质量评估 */
int test_colorcard_imageing_quality(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 色卡纸偏色成像质量评估 */
int test_colorcard_bias_imageing_quality(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 清晰度质量评估 */
int test_clarity_quality(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 畸变修正 */ /* 畸变修正 */
int test_distortion(void *data) int test_distortion(void *data)
{ {
@ -747,26 +775,6 @@ public:
{ {
return SCANNER_ERR_DEVICE_NOT_SUPPORT; return SCANNER_ERR_DEVICE_NOT_SUPPORT;
} }
/* 单张测试1 */
int test_single_page_test_1(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 单张测试2 */
int test_single_page_test_2(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 单张测试3 */
int test_single_page_test_3(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 压力测试2轮 */
int test_pressuer_test(void *data)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
}
/* 清除滚轴计数 */ /* 清除滚轴计数 */
int test_clear_roller_count(void *data) int test_clear_roller_count(void *data)
{ {
@ -791,6 +799,52 @@ public:
return ret; return ret;
} }
/* 单张测试 */
int test_single_page_test(void* data)
{
return helper_->io_control(IO_CTRL_CODE_TEST_SINGLE, NULL, NULL);
}
/*压力测试彩色_200dpi*/
int test_pressuer_test_rgb_200dpi(void* data)
{
const char* color = OPTION_VALUE_YSMS_24WCS;
int dpi = 200;
unsigned int len = strlen(color);
helper_->io_control(IO_CTRL_CODE_SET_COLOR, (void *)color, &len);
helper_->io_control(IO_CTRL_CODE_SET_DPI, (void*)&dpi, &len);
return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL);
}
/*压力测试灰色_200dpi*/
int test_pressuer_test_gray_200dpi(void* data)
{
const char* color = OPTION_VALUE_YSMS_256JHD;
int dpi = 200;
unsigned int len = strlen(color);
helper_->io_control(IO_CTRL_CODE_SET_COLOR, (void*)color, &len);
helper_->io_control(IO_CTRL_CODE_SET_DPI, (void*)&dpi, &len);
return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL);
}
/*压力测试彩色_300dpi*/
int test_pressuer_test_rgb_300dpi(void* data)
{
const char* color = OPTION_VALUE_YSMS_24WCS;
int dpi = 300;
unsigned int len = strlen(color);
helper_->io_control(IO_CTRL_CODE_SET_COLOR, (void*)color, &len);
helper_->io_control(IO_CTRL_CODE_SET_DPI, (void*)&dpi, &len);
return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL);
}
/*压力测试灰色_300dpi*/
int test_pressuer_test_gray_300dpi(void* data)
{
const char* color = OPTION_VALUE_YSMS_256JHD;
int dpi = 300;
unsigned int len = strlen(color);
helper_->io_control(IO_CTRL_CODE_SET_COLOR, (void*)color, &len);
helper_->io_control(IO_CTRL_CODE_SET_DPI, (void*)&dpi, &len);
return helper_->io_control(IO_CTRL_CODE_GET_IMAGE, NULL, NULL);
}
private: private:
}; };

View File

@ -3,207 +3,157 @@
#include "sane/sane_ex.h" #include "sane/sane_ex.h"
#include "ui_helper.h" #include "ui_helper.h"
#include <Windows.h> #include <Windows.h>
//////////////////////////////////////TITLE////////////////////////////////////// //////////////////////////////////////TITLE//////////////////////////////////////
#define WRITE_CFG_NAME "write-cfg"
/* 拨码开关校验 */ /* 拨码开关校验 */
#define HGPDTTOOLDB_TITLE_DIAL_SWITCH L"拨码开关校验" #define HGPDTTOOLDB_TITLE_DIAL_SWITCH L"拨码开关校验"
/* 检查船型开关功能 */ /* 检查船型开关功能 */
#define HGPDTTOOLDB_TITLE_ROCKER_SWITCH L"检查船型开关功能" #define HGPDTTOOLDB_TITLE_ROCKER_SWITCH L"检查船型开关功能"
/* 设备上电并观察开机状态 */ /* 设备上电并观察开机状态 */
#define HGPDTTOOLDB_TITLE_BOOT_STATUS L"设备上电并观察开机状态" #define HGPDTTOOLDB_TITLE_BOOT_STATUS L"设备上电并观察开机状态"
/* 检查液晶显示 */ /* 检查液晶显示 */
#define HGPDTTOOLDB_TITLE_LCD_DISPLAY L"检查液晶显示" #define HGPDTTOOLDB_TITLE_LCD_DISPLAY L"检查液晶显示"
/* 清理纸道功能确认 */ /* 清理纸道功能确认 */
#define HGPDTTOOLDB_TITLE_CLEAR_PAPER_PATH L"清理纸道功能确认" //1 #define HGPDTTOOLDB_TITLE_CLEAR_PAPER_PATH L"清理纸道功能确认" //1
/* 按键功能检测 */ /* 按键功能检测 */
#define HGPDTTOOLDB_TITLE_KEY_FUNCTION L"按键功能检测" #define HGPDTTOOLDB_TITLE_KEY_FUNCTION L"按键功能检测"
/* 计数模式检测 */ /* 计数模式检测 */
#define HGPDTTOOLDB_TITLE_COUNTING_MODE L"计数模式检测"//1 #define HGPDTTOOLDB_TITLE_COUNTING_MODE L"计数模式检测"//1
/* 歪斜检测 */ /* 歪斜检测 */
#define HGPDTTOOLDB_TITLE_SKEW_DETECTION L"歪斜检测"//1 #define HGPDTTOOLDB_TITLE_SKEW_DETECTION L"歪斜检测"//1
/* 分纸电机检测 */ /* 分纸电机检测 */
#define HGPDTTOOLDB_TITLE_SEPARATER_MOTOR L"分纸电机检测" #define HGPDTTOOLDB_TITLE_SEPARATER_MOTOR L"分纸电机检测"
/* CIS原图初检 */ /* CIS原图初检 */
#define HGPDTTOOLDB_TITLE_CIS_ORIGINAL_IMAGE L"CIS原图初检" #define HGPDTTOOLDB_TITLE_CIS_ORIGINAL_IMAGE L"CIS原图初检"
/* 主机风扇功能检测 */ /* 主机风扇功能检测 */
#define HGPDTTOOLDB_TITLE_HOST_FAN L"主机风扇功能检测" #define HGPDTTOOLDB_TITLE_HOST_FAN L"主机风扇功能检测"
/* 超声波模块检验 */ /* 超声波模块检验 */
#define HGPDTTOOLDB_TITLE_ULTRASONIC_MODULE L"超声波模块检验" #define HGPDTTOOLDB_TITLE_ULTRASONIC_MODULE L"超声波模块检验"
/* LED灯状态检查 */ /* LED灯状态检查 */
#define HGPDTTOOLDB_TITLE_LED_LIGHT L"LED灯状态检查" #define HGPDTTOOLDB_TITLE_LED_LIGHT L"LED灯状态检查"
/* 复位检查 */ /* 复位检查 */
#define HGPDTTOOLDB_TITLE_RESET L"复位检查" #define HGPDTTOOLDB_TITLE_RESET L"复位检查"
/* 走纸检查 */ /* 走纸检查 */
#define HGPDTTOOLDB_TITLE_PAPER_FEED L"走纸检查" #define HGPDTTOOLDB_TITLE_PAPER_FEED L"走纸检查"
/* 开盖传感器检查 */ /* 开盖传感器检查 */
#define HGPDTTOOLDB_TITLE_COVER_SENSOR L"开盖传感器检查" #define HGPDTTOOLDB_TITLE_COVER_SENSOR L"开盖传感器检查"
/* 扫描传感器检查 */ /* 扫描传感器检查 */
#define HGPDTTOOLDB_TITLE_SCANNING_SENSOR L"扫描传感器检查" #define HGPDTTOOLDB_TITLE_SCANNING_SENSOR L"扫描传感器检查"
/* 配置速度模式 */ /* 配置速度模式 */
#define HGPDTTOOLDB_TITLE_CONFIGURE_SPEED_MODE L"配置速度模式" #define HGPDTTOOLDB_TITLE_CONFIGURE_SPEED_MODE L"配置速度模式"
/* 放置校正纸 */ /* 放置校正纸 */
#define HGPDTTOOLDB_TITLE_PLACE_CORRECTION_PAPER L"放置校正纸" #define HGPDTTOOLDB_TITLE_PLACE_CORRECTION_PAPER L"放置校正纸"
/* 自动平场校正 */ /* 自动平场校正 */
#define HGPDTTOOLDB_TITLE_AUTO_FLAT_FIELD L"自动平场校正" #define HGPDTTOOLDB_TITLE_AUTO_FLAT_FIELD L"自动平场校正"
/* 重启设备 */ /* 重启设备 */
#define HGPDTTOOLDB_TITLE_REBOOT_DEVICE L"重启设备" #define HGPDTTOOLDB_TITLE_REBOOT_DEVICE L"重启设备"
/* 扫描图像质量确认 */ /* 扫描图像质量确认 */
#define HGPDTTOOLDB_TITLE_IMAGE_QUALITY L"扫描图像质量确认" #define HGPDTTOOLDB_TITLE_IMAGE_QUALITY L"扫描图像质量确认"
/* 色卡纸成像质量评估 */ /* 色卡纸成像质量评估 */
#define HGPDTTOOLDB_TITLE_COLORCARD_IMAGEING_QUALITY L"色卡纸成像质量评估" #define HGPDTTOOLDB_TITLE_COLORCARD_IMAGEING_QUALITY L"色卡纸成像质量评估"
/* 色卡纸偏色成像质量评估 */ /* 色卡纸偏色成像质量评估 */
#define HGPDTTOOLDB_TITLE_COLORCARD_BIAS_IMAGEING_QUALITY L"色卡纸偏色成像质量评估" #define HGPDTTOOLDB_TITLE_COLORCARD_BIAS_IMAGEING_QUALITY L"色卡纸偏色成像质量评估"
/* 清晰度质量评估 */ /* 清晰度质量评估 */
#define HGPDTTOOLDB_TITLE_CLARITY_QUALITY L"清晰度质量评估" #define HGPDTTOOLDB_TITLE_CLARITY_QUALITY L"清晰度质量评估"
/* 畸变修正 */ /* 畸变修正 */
#define HGPDTTOOLDB_TITLE_DISTORTION L"畸变修正" #define HGPDTTOOLDB_TITLE_DISTORTION L"畸变修正"
/* 设置休眠 */ /* 设置休眠 */
#define HGPDTTOOLDB_TITLE_DORMANCY L"设置休眠" #define HGPDTTOOLDB_TITLE_DORMANCY L"设置休眠"
/* 歪斜挡位检测 */ /* 歪斜挡位检测 */
#define HGPDTTOOLDB_TITLE_SKEW_GEAR L"歪斜挡位检测" #define HGPDTTOOLDB_TITLE_SKEW_GEAR L"歪斜挡位检测"
/* 分纸强度检测 */ /* 分纸强度检测 */
#define HGPDTTOOLDB_TITLE_PAPER_SEPARATION_STRENGTH L"分纸强度检测" #define HGPDTTOOLDB_TITLE_PAPER_SEPARATION_STRENGTH L"分纸强度检测"
/* 机械走纸倾斜检测 */ /* 机械走纸倾斜检测 */
#define HGPDTTOOLDB_TITLE_MECH_PAPER_FEEDING_INCLINATION L"机械走纸倾斜检测" #define HGPDTTOOLDB_TITLE_MECH_PAPER_FEEDING_INCLINATION L"机械走纸倾斜检测"
/* 单张测试1 */ /* 单张测试1 */
#define HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_1 L"单张测试1" #define HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_1 L"单张测试"
/* 单张测试2 */
#define HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_2 L"单张测试2"
/* 单张测试3 */
#define HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_3 L"单张测试3"
/* 压力测试2轮 */
#define HGPDTTOOLDB_TITLE_PRESSUER_TEST L"压力测试2轮"
/* 清除滚轴计数 */ /* 清除滚轴计数 */
#define HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT L"清除滚轴计数" #define HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT L"清除滚轴计数"
/*压力测试彩色+200dpi*/
#define HGPDTTOOLDB_TITLE_PRESSUER_TEST_RGB_200DPI L"压力测试彩色_200dpi"
/*压力测试灰色+200dpi*/
#define HGPDTTOOLDB_TITLE_PRESSUER_TEST_RGB_300DPI L"压力测试彩色_300dpi"
/*压力测试彩色+300dpi*/
#define HGPDTTOOLDB_TITLE_PRESSUER_TEST_GRAY_200DPI L"压力测试灰色_200dpi"
/*压力测试灰色+300dpi*/
#define HGPDTTOOLDB_TITLE_PRESSUER_TEST_GRAY_300DPI L"压力测试灰色_300dpi"
//////////////////////////////////////NAME////////////////////////////////////// //////////////////////////////////////NAME//////////////////////////////////////
/* 拨码开关校验 */ /* 拨码开关校验 */
#define HGPDTTOOLDB_NAME_DIAL_SWITCH L"DIAL_SWITCH" #define HGPDTTOOLDB_NAME_DIAL_SWITCH L"DIAL_SWITCH"
/* 检查船型开关功能 */ /* 检查船型开关功能 */
#define HGPDTTOOLDB_NAME_ROCKER_SWITCH L"ROCKER_SWITCH" #define HGPDTTOOLDB_NAME_ROCKER_SWITCH L"ROCKER_SWITCH"
/* 设备上电并观察开机状态 */ /* 设备上电并观察开机状态 */
#define HGPDTTOOLDB_NAME_BOOT_STATUS L"BOOT_STATUS" #define HGPDTTOOLDB_NAME_BOOT_STATUS L"BOOT_STATUS"
/* 检查液晶显示 */ /* 检查液晶显示 */
#define HGPDTTOOLDB_NAME_LCD_DISPLAY L"LCD_DISPLAY" #define HGPDTTOOLDB_NAME_LCD_DISPLAY L"LCD_DISPLAY"
/* 清理纸道功能确认 */ /* 清理纸道功能确认 */
#define HGPDTTOOLDB_NAME_CLEAR_PAPER_PATH L"PAPER_PATH " #define HGPDTTOOLDB_NAME_CLEAR_PAPER_PATH L"PAPER_PATH "
/* 按键功能检测 */ /* 按键功能检测 */
#define HGPDTTOOLDB_NAME_KEY_FUNCTION L"KEY_FUNCTION" #define HGPDTTOOLDB_NAME_KEY_FUNCTION L"KEY_FUNCTION"
/* 计数模式检测 */ /* 计数模式检测 */
#define HGPDTTOOLDB_NAME_COUNTING_MODE L"COUNTING_MODE " #define HGPDTTOOLDB_NAME_COUNTING_MODE L"COUNTING_MODE "
/* 歪斜检测 */ /* 歪斜检测 */
#define HGPDTTOOLDB_NAME_SKEW_DETECTION L"SKEW_DETECTION" #define HGPDTTOOLDB_NAME_SKEW_DETECTION L"SKEW_DETECTION"
/* 分纸电机检测 */ /* 分纸电机检测 */
#define HGPDTTOOLDB_NAME_SEPARATER_MOTOR L"SEPARATER_MOTOR" #define HGPDTTOOLDB_NAME_SEPARATER_MOTOR L"SEPARATER_MOTOR"
/* CIS原图初检 */ /* CIS原图初检 */
#define HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE L"CIS_ORIGINAL_IMAGE" #define HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE L"CIS_ORIGINAL_IMAGE"
/* 主机风扇功能检测 */ /* 主机风扇功能检测 */
#define HGPDTTOOLDB_NAME_HOST_FAN L"HOST_FAN" #define HGPDTTOOLDB_NAME_HOST_FAN L"HOST_FAN"
/* 超声波模块检验 */ /* 超声波模块检验 */
#define HGPDTTOOLDB_NAME_ULTRASONIC_MODULE L"ULTRASONIC_MODULE" #define HGPDTTOOLDB_NAME_ULTRASONIC_MODULE L"ULTRASONIC_MODULE"
/* LED灯状态检查 */ /* LED灯状态检查 */
#define HGPDTTOOLDB_NAME_LED_LIGHT L"LED_LIGHT" #define HGPDTTOOLDB_NAME_LED_LIGHT L"LED_LIGHT"
/* 复位检查 */ /* 复位检查 */
#define HGPDTTOOLDB_NAME_RESET L"RESET" #define HGPDTTOOLDB_NAME_RESET L"RESET"
/* 走纸检查 */ /* 走纸检查 */
#define HGPDTTOOLDB_NAME_PAPER_FEED L"PAPER_FEED" #define HGPDTTOOLDB_NAME_PAPER_FEED L"PAPER_FEED"
/* 开盖传感器检查 */ /* 开盖传感器检查 */
#define HGPDTTOOLDB_NAME_COVER_SENSOR L"COVER_SENSOR" #define HGPDTTOOLDB_NAME_COVER_SENSOR L"COVER_SENSOR"
/* 扫描传感器检查 */ /* 扫描传感器检查 */
#define HGPDTTOOLDB_NAME_SCANNING_SENSOR L"SCANNING_SENSOR" #define HGPDTTOOLDB_NAME_SCANNING_SENSOR L"SCANNING_SENSOR"
/* 配置速度模式 */ /* 配置速度模式 */
#define HGPDTTOOLDB_NAME_CONFIGURE_SPEED_MODE L"CONFIGURE_SPEED_MODE" #define HGPDTTOOLDB_NAME_CONFIGURE_SPEED_MODE L"CONFIGURE_SPEED_MODE"
/* 放置校正纸 */ /* 放置校正纸 */
#define HGPDTTOOLDB_NAME_PLACE_CORRECTION_PAPER L"PLACE_CORRECTION_PAPER" #define HGPDTTOOLDB_NAME_PLACE_CORRECTION_PAPER L"PLACE_CORRECTION_PAPER"
/* 自动平场校正 */ /* 自动平场校正 */
#define HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD L"AUTO_FLAT_FIELD" #define HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD L"AUTO_FLAT_FIELD"
/* 重启设备 */ /* 重启设备 */
#define HGPDTTOOLDB_NAME_REBOOT_DEVICE L"REBOOT_DEVICE" #define HGPDTTOOLDB_NAME_REBOOT_DEVICE L"REBOOT_DEVICE"
/* 扫描图像质量确认 */ /* 扫描图像质量确认 */
#define HGPDTTOOLDB_NAME_IMAGE_QUALITY L"IMAGE_QUALITY" #define HGPDTTOOLDB_NAME_IMAGE_QUALITY L"IMAGE_QUALITY"
/* 色卡纸成像质量评估 */ /* 色卡纸成像质量评估 */
#define HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY L"COLORCARD_IMAGEING_QUALITY" #define HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY L"COLORCARD_IMAGEING_QUALITY"
/* 色卡纸偏色成像质量评估 */ /* 色卡纸偏色成像质量评估 */
#define HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY L"COLORCARD_BIAS_IMAGEING_QUALITY" #define HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY L"COLORCARD_BIAS_IMAGEING_QUALITY"
/* 清晰度质量评估 */ /* 清晰度质量评估 */
#define HGPDTTOOLDB_NAME_CLARITY_QUALITY L"CLARITY_QUALITY" #define HGPDTTOOLDB_NAME_CLARITY_QUALITY L"CLARITY_QUALITY"
/* 畸变修正 */ /* 畸变修正 */
#define HGPDTTOOLDB_NAME_DISTORTION L"DISTORTION" #define HGPDTTOOLDB_NAME_DISTORTION L"DISTORTION"
/* 设置休眠 */ /* 设置休眠 */
#define HGPDTTOOLDB_NAME_DORMANCY L"DORMANCY" #define HGPDTTOOLDB_NAME_DORMANCY L"DORMANCY"
/* 歪斜挡位检测 */ /* 歪斜挡位检测 */
#define HGPDTTOOLDB_NAME_SKEW_GEAR L"SKEW_GEAR" #define HGPDTTOOLDB_NAME_SKEW_GEAR L"SKEW_GEAR"
/* 分纸强度检测 */ /* 分纸强度检测 */
#define HGPDTTOOLDB_NAME_PAPER_SEPARATION_STRENGTH L"PAPER_SEPARATION_STRENGTH" #define HGPDTTOOLDB_NAME_PAPER_SEPARATION_STRENGTH L"PAPER_SEPARATION_STRENGTH"
/* 机械走纸倾斜检测 */ /* 机械走纸倾斜检测 */
#define HGPDTTOOLDB_NAME_MECH_PAPER_FEEDING_INCLINATION L"MECH_PAPER_FEEDING_INCLINATION" #define HGPDTTOOLDB_NAME_MECH_PAPER_FEEDING_INCLINATION L"MECH_PAPER_FEEDING_INCLINATION"
/* 单张测试1 */ /* 单张测试 */
#define HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1 L"SINGLE_PAGE_TEST_1" #define HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST L"SINGLE_PAGE_TEST"
/* 单张测试2 */
#define HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_2 L"SINGLE_PAGE_TEST_2"
/* 单张测试3 */
#define HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_3 L"SINGLE_PAGE_TEST_3"
/* 压力测试2轮 */ /* 压力测试2轮 */
#define HGPDTTOOLDB_NAME_PRESSUER_TEST L"PRESSUER_TEST" #define HGPDTTOOLDB_NAME_PRESSUER_TEST L"PRESSUER_TEST"
/* 清除滚轴计数 */ /* 清除滚轴计数 */
#define HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT L"CLEAR_ROLLER_COUNT" #define HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT L"CLEAR_ROLLER_COUNT"
/*压力测试彩色+200dpi*/
#define HGPDTTOOLDB_NAME_PRESSUER_TEST_RGB_200DPI L"PRESSUER_TEST_RGB_200DPI"
/*压力测试灰色+200dpi*/
#define HGPDTTOOLDB_NAME_PRESSUER_TEST_GRAY_200DPI L"PRESSUER_TEST_GRAY_200DPI"
/*压力测试彩色+300dpi*/
#define HGPDTTOOLDB_NAME_PRESSUER_TEST_RGB_300DPI L"PRESSUER_TEST_RGB_300DPI"
/*压力测试灰色+300dpi*/
#define HGPDTTOOLDB_NAME_PRESSUER_TEST_GRAY_300DPI L"PRESSUER_TEST_GRAY_300DPI"
static struct Test_Map
{
const wchar_t* name; //test-1
const wchar_t* title; //"歪斜检测"
const int ver;
io_code num;
}Test_Map_NO[] =
{
{HGPDTTOOLDB_NAME_DIAL_SWITCH ,HGPDTTOOLDB_TITLE_DIAL_SWITCH ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_ROCKER_SWITCH ,HGPDTTOOLDB_TITLE_ROCKER_SWITCH ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_BOOT_STATUS ,HGPDTTOOLDB_TITLE_BOOT_STATUS ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_LCD_DISPLAY ,HGPDTTOOLDB_TITLE_LCD_DISPLAY ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_KEY_FUNCTION ,HGPDTTOOLDB_TITLE_KEY_FUNCTION ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_COUNTING_MODE ,HGPDTTOOLDB_TITLE_COUNTING_MODE ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_CIS_ORIGINAL_IMAGE,HGPDTTOOLDB_TITLE_CIS_ORIGINAL_IMAGE ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_HOST_FAN ,HGPDTTOOLDB_TITLE_HOST_FAN ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_LED_LIGHT ,HGPDTTOOLDB_TITLE_LED_LIGHT ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_RESET ,HGPDTTOOLDB_TITLE_RESET ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_PAPER_FEED ,HGPDTTOOLDB_TITLE_PAPER_FEED ,0,IO_CTRL_CODE_BASE}, //不清楚
{HGPDTTOOLDB_NAME_SCANNING_SENSOR ,HGPDTTOOLDB_TITLE_SCANNING_SENSOR ,0,IO_CTRL_CODE_BASE},//不清楚
{HGPDTTOOLDB_NAME_PLACE_CORRECTION_PAPER,HGPDTTOOLDB_TITLE_PLACE_CORRECTION_PAPER ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_AUTO_FLAT_FIELD ,HGPDTTOOLDB_TITLE_AUTO_FLAT_FIELD ,0,IO_CTRL_CODE_BASE},//不清楚
{HGPDTTOOLDB_NAME_IMAGE_QUALITY ,HGPDTTOOLDB_TITLE_IMAGE_QUALITY ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_COLORCARD_IMAGEING_QUALITY ,HGPDTTOOLDB_TITLE_COLORCARD_IMAGEING_QUALITY ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_COLORCARD_BIAS_IMAGEING_QUALITY ,HGPDTTOOLDB_TITLE_COLORCARD_BIAS_IMAGEING_QUALITY ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_CLARITY_QUALITY ,HGPDTTOOLDB_TITLE_CLARITY_QUALITY ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_DISTORTION ,HGPDTTOOLDB_TITLE_DISTORTION ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_SEPARATER_MOTOR ,HGPDTTOOLDB_TITLE_SEPARATER_MOTOR ,0,IO_CTRL_CODE_BASE},
},
Test_Map_Bool[]
{
{HGPDTTOOLDB_NAME_CLEAR_PAPER_PATH ,HGPDTTOOLDB_TITLE_CLEAR_PAPER_PATH ,0,IO_CTRL_CODE_GET_CLEAN_PAPER_ROAD},
{HGPDTTOOLDB_NAME_SKEW_DETECTION ,HGPDTTOOLDB_TITLE_SKEW_DETECTION ,0,IO_CTRL_CODE_SET_SKEW_CHECK},
{HGPDTTOOLDB_NAME_ULTRASONIC_MODULE ,HGPDTTOOLDB_TITLE_ULTRASONIC_MODULE ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_COVER_SENSOR ,HGPDTTOOLDB_TITLE_COVER_SENSOR ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_REBOOT_DEVICE ,HGPDTTOOLDB_TITLE_REBOOT_DEVICE ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_MECH_PAPER_FEEDING_INCLINATION,HGPDTTOOLDB_TITLE_MECH_PAPER_FEEDING_INCLINATION ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_CLEAR_ROLLER_COUNT ,HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT,0,IO_CTRL_CODE_SET_CLEAR_ROLLER_COUNT},
{HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1 ,HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_1,0,IO_CTRL_CODE_TEST_SINGLE},
},
Test_Map_String[]
{
{L"123" ,HGPDTTOOLDB_TITLE_CLEAR_ROLLER_COUNT,0,IO_CTRL_CODE_SET_CLEAR_ROLLER_COUNT},
},
Test_Map_Int[]
{
{HGPDTTOOLDB_NAME_PAPER_SEPARATION_STRENGTH ,HGPDTTOOLDB_TITLE_PAPER_SEPARATION_STRENGTH,0,IO_CTRL_CODE_SET_FEEDMODE},
{HGPDTTOOLDB_NAME_CONFIGURE_SPEED_MODE ,HGPDTTOOLDB_TITLE_CONFIGURE_SPEED_MODE ,0,IO_CTRL_CODE_BASE},
{HGPDTTOOLDB_NAME_DORMANCY ,HGPDTTOOLDB_TITLE_DORMANCY ,0,IO_CTRL_CODE_SET_POWER_LEVEL},
{HGPDTTOOLDB_NAME_SKEW_GEAR ,HGPDTTOOLDB_TITLE_SKEW_GEAR,0,IO_CTRL_CODE_SET_SKEW_CHECK_VAL},
{HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_2 ,HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_2,0,IO_CTRL_CODE_TEST_SINGLE},
{HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_3 ,HGPDTTOOLDB_TITLE_SINGLE_PAGE_TEST_3,0,IO_CTRL_CODE_TEST_SINGLE},
{HGPDTTOOLDB_NAME_PRESSUER_TEST ,HGPDTTOOLDB_TITLE_PRESSUER_TEST ,0,IO_CTRL_CODE_BASE},
};
#define TEST_DLL #define TEST_DLL
#ifdef TEST_DLL #ifdef TEST_DLL
#define DECL_API(ret) __declspec(dllexport) ret __stdcall #define DECL_API(ret) __declspec(dllexport) ret __stdcall
@ -226,7 +176,7 @@ DECL_API(int) func_test_init(void*);
DECL_API(int) func_test_get_list(wchar_t* buf // to receive the JSON text DECL_API(int) func_test_get_list(wchar_t* buf // to receive the JSON text
, size_t* len); // [in] space of 'buf' in words, [out] words copied in buf, or less buffer size in words if return ERROR_INSUFFICIENT_BUFFER , size_t* len); // [in] space of 'buf' in words, [out] words copied in buf, or less buffer size in words if return ERROR_INSUFFICIENT_BUFFER
#define WRITE_CFG_NAME "write-cfg"
enum write_cat enum write_cat
{ {
WRITE_CAT_VID = 0, // val = (int*) WRITE_CAT_VID = 0, // val = (int*)