51 static FORCEINLINE
void* Memmove(
void* Dest,
const void* Src, SIZE_T Count)
53 return FPlatformMemory::Memmove(Dest, Src, Count);
56 static FORCEINLINE int32_t Memcmp(
const void* Buf1,
const void* Buf2, SIZE_T Count)
58 return FPlatformMemory::Memcmp(Buf1, Buf2, Count);
61 static FORCEINLINE
void* Memset(
void* Dest, uint8_t Char, SIZE_T Count)
63 return FPlatformMemory::Memset(Dest, Char, Count);
67 static FORCEINLINE
void Memset(T& Src, uint8_t ValueToSet)
69 KR_CORE_ASSERT(!TIsPointer<T>::Value,
"For pointers use the three parameters function");
70 Memset(&Src, ValueToSet,
sizeof(T));
73 static FORCEINLINE
void* Memzero(
void* Dest, SIZE_T Count)
75 return FPlatformMemory::Memzero(Dest, Count);
79 static FORCEINLINE
void Memzero(T& Src)
81 KR_CORE_ASSERT(!TIsPointer<T>::Value,
"For pointers use the two parameters function");
82 Memzero(&Src,
sizeof(T));
85 static FORCEINLINE
void* Memcpy(
void* Dest,
const void* Src, SIZE_T Count)
87 return FPlatformMemory::Memcpy(Dest, Src, Count);
91 static FORCEINLINE
void Memcpy(T& Dest,
const T& Src)
93 KR_CORE_ASSERT(!TIsPointer<T>::Value,
"For pointers use the three parameters function");
94 Memcpy(&Dest, &Src,
sizeof(T));
97 static FORCEINLINE
void* BigBlockMemcpy(
void* Dest,
const void* Src, SIZE_T Count)
99 return FPlatformMemory::BigBlockMemcpy(Dest, Src, Count);
102 static FORCEINLINE
void* StreamingMemcpy(
void* Dest,
const void* Src, SIZE_T Count)
104 return FPlatformMemory::StreamingMemcpy(Dest, Src, Count);
107 static FORCEINLINE
void* ParallelMemcpy(
void* Dest,
const void* Src, SIZE_T Count, EMemcpyCachePolicy Policy = EMemcpyCachePolicy::StoreCached)
109 return FPlatformMemory::ParallelMemcpy(Dest, Src, Count, Policy);
113 static FORCEINLINE
void Memswap(
void* Ptr1,
void* Ptr2, SIZE_T Size)
115 FPlatformMemory::Memswap(Ptr1, Ptr2, Size);
121 static FORCEINLINE
void* SystemMalloc(SIZE_T Size)
124 return ::malloc(Size);
127 static FORCEINLINE
void SystemFree(
void* Ptr)
137 static void* Malloc(SIZE_T Count, uint32 Alignment = DEFAULT_ALIGNMENT);
142 static FORCEINLINE
void* MallocZeroed(SIZE_T Count, uint32 Alignment = DEFAULT_ALIGNMENT)
144 void* Memory = Malloc(Count, Alignment);
145 Memzero(Memory, Count);