UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FPluginManager Class Referencefinal

#include <PluginManager.h>

+ Inheritance diagram for FPluginManager:

Classes

struct  FConfigurePluginResultInfo
 

Public Member Functions

 FPluginManager ()
 
 ~FPluginManager ()
 
virtual void RefreshPluginsList () override
 
virtual bool AddToPluginsList (const FString &PluginFilename, FText *OutFailReason=nullptr) override
 
virtual bool RemoveFromPluginsList (const FString &PluginFilename, FText *OutFailReason=nullptr) override
 
virtual bool LoadModulesForEnabledPlugins (const ELoadingPhase::Type LoadingPhase) override
 
virtual FLoadingModulesForPhaseEventOnLoadingPhaseComplete () override
 
virtual ELoadingPhase::Type GetLastCompletedLoadingPhase () const override
 
virtual void GetLocalizationPathsForEnabledPlugins (TArray< FString > &OutLocResPaths) override
 
virtual void SetRegisterMountPointDelegate (const FRegisterMountPointDelegate &Delegate) override
 
virtual void SetUnRegisterMountPointDelegate (const FRegisterMountPointDelegate &Delegate) override
 
virtual bool AreRequiredPluginsAvailable () override
 
virtual FGetExplanationForUnavailablePackageWithPluginInfoDelegateGetExplanationForUnavailablePackageWithPluginInfoDelegate () override
 
virtual void SuppressPluginUnloadGC () override
 
virtual void ResumePluginUnloadGC () override
 
virtual bool CheckModuleCompatibility (TArray< FString > &OutIncompatibleModules, TArray< FString > &OutIncompatibleEngineModules) override
 
virtual TSharedPtr< IPluginFindPlugin (const FStringView Name) override
 
virtual TSharedPtr< IPluginFindPlugin (const ANSICHAR *Name) override
 
virtual TSharedPtr< IPluginFindPluginFromPath (const FString &PluginPath) override
 
virtual TSharedPtr< IPluginFindPluginFromDescriptor (const FPluginReferenceDescriptor &PluginDesc) override
 
virtual TSharedPtr< IPluginFindEnabledPlugin (const FStringView Name) override
 
virtual TSharedPtr< IPluginFindEnabledPlugin (const ANSICHAR *Name) override
 
virtual TSharedPtr< IPluginFindEnabledPluginFromPath (const FString &PluginPath) override
 
virtual TSharedPtr< IPluginFindEnabledPluginFromDescriptor (const FPluginReferenceDescriptor &PluginDesc) override
 
virtual bool CanEnablePluginInCurrentTarget (const FStringView Name) override
 
virtual bool CanEnablePluginInCurrentTarget (const ANSICHAR *Name) override
 
virtual void FindPluginsUnderDirectory (const FString &Directory, TArray< FString > &OutPluginFilePaths) override
 
virtual TArray< TSharedRef< IPlugin > > GetEnabledPlugins () override
 
virtual TArray< TSharedRef< IPlugin > > GetEnabledPluginsWithContent () const override
 
virtual TArray< TSharedRef< IPlugin > > GetEnabledPluginsWithVerse () const override
 
virtual TArray< TSharedRef< IPlugin > > GetEnabledPluginsWithContentOrVerse () const override
 
virtual TArray< TSharedRef< IPlugin > > GetDiscoveredPlugins () override
 
virtual const TSet< FString > & GetPluginsEnabledAtStartup () const override
 
virtual bool AddPluginSearchPath (const FString &ExtraDiscoveryPath, bool bRefresh=true) override
 
virtual bool RemovePluginSearchPath (const FString &PathToRemove, bool bRefresh=true) override
 
virtual const TSet< FString > & GetAdditionalPluginSearchPaths () const override
 
virtual void GetExternalPluginSources (TSet< FExternalPluginPath > &OutPluginSources) const override
 
virtual TArray< TSharedRef< IPlugin > > GetPluginsWithPakFile () const override
 
virtual FNewPluginMountedEventOnNewPluginCreated () override
 
virtual FNewPluginMountedEventOnNewPluginMounted () override
 
