Files
mtgodot-poc/src/host/live_client.h
T
shenleiandClaude Opus 5.5 75d2dd8545 host: split src/host/main.cpp into translation units
main.cpp (4.5k lines) -> main.cpp (entry, args, synthetic benchmark) plus
vulkan_window, live_client, frame_policy, native_audio, texture_decode,
render_state, input_keymap, host_util. Bodies are moved verbatim; multi-line
VulkanWindow / NativeAudioEngine / FrameRatePolicy members are defined out of
line; one-line accessors stay inline. Anonymous namespace -> mt_host.

No behavior change: ctest 15/15, port_gate macos+android PASS, desktop
--live-client login screen and synthetic --draws runs unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 19:30:44 +09:00

32 lines
830 B
C++

#pragma once
#ifdef MT_NATIVE_HAS_LIVE_CLIENT
#include <string>
namespace mt_host {
class VulkanWindow;
// --py-exec: a test hook run once the auto-login run reaches the GameWindow (or, with --login-screen,
// once the LoginWindow is up).
extern std::string g_py_exec_after_login;
// --perf-log / MT_PERF_LOG=1: src/host/perf_log.h.
extern bool g_perf_log;
// Boots the 40250 client (PythonBoot) from client_dir and runs it inside the renderer until it quits.
int run_live_client(
VulkanWindow& renderer,
const std::string& client_dir,
int frames,
int fake_mobs,
bool gpu_skinning,
bool native_terrain,
bool login_screen,
bool selection_screen,
const std::string& live_server_spec,
const std::string& capture_out,
const std::string& screenshot_out);
} // namespace mt_host
#endif