aboutsummaryrefslogtreecommitdiff
path: root/zencore/zencore.cpp
blob: 4648aac9e640d329e5411c26f149ec2d51463f0c (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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// Copyright Epic Games, Inc. All Rights Reserved.

#include <zencore/zencore.h>

#include <zencore/windows.h>

#include <zencore/blake3.h>
#include <zencore/compactbinary.h>
#include <zencore/compactbinarybuilder.h>
#include <zencore/compactbinarypackage.h>
#include <zencore/compositebuffer.h>
#include <zencore/iobuffer.h>
#include <zencore/memory.h>
#include <zencore/refcount.h>
#include <zencore/sha1.h>
#include <zencore/snapshot_manifest.h>
#include <zencore/stats.h>
#include <zencore/stream.h>
#include <zencore/string.h>
#include <zencore/thread.h>
#include <zencore/timer.h>
#include <zencore/trace.h>
#include <zencore/uid.h>

bool
IsPointerToStack(const void* ptr)
{
	ULONG_PTR low, high;
	GetCurrentThreadStackLimits(&low, &high);

	const uintptr_t intPtr = reinterpret_cast<uintptr_t>(ptr);

	return (intPtr - low) < (high - low);
}

static int	s_ApplicationExitCode = 0;
static bool s_ApplicationExitRequested;

bool
IsApplicationExitRequested()
{
	return s_ApplicationExitRequested;
}

void
RequestApplicationExit(int ExitCode)
{
	s_ApplicationExitCode	   = ExitCode;
	s_ApplicationExitRequested = true;
}

void
zencore_forcelinktests()
{
	zen::blake3_forcelink();
	zen::compositebuffer_forcelink();
	zen::iobuffer_forcelink();
	zen::memory_forcelink();
	zen::refcount_forcelink();
	zen::sha1_forcelink();
	zen::snapshotmanifest_forcelink();
	zen::stats_forcelink();
	zen::stream_forcelink();
	zen::string_forcelink();
	zen::thread_forcelink();
	zen::timer_forcelink();
	zen::trace_forcelink();
	zen::uid_forcelink();
	zen::uson_forcelink();
	zen::usonbuilder_forcelink();
	zen::usonpackage_forcelink();
}