Files
UnrealEngineUWP/Engine/Source/Developer/Windows/LiveCoding/Public/ILiveCodingModule.h
tim smith c440be643c Live coding now handles adding a feature pack as long as the project already contained source files. Otherwise it requests that the game be built from the IDE. Will also request that the game be built from the IDE when adding a class to a blueprint only project.
#rb none
#rnx
#jira UE-130744 UE-134701

#ushell-cherrypick of 18406025 by Tim.Smith
#preflight 61b0d7367177ccd1a130be05

#ROBOMERGE-AUTHOR: tim.smith
#ROBOMERGE-SOURCE: CL 18407173 in //UE5/Release-5.0/... via CL 18407182
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18407194 by tim smith in ue5-release-engine-test branch]
2021-12-08 11:50:54 -05:00

55 lines
1.6 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreTypes.h"
#include "Delegates/Delegate.h"
#include "Modules/ModuleInterface.h"
#define LIVE_CODING_MODULE_NAME "LiveCoding"
class FText;
enum class ELiveCodingCompileFlags : uint8
{
None = 0,
WaitForCompletion = 1 << 0,
};
ENUM_CLASS_FLAGS(ELiveCodingCompileFlags)
enum class ELiveCodingCompileResult : uint8
{
Success, // Compile completed and there were changes
NoChanges, // Compile completed and there were no changes
InProgress, // Compile started but wait for completion was not specified
CompileStillActive, // A prior compile request is still active
NotStarted, // Live coding monitor could not be started
Failure, // Complete completed but there was an error
Cancelled, // Compile was cancelled
};
class ILiveCodingModule : public IModuleInterface
{
public:
virtual void EnableByDefault(bool bEnabled) = 0;
virtual bool IsEnabledByDefault() const = 0;
virtual void EnableForSession(bool bEnabled) = 0;
virtual bool IsEnabledForSession() const = 0;
virtual bool CanEnableForSession() const = 0;
virtual const FText& GetEnableErrorText() const = 0;
virtual bool AutomaticallyCompileNewClasses() const = 0;
virtual bool HasStarted() const = 0;
virtual void ShowConsole() = 0;
virtual void Compile() = 0;
virtual bool Compile(ELiveCodingCompileFlags CompileFlags, ELiveCodingCompileResult* Result) = 0;
virtual bool IsCompiling() const = 0;
virtual void Tick() = 0;
DECLARE_MULTICAST_DELEGATE(FOnPatchCompleteDelegate);
virtual FOnPatchCompleteDelegate& GetOnPatchCompleteDelegate() = 0;
};