SCOpen(3) Impressario SCOpen(3)NAME
SCOpen, SCOpenScreen, SCOpenFile - establishing a connection with a
scanning device
SYNOPSIS
#include <stdio.h>
#include <scanner.h>
SCANNER *SCOpen(char *name);
SCANNER *SCOpenScreen(char *screen);
SCANNER *SCOpenFile(char *file);
DESCRIPTION
SCOpen establishes a connection with the scanning device specified by
name. If name is NULL, the default scanning device is used. Scanner
device names are matched to scanner drivers and scanner devices by
entries in the file /usr/lib/scan/scanners, which is maintained using the
scanners(1M) tool.
SCOpenScreen starts the screen scanner driver to enable scanning from
screen.
SCOpenFile starts the file scanner driver to enable scanning from file.
RETURN VALUE
SCOpen, SCOpenScreen, and SCOpenFile each return a pointer to a SCANNER
structure, whose structure definition is private to libscan(3). This
parameter is used for future libscan(3) calls.
In the event of an error, SCOpen, SCOpenScreen, and SCOpenFile return
NULL, and SCerrno is set indicate the reason.
EXECUTION ERROR CODES
SCOpen, SCOpenFile, and SCOpenScreen will fail under the following
circumstances.
SCENOSCANNERS No scanners are installed
SCENODRIVER Driver does not exist
SCENOMEM Out of memory
SCENOSCANNER No such scanner
SCEDEV Scanner driver error
SCEDRVMSG Driver specific error. SCErrorString(3) will
return a custom message supplied by the scanner
driver
Page 1
SCOpen(3) Impressario SCOpen(3)
In addition, these functions may fail as the result of a failed system
call, in which case SCerrno will be set to a value from <sys/errno.h>.
SEE ALSOscanners(1M), libscan(3), SCClose(3), SCGetScanEnt(3), SCGetUserInfo(3).
Page 2