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 ::std::string_view getName()
const;
43 virtual bool isConditionalAndExternalProfiler()
const;
45 virtual bool isActivelyConsumingData()
const;
47 virtual uint getMaxTokens()
const;
49 virtual void onThreadCreate(
51 ::Core::Profile::ThreadFrameType frameType
54 virtual void onThreadDestroy();
56 virtual void onMainThreadCreate();
58 virtual void onMainThreadDestroy();
60 virtual void onHeapAllocation(
void const*, uint64, ::Memory::MemoryCategory,
char const*);
62 virtual void onHeapFree(
void const*, uint64, ::Memory::MemoryCategory,
char const*);
67 virtual void enterCPUProfileDynamic(
76 virtual uchar createGPUContext(
char const*, int64,
float,
bool,
bool);
83 virtual void emitGPUTiming(uint, int64, int64);
85 virtual void syncGPUTiming(uchar, int64, int64, int64);
96 virtual void beginCapture(
char const*);
98 virtual void endCapture(
bool);
100 virtual void logCaptureResults();
102 virtual bool isCaptureEnding();
104 virtual void generateCPUProfileTokenStatic(
112 virtual void generateCPUProfileTokenLegacy(
123 virtual void generateGPUProfileToken(
131 virtual void generateGPUProfileTokenDynamic(
141 virtual void generateCounterTokenWithConfig(
144 ::Core::Profile::CounterDisplayFormat,
146 ::Core::Profile::LegacyCounterFlags
149 virtual void generateLogMessageTokenStatic(
157 virtual void generateLogMessageTokenDynamic(
164 virtual int64 getProfilerTimestamp();
166 virtual void dumpFile(
char const*, ::Core::Profile::FileExtension);
190 ::Core::Profile::ThreadFrameType frameType
201 MCNAPI
void $onHeapFree(
void const*, uint64, ::Memory::MemoryCategory,
char const*);
283 ::Core::Profile::CounterDisplayFormat,
285 ::Core::Profile::LegacyCounterFlags
305 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::std::string_view $getName() const
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