3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/profiler/ProfileClient.h"
7#include "mc/deps/profiler/ThreadFrameType.h"
8#include "mc/platform/brstd/basic_cstring_view.h"
13namespace Bedrock::Profile::Whisker {
struct ScopeData; }
19namespace Core::Profile {
38 KeepAlive& operator=(KeepAlive
const&);
39 KeepAlive(KeepAlive
const&);
64 virtual void onFrameTransition(uchar previousFrameType) ;
66 virtual void onThreadCreate(
68 ::Core::Profile::ThreadFrameType frameType
71 virtual void onThreadDestroy() ;
73 virtual void onMainThreadCreate() ;
75 virtual void onMainThreadDestroy() ;
77 virtual void enterCPUProfile(
82 virtual void leaveCPUProfile(
87 virtual void generateCPUProfileTokenStatic(
100 MCNAPI
void fetchData(::gsl::span<::Bedrock::Profile::Whisker::ScopeData> output, ::std::thread::id thread)
const;
102 MCNAPI ::std::shared_ptr<::Core::Profile::Whisker_ProfileClient::KeepAlive const>
103 makeActive(::std::string_view consumerName);
108 queryThreadIDsByType(::std::vector<::std::thread::id>& output, ::Core::Profile::ThreadFrameType threadType)
const;
110 MCNAPI
void resolveUniqueKeysByName(
111 ::gsl::span<void const*> output,
112 ::gsl::span<::std::string_view const> names,
113 ::std::thread::id thread
122 MCNAPI static ::Core::Profile::Whisker_ProfileClient getInterface();
133 ::Core::Profile::ThreadFrameType frameType
Definition ScopeStackStorage.h:7
Definition CPUProfileToken.h:7
Definition ProfileClient.h:27
Definition Whisker_ProfileClient.h:21
MCAPI void $onMainThreadDestroy()
static MCAPI void ** $vftable()
MCAPI void $generateCPUProfileTokenStatic(::Core::Profile::CPUProfileToken &target, char const *group, ::Bedrock::Profiler::details::StaticProfLabel label, uint color, ::brstd::source_location const &location)
MCAPI void $onMainThreadCreate()
MCAPI void $onThreadCreate(::brstd::basic_cstring_view< char, ::std::char_traits< char > > name, ::Core::Profile::ThreadFrameType frameType)
MCAPI void $onThreadDestroy()
MCAPI void $leaveCPUProfile(::Bedrock::Profile::ScopeStackStorage &scope, ::Core::Profile::CPUProfileToken const &token)
MCAPI void $enterCPUProfile(::Bedrock::Profile::ScopeStackStorage &scope, ::Core::Profile::CPUProfileToken const &token)
MCAPI void $onFrameTransition(uchar previousFrameType)
Definition basic_cstring_view.h:8
Definition StaticProfLabel.h:7
Definition Whisker_ProfileClient.h:29
Definition source_location.h:7