virtual FNewPluginMountedEventOnNewPluginContentMounted () override
 
virtual FNewPluginMountedEventOnPluginEdited () override
 
virtual FNewPluginMountedEventOnPluginUnmounted () override
 
virtual void MountNewlyCreatedPlugin (const FString &PluginName) override
 
virtual bool MountExplicitlyLoadedPlugin (const FString &PluginName, ELoadingPhase::Type MaxLoadingPhase=ELoadingPhase::Max) override
 
virtual bool MountExplicitlyLoadedPlugin_FromFileName (const FString &PluginFileName) override
 
virtual bool MountExplicitlyLoadedPlugin_FromDescriptor (const FPluginReferenceDescriptor &PluginDescriptor) override
 
virtual bool MountExplicitlyLoadedPluginLocalizationData (const FString &PluginName, TUniqueFunction< void(bool bLoadedLocalization, const FString &PluginName)> &&Notification=nullptr) override
 
virtual bool UnmountExplicitlyLoadedPluginLocalizationData (const FString &PluginName, TUniqueFunction< void(bool bUnloadedLocalization, const FString &PluginName)> &&Notification=nullptr) override
 
virtual bool UnmountExplicitlyLoadedPlugin (const FString &PluginName, FText *OutReason) override
 
virtual bool UnmountExplicitlyLoadedPlugin (const FString &PluginName, FText *OutReason, bool bAllowUnloadCode) override
 
virtual bool GetPluginDependencies (const FString &PluginName, TArray< FPluginReferenceDescriptor > &PluginDependencies) override
 
virtual bool GetPluginDependencies_FromFileName (const FString &PluginFileName, TArray< FPluginReferenceDescriptor > &PluginDependencies) override
 
virtual bool GetPluginDependencies_FromDescriptor (const FPluginReferenceDescriptor &PluginDescriptor, TArray< FPluginReferenceDescriptor > &PluginDependencies) override
 
virtual FName PackageNameFromModuleName (FName ModuleName) override
 
virtual void EnumerateVersePathMountPoints (const UE::Core::FVersePath &VersePath, TFunctionRef< bool(FStringView, FStringView)> Callback) override
 
virtual bool RequiresTempTargetForCodePlugin (const FProjectDescriptor *ProjectDescriptor, const FString &Platform, EBuildConfiguration Configuration, EBuildTargetType TargetType, FText &OutReason) override
 
virtual void SetBinariesRootDirectories (const FString &EngineBinariesRootDir, const FString &ProjectBinariesRootDir) override
 
virtual void SetPreloadBinaries () override
 
virtual bool GetPreloadBinaries () override
 
void GetExplanationForUnavailablePackage (const FName &UnavailablePackageName, FStringBuilderBase &InOutExplanation) override
 
- Public Member Functions inherited from IPluginManager
virtual ~IPluginManager ()
 
 DECLARE_EVENT_TwoParams (IPluginManager, FLoadingModulesForPhaseEvent, ELoadingPhase::Type, bool)
 
 DECLARE_DELEGATE_TwoParams (FRegisterMountPointDelegate, const FString &, const FString &)
 
 DECLARE_MULTICAST_DELEGATE_ThreeParams (FGetExplanationForUnavailablePackageWithPluginInfoDelegate, const FString &, class IPlugin *, FStringBuilderBase &)
 
 DECLARE_EVENT_OneParam (IPluginManager, FNewPluginMountedEvent, IPlugin &)
 
virtual bool IntegratePluginsIntoConfig (FConfigCacheIni &ConfigSystem, const TCHAR *EngineIniName, const TCHAR *PlatformName, const TCHAR *StagedPluginsFile)
 

Additional Inherited Members

- Static Public Member Functions inherited from IPluginManager
static PROJECTS_API IPluginManagerGet ()
 

Detailed Description

FPluginManager manages available code and content extensions (both loaded and not loaded.)

Constructor & Destructor Documentation

◆ FPluginManager()

FPluginManager::FPluginManager ( )

Constructor

◆ ~FPluginManager()

