解决计算畸变值失败的问题
This commit is contained in:
parent
6f8ff90ba8
commit
cf0adb0d45
|
@ -342,14 +342,28 @@ int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigne
|
|||
SANE_Device* sane_dev = (SANE_Device*)data;
|
||||
emit p->sane_dev_remove(sane_dev->name);
|
||||
}
|
||||
|
||||
if (code == SANE_EVENT_IMAGE_OK || code == SANE_EVENT_SCAN_FINISHED || code == SANE_EVENT_ERROR || code == SANE_EVENT_STATUS)
|
||||
else if (SANE_EVENT_IMAGE_OK == code)
|
||||
{
|
||||
if (p->m_loginType != Dialog_logIn::LogInType_Burn)
|
||||
{
|
||||
Form_mainInterface* mainInterface = p->FindInterface(hdev);
|
||||
if (nullptr != mainInterface)
|
||||
{
|
||||
if (nullptr != mainInterface->getScanner() && nullptr != mainInterface->getScanner()->cb_)
|
||||
mainInterface->getScanner()->cb_(hdev, code, data, len, mainInterface->getScanner());
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (code == SANE_EVENT_SCAN_FINISHED || code == SANE_EVENT_ERROR || code == SANE_EVENT_STATUS)
|
||||
{
|
||||
SaneParams *saneParams = new SaneParams;
|
||||
saneParams->hdev = hdev;
|
||||
saneParams->code = code;
|
||||
saneParams->data = data;
|
||||
saneParams->len = len;
|
||||
|
||||
char *content = new char[strlen((char*)data) + 1];
|
||||
memcpy(content, data, strlen((char*)data) + 1);
|
||||
saneParams->data = content;
|
||||
saneParams->len = *len;
|
||||
|
||||
emit p->sane_create_interface(saneParams);
|
||||
}
|
||||
|
@ -511,11 +525,12 @@ void MainWindow::on_sane_create_interface(SaneParams *saneParams)
|
|||
{
|
||||
if (nullptr != mainInterface->getScanner() && nullptr != mainInterface->getScanner()->cb_)
|
||||
{
|
||||
mainInterface->getScanner()->cb_(saneParams->hdev, saneParams->code, saneParams->data, saneParams->len, mainInterface->getScanner());
|
||||
mainInterface->getScanner()->cb_(saneParams->hdev, saneParams->code, saneParams->data, &saneParams->len, mainInterface->getScanner());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
delete[] (char*)saneParams->data;
|
||||
delete saneParams;
|
||||
saneParams = nullptr;
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ private:
|
|||
SANE_Handle hdev;
|
||||
int code;
|
||||
void *data;
|
||||
unsigned int *len;
|
||||
unsigned int len;
|
||||
};
|
||||
|
||||
signals:
|
||||
|
|
|
@ -388,9 +388,8 @@ public:
|
|||
wcscpy(buf, L"平场校正失败, 原因--->");
|
||||
}
|
||||
}
|
||||
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_GET_DISTORTION_VAL) == 0 || wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CONFIRM_DISTORTION_VAL) == 0)
|
||||
else if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_GET_DISTORTION_VAL) == 0 || wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_CONFIRM_DISTORTION_VAL) == 0)
|
||||
{
|
||||
|
||||
if (strcmp((char*)data, STATU_DESC_SCAN_STOPPED) != 0 || strcmp((char*)data, STATU_DESC_SCANNER_ERR_DEVICE_DISTORTION) == 0)
|
||||
{
|
||||
type = false;
|
||||
|
@ -405,8 +404,6 @@ public:
|
|||
//wcscpy(buf, L"畸变修正值获取完成:");
|
||||
break;
|
||||
}
|
||||
//break;
|
||||
//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_COLOR_QUALITY) == 0
|
||||
|| wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_IMAGE_GRAY_QUALITY) == 0)
|
||||
|
@ -526,7 +523,7 @@ public:
|
|||
{
|
||||
if (wcscmp(set_test_name_.c_str(), HGPDTTOOLDB_NAME_GET_DISTORTION_VAL) == 0)
|
||||
{
|
||||
//is_distortion_get_image = true;
|
||||
is_distortion_get_image = true;
|
||||
}
|
||||
h->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_HAVE_IMAGE, data, true);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue