LeviLamina
Loading...
Searching...
No Matches
ScriptDiagnosticsPublishToFile.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/FlushingIOController.h"
7#include "mc/scripting/diagnostics/IScriptStatPublisher.h"
8
9// auto generated forward declare list
10// clang-format off
11class ScriptStat;
12namespace Core { class Path; }
13namespace Core { class Result; }
14namespace cereal { struct ReflectionCtx; }
15// clang-format on
16
17class ScriptDiagnosticsPublishToFile : public ::IScriptStatPublisher {
18public:
19 // ScriptDiagnosticsPublishToFile inner types declare
20 // clang-format off
21 class StreamFlusher;
22 // clang-format on
23
24 // ScriptDiagnosticsPublishToFile inner types define
25 class StreamFlusher : public ::Bedrock::FlushingIOController::Flusher {
26 public:
27 // member variables
28 // NOLINTBEGIN
32 // NOLINTEND
33
34 public:
35 // prevent constructor by default
36 StreamFlusher& operator=(StreamFlusher const&);
37 StreamFlusher(StreamFlusher const&);
38 StreamFlusher();
39
40 public:
41 // virtual functions
42 // NOLINTBEGIN
43 virtual ~StreamFlusher() /*override*/ = default;
44
45 virtual ::Core::Result _flushBuffer(void const* data, uint64 amount) /*override*/;
46 // NOLINTEND
47
48 public:
49 // virtual function thunks
50 // NOLINTBEGIN
51 MCNAPI ::Core::Result $_flushBuffer(void const* data, uint64 amount);
52
53
54 // NOLINTEND
55
56 public:
57 // vftables
58 // NOLINTBEGIN
59 MCNAPI static void** $vftable();
60 // NOLINTEND
61 };
62
63public:
64 // member variables
65 // NOLINTBEGIN
73 // NOLINTEND
74
75public:
76 // prevent constructor by default
77 ScriptDiagnosticsPublishToFile& operator=(ScriptDiagnosticsPublishToFile const&);
78 ScriptDiagnosticsPublishToFile(ScriptDiagnosticsPublishToFile const&);
79 ScriptDiagnosticsPublishToFile();
80
81public:
82 // virtual functions
83 // NOLINTBEGIN
84 virtual ~ScriptDiagnosticsPublishToFile() /*override*/ = default;
85
86 virtual bool isStatPublisherEnabled() const /*override*/;
87
88 virtual void publishStats(uint64 collectedTick, ::std::vector<::ScriptStat> const& stats) /*override*/;
89 // NOLINTEND
90
91public:
92 // member functions
93 // NOLINTBEGIN
94 MCNAPI ScriptDiagnosticsPublishToFile(
95 ::cereal::ReflectionCtx& ctx,
96 bool autoStart,
97 ::std::optional<uint> maxCaptureFiles,
98 ::std::optional<uint> maxCaptureFileSize
99 );
100
101 MCNAPI bool _createNewCapture(::Core::Path capturePath);
102
104
105 MCNAPI ::Core::Path _getCapturePath(int captureIndex) const;
106
107 MCNAPI bool _initBasePath();
108
109 MCNAPI bool startCapture();
110
111 MCNAPI ::std::optional<::Core::Path> stopCapture();
112 // NOLINTEND
113
114public:
115 // constructor thunks
116 // NOLINTBEGIN
117 MCNAPI void* $ctor(
118 ::cereal::ReflectionCtx& ctx,
119 bool autoStart,
120 ::std::optional<uint> maxCaptureFiles,
121 ::std::optional<uint> maxCaptureFileSize
122 );
123 // NOLINTEND
124
125public:
126 // virtual function thunks
127 // NOLINTBEGIN
128 MCNAPI bool $isStatPublisherEnabled() const;
129
130 MCNAPI void $publishStats(uint64 collectedTick, ::std::vector<::ScriptStat> const& stats);
131
132
133 // NOLINTEND
134
135public:
136 // vftables
137 // NOLINTBEGIN
138 MCNAPI static void** $vftable();
139 // NOLINTEND
140};
Definition FlushingIOController.h:20
Definition Path.h:17
Definition Result.h:11
Definition IScriptStatPublisher.h:10
Definition Path.h:16
Definition ScriptDiagnosticsPublishToFile.h:25
MCAPI::Core::Result $_flushBuffer(void const *data, uint64 amount)
MCAPI void * $ctor(::cereal::ReflectionCtx &ctx, bool autoStart, ::std::optional< uint > maxCaptureFiles, ::std::optional< uint > maxCaptureFileSize)
MCAPI bool $isStatPublisherEnabled() const
MCAPI ::std::optional<::Core::Path > stopCapture()
static MCAPI void ** $vftable()
MCAPI::Core::Path _getCapturePath(int captureIndex) const
MCAPI bool _createNewCapture(::Core::Path capturePath)
MCAPI void $publishStats(uint64 collectedTick, ::std::vector<::ScriptStat > const &stats)
Definition ScriptStat.h:10
STL namespace.
Definition ReflectionCtx.h:11
Definition ctx.h:5
Definition Alias.h:14