UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IHotReloadInterface Class Referenceabstract

#include <HotReloadInterface.h>

+ Inheritance diagram for IHotReloadInterface:

Public Member Functions

virtual void SaveConfig ()=0
 
virtual FString GetModuleCompileMethod (FName InModuleName)=0
 
virtual bool RecompileModule (const FName InModuleName, FOutputDevice &Ar, ERecompileModuleFlags Flags)=0
 
virtual bool IsCurrentlyCompiling () const =0
 
virtual void RequestStopCompilation ()=0
 
virtual void AddHotReloadFunctionRemap (FNativeFuncPtr NewFunctionPointer, FNativeFuncPtr OldFunctionPointer)=0
 
virtual ECompilationResult::Type DoHotReloadFromEditor (EHotReloadFlags Flags)=0
 
virtual ECompilationResult::Type RebindPackages (const TArray< UPackage * > &Packages, EHotReloadFlags Flags, FOutputDevice &Ar)=0
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FHotReloadEvent, bool)
 
virtual FHotReloadEventOnHotReload ()=0
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FModuleCompilerStartedEvent, bool)
 
virtual FModuleCompilerStartedEventOnModuleCompilerStarted ()=0
 
 DECLARE_MULTICAST_DELEGATE_ThreeParams (FModuleCompilerFinishedEvent, const FString &, ECompilationResult::Type, bool)
 
virtual FModuleCompilerFinishedEventOnModuleCompilerFinished ()=0
 
virtual bool IsAnyGameModuleLoaded ()=0
 
- Public Member Functions inherited from IModuleInterface
virtual ~IModuleInterface ()
 
virtual void StartupModule ()
 
virtual void PreUnloadCallback ()
 
virtual void PostLoadCallback ()
 
virtual void ShutdownModule ()
 
virtual bool SupportsDynamicReloading ()
 
virtual bool SupportsAutomaticShutdown ()
 
virtual bool IsGameModule () const
 

Static Public Member Functions

static IHotReloadInterfaceGetPtr ()
 

Detailed Description

HotReload module interface

Member Function Documentation

◆ AddHotReloadFunctionRemap()

virtual void IHotReloadInterface::AddHotReloadFunctionRemap ( FNativeFuncPtr  NewFunctionPointer,
FNativeFuncPtr  OldFunctionPointer 
)
pure virtual

Adds a function to re-map after hot-reload.

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [1/2]

IHotReloadInterface::DECLARE_MULTICAST_DELEGATE_OneParam ( FHotReloadEvent  ,
bool   
)

Called when a Hot Reload event has completed.

Parameters
bWasTriggeredAutomaticallyTrue if the hot reload was invoked automatically by the hot reload system after detecting a changed DLL

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [2/2]

IHotReloadInterface::DECLARE_MULTICAST_DELEGATE_OneParam ( FModuleCompilerStartedEvent  ,
bool   
)

Gets an event delegate that is executed when compilation of a module has started.

Returns
The event delegate.

◆ DECLARE_MULTICAST_DELEGATE_ThreeParams()

IHotReloadInterface::DECLARE_MULTICAST_DELEGATE_ThreeParams ( FModuleCompilerFinishedEvent  ,
const FString &  ,
ECompilationResult::Type  ,
bool   
)

Gets an event delegate that is executed when compilation of a module has finished.

The first parameter is the result of the compilation operation. The second parameter determines whether the log should be shown.

Returns
The event delegate.

◆ DoHotReloadFromEditor()

virtual ECompilationResult::Type IHotReloadInterface::DoHotReloadFromEditor ( EHotReloadFlags  Flags)
pure virtual

Performs hot reload from the editor of all currently loaded game modules.

Parameters
FlagsFlags which to control the hot reload.
Returns
If Flags & EHotReloadFlags::WaitForCompletion was set, this will return the result of the compilation, otherwise will return ECompilationResult::Unknown

◆ GetModuleCompileMethod()

virtual FString IHotReloadInterface::GetModuleCompileMethod ( FName  InModuleName)
pure virtual

Queries the compilation method for a given module.

Parameters
InModuleNameModule to query the name of
Returns
A string describing the method used to compile the module.

◆ GetPtr()

static IHotReloadInterface * IHotReloadInterface::GetPtr ( )
inlinestatic

Tries to gets a pointer to the active HotReload implementation.

◆ IsAnyGameModuleLoaded()

virtual bool IHotReloadInterface::IsAnyGameModuleLoaded ( )
pure virtual

Checks if there's any game modules currently loaded

◆ IsCurrentlyCompiling()

virtual bool IHotReloadInterface::IsCurrentlyCompiling ( ) const
pure virtual

Returns whether modules are currently being compiled

◆ OnHotReload()

virtual FHotReloadEvent & IHotReloadInterface::OnHotReload ( )
pure virtual

◆ OnModuleCompilerFinished()

virtual FModuleCompilerFinishedEvent & IHotReloadInterface::OnModuleCompilerFinished ( )
pure virtual

◆ OnModuleCompilerStarted()

virtual FModuleCompilerStartedEvent & IHotReloadInterface::OnModuleCompilerStarted ( )
pure virtual

◆ RebindPackages()

virtual ECompilationResult::Type IHotReloadInterface::RebindPackages ( const TArray< UPackage * > &  Packages,
EHotReloadFlags  Flags,
FOutputDevice Ar 
)
pure virtual

HotReload: Reloads the DLLs for given packages.

Parameters
PackagePackages to reload.
FlagsFlags which control the hot reload.
ArOutput device for logging compilation status
Returns
If bWaitForCompletion was set to true, this will return the result of the compilation, otherwise will return ECompilationResult::Unknown

◆ RecompileModule()

virtual bool IHotReloadInterface::RecompileModule ( const FName  InModuleName,
FOutputDevice Ar,
ERecompileModuleFlags  Flags 
)
pure virtual

Recompiles a single module

Parameters
InModuleNameName of the module to compile
ArOutput device (logging)
FlagsRecompilation flags

◆ RequestStopCompilation()

virtual void IHotReloadInterface::RequestStopCompilation ( )
pure virtual

Request that current compile be stopped

◆ SaveConfig()

virtual void IHotReloadInterface::SaveConfig ( )
pure virtual

Save the current state to disk before quitting.


The documentation for this class was generated from the following file: