sane-dmc - SANE backend for the Polaroid Digital Microscope Camera


   The  sane-dmc  library  implements  a  SANE  (Scanner  Access Now Easy)
   backend that provides access to the Polaroid Digital Microscope Camera.


   This backend expects device names of the form:


   Where special is  the  UNIX  path-name  for  the  special  device  that
   corresponds  to the scanner.  The special device name must be a generic
   SCSI device or a symlink to such a device.  Under Linux, such a  device
   name could be /dev/sga or /dev/sge, for example.


   The  Polaroid  DMC  supports  a  number  of imaging modes.  This driver
   supports five of the imaging modes:

   Full Frame
          This mode corresponds to the 801-by-600 pixel  full-color  full-
          frame image.

          This   mode  corresponds  to  the  270-by-201  pixel  grey-scale
          viewfinder image.  This image is acquired very quickly.

   Raw    This mode corresponds to the 1599-by-600 pixel "raw" image  from
          the CCD.  It is grey-scale, with pixels alternating horizontally
          between red, green and blue stripes.  The pixels  are  twice  as
          high as they are wide, so the image is distorted.

          This mode corresponds to the 80-by-60 pixel full-color thumbnail

   Super Resolution
          This image is a 1599-by-1200 pixel full-color image  constructed
          by  filtering  and interpolating the "raw" image.  The filtering
          and interpolation is done in software,  so  this  mode  is  very
          slow.   Also,  this mode places restrictions on how the image is
          read which means that the "preview" mode of xscanimage does  not
          work  in Super Resolution mode.  (xcam and the non-preview modes
          of scanimage and xscanimage work fine, however.)


   ASA Setting
          This setting adjusts the camera's sensitivity.  You  can  choose
          one of 25, 50, or 100 "equivalent" ASA.

   Shutter Speed
          You can select a shutter speed from 8 to 1000 milliseconds.  The
          shutter speed is quantized in units of 32 microseconds.

   White Balance
          You  can   choose   one   of   "Daylight",   "Incandescent"   or
          "Fluorescent"   white   balances.    This  setting  more-or-less
          corresponds to the "Color Temperature"  settings  on  Polaroid's
          Windows and Mac software.


   The  contents  of  the  dmc.conf  file  is  a list of device names that
   correspond to DMC scanners.  Empty lines and lines starting with a hash
   mark (#) are ignored.  A sample configuration file is shown below:

          # this is a comment


          The   backend   configuration  file  (see  also  description  of
          SANE_CONFIG_DIR below).

          The static library implementing this backend.

          The shared library implementing this backend (present on systems
          that support dynamic loading).


          This environment variable specifies the list of directories that
          may contain the configuration file.  Under UNIX, the directories
          are  separated  by a colon (`:'), under OS/2, they are separated
          by a semi-colon  (`;').   If  this  variable  is  not  set,  the
          configuration  file  is  searched  in  two  default directories:
          first,  the  current  working  directory  (".")  and   then   in
          /etc/sane.d.  If the value of the environment variable ends with
          the directory separator character, then the default  directories
          are  searched  after  the explicitly specified directories.  For
          example, setting SANE_CONFIG_DIR to "/tmp/config:" would  result
          in   directories  "tmp/config",  ".",  and  "/etc/sane.d"  being
          searched (in this order).

          If the library was compiled with  debug  support  enabled,  this
          environment  variable controls the debug level for this backend.
          E.g., a value of 128 requests all debug output  to  be  printed.
          Smaller levels reduce verbosity.


   In  the  "Full  Frame" and "Raw" modes, images must be read in units of
   entire lines.  The driver performs no buffering in these modes; if  you
   ask  sane_read to read a non-integral number of lines, it may read less
   than you ask for.  If you ask sane_read to  read  less  than  a  single
   line, it returns SANE_STATUS_INVAL.

   In  the  "Super  Resolution"  mode, images must be read in units of two
   lines (3198 pixels or 9594 bytes.)  If you try to read  less  than  two
   lines,  you  get  SANE_STATUS_INVAL.  The Super Resolution mode is very

   In the "Viewfinder" and "Thumbnail" modes, the  entire  image  must  be
   read in one SCSI transfer.  In this case, the driver performs buffering
   and you can read the image in as small an increment as you like.


   sane(7), sane-scsi(5)


   David F. Skoll

   The backend is derived from sane-hp by David Mosberger

                              13 Jul 2008                      sane-dmc(5)

More Linux Commands

snmp_alarm_register_hr(3) - alarm functions - Linux man page
These functions implement support for a generic timer handling mechanism for multiple parts of an application to register function callbacks to happen at a part

setkey_r(3) - encrypt 64-bit messages - Linux manual page...
These functions encrypt and decrypt 64-bit messages. The setkey() function sets the key used by encrypt(). The key argument used here is an array of 64 bytes, e

gnutls_x509_crt_get_preferred_hash_algorithm.3 - This function will read the certifcate and return the appropriate digest algorithm to use for signing with this

asn1_number_of_elements(3) - Counts the number of elements o
Counts the number of elements of a sub-structure called NAME with names equal to ?1,?2, ... RETURNS ASN1_SUCCESS if successful, ASN1_ELEMENT_NOT_FOUND if name i

fsync(2) - synchronize a file's in-core state with storage d
fsync() transfers (flushes) all modified in-core data of (i.e., modified buffer cache pages for) the file referred to by the file descriptor fd to the disk devi

XGetPointerControl(3) - control pointer - Linux manual page
The XChangePointerControl function defines how the pointing device moves. The acceleration, expressed as a fraction, is a multiplier for movement. For example,

XGetErrorText(3) - default error handlers - Linux man page
Xlib generally calls the programs supplied error handler whenever an error is received. It is not called on BadName errors from OpenFont, LookupColor, or AllocN

sys_errlist(3) - print a system error message (Man Page)....
sys_errlist.3 - The routine perror() produces a message on the standard error output, describing the last error encountered during a call to a system or library

gvfs-tree(1) List contents of directories in a treelike form
gvfs-tree lists the contents of the given directories recursively, in a tree-like format. If no location is given, it defaults to the current directory. gvfs-tr

XtAppSetErrorMsgHandler(3) - high-level error handlers......
The XtAppErrorMsg function calls the high-level error handler and passes the specified information. The XtAppSetErrorMsgHandler function registers the specified

tk_library(n) Variables used or set by Tk __________________
The following Tcl variables are either set or used by Tk at various times in its execution: tk_library This variable holds the file name for a directory contain

slk_attr_off(3ncurses) - curses soft label routines.........
The slk* functions manipulate the set of soft function-key labels that exist on many terminals. For those terminals that do not have soft labels, curses takes o

We can't live, work or learn in freedom unless the software we use is free.