1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 * Copyright (C) 2005 Jens Arnold
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
20 /* Global declarations to be used in rockbox software codecs */
25 #include <sys/types.h>
27 extern struct codec_api
*ci
;
29 /* Get these functions 'out of the way' of the standard functions. Not doing
30 * so confuses the cygwin linker, and maybe others. These functions need to
31 * be implemented elsewhere */
32 #define malloc(x) codec_malloc(x)
33 #define calloc(x,y) codec_calloc(x,y)
34 #define realloc(x,y) codec_realloc(x,y)
35 #define free(x) codec_free(x)
36 #define alloca(x) __builtin_alloca(x)
38 void* codec_malloc(size_t size
);
39 void* codec_calloc(size_t nmemb
, size_t size
);
40 void* codec_realloc(void* ptr
, size_t size
);
41 void codec_free(void* ptr
);
43 #define abs(x) ((x)>0?(x):-(x))
44 #define labs(x) abs(x)
46 void qsort(void *base
, size_t nmemb
, size_t size
, int(*compar
)(const void *, const void *));