Files
UnrealEngine/Engine/Source/Developer/Windows/LiveCodingServer/Private/LiveCodingServer.h
2025-05-18 13:04:45 +08:00

53 lines
1.8 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreTypes.h"
#include "ILiveCodingServer.h"
#include "LC_RunMode.h"
#include <string>
class ServerCommandThread;
class FLiveCodingServer final : public ILiveCodingServer
{
public:
FLiveCodingServer();
virtual ~FLiveCodingServer();
virtual void Start(const wchar_t* ProcessGroupName) override;
virtual void Stop() override;
virtual void RestartTargets() override;
virtual void SetLinkerPath(const wchar_t* LinkerPath, const TMap<FString, FString>& LinkerEnvironment) override;
// ILiveCodingServer implementation
virtual FBringToFrontDelegate& GetBringToFrontDelegate() override final;
virtual FClearOutputDelegate& GetClearOutputDelegate() override final;
virtual FStatusChangeDelegate& GetStatusChangeDelegate() override final;
virtual FLogOutputDelegate& GetLogOutputDelegate() override final;
virtual FCompileDelegate& GetCompileDelegate() override final;
virtual FCompileStartedDelegate& GetCompileStartedDelegate() override final;
virtual FCompileFinishedDelegate& GetCompileFinishedDelegate() override final;
virtual FShowConsoleDelegate& GetShowConsoleDelegate() override final;
virtual FSetVisibleDelegate& GetSetVisibleDelegate() override final;
virtual bool HasReinstancingProcess() override final;
virtual bool ShowCompileFinishNotification() override final;
private:
std::wstring ProcessGroupName;
ServerCommandThread* CommandThread;
FBringToFrontDelegate BringToFrontDelegate;
FClearOutputDelegate ClearOutputDelegate;
FStatusChangeDelegate StatusChangeDelegate;
FLogOutputDelegate LogOutputDelegate;
FCompileDelegate CompileDelegate;
FCompileStartedDelegate CompileStartedDelegate;
FCompileFinishedDelegate CompileFinishedDelegate;
FShowConsoleDelegate ShowConsoleDelegate;
FSetVisibleDelegate SetVisibleDelegate;
};
extern FLiveCodingServer *GLiveCodingServer;