summaryrefslogtreecommitdiff
path: root/backend/genesys/command_set.h
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff-webhosting.net>2020-08-24 18:45:55 +0200
committerJörg Frings-Fürst <debian@jff-webhosting.net>2020-08-24 18:45:55 +0200
commita77bc1fcbdf83cfdac9570c0a0ac886b5534c90f (patch)
treed839746371ecb8ed64ac81d2e37c11fcd25a00ac /backend/genesys/command_set.h
parent787fb1d54ec9ee5fb941ae897fb201feb9cb2fd1 (diff)
parent2b3e02411ecc09e7d41741b5587655c9b2f955b7 (diff)
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'backend/genesys/command_set.h')
-rw-r--r--backend/genesys/command_set.h36
1 files changed, 14 insertions, 22 deletions
diff --git a/backend/genesys/command_set.h b/backend/genesys/command_set.h
index ab3a4b6..056cba8 100644
--- a/backend/genesys/command_set.h
+++ b/backend/genesys/command_set.h
@@ -67,14 +67,10 @@ public:
virtual void init(Genesys_Device* dev) const = 0;
virtual void init_regs_for_warmup(Genesys_Device* dev, const Genesys_Sensor& sensor,
- Genesys_Register_Set* regs, int* channels,
- int* total_size) const = 0;
+ Genesys_Register_Set* regs) const = 0;
- virtual void init_regs_for_coarse_calibration(Genesys_Device* dev, const Genesys_Sensor& sensor,
- Genesys_Register_Set& regs) const = 0;
virtual void init_regs_for_shading(Genesys_Device* dev, const Genesys_Sensor& sensor,
Genesys_Register_Set& regs) const = 0;
- virtual void init_regs_for_scan(Genesys_Device* dev, const Genesys_Sensor& sensor) const = 0;
/** Set up registers for a scan. Similar to init_regs_for_scan except that the session is
already computed from the session
@@ -98,7 +94,6 @@ public:
*/
virtual void send_gamma_table(Genesys_Device* dev, const Genesys_Sensor& sensor) const = 0;
- virtual void search_start_position(Genesys_Device* dev) const = 0;
virtual void offset_calibration(Genesys_Device* dev, const Genesys_Sensor& sensor,
Genesys_Register_Set& regs) const = 0;
virtual void coarse_gain_calibration(Genesys_Device* dev, const Genesys_Sensor& sensor,
@@ -112,15 +107,10 @@ public:
// Updates hardware sensor information in Genesys_Scanner.val[].
virtual void update_hardware_sensors(struct Genesys_Scanner* s) const = 0;
- /** Whether the scanner needs to call update_home_sensor_gpio before reading the status of the
- home sensor. On some chipsets this is unreliable until update_home_sensor_gpio() is called.
+ /** Needed on some chipsets before reading the status of the home sensor as the sensor may be
+ controlled by additional GPIO registers.
*/
- virtual bool needs_update_home_sensor_gpio() const { return false; }
-
- /** Needed on some chipsets before reading the status of the home sensor to make this operation
- reliable.
- */
- virtual void update_home_sensor_gpio(Genesys_Device& dev) const { (void) dev; }
+ virtual void update_home_sensor_gpio(Genesys_Device& dev) const = 0;
// functions for sheetfed scanners
@@ -134,14 +124,6 @@ public:
/// eject document from scanner
virtual void eject_document(Genesys_Device* dev) const = 0;
- /**
- * search for an black or white area in forward or reverse
- * direction */
- virtual void search_strip(Genesys_Device* dev, const Genesys_Sensor& sensor,
- bool forward, bool black) const = 0;
-
- /// move scanning head to transparency adapter
- virtual void move_to_ta(Genesys_Device* dev) const = 0;
/// write shading data calibration to ASIC
virtual void send_shading_data(Genesys_Device* dev, const Genesys_Sensor& sensor,
@@ -159,6 +141,16 @@ public:
/// cold boot init function
virtual void asic_boot(Genesys_Device* dev, bool cold) const = 0;
+
+ /// checks if specific scan head is at home position
+ virtual bool is_head_home(Genesys_Device& dev, ScanHeadId scan_head) const = 0;
+
+ /// enables or disables XPA slider motor
+ virtual void set_xpa_lamp_power(Genesys_Device& dev, bool set) const = 0;
+
+ /// enables or disables XPA slider motor
+ virtual void set_motor_mode(Genesys_Device& dev, Genesys_Register_Set& regs,
+ MotorMode mode) const = 0;
};
} // namespace genesys