信息设备型号获取

This commit is contained in:
13038267101 2023-02-03 10:30:57 +08:00
parent 46a1d42b72
commit 594901065c
6 changed files with 48 additions and 4 deletions

View File

@ -154,6 +154,8 @@
#endif
// #define BRAND_TITLE_FIRM_VERSION "设备型号"
#define BRAND_TITLE_DEVICE_MODEL "\350\256\276\345\244\207\345\236\213\345\217\267"
// #define BRAND_TITLE_FIRM_VERSION "固件版本"
#define BRAND_TITLE_FIRM_VERSION "\345\233\272\344\273\266\347\211\210\346\234\254"
// #define BRAND_TITLE_SERIAL_NUM "序列号"
@ -199,4 +201,4 @@
#define SCANNER_NAME_CT_138 "CUMTENN CT-138"
#define SCANNER_NAME_CT_238 "CUMTENN CT-238"
#define SCANNER_NAME_ZJ_6005 "Microtek A3HG Scanner"
#define SCANNER_NAME_ZJ_6500 "Microtek A3HG Scanner"

View File

@ -3634,6 +3634,10 @@ std::string hg_scanner::get_ip(void)
{
return BRAND_DEVICE_NOT_SUPPORT;
}
std::string hg_scanner::get_device_model(void)
{
return BRAND_DEVICE_NOT_SUPPORT;
}
int hg_scanner::get_roller_num(int &val)
{
return SCANNER_ERR_DEVICE_NOT_SUPPORT;

View File

@ -453,7 +453,7 @@ public:
virtual std::string get_firmware_version(void);
virtual std::string get_serial_num(void);
virtual std::string get_ip(void);
virtual std::string get_device_model(void);
virtual int set_serial_num(string str) = 0; //设置序列号
virtual int set_vid_pid(int data) = 0; //设置vidpid
virtual int get_vid_pid(int& data) = 0; //获取vidpid
@ -502,7 +502,6 @@ public:
virtual int get_devs_distortion_check_val(int& data); //获取设备畸变值 float to int;
virtual int set_auto_flat(void) = 0; //设置自动平场校正
};
#ifdef UOS

View File

@ -1374,6 +1374,39 @@ std::string hg_scanner_239::get_ip(void)
{
return control_fetch(setting3399::SR_GET_IPADDR, 0, 40);
}
std::string hg_scanner_239::get_device_model(void)
{
string device_model = "/home/linaro/microtek_sn";
string str;
int ret = SCANNER_ERR_OK;
int buffersize = 0;
int len = device_model.size();
io_->set_timeout(3000);
ret = write_register(setting3399::SR_SET_JSON_PATH, len);
if (ret != SCANNER_ERR_OK)
return "";
ret = io_->write_bulk(&device_model[0], &len);
if (ret != SCANNER_ERR_OK)
return "";
ret = read_register(setting3399::SR_GET_JSON_SIZE, &buffersize);
if (ret != SCANNER_ERR_OK || buffersize <= 0)
return "";
ret = write_register(setting3399::SR_GET_JSON, buffersize);
if (ret != SCANNER_ERR_OK || buffersize <= 0)
return "";
str.resize(buffersize);
ret = io_->read_bulk(&str[0], &buffersize);
if (ret != SCANNER_ERR_OK)
return "";;
return str;
}
int hg_scanner_239::set_serial_num(string str)
{
int len = str.size(),

View File

@ -85,6 +85,7 @@ public:
virtual std::string get_firmware_version(void)override;
virtual std::string get_serial_num(void)override;
virtual std::string get_ip(void)override;
virtual std::string get_device_model(void);
virtual int set_serial_num(string str) override; //设置序列号
virtual int set_vid_pid(int data) override; //设置vidpid

View File

@ -59,7 +59,7 @@ g_supporting_devices[] = {
, {0x3308, 0x0238, SCANNER_NAME_CT_138, SCANNER_NAME_CT_138, "", &hg_scanner_mgr::create_scanner_g239}
, {0x3308, 0x0138, SCANNER_NAME_CT_238, SCANNER_NAME_CT_238, "", &hg_scanner_mgr::create_scanner_g239}
#elif defined(OEM_ZHONGJING)
{0X05DA, 0x9220, SCANNER_NAME_ZJ_6005, SCANNER_NAME_ZJ_6005, "",& hg_scanner_mgr::create_scanner_g439}
{0X05DA, 0x9220, SCANNER_NAME_ZJ_6500, "S6500", "",& hg_scanner_mgr::create_scanner_g439}
#else
{0x3072, PID_AND_NAME(100, SCANNER_NAME_HG_G100), "G100", "", &hg_scanner_mgr::create_scanner_g100}
, {0x3072, PID_AND_NAME(139, SCANNER_NAME_HG_G100), "G100", "", &hg_scanner_mgr::create_scanner_g239}
@ -483,6 +483,7 @@ scanner_err hg_scanner_mgr::get_about_info(scanner_handle h, void* data, unsigne
if (scanner)
#endif
{
bytes += sizeof(tmp.appendix[0]) + BRAND_INFO_MAX_LENGTH + 8 + strlen(GET_LANG(BRAND_TITLE_DEVICE_MODEL, &islang)) + 8;
bytes += sizeof(tmp.appendix[0]) + BRAND_INFO_MAX_LENGTH + 8 + strlen(GET_LANG(BRAND_TITLE_FIRM_VERSION,&islang)) + 8;
bytes += sizeof(tmp.appendix[0]) + BRAND_INFO_MAX_LENGTH + 8 + strlen(GET_LANG(BRAND_TITLE_SERIAL_NUM,&islang)) + 8;
bytes += sizeof(tmp.appendix[0]) + BRAND_INFO_MAX_LENGTH + 8 + strlen(GET_LANG(BRAND_TITLE_IP,&islang)) + 8;
@ -536,6 +537,10 @@ scanner_err hg_scanner_mgr::get_about_info(scanner_handle h, void* data, unsigne
info = scanner->get_ip();
if (info.length() > 10)
set_appendix_info_for_about(about, ptr, count, GET_LANG(BRAND_TITLE_IP,&islang), info.c_str(), NULL);
info.clear();
info = scanner->get_device_model();
if (!info.empty())
set_appendix_info_for_about(about, ptr, count, GET_LANG(BRAND_TITLE_DEVICE_MODEL, &islang), info.c_str(), NULL);
ret = scanner->get_roller_num(rolls);
if (ret == SCANNER_ERR_OK)
{