]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
move current metadata to read info
authorBastian Dehn <hhaalo@arcor.de>
Sun, 11 Feb 2024 19:49:12 +0000 (20:49 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 11 Feb 2024 19:49:12 +0000 (20:49 +0100)
src/kds_s2000w_net.c
tests/kds_s2000w_net_tests.c

index 5aa1597220d96b003c502ab5fe1049fde68884a7..3323eff5802f4b4b052b652f9a204bb1e52c65cf 100644 (file)
@@ -24,15 +24,6 @@ readinfo* get_read_info()
        return &read_info;
 }
 
-[[deprecated("use reade_info instead")]]
-metadata current_metadata;
-
-[[deprecated("use reade_info instead")]]
-metadata* get_current_metadata()
-{
-       return &current_metadata;
-}
-
 int _sane_kds_s2000w_net_find_first_data_byte(const char* data)
 {
        const int header_spaces = 3;
@@ -223,22 +214,22 @@ SANE_Status _sane_kds_s2000w_net_get_parameters(SANE_Handle handle,
        printf("get parameters 2\n");
        for (int i = 0; i < 10; i++) {
                sleep(1);
-               current_metadata = kds_s2000w_handler_get_parameters();
-               printf("valid %i\n", current_metadata.valid);
-               if (current_metadata.valid)
+               read_info.current_metadata = kds_s2000w_handler_get_parameters();
+               printf("valid %i\n", read_info.current_metadata.valid);
+               if (read_info.current_metadata.valid)
                        break;
        }
 
        printf("get parameters 3\n");
-       if (!current_metadata.valid)
+       if (!read_info.current_metadata.valid)
                return SANE_STATUS_UNSUPPORTED;
 
-       params->format = current_metadata.format;
-       params->last_frame = current_metadata.is_last;
-       params->bytes_per_line = current_metadata.bytes_per_line;
-       params->pixels_per_line = current_metadata.pixels_per_line;
-       params->lines = current_metadata.lines;
-       params->depth = current_metadata.depth;
+       params->format = read_info.current_metadata.format;
+       params->last_frame = read_info.current_metadata.is_last;
+       params->bytes_per_line = read_info.current_metadata.bytes_per_line;
+       params->pixels_per_line = read_info.current_metadata.pixels_per_line;
+       params->lines = read_info.current_metadata.lines;
+       params->depth = read_info.current_metadata.depth;
        read_info.read_size = 0;
        read_info.readed_lines = 0;
        read_info.readed_bytes_per_line = 0;
@@ -271,27 +262,27 @@ SANE_Status _sane_kds_s2000w_net_read(SANE_Handle handle, SANE_Byte* data,
                return SANE_STATUS_CANCELLED;
        }
 
-       int skip_header_bytes = _sane_kds_s2000w_net_find_first_data_byte(current_metadata.image);
+       int skip_header_bytes = _sane_kds_s2000w_net_find_first_data_byte(read_info.current_metadata.image);
        if (read_info.read_size <= 0)
                read_info.read_size += skip_header_bytes;
 
-       if (read_info.readed_lines >= current_metadata.lines) {
+       if (read_info.readed_lines >= read_info.current_metadata.lines) {
                *length = 0;
                read_info.readed_lines = 0;
                return SANE_STATUS_EOF;
        }
 
        int maxlen = max_length;
-       if (current_metadata.bytes_per_line - read_info.readed_bytes_per_line < max_length)
-               maxlen = current_metadata.bytes_per_line - read_info.readed_bytes_per_line;
+       if (read_info.current_metadata.bytes_per_line - read_info.readed_bytes_per_line < max_length)
+               maxlen = read_info.current_metadata.bytes_per_line - read_info.readed_bytes_per_line;
 
        *length = maxlen;
-       memcpy(data, current_metadata.image + read_info.read_size, *length);
+       memcpy(data, read_info.current_metadata.image + read_info.read_size, *length);
 
        read_info.readed_bytes_per_line += *length;
        read_info.read_size += *length;
 
-       if (read_info.readed_bytes_per_line >= current_metadata.bytes_per_line) {
+       if (read_info.readed_bytes_per_line >= read_info.current_metadata.bytes_per_line) {
                read_info.readed_bytes_per_line = 0;
                read_info.readed_lines++;
        }
index 392880609481cb49c456ba56e35cac8cf4824a1d..28f355e419d44c4fdd999fa03a78b13120bffcb0 100644 (file)
@@ -48,16 +48,15 @@ START_TEST(sane_kds_s2000w_net_read_all_lines_test)
 {
        readinfo* read_info = get_read_info();
        read_info->cancel = 0;
-       metadata* current_metadata_ptr = get_current_metadata();
        read_info->read_size = 0;
        char* image = malloc(sizeof(char) * 53);
        for (int i = 0; i < 3; i++) {
                image[i] = 0x0a;
        }
        image[4] = 0xff;
-       current_metadata_ptr->image = image;
-       current_metadata_ptr->bytes_per_line = 10;
-       current_metadata_ptr->lines = 5;
+       read_info->current_metadata.image = image;
+       read_info->current_metadata.bytes_per_line = 10;
+       read_info->current_metadata.lines = 5;
 
        int* length = malloc(sizeof(int));
        *length = 0;
@@ -85,16 +84,15 @@ END_TEST
 START_TEST(sane_kds_s2000w_net_read_test)
 {
        readinfo* read_info = get_read_info();
-       metadata* current_metadata_ptr = get_current_metadata();
        read_info->read_size = 0;
-       current_metadata_ptr->lines = 1;
-       current_metadata_ptr->bytes_per_line = 65536;
+       read_info->current_metadata.lines = 1;
+       read_info->current_metadata.bytes_per_line = 65536;
        char* image = malloc(sizeof(char) * 65539);
        for (int i = 0; i < 3; i++) {
                image[i] = 0x0a;
        }
        image[4] = 0xff;
-       current_metadata_ptr->image = image;
+       read_info->current_metadata.image = image;
 
        SANE_Int maxlen = 65536;
        char* dataptr = malloc(sizeof(char) * maxlen);
@@ -120,15 +118,14 @@ START_TEST(sane_kds_s2000w_net_read_bytes_per_line_bigger_test)
 {
        readinfo* read_info = get_read_info();
        read_info->read_size = 0;
-       metadata* current_metadata_ptr = get_current_metadata();
-       current_metadata_ptr->lines = 1;
-       current_metadata_ptr->bytes_per_line = 95000;
+       read_info->current_metadata.lines = 1;
+       read_info->current_metadata.bytes_per_line = 95000;
        char* image = malloc(sizeof(char) * 95003);
        for (int i = 0; i < 3; i++) {
                image[i] = 0x0a;
        }
        image[4] = 0xff;
-       current_metadata_ptr->image = image;
+       read_info->current_metadata.image = image;
 
        SANE_Int maxlen = 65536;
        char* dataptr = malloc(sizeof(char) * maxlen);