kopia lustrzana https://gitlab.com/sane-project/backends
genesys: Add separate sensor definition for LiDE 60
rodzic
341fdbbee7
commit
69202b2b56
|
@ -273,6 +273,7 @@ enum class SensorId : unsigned
|
|||
CCD_UMAX,
|
||||
CCD_XP300,
|
||||
CIS_CANON_LIDE_35,
|
||||
CIS_CANON_LIDE_60,
|
||||
CIS_CANON_LIDE_80,
|
||||
CIS_CANON_LIDE_100,
|
||||
CIS_CANON_LIDE_110,
|
||||
|
|
|
@ -3487,6 +3487,7 @@ static void genesys_send_shading_coefficient(Genesys_Device* dev, const Genesys_
|
|||
target_code);
|
||||
break;
|
||||
case SensorId::CIS_CANON_LIDE_35:
|
||||
case SensorId::CIS_CANON_LIDE_60:
|
||||
compute_averaged_planar (dev, sensor,
|
||||
shading_data.data(),
|
||||
pixels_per_line,
|
||||
|
|
|
@ -1093,7 +1093,7 @@ void genesys_init_usb_device_tables()
|
|||
|
||||
model.is_cis = true;
|
||||
model.is_sheetfed = false;
|
||||
model.sensor_id = SensorId::CIS_CANON_LIDE_35;
|
||||
model.sensor_id = SensorId::CIS_CANON_LIDE_60;
|
||||
model.adc_id = AdcId::CANON_LIDE_35;
|
||||
model.gpio_id = GpioId::CANON_LIDE_35;
|
||||
model.motor_id = MotorId::CANON_LIDE_35;
|
||||
|
|
|
@ -560,6 +560,56 @@ void genesys_init_sensor_tables()
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
sensor = Genesys_Sensor();
|
||||
sensor.sensor_id = SensorId::CIS_CANON_LIDE_60; // gl841
|
||||
sensor.optical_res = 1200;
|
||||
sensor.ccd_size_divisor = 2;
|
||||
sensor.black_pixels = 87;
|
||||
sensor.dummy_pixel = 87;
|
||||
sensor.fau_gain_white_ref = 0;
|
||||
sensor.gain_white_ref = 0;
|
||||
sensor.exposure = { 0x0400, 0x0400, 0x0400 };
|
||||
sensor.custom_regs = {
|
||||
{ 0x16, 0x00 }, { 0x17, 0x01 }, { 0x18, 0x00 }, { 0x19, 0x50 },
|
||||
{ 0x1a, 0x00 }, { 0x1b, 0x00 }, { 0x1c, 0x00 }, { 0x1d, 0x02 },
|
||||
{ 0x52, 0x05 }, { 0x53, 0x07 }, { 0x54, 0x03 }, { 0x55, 0x05 },
|
||||
{ 0x56, 0x02 }, { 0x57, 0x05 }, { 0x58, 0x3a }, { 0x59, 0x03 }, { 0x5a, 0x40 },
|
||||
{ 0x70, 0x00 }, { 0x71, 0x00 }, { 0x72, 0x00 }, { 0x73, 0x00 },
|
||||
};
|
||||
sensor.gamma = { 1.0f, 1.0f, 1.0f };
|
||||
sensor.get_ccd_size_divisor_fun = default_get_ccd_size_divisor_for_dpi;
|
||||
{
|
||||
struct CustomSensorSettings
|
||||
{
|
||||
ValueFilterAny<unsigned> resolutions;
|
||||
unsigned register_dpihw;
|
||||
unsigned register_dpiset;
|
||||
unsigned shading_resolution;
|
||||
int output_pixel_offset;
|
||||
};
|
||||
|
||||
CustomSensorSettings custom_settings[] = {
|
||||
{ { 75 }, 1200, 150, 600, 11 },
|
||||
{ { 100 }, 1200, 200, 600, 14 },
|
||||
{ { 150 }, 1200, 300, 600, 22 },
|
||||
{ { 200 }, 1200, 400, 600, 29 },
|
||||
{ { 300 }, 1200, 600, 600, 44 },
|
||||
{ { 600 }, 1200, 1200, 600, 88 },
|
||||
{ { 1200 }, 1200, 1200, 1200, 88 },
|
||||
};
|
||||
|
||||
for (const CustomSensorSettings& setting : custom_settings) {
|
||||
sensor.resolutions = setting.resolutions;
|
||||
sensor.register_dpihw = setting.register_dpihw;
|
||||
sensor.register_dpiset = setting.register_dpiset;
|
||||
sensor.shading_resolution = setting.shading_resolution;
|
||||
sensor.output_pixel_offset = setting.output_pixel_offset;
|
||||
s_sensors->push_back(sensor);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sensor = Genesys_Sensor();
|
||||
sensor.sensor_id = SensorId::CIS_XP200; // gl646
|
||||
sensor.optical_res = 600;
|
||||
|
|
Ładowanie…
Reference in New Issue