• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * epson2.c - SANE library for Epson scanners.
3  *
4  * Based on Kazuhiro Sasayama previous
5  * Work on epson.[ch] file from the SANE package.
6  * Please see those files for additional copyrights.
7  *
8  * Copyright (C) 2006-07 Tower Technologies
9  * Author: Alessandro Zummo <a.zummo@towertech.it>
10  *
11  * This file is part of the SANE package.
12  *
13  * This program is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU General Public License as
15  * published by the Free Software Foundation, version 2.
16  */
17 
18 /* some defines to make handling the TPU easier */
19 #define FILM_TYPE_NEGATIVE      (1L << 0)
20 #define FILM_TYPE_SLIDE         (1L << 1)
21 
22 #define e2_model(s,m) e2_dev_model((s)->hw,(m))
23 
24 extern int sanei_scsi_max_request_size;
25 extern int *gamma_params;
26 
27 extern void e2_dev_init(Epson_Device *dev, const char *devname, int conntype);
28 extern SANE_Status e2_dev_post_init(struct Epson_Device *dev);
29 extern SANE_Bool e2_dev_model(Epson_Device *dev, const char *model);
30 extern void e2_set_cmd_level(SANE_Handle handle, unsigned char *level);
31 extern SANE_Status e2_set_model(Epson_Scanner *s, unsigned char *model, size_t len);
32 extern SANE_Status e2_add_resolution(Epson_Device *dev, int r);
33 extern void e2_set_fbf_area(Epson_Scanner *s, int x, int y, int unit);
34 extern void e2_set_adf_area(struct Epson_Scanner *s, int x, int y, int unit);
35 extern void e2_set_tpu_area(struct Epson_Scanner *s, int x, int y, int unit);
36 extern void e2_set_tpu2_area(struct Epson_Scanner *s, int x, int y, int unit);
37 extern void e2_add_depth(Epson_Device *dev, SANE_Word depth);
38 extern SANE_Status e2_discover_capabilities(Epson_Scanner *s);
39 extern SANE_Status e2_set_extended_scanning_parameters(Epson_Scanner *s);
40 extern SANE_Status e2_set_scanning_parameters(Epson_Scanner *s);
41 extern void e2_setup_block_mode(Epson_Scanner *s);
42 extern SANE_Status e2_init_parameters(Epson_Scanner *s);
43 extern void e2_wait_button(Epson_Scanner *s);
44 extern SANE_Status e2_check_warm_up(Epson_Scanner *s, SANE_Bool *wup);
45 extern SANE_Status e2_wait_warm_up(Epson_Scanner *s);
46 extern SANE_Status e2_check_adf(Epson_Scanner *s);
47 extern SANE_Status e2_start_std_scan(Epson_Scanner *s);
48 extern SANE_Status e2_start_ext_scan(Epson_Scanner *s);
49 extern void e2_scan_finish(Epson_Scanner *s);
50 extern void e2_copy_image_data(Epson_Scanner *s, SANE_Byte *data, SANE_Int max_length,
51 		   SANE_Int *length);
52 extern SANE_Status e2_ext_read(struct Epson_Scanner *s);
53 extern SANE_Status e2_block_read(struct Epson_Scanner *s);
54