project64/Source/Common/MemoryManagement.h

16 lines
471 B
C

#pragma once
enum MEM_PROTECTION
{
MEM_NOACCESS,
MEM_READONLY,
MEM_READWRITE,
MEM_EXECUTE_READWRITE,
};
void* AllocateAddressSpace(size_t size, void * base_address = 0);
bool FreeAddressSpace(void* addr, size_t size);
void* CommitMemory(void* addr, size_t size, MEM_PROTECTION memProtection);
bool DecommitMemory(void* addr, size_t size);
bool ProtectMemory(void* addr, size_t size, MEM_PROTECTION memProtection, MEM_PROTECTION * OldProtect = nullptr);