ref: 486a73a9ce6983671280d883a3bf19558ec3102e
dir: /vpx_mem/vpx_mem.h/
/* * Copyright (c) 2010 The WebM project authors. All Rights Reserved. * * Use of this source code is governed by a BSD-style license * that can be found in the LICENSE file in the root of the source * tree. An additional intellectual property rights grant can be found * in the file PATENTS. All contributing project authors may * be found in the AUTHORS file in the root of the source tree. */ #ifndef VPX_MEM_VPX_MEM_H_ #define VPX_MEM_VPX_MEM_H_ #include "vpx_config.h" #if defined(__uClinux__) # include <lddk.h> #endif #ifndef REPLACE_BUILTIN_FUNCTIONS # define REPLACE_BUILTIN_FUNCTIONS 0 /* replace builtin functions with their vpx_ equivalents */ #endif #include <stdlib.h> #include <stddef.h> #if defined(__cplusplus) extern "C" { #endif void *vpx_memalign(size_t align, size_t size); void *vpx_malloc(size_t size); void *vpx_calloc(size_t num, size_t size); void *vpx_realloc(void *memblk, size_t size); void vpx_free(void *memblk); void *vpx_memcpy(void *dest, const void *src, size_t length); void *vpx_memset(void *dest, int val, size_t length); #if CONFIG_VP9 && CONFIG_VP9_HIGHBITDEPTH void *vpx_memset16(void *dest, int val, size_t length); #endif void *vpx_memmove(void *dest, const void *src, size_t count); /* some defines for backward compatibility */ #define DMEM_GENERAL 0 // (*)< #if REPLACE_BUILTIN_FUNCTIONS # ifndef __VPX_MEM_C__ # define memalign vpx_memalign # define malloc vpx_malloc # define calloc vpx_calloc # define realloc vpx_realloc # define free vpx_free # define memcpy vpx_memcpy # define memmove vpx_memmove # define memset vpx_memset # endif #endif #ifndef __VPX_MEM_C__ # include <string.h> # define vpx_memcpy memcpy # define vpx_memset memset # define vpx_memmove memmove #endif #ifdef VPX_MEM_PLTFRM # include VPX_MEM_PLTFRM #endif #if defined(__cplusplus) } #endif #endif // VPX_MEM_VPX_MEM_H_