refactor(editor): isolate engine service boundaries

This commit is contained in:
2026-04-29 03:19:46 +08:00
parent ef11651ec2
commit 313a571e43
60 changed files with 3804 additions and 2611 deletions

View File

@@ -34,13 +34,17 @@ class EditorHostResourceService;
namespace XCEngine::UI::Editor::App {
class EditorEngineServices;
class EditorShaderProvider;
class GameViewportEngineBridge;
class SceneViewportEngineBridge;
class EditorWindowRuntimeController final {
public:
EditorWindowRuntimeController(
EditorFrameServices& frameServices,
EditorEngineServices& engineServices,
SceneViewportEngineBridge& sceneViewportEngineBridge,
GameViewportEngineBridge& gameViewportEngineBridge,
EditorShaderProvider& shaderProvider,
Host::EditorHostResourceService& resourceService,
std::unique_ptr<EditorWindowContentController> contentController,
std::unique_ptr<Rendering::Host::EditorWindowRenderRuntime> renderRuntime);
@@ -105,7 +109,9 @@ private:
void RefreshDisplayedFrameStats();
EditorFrameServices& m_frameServices;
EditorEngineServices& m_engineServices;
SceneViewportEngineBridge& m_sceneViewportEngineBridge;
GameViewportEngineBridge& m_gameViewportEngineBridge;
EditorShaderProvider& m_shaderProvider;
Host::EditorHostResourceService& m_resourceService;
std::unique_ptr<Rendering::Host::EditorWindowRenderRuntime> m_renderRuntime = {};
EditorWindowScreenshotController m_screenshotController = {};