Povilas Kanapickas
8ed2cd991b
genesys: Initialize frontend state from the outset
2019-09-13 11:36:52 +03:00
Povilas Kanapickas
0440123bdc
Merge branch 'genesys-gl843-segmented-sensors' into 'master'
...
genesys: Add support for segmented sensors on gl843
See merge request sane-project/backends!175
2019-09-27 21:21:09 +00:00
Povilas Kanapickas
4cd9dbb73d
Merge branch 'genesys-image-library' into 'master'
...
genesys: Implement a streaming image library
See merge request sane-project/backends!174
2019-09-27 21:06:44 +00:00
Povilas Kanapickas
c59f9a037b
Merge branch 'genesys-default-scan-method' into 'master'
...
genesys: Add a way to specify default scan method
See merge request sane-project/backends!173
2019-09-27 20:55:51 +00:00
Povilas Kanapickas
17dc1aee81
Merge branch 'genesys-desegmentation-refactor' into 'master'
...
genesys: Simplify desegmentation state (part 6)
See merge request sane-project/backends!172
2019-09-27 20:44:47 +00:00
Povilas Kanapickas
e0974ab74a
stv: Fix macro constant redefinition
2019-09-27 23:23:19 +03:00
Povilas Kanapickas
ad1067ad03
genesys: Add support for segmented sensors on gl843
2019-09-13 10:52:35 +03:00
Povilas Kanapickas
1c7ef4b55e
genesys: Implement image data source that mimics current reading from USB
2019-09-13 10:38:05 +03:00
Povilas Kanapickas
7d7a395277
genesys: Implement library for image manipulation
2019-09-13 10:38:04 +03:00
Povilas Kanapickas
2f3d9e9d76
genesys: Don't crash when default scan method is not supported
2019-09-12 23:48:16 +03:00
Povilas Kanapickas
4c18ef27a2
genesys: Raise exception when device structs are not found
2019-09-12 23:48:15 +03:00
Povilas Kanapickas
c2115543db
genesys: Implement a way to set default scan method used internally
2019-09-12 23:48:14 +03:00
Povilas Kanapickas
c0010fcd9f
genesys: Fix incorrect scan method in move function on gl646
2019-09-12 23:48:13 +03:00
Povilas Kanapickas
9b7ab93727
genesys: Add unit test for genesys_fill_segmented_buffer()
2019-09-12 22:39:22 +03:00
Povilas Kanapickas
502478a40d
genesys: Reindent genesys_fill_segmented_buffer()
2019-09-12 22:39:21 +03:00
Povilas Kanapickas
c2c65f29c9
genesys: Simplify genesys_fill_segmented_buffer()
2019-09-12 22:39:20 +03:00
Povilas Kanapickas
0267eeeeae
genesys: Remove the desegmentation state struct
2019-09-12 22:22:00 +03:00
Povilas Kanapickas
3d023060a3
genesys: Move desegmentation skip_bytes to session struct
2019-09-12 22:21:59 +03:00
Povilas Kanapickas
192dd886cd
genesys: Use common code path to compute ..._segment_pixel_group_count
2019-09-12 22:21:58 +03:00
Povilas Kanapickas
4870a9f975
genesys: Properly set conseq_pixel_dist_bytes on gl124
2019-09-12 22:21:57 +03:00
Povilas Kanapickas
95eb6a72dd
genesys: Use single code path to compute session output_line_bytes_raw
2019-09-12 22:21:56 +03:00
Povilas Kanapickas
1f4a5311d7
genesys: Rename DesegmentationState::raw_{channel => line}_bytes
2019-09-12 22:21:55 +03:00
Povilas Kanapickas
61d4779402
genesys: Remove erroneously named raw_line_bytes
...
The raw_channel_bytes is what we store the line information to. Turns
out raw_line_bytes is unnecessary and only ever used by error.
2019-09-12 22:21:54 +03:00
Povilas Kanapickas
4df8872ab3
genesys: Simplify raw_channel_bytes computation more
...
On the chipsets in question, session.hwdpi_divisor == sensor.optical_res
/ sensor.get_register_hwdpi(...), so the divisor cancels out with the
rest of the expression.
2019-09-12 22:21:53 +03:00
Povilas Kanapickas
95a3836f1a
genesys: Simplify raw_channel_bytes calculation
2019-09-12 22:21:52 +03:00
Povilas Kanapickas
98320f5b81
genesys: Don't overflow in multiply_by_depth_ceil
2019-09-12 22:21:51 +03:00
Povilas Kanapickas
eb0882ecc4
genesys: Use common code path to compute session optical_pixels_raw
2019-09-12 22:11:20 +03:00
Povilas Kanapickas
3a323a751a
genesys: Use common code path to compute session conseq_pixel_dist_bytes
2019-09-12 22:11:19 +03:00
Povilas Kanapickas
693ff3e77a
genesys: Remove accidental use of C++14 features
2019-09-27 03:10:53 +03:00
Povilas Kanapickas
b856c2cb6f
genesys: Remove used_pixels to simplify segment setup
2019-09-12 21:24:32 +03:00
Povilas Kanapickas
0a10bcef59
genesys: Refactor the segment setup code to expose chip similarities
2019-09-12 21:24:31 +03:00
Povilas Kanapickas
41b5e5f5ff
genesys: Use common code path to compute session segment_count
2019-09-12 21:24:30 +03:00
Povilas Kanapickas
ae784d9927
genesys: Simplify segment count calculation
2019-09-12 21:24:29 +03:00
Povilas Kanapickas
a830fca943
genesys: Remove GL123 enum
2019-09-12 22:40:57 +03:00
Povilas Kanapickas
322a9a6810
genesys: Don't modify session in *_init_scan_regs()
2019-09-12 22:40:56 +03:00
Povilas Kanapickas
80d0129f44
genesys: Pass start pixel to *_init_optical_regs_scan() via session
2019-09-12 22:40:55 +03:00
Povilas Kanapickas
c0e465784e
genesys: Deduplicate different get_sensor_profile implementations
2019-09-12 22:40:54 +03:00
Povilas Kanapickas
52baae02dc
genesys: Use common code path to compute session hwdpi_divisor
2019-09-12 21:55:30 +03:00
Povilas Kanapickas
f480521a23
genesys: Pass sensor profile directly to *_setup_sensor() where possible
2019-09-12 21:55:29 +03:00
Povilas Kanapickas
676831dc7b
genesys: Move Genesys_Device::curr to DesegmentationState
2019-09-12 21:26:58 +03:00
Povilas Kanapickas
f92253adc8
genesys: Move Genesys_Device::segnb to DesegmentationState
2019-09-12 21:26:57 +03:00
Povilas Kanapickas
15996983ba
genesys: Rename SensorProfile::segment_{count => size}
2019-09-12 21:26:56 +03:00
Povilas Kanapickas
31820384de
genesys: Move Genesys_Device::skip to DesegmentationState
2019-09-12 21:26:55 +03:00
Povilas Kanapickas
9bd14f5350
genesys: Move Genesys_Device::len to DesegmentationState
2019-09-12 21:26:54 +03:00
Povilas Kanapickas
07d8db5423
genesys: Move Genesys_Device::dist to DesegmentationState
2019-09-12 21:26:53 +03:00
Povilas Kanapickas
dd70296827
genesys: Move desegmentation line width data to a separate struct
2019-09-12 21:26:52 +03:00
Povilas Kanapickas
827c3a049d
genesys: Rename ScanSession::output_{line_channel => channel}_bytes
2019-09-12 21:26:51 +03:00
Povilas Kanapickas
cbb7e95350
genesys: Use common code path to compute session buffer sizes
2019-09-12 20:28:46 +03:00
Povilas Kanapickas
a0cead1cd5
genesys: Pass asic type to sanei_genesys_get_bulk_max_size()
2019-09-12 20:28:45 +03:00
Povilas Kanapickas
88d6cdcc32
genesys: Rename read_bytes_left -> read_bytes_left_after_deseg
2019-09-12 20:06:38 +03:00