FPluginManager::~FPluginManager ( )

Destructor

Member Function Documentation

◆ AddPluginSearchPath()

bool FPluginManager::AddPluginSearchPath ( const FString &  ExtraDiscoveryPath,
bool  bRefresh = true 
)
overridevirtual

Stores the specified path, utilizing it in future search passes when searching for available plugins. Optionally refreshes the manager after the new path has been added.

Parameters
ExtraDiscoveryPathThe path you want searched for additional plugins.
bRefreshSignals the function to refresh the plugin database after the new path has been added
Returns
Whether the plugin search path was modified

Implements IPluginManager.

◆ AddToPluginsList()

bool FPluginManager::AddToPluginsList ( const FString &  PluginFilename,
FText OutFailReason = nullptr 
)
overridevirtual

Adds a single plugin to the list of plugins. Faster than refreshing all plugins with RefreshPluginsList() when you only want to add one. Does nothing if already in the list.

Returns
True if the plugin was added or already in the list. False if it failed to load.

Implements IPluginManager.

◆ AreRequiredPluginsAvailable()

bool FPluginManager::AreRequiredPluginsAvailable ( )
overridevirtual

Checks if all the required plug-ins are available. If not, will present an error dialog the first time a plug-in is loaded or this function is called.

Returns
true if all the required plug-ins are available.

Implements IPluginManager.

◆ CanEnablePluginInCurrentTarget() [1/2]

virtual bool FPluginManager::CanEnablePluginInCurrentTarget ( const ANSICHAR Name)
inlineoverridevirtual

Implements IPluginManager.

◆ CanEnablePluginInCurrentTarget() [2/2]

bool FPluginManager::CanEnablePluginInCurrentTarget ( const FStringView  Name)
overridevirtual

Returns true when the given plugin can be enabled for the current running exe.

Implements IPluginManager.

◆ CheckModuleCompatibility()

bool FPluginManager::CheckModuleCompatibility ( TArray< FString > &  OutIncompatibleModules,
TArray< FString > &  OutIncompatibleEngineModules 
)
overridevirtual

Checks whether modules for the enabled plug-ins are up to date.

Parameters
OutIncompatibleModulesArray to receive a list of incompatible module names.
OutIncompatibleEngineModulesArray to receive a list of incompatible engine module names.
Returns
true if the enabled plug-in modules are up to date.

Implements IPluginManager.

◆ EnumerateVersePathMountPoints()

void FPluginManager::EnumerateVersePathMountPoints ( const UE::Core::FVersePath VersePath,
TFunctionRef< bool(FStringView, FStringView)>  Callback 
)
overridevirtual

Enumerates all mounted plug-ins to find mount points that the Verse path maps to.

Parameters
VersePathThe full Verse path to check against the plug-in Verse path.
CallbackFunction to call for each plug-in that maps to the Verse path. Return false to stop enumerating.

Implements IPluginManager.

◆ FindEnabledPlugin() [1/2]

virtual TSharedPtr< IPlugin > FPluginManager::FindEnabledPlugin ( const ANSICHAR Name)
inlineoverridevirtual

Implements IPluginManager.

◆ FindEnabledPlugin() [2/2]

TSharedPtr< IPlugin > FPluginManager::FindEnabledPlugin ( const FStringView  Name)
overridevirtual

Finds information for an enabled plugin.

Returns
Pointer to the enabled plugin's information, or nullptr if not enabled or can't be found.

Implements IPluginManager.

◆ FindEnabledPluginFromDescriptor()

TSharedPtr< IPlugin > FPluginManager::FindEnabledPluginFromDescriptor ( const FPluginReferenceDescriptor PluginDesc)
overridevirtual

Implements IPluginManager.

◆ FindEnabledPluginFromPath()

TSharedPtr< IPlugin > FPluginManager::FindEnabledPluginFromPath ( const FString &  PluginPath)
overridevirtual

Implements IPluginManager.

◆ FindPlugin() [1/2]

virtual TSharedPtr< IPlugin > FPluginManager::FindPlugin ( const ANSICHAR Name)
inlineoverridevirtual

