3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/debug/log/LogLevel.h"
7#include "mc/scripting/debugger/IScriptDebugger.h"
8#include "mc/scripting/diagnostics/IScriptStatPublisher.h"
19namespace Core {
class Path; }
34 enum class DebuggerMode :
int {
40 struct AutoAttachTelem {
50 AutoAttachTelem& operator=(AutoAttachTelem
const&);
51 AutoAttachTelem(AutoAttachTelem
const&);
79 ScriptDebugger& operator=(ScriptDebugger
const&);
80 ScriptDebugger(ScriptDebugger
const&);
86 virtual ~ScriptDebugger() ;
88 virtual ::ScriptDebuggerSettings
const& getSettings() const ;
90 virtual
bool connect(::
std::
string const& host, ushort port) ;
92 virtual
bool listen(ushort port) ;
96 virtual
void startProfiler() ;
98 virtual ::
std::vector<::Core::
Path> stopProfiler() ;
100 virtual
bool isStatPublisherEnabled() const ;
102 virtual
void publishStats(uint64 collectedTick, ::
std::vector<::
ScriptStat> const& stats) ;
108 MCNAPI ScriptDebugger(
112 ::cereal::ReflectionCtx&
ctx,
113 ::Scripting::ScriptEngine& scriptEngine,
133 MCNAPI
void sendLog(::LogLevel logLevel, ::
std::string_view message);
147 ::cereal::ReflectionCtx&
ctx,
148 ::Scripting::ScriptEngine& scriptEngine,
Definition CommandMessage.h:16
Definition IScriptDebuggerWatchdog.h:5
Definition IScriptDebugger.h:11
Definition IScriptStatPublisher.h:10
Definition IScriptTelemetryLogger.h:10
Definition MinecraftCommands.h:36
MCAPI void _handleCommandMessage(::ScriptDebuggerMessages::CommandMessage const &commandMessage)
MCAPI::ScriptDebuggerSettings const & $getSettings() const
MCAPI void _sendNotification(::LogLevel logLevel, ::std::string_view message)
MCAPI bool $listen(ushort port)
MCAPI bool $connect(::std::string const &host, ushort port)
MCAPI void * $ctor(::ScriptDebuggerSettings settings, ::ServerLevel &serverLevel, ::MinecraftCommands &commands, ::cereal::ReflectionCtx &ctx, ::Scripting::ScriptEngine &scriptEngine, ::ScriptPluginManager &pluginManager, ::IScriptDebuggerWatchdog &watchdog, ::IScriptTelemetryLogger &telemetry)
static MCAPI void ** $vftableForIScriptStatPublisher()
MCAPI::std::string _sanitizeHostName(::std::string const &host) const
MCAPI bool $isStatPublisherEnabled() const
static MCAPI void ** $vftableForIScriptDebugger()
MCAPI void $startProfiler()
MCAPI bool _trySelectTarget()
MCAPI void _debuggerMessageHandler(::std::string_view message)
MCAPI ::std::vector<::Core::Path > $stopProfiler()
MCAPI void $publishStats(uint64 collectedTick, ::std::vector<::ScriptStat > const &stats)
MCAPI void _handleStopProfilerMessage(::ScriptDebuggerMessages::ProfilerMessage const &profilerMessage)
MCAPI void sendLog(::LogLevel logLevel, ::std::string_view message)
MCAPI void waitAutoAttach(::std::chrono::seconds waitDuration)
MCAPI bool _tryAttachRuntime(bool expectRuntime)
Definition ScriptPluginManager.h:30
Definition ScriptStat.h:10
Definition ScriptEngine.h:22
Definition ServerLevel.h:59
Definition CommandMessage.h:7
Definition ProfilerMessage.h:7
Definition ScriptDebuggerSettings.h:8
Definition ScriptDebugger.h:40
Definition ReflectionCtx.h:11