aboutsummaryrefslogtreecommitdiff
path: root/src/zencore/memtrack/tracemalloc.h
blob: 54606ac457966dde968ea6ee2e6bc87740f70452 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once

#include <zencore/memory/fmalloc.h>
#include <zencore/memory/memorytrace.h>

namespace zen {

class FTraceMalloc : public FMalloc
{
public:
	FTraceMalloc(FMalloc* InMalloc);
	virtual ~FTraceMalloc();

	virtual void* Malloc(SIZE_T Count, uint32 Alignment) override;
	virtual void* Realloc(void* Original, SIZE_T Count, uint32 Alignment) override;
	virtual void  Free(void* Original) override;

	virtual void OnMallocInitialized() override { WrappedMalloc->OnMallocInitialized(); }

	FMalloc* WrappedMalloc;
};

}  // namespace zen