Implements IPluginManager.

◆ FindPlugin() [2/2]

TSharedPtr< IPlugin > FPluginManager::FindPlugin ( const FStringView  Name)
overridevirtual

Finds information for a plugin.

Returns
Pointer to the plugin's information, or nullptr.

Implements IPluginManager.

◆ FindPluginFromDescriptor()

TSharedPtr< IPlugin > FPluginManager::FindPluginFromDescriptor ( const FPluginReferenceDescriptor PluginDesc)
overridevirtual

Implements IPluginManager.

◆ FindPluginFromPath()

TSharedPtr< IPlugin > FPluginManager::FindPluginFromPath ( const FString &  PluginPath)
overridevirtual

Implements IPluginManager.

◆ FindPluginsUnderDirectory()

void FPluginManager::FindPluginsUnderDirectory ( const FString &  Directory,
TArray< FString > &  OutPluginFilePaths 
)
overridevirtual

Finds all plugin descriptors underneath a given directory (recursively)

Parameters
DirectorySearch folder
OutPluginFilePathsReceives found plugin descriptor file paths

Implements IPluginManager.

◆ GetAdditionalPluginSearchPaths()

const TSet< FString > & FPluginManager::GetAdditionalPluginSearchPaths ( ) const
overridevirtual

Returns the list of extra directories that are recursively searched for plugins (aside from the engine and project plugin directories). NOTE: You may also want to check IProjectManager::GetAdditionalPluginDirectories, which are not included here!

Implements IPluginManager.

◆ GetDiscoveredPlugins()

TArray< TSharedRef< IPlugin > > FPluginManager::GetDiscoveredPlugins ( )
overridevirtual

Gets an array of all the discovered plugins.

Returns
Array of the discovered plugins.

Implements IPluginManager.

◆ GetEnabledPlugins()

TArray< TSharedRef< IPlugin > > FPluginManager::GetEnabledPlugins ( )
overridevirtual

Gets an array of all the enabled plugins.

Returns
Array of the enabled plugins.

Implements IPluginManager.

◆ GetEnabledPluginsWithContent()

TArray< TSharedRef< IPlugin > > FPluginManager::GetEnabledPluginsWithContent ( ) const
overridevirtual

Gets an array of all enabled plugins that can have content.

Returns
Array of plugins with IsEnabled() and CanContainContent() both true.

Implements IPluginManager.

◆ GetEnabledPluginsWithContentOrVerse()

TArray< TSharedRef< IPlugin > > FPluginManager::GetEnabledPluginsWithContentOrVerse ( ) const
overridevirtual

Gets an array of all enabled plugins that can have content or Verse code.

Implements IPluginManager.

◆ GetEnabledPluginsWithVerse()

TArray< TSharedRef< IPlugin > > FPluginManager::GetEnabledPluginsWithVerse ( ) const
overridevirtual

Gets an array of all enabled plugins that can have Verse code.

Returns
Array of plugins with IsEnabled() and CanContainVerse() both true.

Implements IPluginManager.

◆ GetExplanationForUnavailablePackage()

void FPluginManager::GetExplanationForUnavailablePackage ( const FName UnavailablePackageName,
FStringBuilderBase InOutExplanation 
)
overridevirtual

Attempts to fill out InOutExplanation with information from various sources (registered via GetExplanationForUnavailablePackageWithPluginInfoDelegate) about why UnavailablePackageName is not available

Parameters
UnavailablePackageNamethe name of the package about which to get information
InOutExplanationa stringbuilder to which to append explanatory information

Implements IPluginManager.

◆ GetExplanationForUnavailablePackageWithPluginInfoDelegate()

IPluginManager::FGetExplanationForUnavailablePackageWithPluginInfoDelegate & FPluginManager::GetExplanationForUnavailablePackageWithPluginInfoDelegate ( )
overridevirtual

Accessor for adding/removing FGetExplanationForUnavailablePackageWithPluginInfoDelegate delegates.

Returns
the FGetExplanationForUnavailablePackageWithPluginInfoDelegate to which callbacks can be bound

