32 #ifndef ZYCORE_API_MEMORY_H
33 #define ZYCORE_API_MEMORY_H
41 #if defined(ZYAN_WINDOWS)
43 #elif defined(ZYAN_POSIX)
44 # include <sys/mman.h>
46 # error "Unsupported platform detected"
58 #if defined(ZYAN_WINDOWS)
60 ZYAN_PAGE_READONLY = PAGE_READONLY,
61 ZYAN_PAGE_READWRITE = PAGE_READWRITE,
62 ZYAN_PAGE_EXECUTE = PAGE_EXECUTE,
63 ZYAN_PAGE_EXECUTE_READ = PAGE_EXECUTE_READ,
64 ZYAN_PAGE_EXECUTE_READWRITE = PAGE_EXECUTE_READWRITE
66 #elif defined(ZYAN_POSIX)
68 ZYAN_PAGE_READONLY = PROT_READ,
69 ZYAN_PAGE_READWRITE = PROT_READ | PROT_WRITE,
70 ZYAN_PAGE_EXECUTE = PROT_EXEC,
71 ZYAN_PAGE_EXECUTE_READ = PROT_EXEC | PROT_READ,
72 ZYAN_PAGE_EXECUTE_READWRITE = PROT_EXEC | PROT_READ | PROT_WRITE
#define ZYCORE_EXPORT
Definition: Defines.h:221
ZYCORE_EXPORT ZyanStatus ZyanMemoryVirtualFree(void *address, ZyanUSize size)
ZYCORE_EXPORT ZyanU32 ZyanMemoryGetSystemAllocationGranularity()
ZYCORE_EXPORT ZyanU32 ZyanMemoryGetSystemPageSize()
ZYCORE_EXPORT ZyanStatus ZyanMemoryVirtualProtect(void *address, ZyanUSize size, ZyanMemoryPageProtection protection)
ZyanMemoryPageProtection_
Definition: Memory.h:57
enum ZyanMemoryPageProtection_ ZyanMemoryPageProtection
ZyanU32 ZyanStatus
Definition: Status.h:48