* backend/artec_eplus48u.c backend/artec_eplus48u.h

backend/artec_eplus48u.conf: added
                  experimental support for the Artec E+ Pro
	  fixed sane-Bugs-300261 (doesn't compile when
	  NDEBUG is defined)
merge-requests/1/head
Michael Herder 2003-12-12 06:55:45 +00:00
rodzic 52085051fc
commit 6b33a0abf0
4 zmienionych plików z 493 dodań i 372 usunięć

Plik diff jest za duży Load Diff

Wyświetl plik

@ -16,7 +16,8 @@ usb 0x05d8 0x4003
# The scanner won't work without it
#
option artecFirmwareFile <path>/Artec48.usb
option artecFirmwareFile /etc/sane.d/Artec48.usb
option ePlusPro 0
#
# for adjusting the default gamma values
@ -77,7 +78,7 @@ option artecFirmwareFile <path>/Artec48.usb
#
# for adjusting the default gamma values
#
option ePlusPro 1
option redGamma 1.0
option greenGamma 1.0
option blueGamma 1.0
@ -230,3 +231,69 @@ option modelString "AstraSlim SE"
#If you are using the scanner module (kernel driver), a device looks like this:
#device /dev/usbscanner
# Another USB section:
# each device needs at least the following line:
# usb vendor-ID and product-ID
# Every device configuration in this file must begin with an usb entry.
# This section is for the Artec E+ Pro
# Note, that the name of the firmware file is called 1200.usb for
# this device
usb 0x05d8 0x4004
#
# Path to the firmware file
# This file comes with the Windows driver
# The scanner won't work without it
#
option artecFirmwareFile <path>/1200.usb
#
# Tell the backend that this is an Artec E+ Pro
# by setting the option ePlusPro to 1
#
option ePlusPro 1
#
# for adjusting the default gamma values
#
option redGamma 1.0
option greenGamma 1.0
option blueGamma 1.0
option masterGamma 1.9
#Use this options to set the default offset and exposure time values.
#If calibrate device is set to 0, this values are used instead of the values
#which were calculated during calibration.
option redOffset 0x28
option greenOffset 0x2f
option blueOffset 0x2f
option redExposure 0xa7
option greenExposure 0x116
option blueExposure 0xdc
# The vendor and model string
# This string is displayed by the frontends. The Umax AstraSlim SE
# has a different product id, therefore we can overwrite the vendor and model
# string here.
option vendorString "Artec"
option modelString "E+ Pro"
#
# device-name
#
# If autodetection does not work, then you can specify the device here
# The device entry must be the last one in this config file (or the last one before a
# new usb entry).
#If you are using libusb, a device looks like this:
#device libusb:001:002
#If you are using the scanner module (kernel driver), a device looks like this:
#device /dev/usbscanner

Wyświetl plik

@ -172,6 +172,8 @@ struct Artec48U_Device
size_t read_pos;
size_t read_bytes_in_buffer;
size_t read_bytes_left;
unsigned int is_epro;
unsigned int epro_mult;
};
/** Scan parameters for artec48u_device_setup_scan().
@ -259,6 +261,16 @@ struct Artec48U_Line_Reader
unsigned int **buffer_pointers_return);
};
#ifndef SANE_OPTION
typedef union
{
SANE_Word w;
SANE_Word *wa; /* word array */
SANE_String s;
}
Option_Value;
#endif
struct Artec48U_Scanner
{
Artec48U_Scanner *next;
@ -282,7 +294,7 @@ struct Artec48U_Scanner
SANE_Byte *line_buffer;
SANE_Byte *lineart_buffer;
SANE_Word lines_to_read;
unsigned int temp_shading_buffer[3][5120];
unsigned int temp_shading_buffer[3][10240]; /*epro*/
unsigned int *buffer_pointers[3];
unsigned char *shading_buffer_w;
unsigned char *shading_buffer_b;

Wyświetl plik

@ -63,3 +63,10 @@
:status :good
:interface "USB"
:comment "Different product id: 0x4009"
:mfg "Artec/Ultima"
:url "http://www.artecusa.com/"
:model "E+ Pro"
:status :minimal
:interface "USB"
:comment "Experimental! Different product id: 0x4004. Please report your results!"