Lines Matching defs:sensor
34 Genesys_Sensor sensor;
36 sensor = Genesys_Sensor();
37 sensor.sensor_id = SensorId::CCD_UMAX; // gl646
38 sensor.full_resolution = 1200;
39 sensor.black_pixels = 48;
40 sensor.dummy_pixel = 64;
41 sensor.fau_gain_white_ref = 210;
42 sensor.gain_white_ref = 230;
43 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
44 sensor.custom_regs = {
52 sensor.gamma = { 1.0f, 1.0f, 1.0f };
70 sensor.resolutions = setting.resolutions;
71 sensor.register_dpiset = setting.register_dpiset;
72 sensor.output_pixel_offset = setting.output_pixel_offset;
73 s_sensors->push_back(sensor);
78 sensor = Genesys_Sensor();
79 sensor.sensor_id = SensorId::CCD_ST12; // gl646
80 sensor.full_resolution = 600;
81 sensor.black_pixels = 48;
82 sensor.dummy_pixel = 85;
83 sensor.fau_gain_white_ref = 210;
84 sensor.gain_white_ref = 230;
85 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
86 sensor.custom_regs = {
94 sensor.gamma = { 1.0f, 1.0f, 1.0f };
110 sensor.resolutions = setting.resolutions;
111 sensor.register_dpiset = setting.resolutions.values()[0];
112 sensor.output_pixel_offset = setting.output_pixel_offset;
113 s_sensors->push_back(sensor);
118 sensor = Genesys_Sensor();
119 sensor.sensor_id = SensorId::CCD_ST24; // gl646
120 sensor.full_resolution = 1200;
121 sensor.black_pixels = 48;
122 sensor.dummy_pixel = 64;
123 sensor.fau_gain_white_ref = 210;
124 sensor.gain_white_ref = 230;
125 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
126 sensor.custom_regs = {
134 sensor.gamma = { 1.0f, 1.0f, 1.0f };
152 sensor.resolutions = setting.resolutions;
153 sensor.register_dpiset = setting.register_dpiset;
154 sensor.output_pixel_offset = setting.output_pixel_offset;
155 s_sensors->push_back(sensor);
160 sensor = Genesys_Sensor();
161 sensor.sensor_id = SensorId::CCD_5345; // gl646
162 sensor.full_resolution = 1200;
163 sensor.black_pixels = 48;
164 sensor.dummy_pixel = 16;
165 sensor.fau_gain_white_ref = 190;
166 sensor.gain_white_ref = 190;
167 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
168 sensor.gamma = { 2.38f, 2.35f, 2.34f };
268 sensor.resolutions = setting.resolutions;
269 sensor.optical_resolution = setting.optical_resolution;
270 sensor.register_dpiset = setting.register_dpiset;
271 sensor.exposure_lperiod = setting.exposure_lperiod;
272 sensor.pixel_count_ratio = setting.pixel_count_ratio;
273 sensor.output_pixel_offset = setting.output_pixel_offset;
274 sensor.stagger_y = setting.stagger_y;
275 sensor.custom_regs = setting.custom_regs;
276 s_sensors->push_back(sensor);
281 sensor = Genesys_Sensor();
282 sensor.sensor_id = SensorId::CCD_HP2400; // gl646
283 sensor.full_resolution = 1200;
284 sensor.black_pixels = 48;
285 sensor.dummy_pixel = 15;
286 sensor.fau_gain_white_ref = 210;
287 sensor.gain_white_ref = 200;
288 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
289 sensor.gamma = { 2.1f, 2.1f, 2.1f };
361 sensor.resolutions = setting.resolutions;
362 sensor.register_dpiset = setting.register_dpiset;
363 sensor.exposure_lperiod = setting.exposure_lperiod;
364 sensor.pixel_count_ratio = setting.pixel_count_ratio;
365 sensor.output_pixel_offset = setting.output_pixel_offset;
366 sensor.stagger_y = setting.stagger_y;
367 sensor.custom_regs = setting.custom_regs;
368 s_sensors->push_back(sensor);
373 sensor = Genesys_Sensor();
374 sensor.sensor_id = SensorId::CCD_HP2300; // gl646
375 sensor.full_resolution = 600;
376 sensor.black_pixels = 48;
377 sensor.dummy_pixel = 20;
378 sensor.fau_gain_white_ref = 180;
379 sensor.gain_white_ref = 180;
380 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
381 sensor.gamma = { 2.1f, 2.1f, 2.1f };
435 sensor.resolutions = setting.resolutions;
436 sensor.optical_resolution = setting.optical_resolution;
437 sensor.register_dpiset = setting.register_dpiset;
438 sensor.exposure_lperiod = setting.exposure_lperiod;
439 sensor.pixel_count_ratio = setting.pixel_count_ratio;
440 sensor.output_pixel_offset = setting.output_pixel_offset;
441 sensor.custom_regs = setting.custom_regs;
442 s_sensors->push_back(sensor);
447 sensor = Genesys_Sensor();
448 sensor.sensor_id = SensorId::CIS_CANON_LIDE_35; // gl841
449 sensor.full_resolution = 1200;
450 sensor.register_dpihw = 1200;
451 sensor.black_pixels = 87;
452 sensor.dummy_pixel = 87;
453 sensor.fau_gain_white_ref = 100;
454 sensor.gain_white_ref = 100;
455 sensor.exposure = { 0x0400, 0x0400, 0x0400 };
456 sensor.custom_regs = {
463 sensor.gamma = { 1.0f, 1.0f, 1.0f };
485 sensor.resolutions = setting.resolutions;
486 sensor.optical_resolution = setting.optical_resolution;
487 sensor.register_dpiset = setting.register_dpiset;
488 sensor.shading_resolution = setting.shading_resolution;
489 sensor.output_pixel_offset = setting.output_pixel_offset;
490 s_sensors->push_back(sensor);
495 sensor = Genesys_Sensor();
496 sensor.sensor_id = SensorId::CIS_CANON_LIDE_60; // gl841
497 sensor.full_resolution = 1200;
498 sensor.register_dpihw = 1200;
499 sensor.black_pixels = 87;
500 sensor.dummy_pixel = 87;
501 sensor.fau_gain_white_ref = 100;
502 sensor.gain_white_ref = 100;
503 sensor.exposure = { 0x0400, 0x0400, 0x0400 };
504 sensor.custom_regs = {
511 sensor.gamma = { 1.0f, 1.0f, 1.0f };
533 sensor.resolutions = setting.resolutions;
534 sensor.optical_resolution = setting.optical_resolution;
535 sensor.register_dpiset = setting.register_dpiset;
536 sensor.shading_resolution = setting.shading_resolution;
537 sensor.output_pixel_offset = setting.output_pixel_offset;
538 s_sensors->push_back(sensor);
543 sensor = Genesys_Sensor();
544 sensor.sensor_id = SensorId::CIS_CANON_LIDE_90; // gl842
545 sensor.full_resolution = 2400;
546 sensor.black_pixels = 20;
547 sensor.dummy_pixel = 253;
548 sensor.fau_gain_white_ref = 150;
549 sensor.gain_white_ref = 150;
550 sensor.use_host_side_calib = true;
551 sensor.custom_regs = {
561 sensor.gamma = { 1.0f, 1.0f, 1.0f };
590 sensor.resolutions = setting.resolutions;
591 sensor.optical_resolution = setting.optical_resolution;
592 sensor.register_dpihw = setting.register_dpihw;
593 sensor.register_dpiset = setting.register_dpiset;
594 sensor.shading_resolution = setting.shading_resolution;
595 sensor.shading_factor = setting.shading_factor;
596 sensor.output_pixel_offset = setting.output_pixel_offset;
597 sensor.exposure = setting.exposure;
598 sensor.exposure_lperiod = setting.exposure_lperiod;
599 sensor.segment_size = setting.segment_size;
600 sensor.segment_order = setting.segment_order;
601 s_sensors->push_back(sensor);
606 sensor = Genesys_Sensor();
607 sensor.sensor_id = SensorId::CIS_XP200; // gl646
608 sensor.full_resolution = 600;
609 sensor.black_pixels = 5;
610 sensor.dummy_pixel = 38;
611 sensor.fau_gain_white_ref = 200;
612 sensor.gain_white_ref = 200;
613 sensor.exposure = { 0x1450, 0x0c80, 0x0a28 };
614 sensor.custom_regs = {
622 sensor.gamma = { 2.1f, 2.1f, 2.1f };
648 sensor.resolutions = setting.resolutions;
649 sensor.channels = setting.channels;
650 sensor.register_dpiset = setting.resolutions.values()[0];
651 sensor.exposure_lperiod = setting.exposure_lperiod;
652 sensor.exposure = setting.exposure;
653 sensor.output_pixel_offset = setting.output_pixel_offset;
654 s_sensors->push_back(sensor);
659 sensor = Genesys_Sensor();
660 sensor.sensor_id = SensorId::CCD_HP3670; // gl646
661 sensor.full_resolution = 1200;
662 sensor.black_pixels = 48;
663 sensor.dummy_pixel = 16;
664 sensor.fau_gain_white_ref = 210;
665 sensor.gain_white_ref = 200;
666 sensor.exposure = { 0, 0, 0 };
667 sensor.gamma = { 1.0f, 1.0f, 1.0f };
748 sensor.resolutions = setting.resolutions;
749 sensor.register_dpiset = setting.register_dpiset;
750 sensor.exposure_lperiod = setting.exposure_lperiod;
751 sensor.pixel_count_ratio = setting.pixel_count_ratio;
752 sensor.output_pixel_offset = setting.output_pixel_offset;
753 sensor.stagger_y = setting.stagger_y;
754 sensor.custom_regs = setting.custom_regs;
755 s_sensors->push_back(sensor);
760 sensor = Genesys_Sensor();
761 sensor.sensor_id = SensorId::CCD_DP665; // gl841
762 sensor.full_resolution = 600;
763 sensor.register_dpihw = 600;
764 sensor.shading_resolution = 600;
765 sensor.black_pixels = 27;
766 sensor.dummy_pixel = 27;
767 sensor.fau_gain_white_ref = 210;
768 sensor.gain_white_ref = 200;
769 sensor.exposure = { 0x1100, 0x1100, 0x1100 };
770 sensor.custom_regs = {
777 sensor.gamma = { 1.0f, 1.0f, 1.0f };
795 sensor.resolutions = setting.resolutions;
796 sensor.register_dpiset = setting.register_dpiset;
797 sensor.output_pixel_offset = setting.output_pixel_offset;
798 s_sensors->push_back(sensor);
802 sensor = Genesys_Sensor();
803 sensor.sensor_id = SensorId::CCD_ROADWARRIOR; // gl841
804 sensor.full_resolution = 600;
805 sensor.register_dpihw = 600;
806 sensor.shading_resolution = 600;
807 sensor.black_pixels = 27;
808 sensor.dummy_pixel = 27;
809 sensor.fau_gain_white_ref = 210;
810 sensor.gain_white_ref = 200;
811 sensor.exposure = { 0x1100, 0x1100, 0x1100 };
812 sensor.custom_regs = {
819 sensor.gamma = { 1.0f, 1.0f, 1.0f };
837 sensor.resolutions = setting.resolutions;
838 sensor.register_dpiset = setting.register_dpiset;
839 sensor.output_pixel_offset = setting.output_pixel_offset;
840 s_sensors->push_back(sensor);
845 sensor = Genesys_Sensor();
846 sensor.sensor_id = SensorId::CCD_DSMOBILE600; // gl841
847 sensor.full_resolution = 600;
848 sensor.register_dpihw = 600;
849 sensor.shading_resolution = 600;
850 sensor.black_pixels = 28;
851 sensor.dummy_pixel = 28;
852 sensor.fau_gain_white_ref = 210;
853 sensor.gain_white_ref = 200;
854 sensor.exposure = { 0x1544, 0x1544, 0x1544 };
855 sensor.custom_regs = {
862 sensor.gamma = { 1.0f, 1.0f, 1.0f };
879 sensor.resolutions = setting.resolutions;
880 sensor.register_dpiset = setting.register_dpiset;
881 sensor.output_pixel_offset = setting.output_pixel_offset;
882 s_sensors->push_back(sensor);
887 sensor = Genesys_Sensor();
888 sensor.sensor_id = SensorId::CCD_XP300; // gl841
889 sensor.full_resolution = 600;
890 sensor.register_dpihw = 1200; // FIXME: could be incorrect, but previous code used this value
891 sensor.shading_resolution = 600;
892 sensor.black_pixels = 27;
893 sensor.dummy_pixel = 27;
894 sensor.fau_gain_white_ref = 210;
895 sensor.gain_white_ref = 200;
896 sensor.exposure = { 0x1100, 0x1100, 0x1100 };
897 sensor.custom_regs = {
904 sensor.gamma = { 1.0f, 1.0f, 1.0f };
921 sensor.resolutions = setting.resolutions;
922 sensor.register_dpiset = setting.register_dpiset;
923 sensor.output_pixel_offset = setting.output_pixel_offset;
924 s_sensors->push_back(sensor);
929 sensor = Genesys_Sensor();
930 sensor.sensor_id = SensorId::CCD_DOCKETPORT_487; // gl841
931 sensor.full_resolution = 600;
932 sensor.register_dpihw = 600;
933 sensor.shading_resolution = 600;
934 sensor.black_pixels = 27;
935 sensor.dummy_pixel = 27;
936 sensor.fau_gain_white_ref = 210;
937 sensor.gain_white_ref = 200;
938 sensor.exposure = { 0x1100, 0x1100, 0x1100 };
939 sensor.custom_regs = {
946 sensor.gamma = { 1.0f, 1.0f, 1.0f };
963 sensor.resolutions = setting.resolutions;
964 sensor.register_dpiset = setting.register_dpiset;
965 sensor.output_pixel_offset = setting.output_pixel_offset;
966 s_sensors->push_back(sensor);
971 sensor = Genesys_Sensor();
972 sensor.sensor_id = SensorId::CCD_DP685; // gl841
973 sensor.full_resolution = 600;
974 sensor.register_dpihw = 600;
975 sensor.shading_resolution = 600;
976 sensor.full_resolution = 600;
977 sensor.black_pixels = 27;
978 sensor.dummy_pixel = 27;
979 sensor.fau_gain_white_ref = 210;
980 sensor.gain_white_ref = 200;
981 sensor.exposure = { 0x1100, 0x1100, 0x1100 };
982 sensor.custom_regs = {
989 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1006 sensor.resolutions = setting.resolutions;
1007 sensor.register_dpiset = setting.register_dpiset;
1008 sensor.output_pixel_offset = setting.output_pixel_offset;
1009 s_sensors->push_back(sensor);
1014 sensor = Genesys_Sensor();
1015 sensor.sensor_id = SensorId::CIS_CANON_LIDE_200; // gl847
1016 sensor.full_resolution = 4800;
1017 sensor.black_pixels = 87*4;
1018 sensor.dummy_pixel = 16*4;
1019 sensor.fau_gain_white_ref = 210;
1020 sensor.gain_white_ref = 200;
1021 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
1022 sensor.gamma = { 2.2f, 2.2f, 2.2f };
1134 sensor.resolutions = setting.resolutions;
1135 sensor.register_dpihw = setting.register_dpihw;
1136 sensor.register_dpiset = setting.resolutions.values()[0];
1137 sensor.shading_resolution = setting.register_dpihw;
1138 sensor.exposure_lperiod = setting.exposure_lperiod;
1139 sensor.exposure = setting.exposure;
1140 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1141 sensor.shading_factor = setting.shading_factor;
1142 sensor.output_pixel_offset = setting.output_pixel_offset;
1143 sensor.segment_size = setting.segment_size;
1144 sensor.segment_order = setting.segment_order;
1145 sensor.custom_regs = setting.custom_regs;
1146 s_sensors->push_back(sensor);
1151 sensor = Genesys_Sensor();
1152 sensor.sensor_id = SensorId::CIS_CANON_LIDE_700F; // gl847
1153 sensor.full_resolution = 4800;
1154 sensor.black_pixels = 73*8; // black pixels 73 at 600 dpi
1155 sensor.dummy_pixel = 16*8;
1156 sensor.fau_gain_white_ref = 210;
1157 sensor.gain_white_ref = 200;
1158 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1277 sensor.resolutions = setting.resolutions;
1278 sensor.register_dpihw = setting.register_dpihw;
1279 sensor.register_dpiset = setting.resolutions.values()[0];
1280 sensor.shading_resolution = setting.register_dpihw;
1281 sensor.exposure_lperiod = setting.exposure_lperiod;
1282 sensor.exposure = setting.exposure;
1283 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1284 sensor.shading_factor = setting.shading_factor;
1285 sensor.output_pixel_offset = setting.output_pixel_offset;
1286 sensor.segment_size = setting.segment_size;
1287 sensor.segment_order = setting.segment_order;
1288 sensor.custom_regs = setting.custom_regs;
1289 s_sensors->push_back(sensor);
1294 sensor = Genesys_Sensor();
1295 sensor.sensor_id = SensorId::CIS_CANON_LIDE_100; // gl847
1296 sensor.full_resolution = 2400;
1297 sensor.black_pixels = 87*4;
1298 sensor.dummy_pixel = 16*4;
1299 sensor.fau_gain_white_ref = 210;
1300 sensor.gain_white_ref = 200;
1301 sensor.exposure = { 0x01c1, 0x0126, 0x00e5 };
1302 sensor.gamma = { 2.2f, 2.2f, 2.2f };
1386 sensor.resolutions = setting.resolutions;
1387 sensor.register_dpihw = setting.register_dpihw;
1388 sensor.register_dpiset = setting.resolutions.values()[0];
1389 sensor.shading_resolution = setting.register_dpihw;
1390 sensor.exposure_lperiod = setting.exposure_lperiod;
1391 sensor.exposure = setting.exposure;
1392 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1393 sensor.shading_factor = setting.shading_factor;
1394 sensor.output_pixel_offset = setting.output_pixel_offset;
1395 sensor.segment_size = setting.segment_size;
1396 sensor.segment_order = setting.segment_order;
1397 sensor.custom_regs = setting.custom_regs;
1398 s_sensors->push_back(sensor);
1402 sensor = Genesys_Sensor();
1403 sensor.sensor_id = SensorId::CCD_KVSS080; // gl843
1404 sensor.full_resolution = 600;
1405 sensor.register_dpihw = 600;
1406 sensor.shading_resolution = 600;
1407 sensor.black_pixels = 38;
1408 sensor.dummy_pixel = 38;
1409 sensor.fau_gain_white_ref = 160;
1410 sensor.gain_white_ref = 160;
1411 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
1412 sensor.exposure_lperiod = 8000;
1413 sensor.custom_regs = {
1441 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1461 sensor.resolutions = setting.resolutions;
1462 sensor.register_dpiset = setting.register_dpiset;
1463 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1464 sensor.output_pixel_offset = setting.output_pixel_offset;
1465 s_sensors->push_back(sensor);
1469 sensor = Genesys_Sensor();
1470 sensor.sensor_id = SensorId::CCD_G4050; // gl843
1471 sensor.full_resolution = 4800;
1472 sensor.black_pixels = 50*8;
1474 sensor.dummy_pixel = 58;
1475 sensor.fau_gain_white_ref = 160;
1476 sensor.gain_white_ref = 160;
1477 sensor.exposure = { 0x2c09, 0x22b8, 0x10f0 };
1478 sensor.custom_regs = {};
1479 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1591 auto base_custom_regs = sensor.custom_regs;
1594 sensor.resolutions = setting.resolutions;
1595 sensor.register_dpihw = setting.register_dpihw;
1596 sensor.register_dpiset = setting.register_dpiset;
1597 sensor.shading_resolution = setting.register_dpihw;
1598 sensor.exposure_lperiod = setting.exposure_lperiod;
1599 sensor.method = setting.method;
1600 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1601 sensor.output_pixel_offset = setting.output_pixel_offset;
1602 sensor.stagger_y = setting.stagger_y;
1603 sensor.custom_regs = base_custom_regs;
1604 sensor.custom_regs.merge(setting.extra_custom_regs);
1605 s_sensors->push_back(sensor);
1609 sensor = Genesys_Sensor();
1610 sensor.sensor_id = SensorId::CCD_HP_4850C; // gl843
1611 sensor.full_resolution = 4800;
1612 sensor.black_pixels = 100;
1613 sensor.dummy_pixel = 58;
1614 sensor.fau_gain_white_ref = 160;
1615 sensor.gain_white_ref = 160;
1616 sensor.exposure = { 0x2c09, 0x22b8, 0x10f0 };
1617 sensor.custom_regs = {};
1618 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1727 auto base_custom_regs = sensor.custom_regs;
1730 sensor.resolutions = setting.resolutions;
1731 sensor.register_dpihw = setting.register_dpihw;
1732 sensor.register_dpiset = setting.register_dpiset;
1733 sensor.shading_resolution = setting.register_dpihw;
1734 sensor.exposure_lperiod = setting.exposure_lperiod;
1735 sensor.method = setting.method;
1736 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1737 sensor.output_pixel_offset = setting.output_pixel_offset;
1738 sensor.shading_pixel_offset = setting.shading_pixel_offset;
1739 sensor.stagger_y = setting.stagger_y;
1740 sensor.custom_regs = base_custom_regs;
1741 sensor.custom_regs.merge(setting.extra_custom_regs);
1742 s_sensors->push_back(sensor);
1746 sensor = Genesys_Sensor();
1747 sensor.sensor_id = SensorId::CCD_CANON_4400F; // gl843
1748 sensor.full_resolution = 4800;
1749 sensor.register_dpihw = 4800;
1750 sensor.black_pixels = 50*8;
1752 sensor.dummy_pixel = 20;
1753 sensor.fau_gain_white_ref = 160;
1754 sensor.gain_white_ref = 160;
1755 sensor.exposure = { 0x9c40, 0x9c40, 0x9c40 };
1756 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1856 sensor.resolutions = { resolution };
1857 sensor.optical_resolution = setting.optical_resolution;
1858 sensor.register_dpiset = setting.register_dpiset;
1859 sensor.shading_resolution = resolution;
1860 sensor.exposure_lperiod = setting.exposure_lperiod;
1861 sensor.output_pixel_offset = setting.output_pixel_offset;
1862 sensor.use_host_side_calib = setting.use_host_side_calib;
1863 sensor.method = method;
1864 sensor.stagger_y = setting.stagger_y;
1865 sensor.custom_regs = setting.extra_custom_regs;
1866 sensor.custom_fe_regs = setting.extra_custom_fe_regs;
1867 s_sensors->push_back(sensor);
1874 sensor = Genesys_Sensor();
1875 sensor.sensor_id = SensorId::CCD_CANON_5600F; // gl847
1876 sensor.full_resolution = 4800;
1877 sensor.register_dpihw = 4800;
1878 sensor.black_pixels = 50*8;
1879 sensor.dummy_pixel = 10;
1880 sensor.fau_gain_white_ref = 160;
1881 sensor.gain_white_ref = 160;
1882 sensor.exposure = { 0x9c40, 0x9c40, 0x9c40 };
1883 sensor.gamma = { 1.0f, 1.0f, 1.0f };
1884 sensor.use_host_side_calib = true;
1976 sensor.method = method;
1977 sensor.resolutions = setting.resolutions;
1978 sensor.optical_resolution = setting.optical_resolution;
1979 sensor.register_dpihw = setting.register_dpihw;
1980 sensor.register_dpiset = setting.register_dpiset;
1981 sensor.shading_resolution = setting.resolutions.values().front();
1982 sensor.exposure_lperiod = setting.exposure_lperiod;
1983 sensor.exposure = setting.exposure;
1984 sensor.pixel_count_ratio = setting.pixel_count_ratio;
1985 sensor.output_pixel_offset = setting.output_pixel_offset;
1986 sensor.segment_size = setting.segment_size;
1987 sensor.segment_order = setting.segment_order;
1988 sensor.stagger_x = setting.stagger_x;
1989 sensor.stagger_y = setting.stagger_y;
1990 sensor.custom_regs = setting.custom_regs;
1991 s_sensors->push_back(sensor);
1997 sensor = Genesys_Sensor();
1998 sensor.sensor_id = SensorId::CCD_CANON_8400F; // gl843
1999 sensor.full_resolution = 3200;
2000 sensor.register_dpihw = 4800;
2001 sensor.black_pixels = 50*8;
2003 sensor.dummy_pixel = 20;
2004 sensor.fau_gain_white_ref = 160;
2005 sensor.gain_white_ref = 160;
2006 sensor.exposure = { 0x9c40, 0x9c40, 0x9c40 };
2007 sensor.custom_regs = {};
2008 sensor.gamma = { 1.0f, 1.0f, 1.0f };
2147 sensor.resolutions = { resolution };
2148 sensor.shading_resolution = resolution;
2149 sensor.register_dpiset = setting.register_dpiset;
2150 sensor.pixel_count_ratio = setting.pixel_count_ratio;
2151 sensor.exposure_lperiod = setting.exposure_lperiod;
2152 sensor.output_pixel_offset = setting.output_pixel_offset;
2153 sensor.shading_pixel_offset = setting.shading_pixel_offset;
2154 sensor.method = method;
2155 sensor.stagger_y = setting.stagger_y;
2156 sensor.custom_regs = setting.extra_custom_regs;
2157 sensor.custom_fe_regs = setting.custom_fe_regs;
2158 s_sensors->push_back(sensor);
2165 sensor = Genesys_Sensor();
2166 sensor.sensor_id = SensorId::CCD_CANON_8600F; // gl843
2167 sensor.full_resolution = 4800;
2168 sensor.register_dpihw = 4800;
2169 sensor.black_pixels = 31;
2170 sensor.dummy_pixel = 20;
2171 sensor.fau_gain_white_ref = 160;
2172 sensor.gain_white_ref = 160;
2173 sensor.exposure = { 0x9c40, 0x9c40, 0x9c40 };
2174 sensor.custom_regs = {};
2175 sensor.gamma = { 1.0f, 1.0f, 1.0f };
2327 sensor.resolutions = { resolution };
2328 sensor.optical_resolution = setting.optical_resolution;
2329 sensor.register_dpiset = setting.register_dpiset;
2330 sensor.shading_resolution = resolution;
2331 sensor.output_pixel_offset = setting.output_pixel_offset;
2332 sensor.method = method;
2333 sensor.exposure_lperiod = setting.exposure_lperiod;
2334 sensor.stagger_y = setting.stagger_y;
2335 sensor.custom_regs = setting.extra_custom_regs;
2336 sensor.custom_fe_regs = setting.custom_fe_regs;
2337 s_sensors->push_back(sensor);
2344 sensor = Genesys_Sensor();
2345 sensor.sensor_id = SensorId::CCD_HP_N6310; // gl847
2346 sensor.full_resolution = 2400;
2347 sensor.black_pixels = 96;
2348 sensor.dummy_pixel = 26;
2349 sensor.pixel_count_ratio = Ratio{1, 4};
2350 sensor.fau_gain_white_ref = 210;
2351 sensor.gain_white_ref = 230;
2352 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
2353 sensor.custom_regs = {
2372 sensor.gamma = { 1.0f, 1.0f, 1.0f };
2393 auto base_custom_regs = sensor.custom_regs;
2395 sensor.resolutions = setting.resolutions;
2396 sensor.register_dpiset = setting.resolutions.values()[0];
2397 sensor.register_dpihw = setting.register_dpihw;
2398 sensor.shading_resolution = setting.register_dpihw;
2399 sensor.shading_factor = setting.shading_factor;
2400 sensor.output_pixel_offset = setting.output_pixel_offset;
2401 s_sensors->push_back(sensor);
2405 sensor = Genesys_Sensor();
2406 sensor.sensor_id = SensorId::CIS_CANON_LIDE_110; // gl124
2407 sensor.full_resolution = 2400;
2408 sensor.black_pixels = 87;
2409 sensor.dummy_pixel = 16;
2410 sensor.fau_gain_white_ref = 210;
2411 sensor.gain_white_ref = 200;
2412 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
2413 sensor.gamma = { 2.2f, 2.2f, 2.2f };
2560 sensor.resolutions = setting.resolutions;
2561 sensor.optical_resolution = setting.optical_resolution;
2562 sensor.register_dpihw = setting.register_dpihw;
2563 sensor.register_dpiset = setting.register_dpiset;
2564 sensor.shading_resolution = setting.shading_resolution;
2565 sensor.exposure_lperiod = setting.exposure_lperiod;
2566 sensor.exposure = setting.exposure;
2567 sensor.pixel_count_ratio = setting.pixel_count_ratio;
2568 sensor.shading_factor = setting.shading_factor;
2569 sensor.segment_order = setting.segment_order;
2570 sensor.custom_regs = setting.custom_regs;
2572 sensor.channels = { 1 };
2573 sensor.custom_regs.set_value(0x0c, 0x10);
2574 s_sensors->push_back(sensor);
2576 sensor.channels = { 3 };
2577 sensor.custom_regs.set_value(0x0c, 0x12);
2578 s_sensors->push_back(sensor);
2582 sensor = Genesys_Sensor();
2583 sensor.sensor_id = SensorId::CIS_CANON_LIDE_120; // gl124
2584 sensor.full_resolution = 2400;
2585 sensor.black_pixels = 87;
2586 sensor.dummy_pixel = 16;
2587 sensor.fau_gain_white_ref = 210;
2588 sensor.gain_white_ref = 200;
2589 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
2590 sensor.gamma = { 2.2f, 2.2f, 2.2f };
2737 sensor.resolutions = setting.resolutions;
2738 sensor.optical_resolution = setting.optical_resolution;
2739 sensor.register_dpihw = setting.register_dpihw;
2740 sensor.register_dpiset = setting.register_dpiset;
2741 sensor.shading_resolution = setting.shading_resolution;
2742 sensor.exposure_lperiod = setting.exposure_lperiod;
2743 sensor.exposure = setting.exposure;
2744 sensor.pixel_count_ratio = setting.pixel_count_ratio;
2745 sensor.shading_factor = setting.shading_factor;
2746 sensor.segment_order = setting.segment_order;
2747 sensor.custom_regs = setting.custom_regs;
2749 sensor.channels = { 1 };
2750 sensor.custom_regs.set_value(0x0c, 0x10);
2751 s_sensors->push_back(sensor);
2753 sensor.channels = { 3 };
2754 sensor.custom_regs.set_value(0x0c, 0x12);
2755 s_sensors->push_back(sensor);
2759 sensor = Genesys_Sensor();
2760 sensor.sensor_id = SensorId::CIS_CANON_LIDE_210; // gl124
2761 sensor.full_resolution = 4800;
2762 sensor.black_pixels = 87;
2763 sensor.dummy_pixel = 16;
2764 sensor.fau_gain_white_ref = 210;
2765 sensor.gain_white_ref = 200;
2766 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
2767 sensor.gamma = { 2.2f, 2.2f, 2.2f };
2939 sensor.resolutions = setting.resolutions;
2940 sensor.optical_resolution = setting.optical_resolution;
2941 sensor.register_dpihw = setting.register_dpihw;
2942 sensor.register_dpiset = setting.register_dpiset;
2943 sensor.shading_resolution = setting.shading_resolution;
2944 sensor.exposure_lperiod = setting.exposure_lperiod;
2945 sensor.exposure = setting.exposure;
2946 sensor.pixel_count_ratio = setting.pixel_count_ratio;
2947 sensor.shading_factor = setting.shading_factor;
2948 sensor.segment_order = setting.segment_order;
2949 sensor.custom_regs = setting.custom_regs;
2951 sensor.channels = { 1 };
2952 sensor.custom_regs.set_value(0x0c, 0x10);
2953 s_sensors->push_back(sensor);
2955 sensor.channels = { 3 };
2956 sensor.custom_regs.set_value(0x0c, 0x12);
2957 s_sensors->push_back(sensor);
2961 sensor = Genesys_Sensor();
2962 sensor.sensor_id = SensorId::CIS_CANON_LIDE_220; // gl124
2963 sensor.full_resolution = 4800;
2964 sensor.black_pixels = 87;
2965 sensor.dummy_pixel = 16;
2966 sensor.fau_gain_white_ref = 210;
2967 sensor.gain_white_ref = 200;
2968 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
2969 sensor.gamma = { 2.2f, 2.2f, 2.2f };
3142 sensor.resolutions = setting.resolutions;
3143 sensor.optical_resolution = setting.optical_resolution;
3144 sensor.register_dpihw = setting.register_dpihw;
3145 sensor.register_dpiset = setting.register_dpiset;
3146 sensor.shading_resolution = setting.shading_resolution;
3147 sensor.exposure_lperiod = setting.exposure_lperiod;
3148 sensor.exposure = setting.exposure;
3149 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3150 sensor.shading_factor = setting.shading_factor;
3151 sensor.segment_order = setting.segment_order;
3152 sensor.custom_regs = setting.custom_regs;
3154 sensor.channels = { 1 };
3155 sensor.custom_regs.set_value(0x0c, 0x10);
3156 s_sensors->push_back(sensor);
3158 sensor.channels = { 3 };
3159 sensor.custom_regs.set_value(0x0c, 0x12);
3160 s_sensors->push_back(sensor);
3164 sensor = Genesys_Sensor();
3165 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICPRO_3600; // gl841
3166 sensor.full_resolution = 1200;
3167 sensor.black_pixels = 87;
3168 sensor.dummy_pixel = 87;
3169 sensor.fau_gain_white_ref = 210;
3170 sensor.gain_white_ref = 230;
3171 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3172 sensor.custom_regs = {
3179 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3201 sensor.resolutions = setting.resolutions;
3202 sensor.optical_resolution = setting.optical_resolution;
3203 sensor.register_dpihw = setting.register_dpihw;
3204 sensor.register_dpiset = setting.register_dpiset;
3205 sensor.shading_resolution = setting.register_dpihw;
3206 sensor.output_pixel_offset = setting.output_pixel_offset;
3207 s_sensors->push_back(sensor);
3212 sensor = Genesys_Sensor();
3213 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICFILM_7200; // gl842
3214 sensor.full_resolution = 7200;
3215 sensor.register_dpihw = 1200;
3216 sensor.black_pixels = 88; // TODO
3217 sensor.dummy_pixel = 19;
3218 sensor.fau_gain_white_ref = 210;
3219 sensor.gain_white_ref = 230;
3220 sensor.exposure = { 0x2b00, 0x2b00, 0x2b00 };
3221 sensor.exposure_lperiod = 0x694e;
3222 sensor.use_host_side_calib = true;
3223 sensor.custom_regs = {
3233 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3253 sensor.resolutions = setting.resolutions;
3254 sensor.method = setting.method;
3255 sensor.shading_resolution = setting.resolutions.values().front();
3256 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3257 sensor.output_pixel_offset = setting.output_pixel_offset;
3258 sensor.register_dpiset = setting.register_dpiset;
3259 sensor.stagger_y = setting.stagger_y;
3260 s_sensors->push_back(sensor);
3265 sensor = Genesys_Sensor();
3266 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICFILM_7200I; // gl843
3267 sensor.full_resolution = 7200;
3268 sensor.register_dpihw = 1200;
3269 sensor.black_pixels = 88; // TODO
3270 sensor.dummy_pixel = 20;
3271 sensor.fau_gain_white_ref = 210;
3272 sensor.gain_white_ref = 230;
3273 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3274 sensor.use_host_side_calib = true;
3275 sensor.custom_regs = {
3304 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3344 sensor.resolutions = setting.resolutions;
3345 sensor.method = setting.method;
3346 sensor.shading_resolution = setting.shading_resolution;
3347 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3348 sensor.output_pixel_offset = setting.output_pixel_offset;
3349 sensor.exposure_lperiod = setting.exposure_lperiod;
3350 sensor.register_dpiset = setting.register_dpiset;
3351 sensor.stagger_y = setting.stagger_y;
3352 sensor.custom_fe_regs = setting.custom_fe_regs;
3353 s_sensors->push_back(sensor);
3358 sensor = Genesys_Sensor();
3359 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICFILM_7300; // gl843
3360 sensor.full_resolution = 7200;
3361 sensor.method = ScanMethod::TRANSPARENCY;
3362 sensor.register_dpihw = 1200;
3363 sensor.black_pixels = 88; // TODO
3364 sensor.dummy_pixel = 20;
3365 sensor.fau_gain_white_ref = 210;
3366 sensor.gain_white_ref = 230;
3367 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3368 sensor.exposure_lperiod = 0x2f44;
3369 sensor.use_host_side_calib = true;
3370 sensor.custom_regs = {
3399 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3419 sensor.resolutions = setting.resolutions;
3420 sensor.shading_resolution = setting.shading_resolution;
3421 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3422 sensor.output_pixel_offset = setting.output_pixel_offset;
3423 sensor.register_dpiset = setting.register_dpiset;
3424 sensor.stagger_y = setting.stagger_y;
3425 s_sensors->push_back(sensor);
3430 sensor = Genesys_Sensor();
3431 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICFILM_7400; // gl845
3432 sensor.full_resolution = 7200;
3433 sensor.method = ScanMethod::TRANSPARENCY;
3434 sensor.register_dpihw = 1200;
3435 sensor.black_pixels = 88; // TODO
3436 sensor.dummy_pixel = 20;
3437 sensor.fau_gain_white_ref = 210;
3438 sensor.gain_white_ref = 230;
3439 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3440 sensor.exposure_lperiod = 14000;
3441 sensor.use_host_side_calib = true;
3442 sensor.custom_regs = {
3454 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3473 sensor.resolutions = setting.resolutions;
3474 sensor.shading_resolution = setting.resolutions.values()[0];
3475 sensor.register_dpiset = setting.register_dpiset;
3476 sensor.output_pixel_offset = setting.output_pixel_offset;
3477 sensor.stagger_y = setting.stagger_y;
3478 s_sensors->push_back(sensor);
3482 sensor = Genesys_Sensor();
3483 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICFILM_7500I; // gl843
3484 sensor.full_resolution = 7200;
3485 sensor.register_dpihw = 1200;
3486 sensor.black_pixels = 88; // TODO
3487 sensor.dummy_pixel = 20;
3488 sensor.fau_gain_white_ref = 210;
3489 sensor.gain_white_ref = 230;
3490 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3491 sensor.use_host_side_calib = true;
3492 sensor.custom_regs = {
3521 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3555 sensor.resolutions = setting.resolutions;
3556 sensor.method = setting.method;
3557 sensor.shading_resolution = setting.shading_resolution;
3558 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3559 sensor.output_pixel_offset = setting.output_pixel_offset;
3560 sensor.exposure_lperiod = setting.exposure_lperiod;
3561 sensor.register_dpiset = setting.register_dpiset;
3562 sensor.stagger_y = setting.stagger_y;
3563 s_sensors->push_back(sensor);
3568 sensor = Genesys_Sensor();
3569 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICFILM_8200I; // gl845
3570 sensor.full_resolution = 7200;
3571 sensor.method = ScanMethod::TRANSPARENCY;
3572 sensor.register_dpihw = 1200;
3573 sensor.black_pixels = 88; // TODO
3574 sensor.dummy_pixel = 20;
3575 sensor.fau_gain_white_ref = 210;
3576 sensor.gain_white_ref = 230;
3577 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3578 sensor.exposure_lperiod = 14000;
3579 sensor.use_host_side_calib = true;
3580 sensor.custom_regs = {
3592 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3615 sensor.resolutions = setting.resolutions;
3616 sensor.method = setting.method;
3617 sensor.shading_resolution = setting.resolutions.values()[0];
3618 sensor.register_dpiset = setting.register_dpiset;
3619 sensor.output_pixel_offset = setting.output_pixel_offset;
3620 sensor.stagger_y = setting.stagger_y;
3621 s_sensors->push_back(sensor);
3626 sensor = Genesys_Sensor();
3627 sensor.sensor_id = SensorId::CCD_IMG101; // gl846
3628 sensor.resolutions = { 75, 100, 150, 300, 600, 1200 };
3629 sensor.exposure_lperiod = 11000;
3630 sensor.segment_size = 5136;
3631 sensor.segment_order = {0, 1};
3632 sensor.full_resolution = 1200;
3633 sensor.black_pixels = 31;
3634 sensor.dummy_pixel = 31;
3635 sensor.fau_gain_white_ref = 210;
3636 sensor.gain_white_ref = 200;
3637 sensor.exposure = { 0x0000, 0x0000, 0x0000 };
3638 sensor.custom_regs = {
3647 sensor.gamma = { 1.7f, 1.7f, 1.7f };
3667 auto base_custom_regs = sensor.custom_regs;
3669 sensor.resolutions = setting.resolutions;
3670 sensor.register_dpihw = setting.register_dpihw;
3671 sensor.register_dpiset = setting.resolutions.values()[0];
3672 sensor.shading_resolution = setting.register_dpihw;
3673 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3674 sensor.shading_factor = setting.shading_factor;
3675 sensor.custom_regs = base_custom_regs;
3676 sensor.custom_regs.merge(setting.extra_custom_regs);
3677 s_sensors->push_back(sensor);
3682 sensor = Genesys_Sensor();
3683 sensor.sensor_id = SensorId::CCD_PLUSTEK_OPTICBOOK_3800; // gl845
3684 sensor.resolutions = { 75, 100, 150, 300, 600, 1200 };
3685 sensor.exposure_lperiod = 11000;
3686 sensor.full_resolution = 1200;
3687 sensor.black_pixels = 31;
3688 sensor.dummy_pixel = 31;
3689 sensor.fau_gain_white_ref = 210;
3690 sensor.gain_white_ref = 200;
3691 sensor.exposure = { 0, 0, 0 };
3692 sensor.custom_regs = {
3703 sensor.gamma = { 1.7f, 1.7f, 1.7f };
3723 sensor.resolutions = setting.resolutions;
3724 sensor.register_dpihw = setting.register_dpihw;
3725 sensor.register_dpiset = setting.resolutions.values()[0];
3726 sensor.shading_resolution = setting.register_dpihw;
3727 sensor.pixel_count_ratio = setting.pixel_count_ratio;
3728 sensor.shading_factor = setting.shading_factor;
3729 s_sensors->push_back(sensor);
3733 sensor = Genesys_Sensor();
3734 sensor.sensor_id = SensorId::CIS_CANON_LIDE_80; // gl841
3735 sensor.full_resolution = 1200; // real hardware limit is 2400
3736 sensor.register_dpihw = 1200;
3737 sensor.black_pixels = 20;
3738 sensor.dummy_pixel = 6;
3739 sensor.fau_gain_white_ref = 150;
3740 sensor.gain_white_ref = 150;
3742 sensor.exposure = { 0x1000, 0x1000, 0x0500 };
3743 sensor.custom_regs = {
3750 sensor.gamma = { 1.0f, 1.0f, 1.0f };
3773 sensor.resolutions = setting.resolutions;
3774 sensor.optical_resolution = setting.optical_resolution;
3775 sensor.register_dpiset = setting.register_dpiset;
3776 sensor.shading_resolution = setting.shading_resolution;
3777 sensor.shading_factor = setting.shading_factor;
3778 sensor.output_pixel_offset = setting.output_pixel_offset;
3779 s_sensors->push_back(sensor);
3790 for (const auto& sensor : *s_sensors) {
3791 if (sensor_to_asic.count(sensor.sensor_id) == 0) {
3792 throw SaneException("Unknown asic for sensor");
3794 auto asic_type = sensor_to_asic[sensor.sensor_id];
3796 if (sensor.full_resolution == 0) {
3800 if (sensor.register_dpiset == 0) {
3805 if (sensor.register_dpihw == 0) {
3808 if (sensor.shading_resolution == 0) {
3820 if (!sensor.custom_regs.has_reg(address)) {
3834 if (!sensor.custom_regs.has_reg(address)) {