1
2#ifndef MUSTEK_PP_DECL_H
3#define MUSTEK_PP_DECL_H
4/* debug driver, version 0.11-devel, author Jochen Eisinger */
5static SANE_Status	debug_drv_init (SANE_Int options, SANE_String_Const port,
6					SANE_String_Const name, SANE_Attach_Callback attach);
7static void		debug_drv_capabilities (SANE_Int info, SANE_String *model,
8						SANE_String *vendor, SANE_String *type,
9						SANE_Int *maxres, SANE_Int *minres,
10						SANE_Int *maxhsize, SANE_Int *maxvsize,
11						SANE_Int *caps);
12static SANE_Status	debug_drv_open (SANE_String port, SANE_Int caps, SANE_Int *fd);
13static void		debug_drv_setup (SANE_Handle hndl);
14static SANE_Status	debug_drv_config (SANE_Handle hndl,
15					  SANE_String_Const optname,
16                                          SANE_String_Const optval);
17static void		debug_drv_close (SANE_Handle hndl);
18static SANE_Status	debug_drv_start (SANE_Handle hndl);
19static void		debug_drv_read (SANE_Handle hndl, SANE_Byte *buffer);
20static void		debug_drv_stop (SANE_Handle hndl);
21
22
23/* CIS drivers for 600CP, 1200CP, and 1200CP+
24   Version 0.13-beta, author Eddy De Greef */
25
26static SANE_Status	cis600_drv_init  (SANE_Int options,
27					  SANE_String_Const port,
28				      	  SANE_String_Const name,
29                                          SANE_Attach_Callback attach);
30static SANE_Status	cis1200_drv_init (SANE_Int options,
31					  SANE_String_Const port,
32				      	  SANE_String_Const name,
33                                          SANE_Attach_Callback attach);
34static SANE_Status	cis1200p_drv_init(SANE_Int options,
35				 	  SANE_String_Const port,
36				      	  SANE_String_Const name,
37                                          SANE_Attach_Callback attach);
38static void		cis_drv_capabilities(SANE_Int info,
39					     SANE_String *model,
40					     SANE_String *vendor,
41                                             SANE_String *type,
42					     SANE_Int *maxres,
43                                             SANE_Int *minres,
44					     SANE_Int *maxhsize,
45                                             SANE_Int *maxvsize,
46					     SANE_Int *caps);
47static SANE_Status	cis_drv_open (SANE_String port, SANE_Int caps, SANE_Int *fd);
48static void		cis_drv_setup (SANE_Handle hndl);
49static SANE_Status	cis_drv_config (SANE_Handle hndl,
50					SANE_String_Const optname,
51                                        SANE_String_Const optval);
52static void		cis_drv_close (SANE_Handle hndl);
53static SANE_Status	cis_drv_start (SANE_Handle hndl);
54static void		cis_drv_read (SANE_Handle hndl, SANE_Byte *buffer);
55static void		cis_drv_stop (SANE_Handle hndl);
56
57/* CCD drivers for 300 dpi models
58   Version 0.11-devel, author Jochen Eisinger */
59
60static SANE_Status	ccd300_init  (SANE_Int options,
61					  SANE_String_Const port,
62				      	  SANE_String_Const name,
63                                          SANE_Attach_Callback attach);
64static void		ccd300_capabilities(SANE_Int info,
65					     SANE_String *model,
66					     SANE_String *vendor,
67                                             SANE_String *type,
68					     SANE_Int *maxres,
69                                             SANE_Int *minres,
70					     SANE_Int *maxhsize,
71                                             SANE_Int *maxvsize,
72					     SANE_Int *caps);
73static SANE_Status	ccd300_open (SANE_String port, SANE_Int caps, SANE_Int *fd);
74static void		ccd300_setup (SANE_Handle hndl);
75static SANE_Status	ccd300_config (SANE_Handle hndl,
76					SANE_String_Const optname,
77                                        SANE_String_Const optval);
78static void		ccd300_close (SANE_Handle hndl);
79static SANE_Status	ccd300_start (SANE_Handle hndl);
80static void		ccd300_read (SANE_Handle hndl, SANE_Byte *buffer);
81static void		ccd300_stop (SANE_Handle hndl);
82
83#endif
84