added functions sanei_thread_sendsig() and sanei_thread_get_status()
changed behaviour of sanei_thread_waitpid(), changed parameters
of sanei_thread_begin()
pthread support after all the tests. If libpthread isn't available, try if libc
supports pthreead_*. Use macro USE_PTHREAD to check if threads are used in the
code.
pthread support, added switch --enable-fork-process which toggles
between the usage of fork and pthread, set the default behaviour to
pthread usage on Darwin
* include/sane/config.h: added the HAVE_LIBPTHRAD stuff
* sanei/sanei_thread.c include/sane/sanei_thread.h: fixed compilation issue
on OS/2, added support for fork too, so that we can use sanei_thread
functions in any case.
* backend/plustek.[ch]: changes due to the sanei_thread-lib work
added linker option -lpthread if pthread.h is found
* include/sane/config.in.h: added HAVE_PTHREAD_H
* sanei/sanei_thread.c include/sane/sanei_thread.h: added pthread_
functions to library, so every backend is able to use either fork or
pthread for its reader-process - see plustek backend for example
* backend/plustek.h backend/plustek.c: added sanei_thread stuff to support
threading on MacOS X
* backend/plustek_pp*: some cleanup
* include/sane/sanei_pa4s2.h, sanei/sanei_pa4s2.c: New sanei_pa4s2
version supporting both raw IO and libieee1284. If you don't
have libieee1284 installed, you need to enable raw IO when
running configure
/** Initiate a interrupt transfer read.
*
* Read up to size bytes from the interrupt endpoint from the device to
* buffer. After the read, size contains the number of bytes actually read.
*
* @param dn device number
* @param buffer buffer to store read data in
* @param size size of the data
*
* @return
* - SANE_STATUS_GOOD - on succes
* - SANE_STATUS_EOF - if zero bytes have been read
* - SANE_STATUS_IO_ERROR - if an error occured during the read
* - SANE_STATUS_INVAL - on every other error
*
*/
instead of allocating on stack to avoid crossing 64k borders due to
restrictions of 16-bit device-driver. Cosmetic changes and some casts to
reduce compiler-warnings. Patch from Franz Bakan <fbakan@gmx.net>.
(Linux). Without this fix, especially long running commands and command
queuing would cause memory corruption if the buffer was invalid after the
flush command.
* sanei/sanei_pa4s2.c: added some #ifdefs to make it compile with
the Intel C++ Compiler (icc). The icc cannot expand assembler
inline macros (at least not with -ip)
* sanei/sanei_pa4s2.c: added some #ifdefs to make it compile with
the Intel C++ Compiler (icc). The icc cannot expand assembler
inline macros (at least not with -ip)
sanei_usb_find_devices is called. Also only devices that really exist are
opened. These changes fixe the slow detection of devices on systems using
devfs or old scanner drivers.