Implements IPluginManager.

◆ GetExternalPluginSources()

void FPluginManager::GetExternalPluginSources ( TSet< FExternalPluginPath > &  OutPluginSources) const
overridevirtual

Similar to GetAdditionalPluginSearchPaths, but also returns configuration sources for each path. Unlike GetAdditionalPluginSearchPaths, this DOES include AdditionalPluginDirectories from the uproject descriptor.

Implements IPluginManager.

◆ GetLastCompletedLoadingPhase()

ELoadingPhase::Type FPluginManager::GetLastCompletedLoadingPhase ( ) const
overridevirtual

Returns the highest loading phase that has so far completed

Implements IPluginManager.

◆ GetLocalizationPathsForEnabledPlugins()

void FPluginManager::GetLocalizationPathsForEnabledPlugins ( TArray< FString > &  OutLocResPaths)
overridevirtual

Get the localization paths for all enabled plugins.

Parameters
OutLocResPathsArray to populate with the localization paths for all enabled plugins.

Implements IPluginManager.

◆ GetPluginDependencies()

bool FPluginManager::GetPluginDependencies ( const FString &  PluginName,
TArray< FPluginReferenceDescriptor > &  PluginDependencies 
)
overridevirtual

Tries to get a list of plugin dependencies for a given plugin. Returns false if the plugin provided was not found

Implements IPluginManager.

◆ GetPluginDependencies_FromDescriptor()

bool FPluginManager::GetPluginDependencies_FromDescriptor ( const FPluginReferenceDescriptor PluginDescriptor,
TArray< FPluginReferenceDescriptor > &  PluginDependencies 
)
overridevirtual

Implements IPluginManager.

◆ GetPluginDependencies_FromFileName()

bool FPluginManager::GetPluginDependencies_FromFileName ( const FString &  PluginFileName,
TArray< FPluginReferenceDescriptor > &  PluginDependencies 
)
overridevirtual

Implements IPluginManager.

◆ GetPluginsEnabledAtStartup()

const TSet< FString > & FPluginManager::GetPluginsEnabledAtStartup ( ) const
overridevirtual

Returns the set of plugins compiled into the current application and enabled at startup. For internal use only. TODO: Needs improved for the GameFeaturePlugin system to one day remove the concept of LoadedAsBuiltIn

Returns
set of plugin names.

Implements IPluginManager.

◆ GetPluginsWithPakFile()

TArray< TSharedRef< IPlugin > > FPluginManager::GetPluginsWithPakFile ( ) const
overridevirtual

Gets an array of plugins that loaded their own content pak file

Implements IPluginManager.

◆ GetPreloadBinaries()

bool FPluginManager::GetPreloadBinaries ( )
overridevirtual

Implements IPluginManager.

◆ LoadModulesForEnabledPlugins()

bool FPluginManager::LoadModulesForEnabledPlugins ( const ELoadingPhase::Type  LoadingPhase)
overridevirtual

Loads all plug-ins

Parameters
LoadingPhaseWhich loading phase we're loading plug-in modules from. Only modules that are configured to be loaded at the specified loading phase will be loaded during this call.

Implements IPluginManager.

◆ MountExplicitlyLoadedPlugin()

bool FPluginManager::MountExplicitlyLoadedPlugin ( const FString &  PluginName,
ELoadingPhase::Type  MaxLoadingPhase = ELoadingPhase::Max 
)
overridevirtual

Marks an explicitly loaded plugin as enabled, mounts its content and tries to load its modules. These plugins are not loaded implicitly, but instead wait for this function to be called.

Note
Call MountExplicitlyLoadedPluginLocalizationData if you also want to load any localization data for this plugin.

Implements IPluginManager.

◆ MountExplicitlyLoadedPlugin_FromDescriptor()

bool FPluginManager::MountExplicitlyLoadedPlugin_FromDescriptor ( const FPluginReferenceDescriptor PluginDescriptor)
overridevirtual

Implements IPluginManager.

◆ MountExplicitlyLoadedPlugin_FromFileName()

