sanei.h

Go to the documentation of this file.
00001 /* sane - Scanner Access Now Easy.
00002    Copyright (C) 1996 David Mosberger-Tang and Andreas Beck
00003    Copyright (C) 2002, 2003 Henning Meier-Geinitz
00004 
00005    This file is part of the SANE package.
00006 
00007    SANE is free software; you can redistribute it and/or modify it
00008    under the terms of the GNU General Public License as published by
00009    the Free Software Foundation; either version 2 of the License, or
00010    (at your option) any later version.
00011 
00012    SANE is distributed in the hope that it will be useful, but WITHOUT
00013    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
00014    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
00015    License for more details.
00016 
00017    You should have received a copy of the GNU General Public License
00018    along with sane; see the file COPYING.  If not, write to the Free
00019    Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00020 
00021    As a special exception, the authors of SANE give permission for
00022    additional uses of the libraries contained in this release of SANE.
00023    
00024    The exception is that, if you link a SANE library with other files
00025    to produce an executable, this does not by itself cause the
00026    resulting executable to be covered by the GNU General Public
00027    License.  Your use of that executable is in no way restricted on
00028    account of linking the SANE library code into it.
00029    
00030    This exception does not, however, invalidate any other reasons why
00031    the executable file might be covered by the GNU General Public
00032    License.
00033    
00034    If you submit changes to SANE to the maintainers to be included in
00035    a subsequent release, you agree by submitting the changes that
00036    those changes may be distributed with this exception intact.
00037    
00038    If you write modifications of your own for SANE, it is your choice
00039    whether to permit this exception to apply to your modifications.
00040    If you do not wish that, delete this exception notice. 
00041 */
00042 
00048 /* Doxygen documentation */
00049 
00087 #ifndef sanei_h
00088 #define sanei_h
00089 
00090 #include <sane/sane.h>
00091 
00137 /* @} */
00138 
00139 /* A few convenience macros:  */
00141 #define NELEMS(a)       ((int)(sizeof (a) / sizeof (a[0])))
00142 
00144 #define STRINGIFY1(x)   #x
00145 
00146 #define STRINGIFY(x)    STRINGIFY1(x)
00147 
00149 #define PASTE1(x,y)     x##y
00150 
00151 #define PASTE(x,y)      PASTE1(x,y)
00152 
00153 extern SANE_Status sanei_check_value (const SANE_Option_Descriptor * opt,
00154                                       void * value);
00155 
00156 extern SANE_Status sanei_constrain_value (const SANE_Option_Descriptor * opt,
00157                                           void * value, SANE_Word * info);
00158 
00159 
00160 #endif /* sanei_h */

Generated on Sat Jul 26 05:45:27 2008 for SANEI by  doxygen 1.5.1