project64/Source/Common/MemoryManagement.h

17 lines
497 B
C
Raw Normal View History

2016-01-13 09:39:23 +00:00
#pragma once
#include <stddef.h>
2016-01-13 09:39:23 +00:00
enum MEM_PROTECTION
{
MEM_NOACCESS,
MEM_READONLY,
MEM_READWRITE,
MEM_EXECUTE_READWRITE,
2016-01-13 09:39:23 +00:00
};
2022-10-03 08:04:42 +00:00
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);