bool FPluginManager::MountExplicitlyLoadedPlugin_FromFileName ( const FString &  PluginFileName)
overridevirtual

Implements IPluginManager.

◆ MountExplicitlyLoadedPluginLocalizationData()

bool FPluginManager::MountExplicitlyLoadedPluginLocalizationData ( const FString &  PluginName,
TUniqueFunction< void(bool bLoadedLocalization, const FString &PluginName)> &&  Notification = nullptr 
)
overridevirtual

Start loading localization data for an explicitly loaded plugin that has previously been mounted via one of the MountExplicitlyLoadedPlugin functions.

Note
Localization data is ref-counted, so this should be paired with a call to UnmountExplicitlyLoadedPluginLocalizationData.
Parameters
PluginNameThe name of the plugin to load the localization data for.
NotificationAn optional notification function to call when the localization data load has finished (from any thread), or immediately if there was no localization data to load. bLoadedLocalization corresponds to the return value of this function.
Returns
True if localization data started to load, or false if the plugin was missing or had no localization data to load.

Implements IPluginManager.

◆ MountNewlyCreatedPlugin()

void FPluginManager::MountNewlyCreatedPlugin ( const FString &  PluginName)
overridevirtual

Marks a newly created plugin as enabled, mounts its content and tries to load its modules

Implements IPluginManager.

◆ OnLoadingPhaseComplete()

IPluginManager::FLoadingModulesForPhaseEvent & FPluginManager::OnLoadingPhaseComplete ( )
overridevirtual

Implements IPluginManager.

◆ OnNewPluginContentMounted()

IPluginManager::FNewPluginMountedEvent & FPluginManager::OnNewPluginContentMounted ( )
overridevirtual

Event for being notified that a new plugin and its content have been mounted

Implements IPluginManager.

◆ OnNewPluginCreated()

IPluginManager::FNewPluginMountedEvent & FPluginManager::OnNewPluginCreated ( )
overridevirtual

Event signature for being notified that a new plugin has been created

Implements IPluginManager.

◆ OnNewPluginMounted()

IPluginManager::FNewPluginMountedEvent & FPluginManager::OnNewPluginMounted ( )
overridevirtual

Event for being notified that a new plugin has been mounted

Implements IPluginManager.

◆ OnPluginEdited()

IPluginManager::FNewPluginMountedEvent & FPluginManager::OnPluginEdited ( )
overridevirtual

Event for being notified that a plugin has been edited

Implements IPluginManager.

◆ OnPluginUnmounted()

IPluginManager::FNewPluginMountedEvent & FPluginManager::OnPluginUnmounted ( )
overridevirtual

Event for being notified that a plugin has been unmounted

Implements IPluginManager.

◆ PackageNameFromModuleName()

FName FPluginManager::PackageNameFromModuleName ( FName  ModuleName)
overridevirtual

Does a reverse lookup to try to figure out what the UObject package name is for a plugin

Implements IPluginManager.

◆ RefreshPluginsList()

void FPluginManager::RefreshPluginsList ( )
overridevirtual

IPluginManager interface

Implements IPluginManager.

◆ RemoveFromPluginsList()

bool FPluginManager::RemoveFromPluginsList ( const FString &  PluginFilename,
FText OutFailReason = nullptr 
)
overridevirtual

Remove a single plugin from the list of plugins.

Returns
True if the plugin was not in the list. False if it can't be removed (see OutFailReason).

Implements IPluginManager.

◆ RemovePluginSearchPath()

bool FPluginManager::RemovePluginSearchPath ( const FString &  PathToRemove,
bool  bRefresh = true 
)
overridevirtual

Removes the specified path from consideration for available plugins. Optionally refreshes the manager after the path has been removed.

Parameters
PathToRemoveThe path no longer searched for additional plugins.
bRefreshSignals the function to refresh the plugin database after the path has been removed
Returns
Whether the plugin search path was modified

Implements IPluginManager.

◆ RequiresTempTargetForCodePlugin()

