ashmem.h revision 7be52b1a0e052635b361f9d8c186adbbcc981b7e
1/* cutils/ashmem.h 2 ** 3 ** Copyright 2008 The Android Open Source Project 4 ** 5 ** This file is dual licensed. It may be redistributed and/or modified 6 ** under the terms of the Apache 2.0 License OR version 2 of the GNU 7 ** General Public License. 8 */ 9 10#ifndef _CUTILS_ASHMEM_H 11#define _CUTILS_ASHMEM_H 12 13#ifdef __cplusplus 14extern "C" { 15#endif 16 17int ashmem_create_region(const char *name, size_t size); 18int ashmem_set_prot_region(int fd, int prot); 19int ashmem_pin_region(int fd, size_t offset, size_t len); 20int ashmem_unpin_region(int fd, size_t offset, size_t len); 21int ashmem_get_size_region(int fd); 22 23#ifdef __cplusplus 24} 25#endif 26 27#ifndef __ASHMEMIOC /* in case someone included <linux/ashmem.h> too */ 28 29#define ASHMEM_NAME_LEN 256 30 31#define ASHMEM_NAME_DEF "dev/ashmem" 32 33/* Return values from ASHMEM_PIN: Was the mapping purged while unpinned? */ 34#define ASHMEM_NOT_PURGED 0 35#define ASHMEM_WAS_PURGED 1 36 37/* Return values from ASHMEM_UNPIN: Is the mapping now pinned or unpinned? */ 38#define ASHMEM_IS_UNPINNED 0 39#define ASHMEM_IS_PINNED 1 40 41#endif /* ! __ASHMEMIOC */ 42 43#endif /* _CUTILS_ASHMEM_H */ 44