Re: Anyone with a Umax Document Feeder?

Oliver Rauch (oliver.rauch@Wolfsburg.DE)
Mon, 26 Jul 1999 20:12:45 +0200

Nick Lamb wrote:

> On Sun, 25 Jul 1999, Oliver Rauch wrote:
> > I am in contact with David to add some things to the sane api.
> > One of this is to define how to handle a document feeder.
> > The idea is very simple:
> > We define a well known option "mode" that defines the scanmode
> > such as "Flatbed", "Transparency Adapter" or "Automatic Document Feeder".
> I wonder if this is short-sighted? Can you explain what it's for?
> Regardless it should probably be called something other than "mode".

It is called mode because it already is used this way by most backends,
it is defined in saneopts as SANE_NAME_SCAN_MODE "mode"

abaton.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
agfafocus.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
apple.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
artec.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
canon.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
coolscan.c: scanner->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
epson.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
microtek2.c: sod[OPT_MODE].name = SANE_NAME_SCAN_MODE;
microtek.c: sod[OPT_MODE].name = SANE_NAME_SCAN_MODE;
mustek.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
pint.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
ricoh.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
sharp.c: s->opt[XOPT_MODE].name = SANE_NAME_SCAN_MODE;
snapscan.c: po[OPT_MODE].name = SANE_NAME_SCAN_MODE;
tamarack.c: s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
umax.c: scanner->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;

> > If the option "mode" is set to "Automatic Document Feeder" xsane scans
> > until it gets an error
> > (such as out of paper).
> What will this SANE option "mode" actually do? I don't mean in Xsane
> (which is a frontend, and therefore doesn't HAVE any SANE options) I
> want to know what it does in the backend.

option mode is a string list with texts like "Flatbed", "Transparancy Adapter"
or "Automatic Document Feeder". If the user selects
"Automatic Document Feeder" the scanner activates the ADF.
For most scanners this means that the scanhead is not moved at all if
you start a scan. Instead the paper is moved over the fixed scanhead.

> > Functions such as unload page or load new page can be realised by a button
> > that calls a function of the backend, there is nothing that must be defined
> > for it!
> Like this?
> SANE_TYPE_BUTTON "unload page"
> SANE_TYPE_BUTTON "next page"
> There are existing buttons like this in the HP backend, I just want the
> SANE documentation altered to make them "Well Known Options" and define
> the exact behaviour in a central place.
> It makes sense for XSane to use these buttons internally, while also
> presenting them in the user-interface. You can programatically "push"
> the button for each new page. In non-ADF-aware SANE apps, like the
> current XSane, the buttons still work.

This does not work as a common ADF support because most scanners do not
have the ability to load/unload the paper.

If the option mode is set to ADF, the backend automatically has to load
a new paper at the beginning of the scan.

I see that this is not so simple as I thought, so I will have to add an
of this to the sane doc.

We could make the load/unload options well known, but I don`t think that
this will mean much. A frontend will not be able to use this with much sense.

So I suggest to add an ADF mode that automatically loads/unloads the paper
and this should be started when the option "mode" is set to ADF.

> > The probelm is that the hp backend is not compatible to this.
> > The umax backend does work this way so I would prefer a UMAX document feeder.
> How does the UMAX backend work?

See above.
It is not the umax backend that loads/unloads the paper.
It simply tells the scanner to activate ADF mode and the scanner itself
does the rest. There are no functions to load/unload the paper.



EMAIL: Oliver.Rauch@Wolfsburg.DE

Source code, list archive, and docs:
To unsubscribe: echo unsubscribe sane-devel | mail