LeviLamina
Loading...
Searching...
No Matches
CodeBuilderPerformance.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
8// clang-format on
9
11public:
12 // CodeBuilderPerformance inner types define
13 enum class Stage : int {
14 CacheCodescreenStart = 0,
15 CacheCodescreenFinish = 1,
16 WebviewLoadStart = 2,
17 WebviewLoadFinish = 3,
18 CreateNewProject = 4,
19 ProjectLoadStart = 5,
20 ProjectLoadFinish = 6,
21 TutorialLoadStart = 7,
22 TutorialLoadFinish = 8,
23 EditorContentLoaded = 9,
24 LoadBlockly = 10,
25 BlocksContentLoaded = 11,
26 NetworkRequest = 12,
27 DomLoaded = 13,
28 CodeRunStart = 14,
29 CodeRunComplete = 15,
30 FirstCommandSent = 16,
31 FirstCommandReceived = 17,
32 FirstCommandRun = 18,
33 };
34
35 enum class Flags : int {
36 AwaitingFirstCommandSent = 0,
37 AwaitingFirstCommandReceived = 1,
38 AwaitingFirstCommandRun = 2,
39 CodeScreenCached = 3,
40 CodeRunStarted = 4,
41 FirstWorldLaunch = 5,
42 FirstSessionLaunch = 6,
43 TutorialCached = 7,
44 Count = 8,
45 };
46
47public:
48 // static functions
49 // NOLINTBEGIN
51 ::IMinecraftEventing const* eventing,
52 ::CodeBuilderPerformance::Stage stage,
53 ::std::string_view codeProjectId,
54 uint64 tutorialSize,
55 uint64 downloadSize,
56 ::std::chrono::milliseconds duration
57 );
58
59 MCNAPI static ::std::chrono::milliseconds getElapsedTime(::CodeBuilderPerformance::Stage stage);
60
61 MCNAPI static ::std::string toString(::CodeBuilderPerformance::Stage stage);
62
63 MCNAPI static void updateLastTimestamp();
64 // NOLINTEND
65
66public:
67 // static variables
68 // NOLINTBEGIN
69 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mCacheCodeScreenTimeStart();
70
71 MCNAPI static ::std::string& mCodeBuilderProjectId();
72
73 MCNAPI static ::std::string& mCodeBuilderSessionId();
74
75 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mCodeRunStart();
76
77 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mCreateNewProjectTimeStart();
78
79 MCNAPI static ::std::string& mEditorName();
80
81 MCNAPI static ::std::bitset<8>& mFlags();
82
83 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mLastTimestamp();
84
85 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mProjectLoadTimeStart();
86
87 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mTutorialLoadTimeStart();
88
89 MCNAPI static ::std::optional<::std::chrono::steady_clock::time_point>& mWebviewLoadTimeStart();
90 // NOLINTEND
91};
Definition CodeBuilderPerformance.h:10
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mWebviewLoadTimeStart()
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mProjectLoadTimeStart()
static MCAPI void fireCodeBuilderLoadPerformanceEvent(::IMinecraftEventing const *eventing, ::CodeBuilderPerformance::Stage stage, ::std::string_view codeProjectId, uint64 tutorialSize, uint64 downloadSize, ::std::chrono::milliseconds duration)
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mCodeRunStart()
static MCAPI ::std::string & mCodeBuilderSessionId()
static MCAPI ::std::string & mCodeBuilderProjectId()
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mTutorialLoadTimeStart()
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mLastTimestamp()
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mCreateNewProjectTimeStart()
static MCAPI ::std::chrono::milliseconds getElapsedTime(::CodeBuilderPerformance::Stage stage)
static MCAPI ::std::string toString(::CodeBuilderPerformance::Stage stage)
static MCAPI void updateLastTimestamp()
static MCAPI ::std::string & mEditorName()
static MCAPI ::std::optional<::std::chrono::steady_clock::time_point > & mCacheCodeScreenTimeStart()
static MCAPI ::std::bitset< 8 > & mFlags()
Definition IMinecraftEventing.h:144