typedef struct {
int cancel;
- metadata current_metadata;
int read_size;
int scan_started;
int readed_bytes_per_line;
int readed_lines;
+ metadata current_metadata;
} readinfo;
readinfo read_info;
return &read_info;
}
-[[deprecated("use reade_info instead")]]
-int cancel = 0;
[[deprecated("use reade_info instead")]]
metadata current_metadata;
[[deprecated("use reade_info instead")]]
-int read_size = 0;
-[[deprecated("use reade_info instead")]]
int scan_started = 0;
[[deprecated("use reade_info instead")]]
int readed_bytes_per_line = 0;
return ¤t_metadata;
}
-[[deprecated("use reade_info instead")]]
-int* get_read_size()
-{
- return &read_size;
-}
-
-[[deprecated("use reade_info instead")]]
-int* get_cancel()
-{
- return &cancel;
-}
-
[[deprecated("use reade_info instead")]]
int* get_readed_lines()
{
params->pixels_per_line = current_metadata.pixels_per_line;
params->lines = current_metadata.lines;
params->depth = current_metadata.depth;
- read_size = 0;
+ read_info.read_size = 0;
readed_lines = 0;
readed_bytes_per_line = 0;
}
int skip_header_bytes = _sane_kds_s2000w_net_find_first_data_byte(current_metadata.image);
- if (read_size <= 0)
- read_size += skip_header_bytes;
+ if (read_info.read_size <= 0)
+ read_info.read_size += skip_header_bytes;
if (readed_lines >= current_metadata.lines) {
*length = 0;
maxlen = current_metadata.bytes_per_line - readed_bytes_per_line;
*length = maxlen;
- memcpy(data, current_metadata.image + read_size, *length);
+ memcpy(data, current_metadata.image + read_info.read_size, *length);
readed_bytes_per_line += *length;
- read_size += *length;
+ read_info.read_size += *length;
if (readed_bytes_per_line >= current_metadata.bytes_per_line) {
readed_bytes_per_line = 0;
readinfo* read_info = get_read_info();
read_info->cancel = 0;
metadata* current_metadata_ptr = get_current_metadata();
- int* read_size = get_read_size();
- *read_size = 0;
+ read_info->read_size = 0;
char* image = malloc(sizeof(char) * 53);
for (int i = 0; i < 3; i++) {
image[i] = 0x0a;
}
ck_assert_int_eq(status, SANE_STATUS_EOF);
- ck_assert_int_eq(*read_size, 53);
+ ck_assert_int_eq(read_info->read_size, 53);
free(dataptr);
dataptr = NULL;
START_TEST(sane_kds_s2000w_net_read_test)
{
- int* read_size_ptr = get_read_size();
- *read_size_ptr = 0;
+ readinfo* read_info = get_read_info();
metadata* current_metadata_ptr = get_current_metadata();
- int* read_size = get_read_size();
- *read_size = 0;
+ read_info->read_size = 0;
current_metadata_ptr->lines = 1;
current_metadata_ptr->bytes_per_line = 65536;
char* image = malloc(sizeof(char) * 65539);
ck_assert_int_eq(*length, 65536);
ck_assert_mem_eq(dataptr, image + 3, 65536);
- ck_assert_int_eq(*read_size_ptr, 65539);
+ ck_assert_int_eq(read_info->read_size, 65539);
free(dataptr);
dataptr = NULL;
START_TEST(sane_kds_s2000w_net_read_bytes_per_line_bigger_test)
{
- int* read_size_ptr = get_read_size();
- *read_size_ptr = 0;
+ readinfo* read_info = get_read_info();
+ read_info->read_size = 0;
metadata* current_metadata_ptr = get_current_metadata();
- int* read_size = get_read_size();
- *read_size = 0;
int* readed_bytes_per_line = get_readed_bytes_per_line();
readed_bytes_per_line = 0;
current_metadata_ptr->lines = 1;
_sane_kds_s2000w_net_read(NULL, (void*) dataptr, maxlen, length);
_sane_kds_s2000w_net_read(NULL, (void*) dataptr, maxlen, length);
- ck_assert_int_eq(*read_size_ptr, 95003);
+ ck_assert_int_eq(read_info->read_size, 95003);
free(dataptr);
dataptr = NULL;