00001 /* sane - Scanner Access Now Easy. 00002 Copyright (C) 1997 Jeffrey S. Freedman 00003 This file is part of the SANE package. 00004 00005 This program is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU General Public License as 00007 published by the Free Software Foundation; either version 2 of the 00008 License, or (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, but 00011 WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 59 Temple Place - Suite 330, Boston, 00018 MA 02111-1307, USA. 00019 00020 As a special exception, the authors of SANE give permission for 00021 additional uses of the libraries contained in this release of SANE. 00022 00023 The exception is that, if you link a SANE library with other files 00024 to produce an executable, this does not by itself cause the 00025 resulting executable to be covered by the GNU General Public 00026 License. Your use of that executable is in no way restricted on 00027 account of linking the SANE library code into it. 00028 00029 This exception does not, however, invalidate any other reasons why 00030 the executable file might be covered by the GNU General Public 00031 License. 00032 00033 If you submit changes to SANE to the maintainers to be included in 00034 a subsequent release, you agree by submitting the changes that 00035 those changes may be distributed with this exception intact. 00036 00037 If you write modifications of your own for SANE, it is your choice 00038 whether to permit this exception to apply to your modifications. 00039 If you do not wish that, delete this exception notice. 00040 */ 00041 00049 #ifndef sanei_config_h 00050 #define sanei_config_h 1 00051 00052 #include <stdio.h> 00053 #include <sane/sane.h> 00054 00067 extern FILE *sanei_config_open (const char *name); 00068 00080 extern char *sanei_config_read (char *str, int n, FILE *stream); 00081 00089 extern const char *sanei_config_skip_whitespace (const char *str); 00090 00091 00105 extern const char *sanei_config_get_string (const char *str, 00106 char **string_const); 00107 00125 extern void sanei_config_attach_matching_devices (const char *name, 00126 SANE_Status (*attach) 00127 (const char *dev)); 00128 00134 typedef struct 00135 { 00137 SANE_Int count; 00138 00140 SANE_Option_Descriptor **descriptors; 00141 00143 void **values; 00144 00145 } SANEI_Config; 00146 00162 extern SANE_Status sanei_configure_attach ( 00163 const char *config_file, 00164 SANEI_Config *config, 00165 SANE_Status (*config_attach)(SANEI_Config *config, const char *devname) 00166 ); 00167 #endif /* sanei_config_h */
1.5.1