Start transferring zone data.
Copy Code
|
|
---|---|
AT_ERRCOUNT ACCUAPI IG_ISIS_drv_start_data( HISISDRV hZone ); |
Name | Type | Description |
---|---|---|
hZone | HISISDRV | The handle of the zone for which data is to be transferred. |
Error count.
Depends on the scanner driver.
The following example shows how the IG_ISIS_drv_run_zone function is implemented. The relationships of the functions would be the same in most any scanning application.
Copy Code
|
|
---|---|
INT32 PUBLIC_FUNC IG_ISIS_run_zone(HISISDRV hDriver, char FAR *buffer, INT16 size) { HISISDRV hStack, hPage, hZone; AT_ERRCOUNT nErrCount; if ((nErrCount = IG_ISIS_drv_start_stack(hDriver, &hStack)) == IGE_SUCCESS) { if ((nErrCount = IG_ISIS_drv_start_page(hStack, &hPage)) == IGE_SUCCESS) { if ((nErrCount = IG_ISIS_drv_start_zone(hPage, &hZone)) == IGE_SUCCESS) { if ((nErrCount = IG_ISIS_drv_forward(hZone, 0)) == IGE_SUCCESS) nErrCount = IG_ISIS_drv_start_data(hZone); if (nErrCount == IGE_SUCCESS) { do { nErrCount = IG_ISIS_drv_put_data(hZone,buffer,size,0); } while (nErrCount == IGE_SUCCESS); } nErrCount = IG_ISIS_drv_end_zone(hZone); } nErrCount = IG_ISIS_drv_end_page(hPage); } nErrCount = IG_ISIS_drv_end_stack(hStack); } return nErrCount; } |
The IG_ISIS_drv_start_data function tells a driver to start transferring zone data.
IG_ISIS_drv_start_data is one of several hierarchical data transfer functions that are called automatically by the IG_ISIS_drv_run_zone function. IG_ISIS_drv_start_data must be called before IG_ISIS_drv_put_data. The IG_ISIS_drv_start_data function sends current tag values to all drivers in the ISIS pipe at the very last minute before actually invoking the pipe, so that each driver is certain to have the most recent tag values.
The hierarchy of data transfer functions is:
Copy Code
|
|
---|---|
IG_ISIS_drv_start_stack IG_ISIS_drv_start_page IG_ISIS_drv_start_zone IG_ISIS_drv_forward IG_ISIS_drv_start_data IG_ISIS_drv_put_data IG_ISIS_drv_end_zone IG_ISIS_drv_end_page IG_ISIS_drv_end_stack |