aboutsummaryrefslogtreecommitdiff
path: root/zencore/trace.cpp
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2021-05-11 13:05:39 +0200
committerStefan Boberg <[email protected]>2021-05-11 13:05:39 +0200
commitf8d9ac5d13dd37b8b57af0478e77ba1e75c813aa (patch)
tree1daf7621e110d48acd5e12e3073ce48ef0dd11b2 /zencore/trace.cpp
downloadzen-f8d9ac5d13dd37b8b57af0478e77ba1e75c813aa.tar.xz
zen-f8d9ac5d13dd37b8b57af0478e77ba1e75c813aa.zip
Adding zenservice code
Diffstat (limited to 'zencore/trace.cpp')
-rw-r--r--zencore/trace.cpp51
1 files changed, 51 insertions, 0 deletions
diff --git a/zencore/trace.cpp b/zencore/trace.cpp
new file mode 100644
index 000000000..8313b3b66
--- /dev/null
+++ b/zencore/trace.cpp
@@ -0,0 +1,51 @@
+// Copyright Epic Games, Inc. All Rights Reserved.
+
+#include "zencore/trace.h"
+#include <doctest/doctest.h>
+#include <zencore/windows.h>
+
+namespace zen {
+
+void
+Tracer::Log(const TraceEvent& e)
+{
+ TraceBroadcast(e);
+}
+
+Tracer g_globalTracer;
+
+struct alignas(64) TraceHandlerList
+{
+ enum
+ {
+ kMaxHandlers = 7
+ };
+
+ uint8_t handlerCount = 0;
+ TraceHandler* handlers[kMaxHandlers];
+};
+
+static TraceHandlerList g_traceHandlers;
+
+void
+TraceBroadcast(const TraceEvent& e)
+{
+ for (size_t i = 0; i < g_traceHandlers.handlerCount; ++i)
+ {
+ g_traceHandlers.handlers[i]->Trace(e);
+ }
+}
+
+void
+trace_forcelink()
+{
+}
+
+//////////////////////////////////////////////////////////////////////////
+
+TEST_CASE("Tracer")
+{
+ SUBCASE("Simple") { U_LOG_INFO("bajs"); }
+}
+
+} // namespace zen