Lugdunum
0.1.0
include
lug
System
Memory
Policies
MemoryMarker.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstring>
4
#include <
lug/System/Export.hpp
>
5
6
namespace
lug
{
7
namespace
System {
8
namespace
Memory {
9
namespace
Policies {
10
11
class
NoMemoryMarking
{
12
public
:
13
inline
void
markAllocation
(
void
* ptr,
size_t
size)
const
;
14
inline
void
markDeallocation
(
void
* ptr,
size_t
size)
const
;
15
};
16
17
class
SimpleMemoryMarking
{
18
public
:
19
inline
void
markAllocation
(
void
* ptr,
size_t
size)
const
;
20
inline
void
markDeallocation
(
void
* ptr,
size_t
size)
const
;
21
22
private
:
23
static
constexpr uint8_t AllocationMagic = 0xCD;
24
static
constexpr uint8_t DeallocationMagic = 0xDD;
25
};
26
27
#include <
lug/System/Memory/Policies/MemoryMarker.inl
>
28
29
}
// Policies
30
}
// Memory
31
}
// System
32
}
// lug
lug::System::Memory::Policies::SimpleMemoryMarking
Definition:
MemoryMarker.hpp:17
lug::System::Memory::Policies::NoMemoryMarking::markAllocation
void markAllocation(void *ptr, size_t size) const
Definition:
MemoryMarker.inl:1
Export.hpp
lug
Definition:
Application.hpp:11
lug::System::Memory::Policies::NoMemoryMarking::markDeallocation
void markDeallocation(void *ptr, size_t size) const
Definition:
MemoryMarker.inl:2
lug::System::Memory::Policies::NoMemoryMarking
Definition:
MemoryMarker.hpp:11
MemoryMarker.inl
Generated by
1.8.13