Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

  1. /*
  2.  * Copyright (c) 2005, HervĂ© Drolon, FreeImage Team
  3.  * All rights reserved.
  4.  *
  5.  * Redistribution and use in source and binary forms, with or without
  6.  * modification, are permitted provided that the following conditions
  7.  * are met:
  8.  * 1. Redistributions of source code must retain the above copyright
  9.  *    notice, this list of conditions and the following disclaimer.
  10.  * 2. Redistributions in binary form must reproduce the above copyright
  11.  *    notice, this list of conditions and the following disclaimer in the
  12.  *    documentation and/or other materials provided with the distribution.
  13.  *
  14.  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
  15.  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  16.  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  17.  * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  18.  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  19.  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  20.  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  21.  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  22.  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  23.  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  24.  * POSSIBILITY OF SUCH DAMAGE.
  25.  */
  26. #ifndef __J3D_LIB_H
  27. #define __J3D_LIB_H
  28. /**
  29. @file jp3d_lib.h
  30. @brief Internal functions
  31.  
  32. The functions in JP3D_LIB.C are internal utilities mainly used for memory management.
  33. */
  34.  
  35. /** @defgroup MISC MISC - Miscellaneous internal functions */
  36. /*@{*/
  37.  
  38. /** @name Funciones generales */
  39. /*@{*/
  40. /* ----------------------------------------------------------------------- */
  41.  
  42. /**
  43. Difference in successive opj_clock() calls tells you the elapsed time
  44. @return Returns time in seconds
  45. */
  46. double opj_clock();
  47.  
  48. /**
  49. Allocate a memory block with elements initialized to 0
  50. @param size Bytes to allocate
  51. @return Returns a void pointer to the allocated space, or NULL if there is insufficient memory available
  52. */
  53. void* opj_malloc( size_t size );
  54.  
  55. /**
  56. Reallocate memory blocks.
  57. @param memblock Pointer to previously allocated memory block
  58. @param size New size in bytes
  59. @return Returns a void pointer to the reallocated (and possibly moved) memory block
  60. */
  61. void* opj_realloc( void *memblock, size_t size );
  62.  
  63. /**
  64. Deallocates or frees a memory block.
  65. @param memblock Previously allocated memory block to be freed
  66. */
  67. void opj_free( void *memblock );
  68.  
  69. /* ----------------------------------------------------------------------- */
  70. /*@}*/
  71.  
  72. /*@}*/
  73.  
  74. #endif /* __J3D_LIB_H */
  75.  
  76.