Povilas Kanapickas
38b97f1402
genesys: Include full session description into the device struct
2019-07-27 05:12:31 +03:00
Povilas Kanapickas
f4401d501f
genesys: Make asic type an enum
2019-07-27 05:12:30 +03:00
Povilas Kanapickas
e34814aef8
genesys: Remove duplicate fields out of settings struct
2019-07-27 05:12:29 +03:00
Povilas Kanapickas
36714a7810
genesys: Remove uses of sanei_genesys_read_reg_from_set()
2019-07-21 18:41:49 +03:00
Povilas Kanapickas
9085260541
Merge branch 'genesys-remove-half-ccd' into 'master'
...
genesys: Improve code clarity by retiring half_ccd
See merge request sane-project/backends!114
2019-08-09 10:51:06 +00:00
Povilas Kanapickas
598aa99778
genesys: Improve code clarity by retiring half_ccd
2019-08-03 01:31:07 +03:00
Povilas Kanapickas
16c55bf330
genesys: Init cmd_set directly instead of going through a function
2019-08-02 22:39:05 +03:00
Povilas Kanapickas
a58b20d2c8
genesys: Move cmd_set from model to device struct
2019-08-02 22:39:04 +03:00
Povilas Kanapickas
f9a9d3f84a
genesys: Cache physical register state in the device on writes
2019-08-02 22:39:01 +03:00
Povilas Kanapickas
faab7b02e0
genesys: Cache physical register state in the device on bulk writes
2019-08-02 22:39:00 +03:00
Povilas Kanapickas
7836ea5778
genesys: Remove bulk_write_register from the cmd_set structures
2019-08-02 22:38:59 +03:00
Povilas Kanapickas
6014645664
genesys: Cache physical register state in the device on reads
2019-08-02 22:38:58 +03:00
Povilas Kanapickas
49b94dc09e
genesys: Split genesys_low.h into several files
2019-08-02 22:35:16 +03:00
Povilas Kanapickas
025ec317e3
genesys: Move logical and register dpi computation to sensor struct
2019-08-02 22:31:56 +03:00
Povilas Kanapickas
db2bb793d4
genesys: Remove obsolete comments
2019-07-27 10:12:30 +03:00
Povilas Kanapickas
1ad6aca501
genesys: Return errors as exceptions from genesys_load_lut()
2019-07-20 11:02:39 +03:00
Povilas Kanapickas
94abc7f964
genesys: Return errors as exceptions from *read_data_from_scanner()
2019-07-20 11:02:15 +03:00
Povilas Kanapickas
867d907bb9
genesys: Return errors as exceptions from *init()
2019-07-20 11:02:14 +03:00
Povilas Kanapickas
196e082454
genesys: Return errors as exceptions from *write_file()
2019-07-20 11:02:11 +03:00
Povilas Kanapickas
241a4ea913
genesys: Return errors as exceptions from *write_pnm_file()
2019-07-20 11:02:10 +03:00
Povilas Kanapickas
5d2d8e9509
genesys: Return errors as exceptions from *send_gamma_table()
2019-07-20 11:02:06 +03:00
Povilas Kanapickas
a0aa335d90
genesys: Return errors as exceptions from *set_powersaving()
2019-07-20 11:02:03 +03:00
Povilas Kanapickas
d75aa89c9f
genesys: Return errors as exceptions from *slow_back_home()
2019-07-20 11:02:01 +03:00
Povilas Kanapickas
86a151a4f2
genesys: Return errors as exceptions from *boot() and friends
2019-07-20 11:01:52 +03:00
Povilas Kanapickas
bca1ab1d99
genesys: Store available resolutions into proper array
2019-07-20 09:16:35 +03:00
Povilas Kanapickas
b29bb66a36
genesys: Add support for infrared scanning on 8400F
2019-07-20 21:17:30 +03:00
Povilas Kanapickas
ce713f95c0
genesys: Refactor XPA lamp setup function to be more extensible
2019-07-20 21:17:29 +03:00
Povilas Kanapickas
876b7bba4e
genesys: Return errors as exceptions from *set_fe()
2019-07-14 23:41:02 +03:00
Povilas Kanapickas
4303877059
genesys: Return errors as exceptions from *init_cmd_set()
2019-07-14 23:40:57 +03:00
Povilas Kanapickas
d29f6862c6
genesys: Return errors as exceptions from *wait_for_home()
2019-07-14 23:40:56 +03:00
Povilas Kanapickas
99b5f1e94e
genesys: Return errors as exceptions from *gamma_buffer()
2019-07-14 23:40:54 +03:00
Povilas Kanapickas
e78cfa750f
genesys: Return errors as exceptions from *fe_read_data()
2019-07-14 23:40:53 +03:00
Povilas Kanapickas
ad231613db
genesys: Return errors as exceptions from *read_feed_steps()
2019-07-14 23:40:52 +03:00
Povilas Kanapickas
612ff9487c
genesys: Return errors as exceptions from *fe_write_data()
2019-07-14 23:40:51 +03:00
Povilas Kanapickas
32a2eeaa5f
genesys: Return errors as exceptions from *write_ahb()
2019-07-14 23:40:50 +03:00
Povilas Kanapickas
693d42c025
genesys: Return errors as exceptions from *read_valid_words()
2019-07-14 23:40:49 +03:00
Povilas Kanapickas
478ddd5d01
genesys: Return errors as exceptions from *read_scancnt()
2019-07-14 23:40:48 +03:00
Povilas Kanapickas
5c0a382bc9
genesys: Return errors as exceptions from *test_buffer_empty()
2019-07-14 23:40:47 +03:00
Povilas Kanapickas
f153fb109e
genesys: Return errors as exceptions from *get_status()
2019-07-14 23:40:46 +03:00
Povilas Kanapickas
e388fc5058
genesys: Return errors as exceptions from *bulk_write_register()
2019-07-14 23:40:45 +03:00
Povilas Kanapickas
0dc3342be1
genesys: Return errors as exceptions from *bulk_write_data()
2019-07-14 23:40:44 +03:00
Povilas Kanapickas
1c5960f9aa
genesys: Replace explicit DBG messages with DBG_HELPER
2019-07-14 23:40:43 +03:00
Povilas Kanapickas
3a47a9ed4d
genesys: Return errors as exceptions from *set_buffer_address()
2019-07-14 23:40:42 +03:00
Povilas Kanapickas
17a619a927
genesys: Return errors as exceptions from *write_register()
2019-07-14 23:40:41 +03:00
Povilas Kanapickas
d1cffab8f4
genesys: Return errors as exceptions from *write_gl847_register()
2019-07-14 23:40:40 +03:00
Povilas Kanapickas
3d17645fad
genesys: Return errors as exceptions from *read_register()
2019-07-14 23:40:39 +03:00
Povilas Kanapickas
bfef12cc49
genesys: Return errors as exceptions from *read_gl847_register()
2019-07-14 23:40:38 +03:00
Povilas Kanapickas
9e15623411
genesys: Return errors as exceptions from *write_0x8c()
2019-07-14 23:40:37 +03:00
Povilas Kanapickas
1e5a7bd4d8
genesys: Return errors as exceptions from *write_hregister()
2019-07-14 23:40:36 +03:00
Povilas Kanapickas
f856a3dacf
genesys: Return errors as exceptions from *read_hregister()
2019-07-14 23:40:35 +03:00
Povilas Kanapickas
a79f1404f3
genesys: Return errors as exceptions from *bulk_read_data()
2019-07-14 23:40:34 +03:00
Povilas Kanapickas
ab2952d1df
genesys: Add support for regular scans on CanoScan 8400F
2019-07-20 03:11:23 +03:00
Povilas Kanapickas
144ed1f29b
genesys: Implement infrared channel support for 8600F
2019-07-13 04:14:44 +03:00
Povilas Kanapickas
0db759d996
genesys: Don't enable buggy behavior on newly supported scanners
2019-07-13 04:14:38 +03:00
Povilas Kanapickas
a6a09f5dc5
genesys: Don't reuse non-applicable macro just because its value matches
2019-07-06 21:02:24 +03:00
Povilas Kanapickas
f4d5fd4ad6
genesys: Add a way to dump Genesys_Register_Set to debug
2019-07-06 21:02:23 +03:00
Olaf Meeuwissen
1be824f2c5
Merge branch 'sanei-usb-testing-mode' into 'master'
...
sanei: Support capture and replay of USB data for testing
See merge request sane-project/backends!55
2019-08-08 14:01:30 +00:00
Povilas Kanapickas
640fa9dbba
genesys: Always initialize status variable
2019-07-06 02:30:08 +03:00
Povilas Kanapickas
0454f42c36
genesys: Report USB errors via exceptions to reduce code duplication
2019-07-06 02:30:08 +03:00
Povilas Kanapickas
22b7fb5105
genesys: Move more error functionality to genesys_error.{h,cc}
2019-07-06 02:10:05 +03:00
Povilas Kanapickas
bba75702b6
genesys: Add utility to print debug messages upon function exit
2019-06-30 14:05:26 +03:00
Povilas Kanapickas
f41440ef9f
genesys: Extract debug_dump for Genesys_Current_Setup
2019-06-30 14:05:22 +03:00
Povilas Kanapickas
89d06c9a3a
genesys: Fix error handling in the presence of exceptions
2019-06-30 14:05:18 +03:00
Povilas Kanapickas
1685e6e863
genesys: Return bool out of *_is_compatible_calibration()
2019-06-30 14:05:16 +03:00
Povilas Kanapickas
eaa4cb7766
genesys: Return void out of *_calculate_current_setup()
2019-06-30 14:05:15 +03:00
Povilas Kanapickas
f3df7b9db1
genesys: Don't sleep during tests
2019-06-16 21:12:41 +03:00
Povilas Kanapickas
4d4b3be12d
genesys: Cache logical lamp and XPA state in register set
2019-06-08 14:04:28 +03:00
Povilas Kanapickas
5b788022dc
genesys: Extract sanei_genesys_set_motor_power()
2019-06-08 14:04:25 +03:00
Povilas Kanapickas
57480021dd
genesys: Extract sanei_genesys_set_lamp_power()
2019-06-08 14:04:24 +03:00
Povilas Kanapickas
8d5ff56ee9
genesys: Use scan method out of setup params for cache comparison
2019-06-08 14:04:23 +03:00
Povilas Kanapickas
bf395270e8
genesys: Refactor color filter into an enum
2019-06-08 14:04:16 +03:00
Povilas Kanapickas
cd7186965b
genesys: Don't use floating point numbers in SetupParams unnecessarily
2019-06-08 14:04:14 +03:00
Povilas Kanapickas
ca070fb569
genesys: Extract function to dump SetupParams to debug
2019-06-08 14:04:13 +03:00
Povilas Kanapickas
efd7723a4f
genesys: Deduplicate dumping of Genesys_Current_Setup to logs
2019-06-08 14:03:59 +03:00
Povilas Kanapickas
f1e583aea8
genesys: Refactor scan method into an enum
2019-06-08 14:03:53 +03:00
Povilas Kanapickas
8520b810fd
genesys: Add support for mixed half/quarter-ccd mode on the same scanner
2019-06-02 11:47:54 +03:00
Povilas Kanapickas
723aa2b73c
genesys: Don't store current sensor in device as it depends on the scan
2019-06-02 11:47:51 +03:00
Povilas Kanapickas
f8e8243b78
genesys: Don't modify sensor with gamma data
2019-06-02 11:47:50 +03:00
Povilas Kanapickas
dafd2a150b
genesys: Extract gamma creation into a single function
2019-06-02 11:47:49 +03:00
Povilas Kanapickas
ea74f8e6ef
genesys: Pass gamma tables as vectors
2019-06-02 11:47:48 +03:00
Povilas Kanapickas
836a78bef5
genesys: Extract exposure to separate variable in sensor definition
2019-06-02 11:47:31 +03:00
Povilas Kanapickas
04c5b4afde
genesys: Improve type safety of Genesys_Register_Set
2019-06-02 11:47:26 +03:00
Povilas Kanapickas
916d4e0db9
genesys: Fix sanei_genesys_{read,set}_reg_from_set()
...
There can be registers in the register set with zero address. In
particular, the 0x0b register's address is set to zero on most
sub-backends to prevent writes to it. This leads to the functions in
question not do anything in most scenarios.
2019-06-01 05:24:58 +03:00
Povilas Kanapickas
c536f3cf70
genesys: Fix calibration size calculation for 8600F
...
The current approach of marking the scanner as
GENESYS_FLAG_FULL_HWDPI_MODE is counter-productive, because only the
register value is always full DPI, the actual resolution is different.
For now, let's just work around this by having a special case for the
scanner.
2019-05-18 14:56:12 +03:00
Povilas Kanapickas
33a60dcc7b
genesys: Implement support for 8600F
2019-05-18 14:56:02 +03:00
Povilas Kanapickas
50b27fe836
genesys: Use std::string for Genesys_Device::calib_file
2019-05-25 11:15:42 +03:00
Povilas Kanapickas
eb93267fa9
genesys: Use std::vector instead of custom vector implementation
2019-05-25 11:15:40 +03:00
Povilas Kanapickas
5a90b7bb8f
genesys: Convert Genesys_Buffer to C++ class
2019-05-25 11:15:36 +03:00
Povilas Kanapickas
15b373a5cc
genesys: Use std::vector for calibration cache average data
2019-05-25 11:15:33 +03:00
Povilas Kanapickas
64ca298d02
genesys: Store calibration class using std::list
2019-05-25 11:15:32 +03:00
Povilas Kanapickas
3d44c89f1e
genesys: Use std::vector for Genesys_Device::{dark,white}_average_data
2019-05-25 11:15:30 +03:00
Povilas Kanapickas
2dc4e5d1fc
genesys: Use std::vector for Genesys_Sensor::gamma_table
2019-05-25 11:15:29 +03:00
Povilas Kanapickas
555be1c3eb
genesys: Use Genesys_Device as C++ class
2019-05-25 11:15:28 +03:00
Povilas Kanapickas
e5eff5d76f
genesys: Add facility for auto releasing static data on backend exit
2019-05-25 11:15:26 +03:00
Povilas Kanapickas
9cea33b53c
genesys: Use std::vector instead of malloc for local allocations
2019-05-25 11:15:25 +03:00
Povilas Kanapickas
58ee13d057
genesys: Fix warning
2019-05-24 21:13:37 +03:00
Povilas Kanapickas
16a3945ce6
Merge branch 'genesys-sleep' into 'master'
...
genesys: Add wrapper for sleep that can be turned off when testing
See merge request sane-project/backends!70
2019-05-20 09:47:38 +00:00
Olaf Meeuwissen
f498e5fa66
genesys: Add missing pointer cast on malloc call
...
Fixes build on Fedora 29 and 30.
2019-05-20 18:32:48 +09:00
Olaf Meeuwissen
2bb5ed655a
Merge branch 'genesys-enable-cxx' into 'master'
...
Use C++ for the genesys backend
See merge request sane-project/backends!61
2019-05-20 09:10:53 +00:00
Povilas Kanapickas
ca051cc227
genesys: Compile library as C++ code
2019-05-11 00:03:26 +03:00