3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/memory/MemoryCategory.h"
7#include "mc/deps/profiler/CounterDisplayFormat.h"
8#include "mc/deps/profiler/FileExtension.h"
9#include "mc/deps/profiler/LegacyCounterFlags.h"
10#include "mc/deps/profiler/ThreadFrameType.h"
11#include "mc/platform/brstd/basic_cstring_view.h"
25namespace Core::Profile {
33 virtual void initializeProfile();
35 virtual void shutdownProfile();
37 virtual void setProfileStamp(::std::string_view);
39 virtual void onFrameTransition(uchar previousFrameType);
41 virtual bool isConditionalAndExternalProfiler()
const;
43 virtual bool isActivelyConsumingData()
const;
45 virtual uint getMaxTokens()
const;
47 virtual void onThreadCreate(
49 ::Core::Profile::ThreadFrameType frameType
52 virtual void onThreadDestroy();
54 virtual void onMainThreadCreate();
56 virtual void onMainThreadDestroy();
58 virtual void onHeapAllocation(
void const*, uint64, ::Memory::MemoryCategory,
char const*);
60 virtual void onHeapFree(
void const*, uint64, ::Memory::MemoryCategory,
char const*);
65 virtual void enterCPUProfileDynamic(
74 virtual uchar createGPUContext(
char const*, int64,
float,
bool,
bool);
81 virtual void emitGPUTiming(uint, int64, int64);
83 virtual void syncGPUTiming(uchar, int64, int64, int64);
94 virtual void beginCapture(
char const*);
96 virtual void endCapture(
bool);
98 virtual void logCaptureResults();
100 virtual bool isCaptureEnding();
102 virtual void generateCPUProfileTokenStatic(
110 virtual void generateCPUProfileTokenLegacy(
121 virtual void generateGPUProfileToken(
129 virtual void generateGPUProfileTokenDynamic(
139 virtual void generateCounterTokenWithConfig(
142 ::Core::Profile::CounterDisplayFormat,
144 ::Core::Profile::LegacyCounterFlags
147 virtual void generateLogMessageTokenStatic(
155 virtual void generateLogMessageTokenDynamic(
162 virtual int64 getProfilerTimestamp();
164 virtual void dumpFile(
char const*, ::Core::Profile::FileExtension);
186 ::Core::Profile::ThreadFrameType frameType
197 MCNAPI
void $onHeapFree(
void const*, uint64, ::Memory::MemoryCategory,
char const*);
279 ::Core::Profile::CounterDisplayFormat,
281 ::Core::Profile::LegacyCounterFlags
301 MCNAPI
void $dumpFile(
char const*, ::Core::Profile::FileExtension);
Definition ScopeStackStorage.h:7
Definition CounterToken.h:7
Definition GPUProfileToken.h:10
Definition LogMessageToken.h:7
Definition ProfileClient.h:27
MCAPI void $dumpFile(char const *, ::Core::Profile::FileExtension)
MCAPI uchar $createGPUContext(char const *, int64, float, bool, bool)
MCAPI void $counterSet(::Core::Profile::CounterToken const &, int64)
MCAPI void $shutdownProfile()
MCAPI void $setProfileStamp(::std::string_view)
MCAPI void $emitLogMessage(::Core::Profile::LogMessageToken const &)
MCAPI void $beginCapture(char const *)
MCAPI void $onHeapFree(void const *, uint64, ::Memory::MemoryCategory, char const *)
MCAPI bool $isCaptureEnding()
MCAPI void $generateCounterTokenWithConfig(::Core::Profile::CounterToken &, char const *, ::Core::Profile::CounterDisplayFormat, int64, ::Core::Profile::LegacyCounterFlags)
MCAPI void $emitGPUTiming(uint, int64, int64)
MCAPI void $onHeapAllocation(void const *, uint64, ::Memory::MemoryCategory, char const *)
MCAPI void $generateCPUProfileTokenStatic(::Core::Profile::ScopeToken &target, char const *group, ::Bedrock::Profiler::details::StaticProfLabel label, uint color, ::brstd::source_location const &location)
MCAPI void $syncGPUTiming(uchar, int64, int64, int64)
MCAPI void $generateLogMessageTokenDynamic(::Core::Profile::LogMessageToken &, char const *, uint, ::brstd::source_location const &)
MCAPI void $leaveCPUProfile(::Bedrock::Profile::ScopeStackStorage &scope, ::Core::Profile::ScopeToken const &token)
MCAPI bool $isConditionalAndExternalProfiler() const
MCAPI void $enterCPUProfile(::Bedrock::Profile::ScopeStackStorage &scope, ::Core::Profile::ScopeToken const &token)
MCAPI void $generateLogMessageTokenStatic(::Core::Profile::LogMessageToken &, char const *, ::Bedrock::Profiler::details::StaticProfLabel, uint, ::brstd::source_location const &)
MCAPI uint $enterGPUProfile(::Bedrock::Profile::ScopeStackStorage &, ::Core::Profile::GPUProfileToken const &, uchar)
MCAPI void $generateCounterToken(::Core::Profile::CounterToken &target, char const *label)
MCAPI int64 $getProfilerTimestamp()
MCAPI void $onMainThreadDestroy()
MCAPI void $onFrameTransition(uchar previousFrameType)
MCAPI void $onThreadCreate(::brstd::basic_cstring_view< char, ::std::char_traits< char > > name, ::Core::Profile::ThreadFrameType frameType)
MCAPI void $generateCPUProfileTokenDynamic(::Core::Profile::ScopeToken &, char const *, uint, ::brstd::source_location const &)
MCAPI uint $getMaxTokens() const
MCAPI void $generateGPUProfileToken(::Core::Profile::GPUProfileToken &, char const *, char const *, uint, ::brstd::source_location const &)
MCAPI void $leaveGPUProfile(::Bedrock::Profile::ScopeStackStorage &, uint)
MCAPI void $counterAdd(::Core::Profile::CounterToken const &, int64)
MCAPI void $enterCPUProfileDynamic(::Bedrock::Profile::ScopeStackStorage &scope, ::Core::Profile::ScopeToken const &token, ::Bedrock::Profiler::details::DynamicProfLabel)
MCAPI void $onThreadDestroy()
MCAPI bool $isActivelyConsumingData() const
MCAPI void $emitLogMessageDynamic(::Core::Profile::LogMessageToken const &, ::Bedrock::Profiler::details::DynamicProfLabel)
MCAPI void $onMainThreadCreate()
MCAPI void $endCapture(bool)
MCAPI void $generateCPUProfileTokenLegacy(::Core::Profile::ScopeToken &, char const *, char const *, uint, ::brstd::source_location const &)
MCAPI void $initializeProfile()
MCAPI void $logCaptureResults()
MCAPI void $generateGPUProfileTokenDynamic(::Core::Profile::GPUProfileToken &, char const *, char const *, uint, ::brstd::source_location const &)
Definition ScopeToken.h:7
Definition basic_cstring_view.h:8
Definition DynamicProfLabel.h:7
Definition StaticProfLabel.h:7
Definition source_location.h:7