home *** CD-ROM | disk | FTP | other *** search
/ Windows Graphics Programming / Feng_Yuan_Win32_GDI_DirectX.iso / Samples / include / jlib / jmemnobs.cpp < prev    next >
C/C++ Source or Header  |  2000-05-16  |  3KB  |  80 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.  * jmemnobs.c
  12.  *
  13.  * Copyright (C) 1992-1996, 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 provides a really simple implementation of the system-
  18.  * dependent portion of the JPEG memory manager.  This implementation
  19.  * assumes that no backing-store files are needed: all required space
  20.  * can be obtained from malloc().
  21.  * This is very portable in the sense that it'll compile on almost anything,
  22.  * but you'd better have lots of main memory (or virtual memory) if you want
  23.  * to process big images.
  24.  * Note that the max_memory_to_use option is ignored by this implementation.
  25.  */
  26.  
  27. #define JPEG_INTERNALS
  28. #include "jinclude.h"
  29. #include "jpeglib.h"
  30. #include "jmemsys.h"        /* import the system-dependent declarations */
  31.  
  32. /*
  33.  * Memory allocation and freeing are controlled by the regular library
  34.  * routines malloc() and free().
  35.  */
  36.  
  37. /*
  38.  * This routine computes the total memory space available for allocation.
  39.  * Here we always say, "we got all you want bud!"
  40.  */
  41.  
  42. GLOBAL(long)
  43. jpeg_mem_available (j_common_ptr cinfo, long min_bytes_needed,
  44.             long max_bytes_needed, long already_allocated)
  45. {
  46.   return max_bytes_needed;
  47. }
  48.  
  49.  
  50. /*
  51.  * Backing store (temporary file) management.
  52.  * Since jpeg_mem_available always promised the moon,
  53.  * this should never be called and we can just error out.
  54.  */
  55.  
  56. GLOBAL(void)
  57. jpeg_open_backing_store (j_common_ptr cinfo, backing_store_ptr info,
  58.              long total_bytes_needed)
  59. {
  60.   cinfo->ERREXIT(JERR_NO_BACKING_STORE);
  61. }
  62.  
  63.  
  64. /*
  65.  * These routines take care of any system-dependent initialization and
  66.  * cleanup required.  Here, there isn't any.
  67.  */
  68.  
  69. GLOBAL(long)
  70. jpeg_mem_init (j_common_ptr cinfo)
  71. {
  72.   return 0;            /* just set max_memory_to_use to 0 */
  73. }
  74.  
  75. GLOBAL(void)
  76. jpeg_mem_term (j_common_ptr cinfo)
  77. {
  78.   /* no work */
  79. }
  80.