kopia lustrzana https://gitlab.com/sane-project/backends
genesys: Pass whole motor struct to create_slope_table()
rodzic
fe3677b68f
commit
b1b61b043b
|
@ -597,9 +597,8 @@ static void gl124_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
reg->set16(REG_SCANFED, 4);
|
reg->set16(REG_SCANFED, 4);
|
||||||
|
|
||||||
/* scan and backtracking slope table */
|
/* scan and backtracking slope table */
|
||||||
auto scan_table = sanei_genesys_slope_table(dev->model->asic_type, yres, scan_exposure_time,
|
auto scan_table = create_slope_table(dev->model->asic_type, dev->motor, yres,
|
||||||
dev->motor.base_ydpi, 1,
|
scan_exposure_time, 1, motor_profile);
|
||||||
motor_profile);
|
|
||||||
gl124_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
gl124_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
gl124_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
gl124_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
|
|
||||||
|
@ -614,9 +613,8 @@ static void gl124_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
fast_dpi*=3;
|
fast_dpi*=3;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
auto fast_table = sanei_genesys_slope_table(dev->model->asic_type, fast_dpi,
|
auto fast_table = create_slope_table(dev->model->asic_type, dev->motor, fast_dpi,
|
||||||
scan_exposure_time, dev->motor.base_ydpi,
|
scan_exposure_time, 1, motor_profile);
|
||||||
1, motor_profile);
|
|
||||||
gl124_send_slope_table(dev, STOP_TABLE, fast_table.table, fast_table.steps_count);
|
gl124_send_slope_table(dev, STOP_TABLE, fast_table.table, fast_table.steps_count);
|
||||||
gl124_send_slope_table(dev, FAST_TABLE, fast_table.table, fast_table.steps_count);
|
gl124_send_slope_table(dev, FAST_TABLE, fast_table.table, fast_table.steps_count);
|
||||||
|
|
||||||
|
|
|
@ -324,9 +324,8 @@ static void gl842_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
reg->set8(REG_0x02, reg02);
|
reg->set8(REG_0x02, reg02);
|
||||||
|
|
||||||
// scan and backtracking slope table
|
// scan and backtracking slope table
|
||||||
auto scan_table = sanei_genesys_slope_table(dev->model->asic_type, scan_yres, exposure,
|
auto scan_table = create_slope_table(dev->model->asic_type, dev->motor, scan_yres, exposure,
|
||||||
dev->motor.base_ydpi, step_multiplier,
|
step_multiplier, motor_profile);
|
||||||
motor_profile);
|
|
||||||
|
|
||||||
gl842_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
gl842_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
gl842_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
gl842_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
|
|
|
@ -775,9 +775,8 @@ static void gl843_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
reg->set8(REG_0x02, reg02);
|
reg->set8(REG_0x02, reg02);
|
||||||
|
|
||||||
// scan and backtracking slope table
|
// scan and backtracking slope table
|
||||||
auto scan_table = sanei_genesys_slope_table(dev->model->asic_type, scan_yres, exposure,
|
auto scan_table = create_slope_table(dev->model->asic_type, dev->motor, scan_yres, exposure,
|
||||||
dev->motor.base_ydpi, step_multiplier,
|
step_multiplier, motor_profile);
|
||||||
motor_profile);
|
|
||||||
|
|
||||||
gl843_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
gl843_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
gl843_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
gl843_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
|
|
|
@ -447,9 +447,8 @@ static void gl846_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
reg->set8(REG_0x02, reg02);
|
reg->set8(REG_0x02, reg02);
|
||||||
|
|
||||||
// scan and backtracking slope table
|
// scan and backtracking slope table
|
||||||
auto scan_table = sanei_genesys_slope_table(dev->model->asic_type, scan_yres,
|
auto scan_table = create_slope_table(dev->model->asic_type, dev->motor, scan_yres,
|
||||||
scan_exposure_time, dev->motor.base_ydpi,
|
scan_exposure_time, step_multiplier, motor_profile);
|
||||||
step_multiplier, motor_profile);
|
|
||||||
|
|
||||||
gl846_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
gl846_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
gl846_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
gl846_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
|
|
|
@ -384,9 +384,8 @@ static void gl847_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
reg->set8(REG_0x02, reg02);
|
reg->set8(REG_0x02, reg02);
|
||||||
|
|
||||||
// scan and backtracking slope table
|
// scan and backtracking slope table
|
||||||
auto scan_table = sanei_genesys_slope_table(dev->model->asic_type, scan_yres,
|
auto scan_table = create_slope_table(dev->model->asic_type, dev->motor, scan_yres,
|
||||||
scan_exposure_time, dev->motor.base_ydpi,
|
scan_exposure_time, step_multiplier, motor_profile);
|
||||||
step_multiplier, motor_profile);
|
|
||||||
gl847_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
gl847_send_slope_table(dev, SCAN_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
gl847_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
gl847_send_slope_table(dev, BACKTRACK_TABLE, scan_table.table, scan_table.steps_count);
|
||||||
|
|
||||||
|
@ -402,9 +401,8 @@ static void gl847_init_motor_regs_scan(Genesys_Device* dev,
|
||||||
MotorProfile fast_motor_profile = motor_profile;
|
MotorProfile fast_motor_profile = motor_profile;
|
||||||
fast_motor_profile.step_type = fast_step_type;
|
fast_motor_profile.step_type = fast_step_type;
|
||||||
|
|
||||||
auto fast_table = sanei_genesys_slope_table(dev->model->asic_type, fast_dpi,
|
auto fast_table = create_slope_table(dev->model->asic_type, dev->motor, fast_dpi,
|
||||||
scan_exposure_time, dev->motor.base_ydpi,
|
scan_exposure_time, step_multiplier, fast_motor_profile);
|
||||||
step_multiplier, fast_motor_profile);
|
|
||||||
|
|
||||||
gl847_send_slope_table(dev, STOP_TABLE, fast_table.table, fast_table.steps_count);
|
gl847_send_slope_table(dev, STOP_TABLE, fast_table.table, fast_table.steps_count);
|
||||||
gl847_send_slope_table(dev, FAST_TABLE, fast_table.table, fast_table.steps_count);
|
gl847_send_slope_table(dev, FAST_TABLE, fast_table.table, fast_table.steps_count);
|
||||||
|
|
|
@ -1704,11 +1704,11 @@ const MotorProfile& get_motor_profile(const std::vector<MotorProfile>& profiles,
|
||||||
return *profile;
|
return *profile;
|
||||||
}
|
}
|
||||||
|
|
||||||
MotorSlopeTable sanei_genesys_slope_table(AsicType asic_type, int dpi, int exposure, int base_dpi,
|
MotorSlopeTable create_slope_table(AsicType asic_type, const Genesys_Motor& motor, unsigned ydpi,
|
||||||
unsigned step_multiplier,
|
unsigned exposure, unsigned step_multiplier,
|
||||||
const MotorProfile& motor_profile)
|
const MotorProfile& motor_profile)
|
||||||
{
|
{
|
||||||
unsigned target_speed_w = ((exposure * dpi) / base_dpi);
|
unsigned target_speed_w = ((exposure * ydpi) / motor.base_ydpi);
|
||||||
|
|
||||||
auto table = create_slope_table_for_speed(motor_profile.slope, target_speed_w,
|
auto table = create_slope_table_for_speed(motor_profile.slope, target_speed_w,
|
||||||
motor_profile.step_type,
|
motor_profile.step_type,
|
||||||
|
|
|
@ -383,8 +383,8 @@ const MotorProfile& get_motor_profile(const std::vector<MotorProfile>& profiles,
|
||||||
unsigned exposure,
|
unsigned exposure,
|
||||||
const ScanSession& session);
|
const ScanSession& session);
|
||||||
|
|
||||||
MotorSlopeTable sanei_genesys_slope_table(AsicType asic_type, int dpi, int exposure, int base_dpi,
|
MotorSlopeTable create_slope_table(AsicType asic_type, const Genesys_Motor& motor, unsigned ydpi,
|
||||||
unsigned step_multiplier,
|
unsigned exposure, unsigned step_multiplier,
|
||||||
const MotorProfile& motor_profile);
|
const MotorProfile& motor_profile);
|
||||||
|
|
||||||
MotorSlopeTable create_slope_table_fastest(AsicType asic_type, unsigned step_multiplier,
|
MotorSlopeTable create_slope_table_fastest(AsicType asic_type, unsigned step_multiplier,
|
||||||
|
|
Ładowanie…
Reference in New Issue