From 6f5bde5cc41d121d362fc4b06f08732b645956ae Mon Sep 17 00:00:00 2001 From: gb <741021719@qq.com> Date: Sat, 7 Oct 2023 12:41:50 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E5=A4=84=E7=90=86=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_ipc.cpp | 3 ++- hgdriver/hgdev/hg_ipc.h | 3 ++- hgdriver/hgdev/hg_scanner.cpp | 26 ++++++++++++++++++++++---- hgdriver/hgdev/hg_scanner.h | 2 +- hgdriver/hgdev/scanner_manager.cpp | 6 +++--- hgsane/main.c | 5 +++++ hgsane/sane_hg_mdw.cpp | 16 ++++++++++++++++ hgsane/sane_hg_mdw.h | 1 + 8 files changed, 52 insertions(+), 10 deletions(-) diff --git a/hgdriver/hgdev/hg_ipc.cpp b/hgdriver/hgdev/hg_ipc.cpp index f5122c2..fac9eba 100644 --- a/hgdriver/hgdev/hg_ipc.cpp +++ b/hgdriver/hgdev/hg_ipc.cpp @@ -785,7 +785,7 @@ void final_img_queue::clear(void) mem_usage_ = 0; queue_.clear(); } -bool final_img_queue::put(int w, int h, int bpp, int channels, int line_bytes, void* data, unsigned bytes +bool final_img_queue::put(int w, int h, int bpp, int channels, int line_bytes, void* data, unsigned bytes, int statu , const char* tmp_path, const char* name_leading, const char* ext, int ind, uint32_t id) { IMGDT imgd; @@ -799,6 +799,7 @@ bool final_img_queue::put(int w, int h, int bpp, int channels, int line_bytes, v imgd.header.line_bytes = line_bytes; imgd.header.width = w; imgd.header.src_id = id; + imgd.header.statu = statu; imgd.offset = 0; imgd.data.reset(new tiny_buffer(bytes, tmp_path, name_leading, ext, ind)); diff --git a/hgdriver/hgdev/hg_ipc.h b/hgdriver/hgdev/hg_ipc.h index 5226fa5..9a7b03a 100644 --- a/hgdriver/hgdev/hg_ipc.h +++ b/hgdriver/hgdev/hg_ipc.h @@ -213,6 +213,7 @@ typedef struct _img_header int bits; int channels; int line_bytes; + int statu; // SANE_Image_Statu unsigned bytes; uint32_t src_id; }IMH; @@ -236,7 +237,7 @@ public: unsigned long long mem_usage(void); size_t size(void); void clear(void); - bool put(int w, int h, int bpp, int channels, int line_bytes, void* data, unsigned bytes + bool put(int w, int h, int bpp, int channels, int line_bytes, void* data, unsigned bytes, int statu , const char* tmp_path, const char* name_leading, const char* ext, int ind, uint32_t id); bool front(IMH* header); void fetch_front(void* buf, int* len, bool* over); diff --git a/hgdriver/hgdev/hg_scanner.cpp b/hgdriver/hgdev/hg_scanner.cpp index 04ad15b..34a1c50 100644 --- a/hgdriver/hgdev/hg_scanner.cpp +++ b/hgdriver/hgdev/hg_scanner.cpp @@ -3615,7 +3615,7 @@ int hg_scanner::save_final_image(hg_imgproc::LPIMGHEAD head, void* buf, uint32_t return ui_ev_cb_((scanner_handle)this, SANE_EVENT_IMAGE_OK, &img, &final_img_index_, NULL); } - if (final_imgs_.put(head->width, head->height, head->bits, head->channels, head->line_bytes, buf, head->total_bytes + if (final_imgs_.put(head->width, head->height, head->bits, head->channels, head->line_bytes, buf, head->total_bytes, head->statu , final_path_.c_str(), "final", "dat", final_img_index_, id)) return SCANNER_ERR_OK; else @@ -3972,14 +3972,18 @@ int hg_scanner::start(void) return status_; } -int hg_scanner::get_image_info(SANE_Parameters* ii) +int hg_scanner::get_image_info(SANE_Parameters* ii, int len) { int ret = SCANNER_ERR_OK; IMH imh; + SANE_Image* iiex = len == sizeof(SANE_Image) ? (SANE_Image*)ii : nullptr; fetching_id_ = -1; - bzero(&imh, sizeof(imh)); - bzero(ii, sizeof(*ii)); + memset(&imh, 0, sizeof(imh)); + memset(ii, 0, len); + if (iiex) + ii = &iiex->header; + while ((!wait_img_.is_waiting() || !wait_usb_.is_waiting()) && final_imgs_.size() <= 0) this_thread::sleep_for(chrono::milliseconds(10)); @@ -3993,6 +3997,13 @@ int hg_scanner::get_image_info(SANE_Parameters* ii) { copy_to_sane_image_header(ii, imh.width, imh.height, imh.line_bytes, imh.channels, imh.bits); fetching_id_ = imh.src_id; + if (iiex) + { + iiex->src_id = imh.src_id; + iiex->flag.statu = imh.statu; + iiex->flag.dpi = resolution_; + iiex->bytes = imh.bytes; + } } } @@ -4016,6 +4027,13 @@ int hg_scanner::get_image_info(SANE_Parameters* ii) else imh.bits = 8; + if (iiex) + { + iiex->src_id = -1; + iiex->flag.statu = SANE_Image_Statu_OK; + iiex->flag.dpi = resolution_; + } + ret = SCANNER_ERR_OK; } } diff --git a/hgdriver/hgdev/hg_scanner.h b/hgdriver/hgdev/hg_scanner.h index 33de5c4..74ca872 100644 --- a/hgdriver/hgdev/hg_scanner.h +++ b/hgdriver/hgdev/hg_scanner.h @@ -475,7 +475,7 @@ public: public: virtual int start(void); - virtual int get_image_info(SANE_Parameters* ii); + virtual int get_image_info(SANE_Parameters* ii, int len); virtual int read_image_data(unsigned char* buf, int* len); virtual int stop(void); virtual int reset(void); diff --git a/hgdriver/hgdev/scanner_manager.cpp b/hgdriver/hgdev/scanner_manager.cpp index 8aff5ae..bacb681 100644 --- a/hgdriver/hgdev/scanner_manager.cpp +++ b/hgdriver/hgdev/scanner_manager.cpp @@ -407,14 +407,14 @@ void hg_scanner_mgr::on_hgscanner_pnp(usb_event ev, libusb_device* device, int v size_t i = 0; for (; i < online_devices_.size(); ++i) { - if (online_devices_[i].dev == device) // 濮濄倕顦╅崑鍥х暰閸氬奔绔撮崣鎷岊啎婢跺洭鍣搁弬鎷岀箾閹恒儱鎮楅敍宀冾啎婢跺洤顕挒鈾€鈧竸evice閳ユ繀绻氶幐浣风瑝閸欐﹫绱辨俊鍌涚亯閸嬪洩顔曟稉宥嗗灇缁斿绱濇导姘嚤閼风顔曟径鍥櫢鏉╃偞绉烽幁顖欑瑝閼宠姤顒滅敮鍛婂复閺€璁圭礉缂佹垵鐣鹃崚鎷岊嚉鐠佹儳顦惃鍓哻anner鐎电钖勫妞剧瑝閸掍即鍣撮弨? + if (online_devices_[i].dev == device) // 濮濄倕顦╅崑鍥х暰閸氬奔绔撮崣鎷岊啎婢跺洭鍣搁弬鎷岀箾閹恒儱鎮楅敍宀冾啎婢跺洤顕挒鈾€鈧竸evice閳ユ繀绻氶幐浣风瑝閸欐﹫绱辨俊鍌涚亯閸嬪洩顔曟稉宥嗗灇缁斿绱濇导姘嚤閼风顔曟径鍥櫢鏉╃偞绉烽幁顖欑瑝閼宠姤顒滅敮鍛婂复閺€璁圭礉缂佹垵鐣鹃崚鎷岊嚉鐠佹儳顦惃鍓哻anner鐎电钖勫妞剧瑝閸掍即鍣撮? { online_devices_[i].ind = index; add = false; break; } } - if (add) // 婢跺嫮鎮婄€电钖勯垾娓別vice閳ユ繃鏁奸崣妯兼畱閹懏娅? + if (add) // 婢跺嫮鎮婄€电钖勯垾娓別vice閳ユ繃鏁奸崣妯兼畱閹懏? { i = 0; for (auto& v : online_devices_) @@ -1060,7 +1060,7 @@ scanner_err hg_scanner_mgr::hg_scanner_stop(scanner_handle h) } scanner_err hg_scanner_mgr::hg_scanner_get_img_info(scanner_handle h, SANE_Parameters* bmi, long len) { - return (scanner_err)SCAN_PTR(h)->get_image_info(bmi); + return (scanner_err)SCAN_PTR(h)->get_image_info(bmi, (int)len); } scanner_err hg_scanner_mgr::hg_scanner_read_img_data(scanner_handle h, unsigned char* data, long* len) { diff --git a/hgsane/main.c b/hgsane/main.c index 9a53031..a3c62c2 100644 --- a/hgsane/main.c +++ b/hgsane/main.c @@ -26,6 +26,7 @@ extern SANE_Status inner_sane_io_control(SANE_Handle h, unsigned long code, void extern const char* inner_sane_err_desc(SANE_Status err); extern SANE_Status inner_sane_read_ext(SANE_Img_Ext_Info* ext_info, SANE_Int* len); extern SANE_Status inner_sane_ex_get_driver_version(SANE_Int* hh, SANE_Int* hl, SANE_Int* lh, SANE_Int* ll); +extern SANE_Status inner_sane_get_parameters_ex(SANE_Handle h, SANE_Image* info); /// /// 导出接口 @@ -115,6 +116,10 @@ SANE_Status sane_read_ext_info(SANE_Img_Ext_Info* ext_info, SANE_Int* len) { return inner_sane_read_ext(ext_info, len); } +SANE_Status sane_get_parameters_ex(SANE_Handle h, SANE_Image* info) +{ + return inner_sane_get_parameters_ex(h, info); +} int sane_ex_get_driver_version(int* hh, int* hl, int* lh, int* ll) { return inner_sane_ex_get_driver_version(hh, hl, lh, ll); diff --git a/hgsane/sane_hg_mdw.cpp b/hgsane/sane_hg_mdw.cpp index 538f204..e7aae27 100644 --- a/hgsane/sane_hg_mdw.cpp +++ b/hgsane/sane_hg_mdw.cpp @@ -1669,6 +1669,18 @@ SANE_Status hg_sane_middleware::get_image_parameters(SANE_Handle handle, SANE_Pa return local_utility::scanner_err_2_sane_statu(err); } +SANE_Status hg_sane_middleware::get_image_parameters_ex(SANE_Handle handle, SANE_Image* params) +{ + scanner_handle h = find_openning_device(handle); + scanner_err err = SCANNER_ERR_NOT_START; + + if (!params) + return SANE_STATUS_INVAL; + + err = hg_scanner_get_img_info(h, (SANE_Parameters*)params, sizeof(*params)); + + return local_utility::scanner_err_2_sane_statu(err); +} SANE_Status hg_sane_middleware::start(SANE_Handle h, void* async_event) { LPDEVINST dev; @@ -2643,6 +2655,10 @@ extern "C" { // avoid compiler exporting name in C++ style !!! return SANE_STATUS_GOOD; } + SANE_Status inner_sane_get_parameters_ex(SANE_Handle h, SANE_Image* info) + { + return hg_sane_middleware::instance()->get_image_parameters_ex(h, info); + } void sanei_debug_msg(int level, int max_level, const char* be, const char* fmt, va_list ap) { diff --git a/hgsane/sane_hg_mdw.h b/hgsane/sane_hg_mdw.h index 039f1fb..4d9458c 100644 --- a/hgsane/sane_hg_mdw.h +++ b/hgsane/sane_hg_mdw.h @@ -223,6 +223,7 @@ public: SANE_Status open_device(SANE_String_Const devicename, SANE_Handle* handle); SANE_Status close_device(SANE_Handle h); SANE_Status get_image_parameters(SANE_Handle handle, SANE_Parameters* params); + SANE_Status get_image_parameters_ex(SANE_Handle handle, SANE_Image* params); SANE_Status start(SANE_Handle h, void* async_event); SANE_Status read(SANE_Handle h, void* buf, int* bytes); SANE_Status stop(SANE_Handle h); From 1b54667d92305f757d83a2793f34bf96fa152efe Mon Sep 17 00:00:00 2001 From: gb <741021719@qq.com> Date: Sat, 7 Oct 2023 16:43:24 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=9B=B4=E6=94=B9SANE=5FImage=5FStatus?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=E4=B8=8E=E5=9B=BA=E4=BB=B6=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_scanner.cpp | 6 +-- hgdriver/hgdev/hg_scanner_239.cpp | 34 ++++++++--------- hgdriver/hgdev/hg_scanner_239.h | 44 +++++++++++----------- hgdriver/hgdev/hg_scanner_300.cpp | 36 +++++++++--------- hgdriver/hgdev/hg_scanner_302.cpp | 12 +++--- hgdriver/hgdev/image_process.cpp | 26 ++++++------- hgdriver/wrapper/huagaoxxx_warraper_ex.cpp | 8 ++-- 7 files changed, 83 insertions(+), 83 deletions(-) diff --git a/hgdriver/hgdev/hg_scanner.cpp b/hgdriver/hgdev/hg_scanner.cpp index 34a1c50..fa70c3a 100644 --- a/hgdriver/hgdev/hg_scanner.cpp +++ b/hgdriver/hgdev/hg_scanner.cpp @@ -3040,13 +3040,13 @@ hg_imgproc::IMGPRCPARAM hg_scanner::get_image_process_object(int model) } SANE_Image_Statu hg_scanner::last_usb_image_statu(int err) { - SANE_Image_Statu statu = SANE_Image_Statu_OK; + SANE_Image_Statu statu = IMG_STATUS_OK; if (!is_continue_when_double_paper(double_paper_handle_) && is_save_img_when_double_paper(double_paper_handle_)) { if (err == SCANNER_ERR_DEVICE_DOUBLE_FEEDING) - statu = SANE_Image_Statu_Double; + statu = IMG_STATUS_DOUBLE; //else if (err == SCANNER_ERR_DEVICE_PAPER_JAMMED) //statu = SANE_Image_Statu_Jammed; } @@ -4030,7 +4030,7 @@ int hg_scanner::get_image_info(SANE_Parameters* ii, int len) if (iiex) { iiex->src_id = -1; - iiex->flag.statu = SANE_Image_Statu_OK; + iiex->flag.statu = IMG_STATUS_OK; iiex->flag.dpi = resolution_; } diff --git a/hgdriver/hgdev/hg_scanner_239.cpp b/hgdriver/hgdev/hg_scanner_239.cpp index 738e24f..b203baa 100644 --- a/hgdriver/hgdev/hg_scanner_239.cpp +++ b/hgdriver/hgdev/hg_scanner_239.cpp @@ -103,7 +103,7 @@ namespace settings {200.0f, 1}, {240.0f, 1}, {300.0f, 0}, - {600.0f, 1} //临时版本发1 原来发2 + {600.0f, 1} //临时版本? 原来? }; bool is_equal(float l, float r) { @@ -322,7 +322,7 @@ int hg_scanner_239::set_auto_flat(int data) } if ((fw[5] == 'A' && atoi(fw.substr(6, 4).c_str()) <= 9999)) { - data = data == 1 ? 1 : 0; //暂时没有用。 + data = data == 1 ? 1 : 0; //暂时没有用? } if (!wait_usb_.is_waiting()) { @@ -535,10 +535,10 @@ void hg_scanner_239::init_version(void) { firmware_sup_wait_paper_ = year_date.compare("3B0629") >= 0 ? true : false; firmware_sup_log_export_ = true; - firmware_sup_pick_strength_ = false; //不支持 + firmware_sup_pick_strength_ = false; //不支? firmware_sup_wake_device_ = year_date.compare("3C0518") >= 0 ? true : false; firmware_sup_color_corr_ = year.compare("3C") >= 0 ? true : false; - firmware_sup_double_img = false; //不支持 + firmware_sup_double_img = false; //不支? firmware_sup_devs_lock_ = year.compare("3C") >= 0 ? true : false; firmware_sup_dpi_300 = false; firmware_sup_dpi_600 = true; @@ -567,7 +567,7 @@ int hg_scanner_239::writedown_device_configuration(bool type, setting_hardware: int ret = SCANNER_ERR_OK; if (!type) return ret; - setting_hardware::HGSCANCONF_3399 p = dev_conf_; //不得改变外部的值 + setting_hardware::HGSCANCONF_3399 p = dev_conf_; //不得改变外部的? if (!dev_conf) dev_conf = &p; @@ -598,7 +598,7 @@ int hg_scanner_239::writedown_device_configuration(bool type, setting_hardware: dev_conf->params_3399.is_fixedpaper = false; dev_conf->params_3399.en_autosize = true; } - if (!firmware_sup_auto_speed_ && image_prc_param_.bits.paper == PAPER_AUTO_MATCH)//3399 ,在3C之前的版本 匹配原始尺寸设置 12 + if (!firmware_sup_auto_speed_ && image_prc_param_.bits.paper == PAPER_AUTO_MATCH)//3399 ,?C之前的版?匹配原始尺寸设置 12 { dev_conf->params_3399.paper = 12; } @@ -904,7 +904,7 @@ int hg_scanner_239::on_resolution_changed(int& dpi) else dev_conf_.params_3399.dpi = dpi >= 500 ? 3 : (dpi < 500 && dpi> 299) ? 2 : 1; - //dev_conf_.params_3399.dpi = 1; //dpi 华凌cis和敦南cis 默认发1无需改变 + //dev_conf_.params_3399.dpi = 1; //dpi 华凌cis和敦南cis 默认?无需改变 int ret = writedown_device_configuration(); return ret; } @@ -962,7 +962,7 @@ int hg_scanner_239::on_skew_check_changed(bool& check) int hg_scanner_239::on_skew_check_level_changed(int& check) { int ret = SCANNER_ERR_OK, - val = check - 1,//上面设置的是1 - 5 ,接受范围值为0 - 4,默认2 + val = check - 1,//上面设置的是1 - 5 ,接受范围值为0 - 4,默? old = dev_conf_.params_3399.screw_detect_level; setting_hardware::HGSCANCONF_3399 cf; @@ -1346,10 +1346,10 @@ void hg_scanner_239::thread_get_dves_image(void) break; } } -////239 暂时先关闭双张存图弹窗提示,待到固件更新再确认是否需要弹窗 +////239 暂时先关闭双张存图弹窗提示,待到固件更新再确认是否需要弹? //while ((count = get_image_count()) > 0) //{ - // int s = SANE_Image_Statu_OK; + // int s = IMG_STATUS_OK; // if (count <= 2) // { // if (image_prc_param_.bits.page == PAGE_SINGLE) @@ -1401,7 +1401,7 @@ void hg_scanner_239::thread_get_dves_image(void) // fetch all buffered images and exit ... //while(!is_dev_image_process_done()) - if (img_conf_.resolution_dst > 200 && is_quality_ == IMG_QUALITY) //删除这段代码,你可能需要考虑一下后果 + if (img_conf_.resolution_dst > 200 && is_quality_ == IMG_QUALITY) //删除这段代码,你可能需要考虑一下后? std::this_thread::sleep_for(std::chrono::milliseconds(5000)); else std::this_thread::sleep_for(std::chrono::milliseconds(2000)); @@ -1512,7 +1512,7 @@ int hg_scanner_239::start(void) reset(); - //211220固件版本不支持返回 + //211220固件版本不支持返? ret = get_scan_is_sleep(val); if (!val && ret == SCANNER_ERR_OK) { @@ -1803,7 +1803,7 @@ int hg_scanner_239::get_scan_is_sleep(SANE_Bool& type) std::lock_guard lock(io_lock_); int ret = 0,val; - ret = read_register(setting3399::SR_GET_SLEEP_STAUTUS, &val); //0休眠 1唤醒状态 + ret = read_register(setting3399::SR_GET_SLEEP_STAUTUS, &val); //0休眠 1唤醒状? if (ret == SCANNER_ERR_OK) { type = val == 1 ? true : false; @@ -1975,7 +1975,7 @@ int hg_scanner_239::set_scan_lock_check_val(string check_str) { return SCANNER_ERR_INVALID_PARAMETER; } - int num = 32 - keys.size(); //保持32位下发 + int num = 32 - keys.size(); //保持32位下? if (num > 0) { std::string str(num, '0'); @@ -2035,7 +2035,7 @@ int hg_scanner_239::set_firmware_upgrade(std::string filename) return SCANNER_ERR_OPEN_FILE_FAILED; } fwname.seekg(0, std::ios::end); - int total = fwname.tellg();//记录总长度 + int total = fwname.tellg();//记录总长? fwname.seekg(0, std::ios::beg); int pos = fwname.tellg();//记录pos位置 @@ -2074,7 +2074,7 @@ int hg_scanner_239::set_firmware_upgrade(std::string filename) return SCANNER_ERR_DEVICE_UPGRADE_FAIL; int to_cnt = 0; - // 到这个位置已经能够升级成功了 后面对升级结果做下判断 + // 到这个位置已经能够升级成功了 后面对升级结果做下判? auto now = std::chrono::steady_clock::now(); while (std::chrono::duration(std::chrono::steady_clock::now() - now).count() < 70) { @@ -2141,7 +2141,7 @@ int hg_scanner_239::set_dev_islock_file(int islockfile) } if (islockfile != 0 && islockfile != 1) { - return SCANNER_ERR_INVALID_PARAMETER; //这个地方设置的参数必须保证正确 + return SCANNER_ERR_INVALID_PARAMETER; //这个地方设置的参数必须保证正? } string device_log_path = "/var/log/black_list_file.txt"; string str = std::to_string(islockfile); diff --git a/hgdriver/hgdev/hg_scanner_239.h b/hgdriver/hgdev/hg_scanner_239.h index 8301b27..8ead48d 100644 --- a/hgdriver/hgdev/hg_scanner_239.h +++ b/hgdriver/hgdev/hg_scanner_239.h @@ -41,7 +41,7 @@ class hg_scanner_239 : public hg_scanner int writedown_device_configuration(bool type = false, setting_hardware::HGSCANCONF_3399* dev_conf = NULL);//false 在start再把type置为true,其他做设置时不发 int writedown_image_configuration(void); int pop_first_image(void); - int read_one_image_from_usb(SANE_Image_Statu statu = SANE_Image_Statu_OK); + int read_one_image_from_usb(SANE_Image_Statu statu = IMG_STATUS_OK); bool is_dev_image_process_done(void); bool is_dev_image_keep_last_paper(void); @@ -60,15 +60,15 @@ protected: protected: virtual int on_color_mode_changed(int& color_mode) override; //颜色切换 virtual int on_paper_changed(int& paper) override; //纸张大小设置 - virtual int on_paper_check_changed(bool& check) override; //尺寸检测 - virtual int on_resolution_changed(int& dpi) override; //分辨率设置 - virtual int on_ultrasonic_check_changed(bool& check) override; //设置超声波检测 - virtual int on_staple_check_changed(bool& check) override; //设置订书针检测 - virtual int on_skew_check_changed(bool& check) override; //设置歪斜检测 - virtual int on_skew_check_level_changed(int& check) override; //设置歪斜检测强度 + virtual int on_paper_check_changed(bool& check) override; //尺寸检? + virtual int on_resolution_changed(int& dpi) override; //分辨率设? + virtual int on_ultrasonic_check_changed(bool& check) override; //设置超声波检? + virtual int on_staple_check_changed(bool& check) override; //设置订书针检? + virtual int on_skew_check_changed(bool& check) override; //设置歪斜检? + virtual int on_skew_check_level_changed(int& check) override; //设置歪斜检测强? virtual int on_get_feedmode(int& feedmode) override; //获取分纸强度 virtual int on_set_feedmode(int feedmode) override; //设置分纸强度 - virtual int on_pic_type(bool& pic)override; //照片模式或者文本模式 + virtual int on_pic_type(bool& pic)override; //照片模式或者文本模? virtual int on_pick_paper(bool autostrength)override; //自动分纸强度 virtual int on_pick_paper_threshold(double threshold)override; virtual int on_is_auto_paper(bool isautopaper)override; //待纸扫描 @@ -96,44 +96,44 @@ public: virtual std::string get_device_model(void); virtual int set_device_model(string str); - virtual int set_serial_num(string str) override; //设置序列号 + virtual int set_serial_num(string str) override; //设置序列? virtual int set_vid_pid(int data) override; //设置vidpid virtual int get_vid_pid(int& data)override; //获取vidpid /////////////////成功返回:SCANNER_ERR_OK ///////////// - /////////////////失败返回:IO错误码 or SCANNER_ERR_DEVICE_NOT_SUPPORT ///////////// + /////////////////失败返回:IO错误?or SCANNER_ERR_DEVICE_NOT_SUPPORT ///////////// virtual int set_leaflet_scan(void) override; //单张扫描 virtual int set_clear_roller_num(void) override; //清除滚轴计数 virtual int set_clear_history_num(void) override; //清除历史张数 - virtual int get_device_code(void); //获取设备编码 不支持 + virtual int get_device_code(void); //获取设备编码 不支? virtual int get_scanner_paperon(SANE_Bool& type) override; //获取设备有无纸张 /*/ type : 0无纸 1有纸 */ - virtual int get_scan_is_sleep(SANE_Bool& type) override; //获取设备是否休眠当中 /*/ type : 0休眠 1唤醒状态*/ - virtual int get_sleep_time(int& data) override; //获取功耗模式(休眠) /*/ data > 0*/ - virtual int set_sleep_time(int data) override; //设置功耗模式(休眠) /*/ data > 0*/ + virtual int get_scan_is_sleep(SANE_Bool& type) override; //获取设备是否休眠当中 /*/ type : 0休眠 1唤醒状?/ + virtual int get_sleep_time(int& data) override; //获取功耗模式(休眠? /*/ data > 0*/ + virtual int set_sleep_time(int data) override; //设置功耗模式(休眠? /*/ data > 0*/ virtual int get_history_scan_count(int& data) override; //获取历史扫描张数 /*/ data > 0*/ virtual int get_roller_num(int& data) override; //获取滚轮张数 /*/ data > 0*/ virtual int set_notify_sleep(void) override; //唤醒设备 virtual int get_device_log(string& log) override; //获取设备日志 /*/ log :储存路径*/ virtual int set_devreboot(int data) override; //设置设备重启 virtual int set_devshtudown() override; //设置设备关机 - virtual int set_scan_islock(SANE_Bool type) override; //设置设备是否锁定 /*/ type:0解锁,1锁定*/ - virtual int get_scan_islock(SANE_Bool& type) override; //获取设备是否锁定 /*/ type:0解锁,1锁定*/ - virtual int set_scan_lock_check_val(string str) override; //获取设备是否锁定 /*/ str:校验码*/ - virtual int set_firmware_upgrade(std::string str) override; //固件升级 /*/ str:文件名路径*/ + virtual int set_scan_islock(SANE_Bool type) override; //设置设备是否锁定 /*/ type:0解锁?锁定*/ + virtual int get_scan_islock(SANE_Bool& type) override; //获取设备是否锁定 /*/ type:0解锁?锁定*/ + virtual int set_scan_lock_check_val(string str) override; //获取设备是否锁定 /*/ str:校验?/ + virtual int set_firmware_upgrade(std::string str) override; //固件升级 /*/ str:文件名路?/ virtual int set_clean_paper_road() override; //清理纸道 - virtual int get_dev_islock_file(int& data) override; //获取设备文件 /*/ data:0 未上锁,1 上锁。-1 未发现黑名单列表 -2列表没有信息*/ + virtual int get_dev_islock_file(int& data) override; //获取设备文件 /*/ data:0 未上锁,1 上锁?1 未发现黑名单列表 -2列表没有信息*/ virtual int set_dev_islock_file(int data) override; //设置设备文件 /*/ data:0 未上锁,1 上锁*/ - virtual int get_scan_mode(bool& type); //获取是否是计数模式 /*/ type : fasle计数模式 true非计数 */ + virtual int get_scan_mode(bool& type); //获取是否是计数模? /*/ type : fasle计数模式 true非计?*/ virtual int set_speed_mode(int data) override; //设置速度模式 /*/ data:100,110,120 virtual int get_speed_mode(int& data)override; //获取速度模式 /*/ data:100,110,120 - virtual int set_devs_distortion_check_val(float data) override; //设置畸变矫正值 - virtual int get_devs_distortion_check_val(float &data) override; //获取畸变矫正值 + virtual int set_devs_distortion_check_val(float data) override; //设置畸变矫正? + virtual int get_devs_distortion_check_val(float &data) override; //获取畸变矫正? virtual int set_auto_flat(int data); //设置自动平场校正 // data:0(ALL) 1(200dpi、gray) 2(200dpi、color) 3(300dpi、gray) 4(300dpi、color) 5(600dpi、gray) 6(600dpi、color) diff --git a/hgdriver/hgdev/hg_scanner_300.cpp b/hgdriver/hgdev/hg_scanner_300.cpp index ece6563..d56d73d 100644 --- a/hgdriver/hgdev/hg_scanner_300.cpp +++ b/hgdriver/hgdev/hg_scanner_300.cpp @@ -86,7 +86,7 @@ hg_scanner_300::hg_scanner_300(const char* dev_name,int pid, usb_io* io) : , last_frame_total(0) { dsp_config.value = 0; - dsp_config.params_3288.enableLed = 1; //默认值 + dsp_config.params_3288.enableLed = 1; //默认? dsp_config.params_3288.isCorrect = 1; int ret = get_device_type(firmware_sup_device_7010); @@ -121,7 +121,7 @@ hg_scanner_300::hg_scanner_300(const char* dev_name,int pid, usb_io* io) : #ifndef MAPPING_FUNCTION_IN_BASE - init_setting_map(setting_map_, ARRAY_SIZE(setting_map_));//优先初始化 + init_setting_map(setting_map_, ARRAY_SIZE(setting_map_));//优先初始? #endif if (init_settings(pid_)) { @@ -145,7 +145,7 @@ void hg_scanner_300::thread_handle_usb_read(void) status = SCANNER_ERR_OK; StopWatch sw; sw.reset(); - SANE_Image_Statu statu = SANE_Image_Statu_OK; + SANE_Image_Statu statu = IMG_STATUS_OK; int img_num = 0; savestatus_.clear(); while (run_) @@ -158,11 +158,11 @@ void hg_scanner_300::thread_handle_usb_read(void) } //printf("usb.u32_Data = %d ret = %d\r\n",usb.u32_Data,ret); - //如果设备出现卡纸 或者双张等设备信息问题,需要等到设备进行发送stop才能停止。 所以始终以 "停止" 消息为结束信号 - //如果有图的情况下,并且卡纸或双张等,设备会先发送卡纸双张信息。所以接受到错误信息之后,仍需要把图像取出来。 + //如果设备出现卡纸 或者双张等设备信息问题,需要等到设备进行发送stop才能停止?所以始终以 "停止" 消息为结束信? + //如果有图的情况下,并且卡纸或双张等,设备会先发送卡纸双张信息。所以接受到错误信息之后,仍需要把图像取出来? if (ret == SCANNER_ERR_DEVICE_STOPPED) { - status_ = !savestatus_.empty() ? savestatus_[0] : SCANNER_ERR_OK;//以第一个消息为准 + status_ = !savestatus_.empty() ? savestatus_[0] : SCANNER_ERR_OK;//以第一个消息为? savestatus_.clear(); if (user_cancel_) { @@ -189,7 +189,7 @@ void hg_scanner_300::thread_handle_usb_read(void) ret != SCANNER_ERR_DEVICE_AUTO_FAIL_OVER && ret != SCANNER_ERR_DEVICE_AUTO_FAIL_INFO) { - statu = SANE_Image_Statu_OK; + statu = IMG_STATUS_OK; } else if (ret == SCANNER_ERR_DEVICE_AUTO_FAIL_OVER) { @@ -239,7 +239,7 @@ void hg_scanner_300::thread_handle_usb_read(void) VLOG_MINI_1(LOG_LEVEL_DEBUG_INFO, "%s\n", hg_scanner_err_description(status_)); break; } - if (sw.elapsed_ms() > 30000 && img_conf_.resolution_dst != 600)//防止状态信息一直取不上来导致卡死 + if (sw.elapsed_ms() > 30000 && img_conf_.resolution_dst != 600)//防止状态信息一直取不上来导致卡? { if ((img_conf_.papertype == TwSS::MaxSize || img_conf_.papertype == TwSS::USStatement) && pid_ == 0x0300 && firmware_sup_dpi_600) { @@ -247,7 +247,7 @@ void hg_scanner_300::thread_handle_usb_read(void) } else { - if (!savestatus_.empty())//以第一个消息为准 + if (!savestatus_.empty())//以第一个消息为? { status_ = savestatus_[0]; } @@ -259,7 +259,7 @@ void hg_scanner_300::thread_handle_usb_read(void) } if (sw.elapsed_s() > 130) { - if (!savestatus_.empty())//以第一个消息为准 + if (!savestatus_.empty())//以第一个消息为? { status_ = savestatus_[0]; } @@ -282,7 +282,7 @@ void hg_scanner_300::thread_handle_usb_read(void) } continue; } - int totalNum = usb.u32_Count & 0x3fffffff; // 2022-08-04: 兼容Android,默认图片大小均在1GB以内 + int totalNum = usb.u32_Count & 0x3fffffff; // 2022-08-04: 兼容Android,默认图片大小均?GB以内 VLOG_MINI_2(LOG_LEVEL_WARNING, "Get Scaner Image Size:%d bytes,Image Num[%d]\n", totalNum,img_num); img_num++; if (totalNum) @@ -393,7 +393,7 @@ int hg_scanner_300::start(void) { return ret; } - if (is_devs_sleep_)//设备在睡眠的状态当中获取固件是失败的,所以在这个地方进行标志位设置。(总感觉不保险) + if (is_devs_sleep_)//设备在睡眠的状态当中获取固件是失败的,所以在这个地方进行标志位设置。(总感觉不保险? { is_devs_sleep_ = false; set_kernelsnap_ver(); @@ -876,7 +876,7 @@ int hg_scanner_300::initdevice() if (status_ != SCANNER_ERR_DEVICE_SLEEPING) { set_kernelsnap_ver(); - is_devs_sleep_ = false; // 睡眠唤醒 客户提前点击设置这边固件版本号 还没有做判断的 + is_devs_sleep_ = false; // 睡眠唤醒 客户提前点击设置这边固件版本?还没有做判断? } return SCANNER_ERR_OK; } @@ -908,7 +908,7 @@ void hg_scanner_300::writedown_image_configuration(void) // ic.hardwarecaps.is_autopaper = dsp_config_.params_dsp.is_autopaper; ic.hardwarecaps.capturepixtype = 0; //暂无参数 获取图像类型 - ic.hardwarecaps.lowpowermode = LowPowerMode::Min_None; //暂无参数 设置休眠时间 两个参数3399未使用 + ic.hardwarecaps.lowpowermode = LowPowerMode::Min_None; //暂无参数 设置休眠时间 两个参数3399未使? image_configuration(ic); } void hg_scanner_300::printf_devconfig(setting_hardware::HGSCANCONF_3288 *d) @@ -965,7 +965,7 @@ int hg_scanner_300::get_correction_image(int inx , int dpi, int mode) cv::Mat white_mat; cv::Mat black_mat;; - for (size_t i = 0; i < 2; i++) //黑白一起保存下来 + for (size_t i = 0; i < 2; i++) //黑白一起保存下? { vector imagedata; @@ -1007,7 +1007,7 @@ int hg_scanner_300::get_correction_image(int inx , int dpi, int mode) if (mat.empty()) { VLOG_MINI_1(LOG_LEVEL_WARNING, "get_correction_image image is NULL:%d\n", image_info.info.params.status); - return SCANNER_ERR_NO_DATA; //只要有一张图没有 直接退了 + return SCANNER_ERR_NO_DATA; //只要有一张图没有 直接退? } if (i) @@ -1039,7 +1039,7 @@ std::string hg_scanner_300::get_firmware_version() { char buf[20] = { 0 }; int ret = SCANNER_ERR_OK, - len = 10; //协议定义长度为10 100 200 =8 + len = 10; //协议定义长度?0 100 200 =8 USBCB cmd = { setting3288dsp::GET_FW_VERSION,len,0,}; { @@ -1264,7 +1264,7 @@ int hg_scanner_300::get_device_log(string &log) str.resize(total); str2.resize(total); ret = io_->read_bulk(&str[index], &block); - //while (ret == SCANNER_ERR_TIMEOUT) ///设备代码是进行了第二次 write 条件是len > 0 如果出现问题这个地方需要打开 + //while (ret == SCANNER_ERR_TIMEOUT) ///设备代码是进行了第二?write 条件是len > 0 如果出现问题这个地方需要打开 //{ // block = 1024 * 1024; // if (total < block) diff --git a/hgdriver/hgdev/hg_scanner_302.cpp b/hgdriver/hgdev/hg_scanner_302.cpp index 46baf87..7d53ec4 100644 --- a/hgdriver/hgdev/hg_scanner_302.cpp +++ b/hgdriver/hgdev/hg_scanner_302.cpp @@ -94,7 +94,7 @@ namespace settings302 {200.0f, 1}, {240.0f, 1}, {300.0f, 0}, - {600.0f, 1} //涓存椂鐗堟湰鍙? 鍘熸潵鍙? + {600.0f, 1} //涓存椂鐗堟湰? 鍘熸潵鍙? }; bool is_equal(float l, float r) { @@ -453,7 +453,7 @@ int hg_scanner_302::writedown_device_configuration(bool type,setting_hardware::H if (!type) return ret; - setting_hardware::HGSCANCONF_3399 p = dev_conf_; //不得改变外部的值 + setting_hardware::HGSCANCONF_3399 p = dev_conf_; //不得改变外部的? if (!dev_conf) dev_conf = &p; @@ -861,7 +861,7 @@ int hg_scanner_302::on_skew_check_level_changed(int& check) return ret; } -int hg_scanner_302::on_get_feedmode(int &feedmode)//鑾峰彇鍒嗙焊寮哄害 +int hg_scanner_302::on_get_feedmode(int &feedmode)//鑾峰彇鍒嗙焊寮哄? { int ret = SCANNER_ERR_OK, val = 0; @@ -869,7 +869,7 @@ int hg_scanner_302::on_get_feedmode(int &feedmode)//鑾峰彇鍒嗙焊寮哄害 ret = read_register(setting3399::SR_GET_FEEDMODE,&feedmode); return ret; } -int hg_scanner_302::on_set_feedmode(int feedmode)//璁剧疆鍒嗙焊寮哄害 +int hg_scanner_302::on_set_feedmode(int feedmode)//璁剧疆鍒嗙焊寮哄? { int ret = SCANNER_ERR_OK, val = 0; @@ -978,7 +978,7 @@ void hg_scanner_302::thread_handle_usb_read(void) while ((count = get_image_count()) > 0) { - int s = SANE_Image_Statu_OK; + int s = IMG_STATUS_OK; if (count <= 2) { if (image_prc_param_.bits.page == PAGE_SINGLE) @@ -1280,7 +1280,7 @@ int hg_scanner_302::get_scan_is_sleep(SANE_Bool& type) { std::lock_guard lock(io_lock_); int ret = 0, val; - ret = read_register(setting3399::SR_GET_SLEEP_STAUTUS, &val); //0浼戠湢 1鍞ら啋鐘舵€? + ret = read_register(setting3399::SR_GET_SLEEP_STAUTUS, &val); //0浼戠? 1鍞ら啋鐘舵€? if (ret == SCANNER_ERR_OK) { type = val == 1 ? true : false; diff --git a/hgdriver/hgdev/image_process.cpp b/hgdriver/hgdev/image_process.cpp index 23231f3..5e855a7 100644 --- a/hgdriver/hgdev/image_process.cpp +++ b/hgdriver/hgdev/image_process.cpp @@ -217,7 +217,7 @@ namespace hg_imgproc // construction public: imgproc(int pid, bool isx86_Advan) : pid_(pid),papersize_(pid_) - , img_statu_(SANE_Image_Statu_OK) + , img_statu_(IMG_STATUS_OK) , my_path_(hg_log::pe_path()) ,ocrinit_(NULL),ocrgetdirectimage_(NULL) ,ocrexit_(NULL),HGBase_CreatImg(NULL) @@ -334,7 +334,7 @@ namespace hg_imgproc { return SCANNER_ERR_OUT_OF_RANGE; } - printf("HGBaselib_path锛?s HGImagePrclib_path:%s\r\n",HGBaselib_path.c_str(),HGImagePrclib_path.c_str()); + printf("HGBaselib_path?s HGImagePrclib_path:%s\r\n",HGBaselib_path.c_str(),HGImagePrclib_path.c_str()); Dynamicopen_HGImageprc_pHandle_ = dlopen(HGImagePrclib_path.c_str(), RTLD_LAZY); Dynamicopen_HGBase_pHandle_ = dlopen(HGBaselib_path.c_str(), RTLD_LAZY); @@ -369,7 +369,7 @@ namespace hg_imgproc if (ret == -1) return SCANNER_ERR_INSUFFICIENT_MEMORY; - load_dll(Baselibbuffer, &Dynamicopen_HGBase_pHandle_); //鍏堝姞杞藉悗閲婃斁 + load_dll(Baselibbuffer, &Dynamicopen_HGBase_pHandle_); //鍏堝姞杞藉悗閲婃? load_dll(Prclibbuffer, &Dynamicopen_HGImageprc_pHandle_); //windows涓嬪彲鑳戒細鎵句笉鍒颁粬鎵€鍦ㄧ殑渚濊禆搴撳鑷寸洿鎺ユ墦寮€鍔ㄦ€佸簱鐨勬椂鍊欐壘涓嶅埌妯″潡 SAFE_DELETE(Prclibbuffer); @@ -500,7 +500,7 @@ namespace hg_imgproc static int img_idx = 0; cv::Mat ds(param_.height, param_.width, CV_8UC1, buf->data(), cv::Mat::AUTO_STEP); //cv::imwrite("C:\\image\\imdecode"+std::to_string(img_idx++) + ".jpg", ds); - cv::Mat m_dst(ds(cv::Rect(0, 2, ds.cols, ds.rows - 2))); //删除前几行 一定按照实际测试来,因为最上面会有白边影响校正裁切等 + cv::Mat m_dst(ds(cv::Rect(0, 2, ds.cols, ds.rows - 2))); //删除前几?一定按照实际测试来,因为最上面会有白边影响校正裁切? cv::Mat d; if (param_.channels == 3) @@ -549,7 +549,7 @@ namespace hg_imgproc //} //cv::imwrite("C:\\image\\imdecode" + std::to_string(img_idx++) + ".jpg", mat); - //if (param_.dpi < 299)/////7010不支持 200dpi 所以需要手动拉伸宽度 + //if (param_.dpi < 299)/////7010不支?200dpi 所以需要手动拉伸宽? //{ // float xy = param_.dpi / 300.0; // cv::resize(mat, mat, cv::Size(), xy, 1); @@ -1437,13 +1437,13 @@ namespace hg_imgproc /// - /// 8浣嶅浘杞?浣嶅浘 + /// 8浣嶅浘杞?浣嶅? /// - /// 8bit鍥?/param> - /// 闃堝€硷紝寤鸿榛樿127 - /// true涓哄弽鑹诧紝鍗抽粦0鐧?锛涘弽涔嬩害鐒?/param> - /// true涓哄洓瀛楄妭瀵归綈 - /// 1浣嶅浘 + /// 8bit?/param> + /// 闃堝€硷紝寤鸿榛樿?27 + /// true涓哄弽鑹诧紝鍗抽??锛涘弽涔嬩害?/param> + /// true涓哄洓瀛楄妭瀵归?/param> + /// 1浣嶅?/returns> /// static cv::Mat convert_8bit_2_1bit(const cv::Mat& image, uchar threshold, bool reverse, bool align) { @@ -1661,7 +1661,7 @@ namespace hg_imgproc if (imax < cv::abs(a[i][j])) { imax = cv::abs(a[i][j]); - max = a[i][j]; //得到各行中所在列最大元素 + max = a[i][j]; //得到各行中所在列最大元? m = i; } } @@ -1709,7 +1709,7 @@ namespace hg_imgproc - //设置一面的offset值 + //设置一面的offset? void setOffset(int* config, int step) { for (int i = 0; i < 6; i++) diff --git a/hgdriver/wrapper/huagaoxxx_warraper_ex.cpp b/hgdriver/wrapper/huagaoxxx_warraper_ex.cpp index b52bbb0..68dd351 100644 --- a/hgdriver/wrapper/huagaoxxx_warraper_ex.cpp +++ b/hgdriver/wrapper/huagaoxxx_warraper_ex.cpp @@ -415,10 +415,10 @@ extern "C" const char* hg_scanner_image_statu_name(int img_statu) { - RETURN_IF(img_statu, SANE_Image_Statu_OK); - RETURN_IF(img_statu, SANE_Image_Statu_Blank); - RETURN_IF(img_statu, SANE_Image_Statu_Double); - RETURN_IF(img_statu, SANE_Image_Statu_Jammed); + RETURN_IF(img_statu, IMG_STATUS_OK); + RETURN_IF(img_statu, IMG_STATUS_BLANK); + RETURN_IF(img_statu, IMG_STATUS_DOUBLE); + RETURN_IF(img_statu, IMG_STATUS_JAM); // NOTE: multi-thread unsafe here static char g_unk_statu[80] = { 0 }; From a47d895109b1709c0dd0d835e56ef5fcb0d51c7f Mon Sep 17 00:00:00 2001 From: gb <741021719@qq.com> Date: Sun, 8 Oct 2023 14:38:05 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E9=87=8A=E6=94=BE=E5=8A=A0=E8=A7=A3?= =?UTF-8?q?=E5=AF=86=E5=AF=B9=E8=B1=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_scanner_239.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hgdriver/hgdev/hg_scanner_239.cpp b/hgdriver/hgdev/hg_scanner_239.cpp index b203baa..8984ba5 100644 --- a/hgdriver/hgdev/hg_scanner_239.cpp +++ b/hgdriver/hgdev/hg_scanner_239.cpp @@ -2015,10 +2015,10 @@ int hg_scanner_239::set_scan_lock_check_val(string check_str) SAFE_DELETE(source_plain); //SAFE_DELETE(ecb_filter); - //SAFE_DELETE(strcip); - //SAFE_DELETE(source_cipher) + //SAFE_DELETE(str_cip); + SAFE_DELETE(source_cipher); //SAFE_DELETE(hex_encode); - SAFE_DELETE(str_encode); + //SAFE_DELETE(str_encode); return ret; #endif } From f29ab1d59969463a7084446a404585a0a09b364d Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Sun, 8 Oct 2023 15:20:36 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=9B=BE=E5=83=8F?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E7=9B=B8=E5=85=B3=E5=A4=B4=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_ipc.cpp | 2 +- hgdriver/hgdev/hg_scanner_200.h | 4 ++-- hgdriver/hgdev/hg_scanner_302.h | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/hgdriver/hgdev/hg_ipc.cpp b/hgdriver/hgdev/hg_ipc.cpp index fac9eba..d65e04b 100644 --- a/hgdriver/hgdev/hg_ipc.cpp +++ b/hgdriver/hgdev/hg_ipc.cpp @@ -639,7 +639,7 @@ tiny_buffer::tiny_buffer(unsigned int size , const char* name_leading , const char* ext , unsigned int uniq_id) - : size_(size), buf_(nullptr), img_statu_(SANE_Image_Statu_OK) + : size_(size), buf_(nullptr), img_statu_(IMG_STATUS_OK) { init(tmp_path, name_leading, ext, uniq_id); } diff --git a/hgdriver/hgdev/hg_scanner_200.h b/hgdriver/hgdev/hg_scanner_200.h index b115ea4..7359d5f 100644 --- a/hgdriver/hgdev/hg_scanner_200.h +++ b/hgdriver/hgdev/hg_scanner_200.h @@ -1,4 +1,4 @@ -#pragma once +#pragma once // hg_scanner is the base class of kinds of scanners // @@ -58,7 +58,7 @@ private: int readusb(USBCB &usb); int pop_image(); int get_scanner_status(USBCB &usb); - int get_img_data(unsigned int bytes, SANE_Image_Statu statu = SANE_Image_Statu_OK); + int get_img_data(unsigned int bytes, SANE_Image_Statu statu = IMG_STATUS_OK); int writedown_device_configuration(bool type =false,setting_hardware::HGSCANCONF_DSP *d = NULL); void writedown_image_configuration(void); void printf_devconfig(setting_hardware::HGSCANCONF_DSP *d = NULL); diff --git a/hgdriver/hgdev/hg_scanner_302.h b/hgdriver/hgdev/hg_scanner_302.h index 20879a3..53c0514 100644 --- a/hgdriver/hgdev/hg_scanner_302.h +++ b/hgdriver/hgdev/hg_scanner_302.h @@ -1,4 +1,4 @@ -#pragma once +#pragma once // hg_scanner is the base class of kinds of scanners // @@ -51,7 +51,7 @@ class hg_scanner_302 : public hg_scanner int writedown_image_configuration(void); int pop_first_image(void); - int read_one_image_from_usb(SANE_Image_Statu statu = SANE_Image_Statu_OK); + int read_one_image_from_usb(SANE_Image_Statu statu = IMG_STATUS_OK); virtual int discard_all_images(); virtual int get_roller_life(void) override;