bool FPluginManager::RequiresTempTargetForCodePlugin ( const FProjectDescriptor ProjectDescriptor,
const FString &  Platform,
EBuildConfiguration  Configuration,
EBuildTargetType  TargetType,
FText OutReason 
)
overridevirtual

Determines if a content-only project requires a temporary target due to having a plugin enabled

Parameters
ProjectDescriptorThe project being built
PlatformThe platform the target is being built for
ConfigurationThe configuration being built
TargetTypeThe type of target being built
OutReasonIf a temporary target is required, receives a message indicating why
Returns
True if the project requires a temp target to be generated

Implements IPluginManager.

◆ ResumePluginUnloadGC()

void FPluginManager::ResumePluginUnloadGC ( )
overridevirtual

Implements IPluginManager.

◆ SetBinariesRootDirectories()

void FPluginManager::SetBinariesRootDirectories ( const FString &  EngineBinariesRootDir,
const FString &  ProjectBinariesRootDir 
)
overridevirtual

Set root directories for where to find binaries for plugins.

Implements IPluginManager.

◆ SetPreloadBinaries()

void FPluginManager::SetPreloadBinaries ( )
overridevirtual

If preload binaries is set all plugin binaries will be loaded in an early Loading phase. This is a temporary solution to work around issues with pak/iostore for modular builds

Implements IPluginManager.

◆ SetRegisterMountPointDelegate()

void FPluginManager::SetRegisterMountPointDelegate ( const FRegisterMountPointDelegate Delegate)
overridevirtual

Sets the delegate to call to register a new content mount point. This is used internally by the plug-in manager system and should not be called by you. This is registered at application startup by FPackageName code in CoreUObject.

Parameters
DelegateThe delegate to that will be called when plug-in manager needs to register a mount point

Implements IPluginManager.

◆ SetUnRegisterMountPointDelegate()

void FPluginManager::SetUnRegisterMountPointDelegate ( const FRegisterMountPointDelegate Delegate)
overridevirtual

Sets the delegate to call to unregister a new content mount point. This is used internally by the plug-in manager system and should not be called by you. This is registered at application startup by FPackageName code in CoreUObject.

Parameters
DelegateThe delegate to that will be called when plug-in manager needs to unregister a mount point

Implements IPluginManager.

◆ SuppressPluginUnloadGC()

void FPluginManager::SuppressPluginUnloadGC ( )
overridevirtual

Internal API for handling plugin garbage collection in a batch-friendly way.

Implements IPluginManager.

◆ UnmountExplicitlyLoadedPlugin() [1/2]

virtual bool FPluginManager::UnmountExplicitlyLoadedPlugin ( const FString &  PluginName,
FText OutReason 
)
inlineoverridevirtual

Marks an explicitly loaded plugin as disabled, unmounts its content (does not work on plugins with compiled modules).

Implements IPluginManager.

◆ UnmountExplicitlyLoadedPlugin() [2/2]

bool FPluginManager::UnmountExplicitlyLoadedPlugin ( const FString &  PluginName,
FText OutReason,
bool  bAllowUnloadCode 
)
overridevirtual

Implements IPluginManager.

◆ UnmountExplicitlyLoadedPluginLocalizationData()

bool FPluginManager::UnmountExplicitlyLoadedPluginLocalizationData ( const FString &  PluginName,
TUniqueFunction< void(bool bUnloadedLocalization, const FString &PluginName)> &&  Notification = nullptr 
)
overridevirtual

Start unloading localization data for an explicitly loaded plugin that had its localization data mounted via MountExplicitlyLoadedPluginLocalizationData.

Note
Localization data is ref-counted, so this should be paired with a call to MountExplicitlyLoadedPluginLocalizationData.
Localization data is also automatically (and regardless of ref-count) unloaded when calling UnmountExplicitlyLoadedPlugin.
Parameters
PluginNameThe name of the plugin to unload the localization data for.
NotificationAn optional notification function to call when the localization data unload has finished (from any thread), or immediately if there was no localization data to unload. bUnloadedLocalization corresponds to the return value of this function.
Returns
True if localization data started to unload, or false if the plugin was missing or had no localization data to unload.

Implements IPluginManager.


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