home *** CD-ROM | disk | FTP | other *** search
/ Windows Graphics Programming / Feng_Yuan_Win32_GDI_DirectX.iso / Samples / include / jlib / jinclude.h < prev    next >
C/C++ Source or Header  |  2000-05-16  |  3KB  |  58 lines

  1. //-------------------------------------------------------------------------//
  2. //          Windows Graphics Programming: Win32 GDI and DirectDraw         //
  3. //                        ISBN  0-13-086985-6                              //
  4. //                                                                         //
  5. //  Modified by: Yuan, Feng                             www.fengyuan.com   //
  6. //  Changes    : C++, exception, in-memory source, BGR byte order          //
  7. //  Version    : 1.00.000, May 31, 2000                                    //
  8. //-------------------------------------------------------------------------//
  9.  
  10. /*
  11.  * jinclude.h
  12.  *
  13.  * Copyright (C) 1991-1994, Thomas G. Lane.
  14.  * This file is part of the Independent JPEG Group's software.
  15.  * For conditions of distribution and use, see the accompanying README file.
  16.  *
  17.  * This file exists to provide a single place to fix any problems with
  18.  * including the wrong system include files.  (Common problems are taken
  19.  * care of by the standard jconfig symbols, but on really weird systems
  20.  * you may have to edit this file.)
  21.  *
  22.  * NOTE: this file is NOT intended to be included by applications using the
  23.  * JPEG library.  Most applications need only include jpeglib.h.
  24.  */
  25.  
  26.  
  27. /* Include auto-config file to find out which system include files we need. */
  28.  
  29. #include "jconfig.h"        /* auto configuration options */
  30. #define JCONFIG_INCLUDED    /* so that jpeglib.h doesn't do it again */
  31.  
  32. /*
  33.  * We need the NULL macro and size_t typedef.
  34.  * On an ANSI-conforming system it is sufficient to include <stddef.h>.
  35.  * Otherwise, we get them from <stdlib.h> or <stdio.h>; we may have to
  36.  * pull in <sys/types.h> as well.
  37.  * Note that the core JPEG library does not require <stdio.h>;
  38.  * only the default error handler and data source/destination modules do.
  39.  * But we must pull it in because of the references to FILE in jpeglib.h.
  40.  * You can remove those references if you want to compile without <stdio.h>.
  41.  */
  42.  
  43. #include <stddef.h>
  44. #include <stdlib.h>
  45. #include <stdio.h>
  46. #include <string.h>
  47.  
  48. /*
  49.  * The modules that use fread() and fwrite() always invoke them through
  50.  * these macros.  On some systems you may need to twiddle the argument casts.
  51.  * CAUTION: argument order is different from underlying functions!
  52.  */
  53.  
  54. #define JFREAD(file,buf,sizeofbuf)  \
  55.   ((size_t) fread((void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
  56. #define JFWRITE(file,buf,sizeofbuf)  \
  57.   ((size_t) fwrite((const void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
  58.