ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvs/xvidcore/src/utils/mem_align.c
(Generate patch)

Comparing xvidcore/src/utils/mem_align.c (file contents):
Revision 1.6 by edgomez, Wed Jun 12 20:38:41 2002 UTC vs.
Revision 1.7 by edgomez, Thu Jun 13 22:05:09 2002 UTC

# Line 1 | Line 1
1 + /*****************************************************************************
2 + *
3 + *  XVID MPEG-4 VIDEO CODEC
4 + *  - Aligned memory allocator -
5 + *
6 + *  This program is an implementation of a part of one or more MPEG-4
7 + *  Video tools as specified in ISO/IEC 14496-2 standard.  Those intending
8 + *  to use this software module in hardware or software products are
9 + *  advised that its use may infringe existing patents or copyrights, and
10 + *  any such use would be at such party's own risk.  The original
11 + *  developer of this software module and his/her company, and subsequent
12 + *  editors and their companies, will have no liability for use of this
13 + *  software or modifications or derivatives thereof.
14 + *
15 + *  This program is free software ; you can redistribute it and/or modify
16 + *  it under the terms of the GNU General Public License as published by
17 + *  the Free Software Foundation ; either version 2 of the License, or
18 + *  (at your option) any later version.
19 + *
20 + *  This program is distributed in the hope that it will be useful,
21 + *  but WITHOUT ANY WARRANTY ; without even the implied warranty of
22 + *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23 + *  GNU General Public License for more details.
24 + *
25 + *  You should have received a copy of the GNU General Public License
26 + *  along with this program ; if not, write to the Free Software
27 + *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
28 + *
29 + ****************************************************************************/
30 + /*****************************************************************************
31 + *
32 + *  History
33 + *
34 + *  - Thu Jun 13 23:50:07 2002 Added legal header
35 + *
36 + *  $Id$
37 + *
38 + ****************************************************************************/
39 +
40 +
41   #include <stdlib.h>
42   #include <stdio.h>
43   #include "mem_align.h"
44  
45 + /*****************************************************************************
46 + * xvid_malloc
47 + *
48 + * This function allocates 'size' bytes (usable by the user) on the heap and
49 + * takes care of the requested 'alignment'.
50 + * In order to align the allocated memory block, the xvid_malloc allocates
51 + * 'size' bytes + 'alignment' bytes. So try to keep alignment very small
52 + * when allocating small pieces of memory.
53 + *
54 + * NB : a block allocated by xvid_malloc _must_ be freed with xvid_free
55 + *      (the libc free will return an error)
56 + *
57 + * Returned value : - NULL on error
58 + *                  - Pointer to the allocated aligned block
59 + *
60 + ****************************************************************************/
61 +
62   void *
63   xvid_malloc(size_t size,
64                          uint8_t alignment)
# Line 62 | Line 119 | xvid_malloc(size_t size,
119  
120   }
121  
122 + /*****************************************************************************
123 + * xvid_free
124 + *
125 + * Free a previously 'xvid_malloc' allocated block. Does not free NULL
126 + * references.
127 + *
128 + * Returned value : None.
129 + *
130 + ****************************************************************************/
131 +
132   void
133   xvid_free(void *mem_ptr)
134   {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines