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

#include <IPluginManager.h>

+ Inheritance diagram for IPluginManager:

Public Member Functions

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

Static Public Member Functions

static PROJECTS_API IPluginManagerGet ()
 

Detailed Description

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

Constructor & Destructor Documentation

◆ ~IPluginManager()

virtual IPluginManager::~IPluginManager ( )
inlinevirtual

Member Function Documentation

◆ AddPluginSearchPath()

virtual bool IPluginManager::AddPluginSearchPath ( const FString &  ExtraDiscoveryPath,
bool  bRefresh = true 
)
pure virtual

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

Implemented in FPluginManager.

◆ AddToPluginsList()

virtual bool IPluginManager::AddToPluginsList ( const FString &  PluginFilename,
FText OutFailReason = nullptr 
)
pure virtual

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.

Implemented in FPluginManager.

◆ AreRequiredPluginsAvailable()

virtual bool IPluginManager::AreRequiredPluginsAvailable ( )
pure virtual

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.

Implemented in FPluginManager.

◆ CanEnablePluginInCurrentTarget() [1/2]

virtual bool IPluginManager::CanEnablePluginInCurrentTarget ( const ANSICHAR Name)
pure virtual

Implemented in FPluginManager.

◆ CanEnablePluginInCurrentTarget() [2/2]

virtual bool IPluginManager::CanEnablePluginInCurrentTarget ( const FStringView  Name)
pure virtual

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

Implemented in FPluginManager.

◆ CheckModuleCompatibility()

virtual bool IPluginManager::CheckModuleCompatibility ( TArray< FString > &  OutIncompatibleModules,
TArray< FString > &  OutIncompatibleEngineModules 
)
pure virtual

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.

Implemented in FPluginManager.

◆ DECLARE_DELEGATE_TwoParams()

IPluginManager::DECLARE_DELEGATE_TwoParams ( FRegisterMountPointDelegate  ,
const FString &  ,
const FString &   
)

Delegate type for mounting content paths. Used internally by FPackageName code.

◆ DECLARE_EVENT_OneParam()

IPluginManager::DECLARE_EVENT_OneParam ( IPluginManager  ,
FNewPluginMountedEvent  ,
IPlugin  
)

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

◆ DECLARE_EVENT_TwoParams()

IPluginManager::DECLARE_EVENT_TwoParams ( IPluginManager  ,
FLoadingModulesForPhaseEvent  ,
ELoadingPhase::Type  ,
bool   
)

Callback for when modules for when LoadModulesForEnabledPlugins() completes loading for a specific phase.

◆ DECLARE_MULTICAST_DELEGATE_ThreeParams()

IPluginManager::DECLARE_MULTICAST_DELEGATE_ThreeParams ( FGetExplanationForUnavailablePackageWithPluginInfoDelegate  ,
const FString &  ,
class IPlugin ,
FStringBuilderBase  
)

Delegate type for allowing higher levels systems to provide additional context for why a package was skipped during loading

◆ EnumerateVersePathMountPoints()

virtual UE_INTERNAL void IPluginManager::EnumerateVersePathMountPoints ( const UE::Core::FVersePath VersePath,
TFunctionRef< bool(FStringView, FStringView)>  Callback 
)
pure virtual

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.

Implemented in FPluginManager.

◆ FindEnabledPlugin() [1/2]

virtual TSharedPtr< IPlugin > IPluginManager::FindEnabledPlugin ( const ANSICHAR Name)
pure virtual

Implemented in FPluginManager.

◆ FindEnabledPlugin() [2/2]

virtual TSharedPtr< IPlugin > IPluginManager::FindEnabledPlugin ( const FStringView  Name)
pure virtual

Finds information for an enabled plugin.

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

Implemented in FPluginManager.

◆ FindEnabledPluginFromDescriptor()

virtual TSharedPtr< IPlugin > IPluginManager::FindEnabledPluginFromDescriptor ( const FPluginReferenceDescriptor PluginDesc)
pure virtual

Implemented in FPluginManager.

◆ FindEnabledPluginFromPath()

virtual TSharedPtr< IPlugin > IPluginManager::FindEnabledPluginFromPath ( const FString &  PluginPath)
pure virtual

Implemented in FPluginManager.

◆ FindPlugin() [1/2]

virtual TSharedPtr< IPlugin > IPluginManager::FindPlugin ( const ANSICHAR Name)
pure virtual

Implemented in FPluginManager.

◆ FindPlugin() [2/2]

virtual TSharedPtr< IPlugin > IPluginManager::FindPlugin ( const FStringView  Name)
pure virtual

Finds information for a plugin.

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

Implemented in FPluginManager.

◆ FindPluginFromDescriptor()

virtual TSharedPtr< IPlugin > IPluginManager::FindPluginFromDescriptor ( const FPluginReferenceDescriptor PluginDesc)
pure virtual

Implemented in FPluginManager.

◆ FindPluginFromPath()

virtual TSharedPtr< IPlugin > IPluginManager::FindPluginFromPath ( const FString &  PluginPath)
pure virtual

Implemented in FPluginManager.

◆ FindPluginsUnderDirectory()

virtual void IPluginManager::FindPluginsUnderDirectory ( const FString &  Directory,
TArray< FString > &  OutPluginFilePaths 
)
pure virtual

Finds all plugin descriptors underneath a given directory (recursively)

Parameters
DirectorySearch folder
OutPluginFilePathsReceives found plugin descriptor file paths

Implemented in FPluginManager.

◆ Get()

IPluginManager & IPluginManager::Get ( )
static

Static: Access singleton instance.

Returns
Reference to the singleton object.

◆ GetAdditionalPluginSearchPaths()

virtual const TSet< FString > & IPluginManager::GetAdditionalPluginSearchPaths ( ) const
pure virtual

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!

Implemented in FPluginManager.

◆ GetDiscoveredPlugins()

virtual TArray< TSharedRef< IPlugin > > IPluginManager::GetDiscoveredPlugins ( )
pure virtual

Gets an array of all the discovered plugins.

Returns
Array of the discovered plugins.

Implemented in FPluginManager.

◆ GetEnabledPlugins()

virtual TArray< TSharedRef< IPlugin > > IPluginManager::GetEnabledPlugins ( )
pure virtual

Gets an array of all the enabled plugins.

Returns
Array of the enabled plugins.

Implemented in FPluginManager.

◆ GetEnabledPluginsWithContent()

virtual TArray< TSharedRef< IPlugin > > IPluginManager::GetEnabledPluginsWithContent ( ) const
pure virtual

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

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

Implemented in FPluginManager.

◆ GetEnabledPluginsWithContentOrVerse()

virtual TArray< TSharedRef< IPlugin > > IPluginManager::GetEnabledPluginsWithContentOrVerse ( ) const
pure virtual

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

Implemented in FPluginManager.

◆ GetEnabledPluginsWithVerse()

virtual TArray< TSharedRef< IPlugin > > IPluginManager::GetEnabledPluginsWithVerse ( ) const
pure virtual

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

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

Implemented in FPluginManager.

◆ GetExplanationForUnavailablePackage()

virtual void IPluginManager::GetExplanationForUnavailablePackage ( const FName UnavailablePackageName,
FStringBuilderBase InOutExplanation 
)
pure virtual

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

Implemented in FPluginManager.

◆ GetExplanationForUnavailablePackageWithPluginInfoDelegate()

virtual FGetExplanationForUnavailablePackageWithPluginInfoDelegate & IPluginManager::GetExplanationForUnavailablePackageWithPluginInfoDelegate ( )
pure virtual

Accessor for adding/removing FGetExplanationForUnavailablePackageWithPluginInfoDelegate delegates.

Returns
the FGetExplanationForUnavailablePackageWithPluginInfoDelegate to which callbacks can be bound

Implemented in FPluginManager.

◆ GetExternalPluginSources()

virtual void IPluginManager::GetExternalPluginSources ( TSet< FExternalPluginPath > &  OutPluginSources) const
pure virtual

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

Implemented in FPluginManager.

◆ GetLastCompletedLoadingPhase()

virtual ELoadingPhase::Type IPluginManager::GetLastCompletedLoadingPhase ( ) const
pure virtual

Returns the highest loading phase that has so far completed

Implemented in FPluginManager.

◆ GetLocalizationPathsForEnabledPlugins()

virtual void IPluginManager::GetLocalizationPathsForEnabledPlugins ( TArray< FString > &  OutLocResPaths)
pure virtual

Get the localization paths for all enabled plugins.

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

Implemented in FPluginManager.

◆ GetPluginDependencies()

virtual bool IPluginManager::GetPluginDependencies ( const FString &  PluginName,
TArray< FPluginReferenceDescriptor > &  PluginDependencies 
)
pure virtual

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

Implemented in FPluginManager.

◆ GetPluginDependencies_FromDescriptor()

virtual bool IPluginManager::GetPluginDependencies_FromDescriptor ( const FPluginReferenceDescriptor PluginDescriptor,
TArray< FPluginReferenceDescriptor > &  PluginDependencies 
)
pure virtual

Implemented in FPluginManager.

◆ GetPluginDependencies_FromFileName()

virtual bool IPluginManager::GetPluginDependencies_FromFileName ( const FString &  PluginFileName,
TArray< FPluginReferenceDescriptor > &  PluginDependencies 
)
pure virtual

Implemented in FPluginManager.

◆ GetPluginsEnabledAtStartup()

virtual UE_INTERNAL const TSet< FString > & IPluginManager::GetPluginsEnabledAtStartup ( ) const
pure virtual

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.

Implemented in FPluginManager.

◆ GetPluginsWithPakFile()

virtual TArray< TSharedRef< IPlugin > > IPluginManager::GetPluginsWithPakFile ( ) const
pure virtual

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

Implemented in FPluginManager.

◆ GetPreloadBinaries()

virtual bool IPluginManager::GetPreloadBinaries ( )
pure virtual

Implemented in FPluginManager.

◆ IntegratePluginsIntoConfig()

virtual bool IPluginManager::IntegratePluginsIntoConfig ( FConfigCacheIni ConfigSystem,
const TCHAR EngineIniName,
const TCHAR PlatformName,
const TCHAR StagedPluginsFile 
)
inlinevirtual

Scans a set of given plugins and adds them to the passed in ConfigSystem so that the runtime can load faster without needing to scan all plugins looking for config/paks

Parameters
ConfigSystemThe config system to insert settings into
EngineIniNameThe name of the engine ini file in ConfigSystem
PlatformNameThe name of the platform this config is made for
StagedPluginsFileA path to a file that contains all plugins that have been staged, and should be evaluated

◆ LoadModulesForEnabledPlugins()

virtual bool IPluginManager::LoadModulesForEnabledPlugins ( const ELoadingPhase::Type  LoadingPhase)
pure virtual

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.

Implemented in FPluginManager.

◆ MountExplicitlyLoadedPlugin()

virtual bool IPluginManager::MountExplicitlyLoadedPlugin ( const FString &  PluginName,
ELoadingPhase::Type  MaxLoadingPhase = ELoadingPhase::Max 
)
pure virtual

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.

Implemented in FPluginManager.

◆ MountExplicitlyLoadedPlugin_FromDescriptor()

virtual bool IPluginManager::MountExplicitlyLoadedPlugin_FromDescriptor ( const FPluginReferenceDescriptor PluginDescriptor)
pure virtual

Implemented in FPluginManager.

◆ MountExplicitlyLoadedPlugin_FromFileName()

virtual bool IPluginManager::MountExplicitlyLoadedPlugin_FromFileName ( const FString &  PluginFileName)
pure virtual

Implemented in FPluginManager.

◆ MountExplicitlyLoadedPluginLocalizationData()

virtual bool IPluginManager::MountExplicitlyLoadedPluginLocalizationData ( const FString &  PluginName,
TUniqueFunction< void(bool bLoadedLocalization, const FString &PluginName)> &&  Notification = nullptr 
)
pure virtual

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.

Implemented in FPluginManager.

◆ MountNewlyCreatedPlugin()

virtual void IPluginManager::MountNewlyCreatedPlugin ( const FString &  PluginName)
pure virtual

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

Implemented in FPluginManager.

◆ OnLoadingPhaseComplete()

virtual FLoadingModulesForPhaseEvent & IPluginManager::OnLoadingPhaseComplete ( )
pure virtual

Implemented in FPluginManager.

◆ OnNewPluginContentMounted()

virtual FNewPluginMountedEvent & IPluginManager::OnNewPluginContentMounted ( )
pure virtual

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

Implemented in FPluginManager.

◆ OnNewPluginCreated()

virtual FNewPluginMountedEvent & IPluginManager::OnNewPluginCreated ( )
pure virtual

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

Implemented in FPluginManager.

◆ OnNewPluginMounted()

virtual FNewPluginMountedEvent & IPluginManager::OnNewPluginMounted ( )
pure virtual

Event for being notified that a new plugin has been mounted

Implemented in FPluginManager.

◆ OnPluginEdited()

virtual FNewPluginMountedEvent & IPluginManager::OnPluginEdited ( )
pure virtual

Event for being notified that a plugin has been edited

Implemented in FPluginManager.

◆ OnPluginUnmounted()

virtual FNewPluginMountedEvent & IPluginManager::OnPluginUnmounted ( )
pure virtual

Event for being notified that a plugin has been unmounted

Implemented in FPluginManager.

◆ PackageNameFromModuleName()

virtual FName IPluginManager::PackageNameFromModuleName ( FName  ModuleName)
pure virtual

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

Implemented in FPluginManager.

◆ RefreshPluginsList()

virtual void IPluginManager::RefreshPluginsList ( )
pure virtual

Updates the list of plugins.

Implemented in FPluginManager.

◆ RemoveFromPluginsList()

virtual bool IPluginManager::RemoveFromPluginsList ( const FString &  PluginFilename,
FText OutFailReason = nullptr 
)
pure virtual

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).

Implemented in FPluginManager.

◆ RemovePluginSearchPath()

virtual bool IPluginManager::RemovePluginSearchPath ( const FString &  PathToRemove,
bool  bRefresh = true 
)
pure virtual

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

Implemented in FPluginManager.

◆ RequiresTempTargetForCodePlugin()

virtual bool IPluginManager::RequiresTempTargetForCodePlugin ( const FProjectDescriptor ProjectDescriptor,
const FString &  Platform,
EBuildConfiguration  Configuration,
EBuildTargetType  TargetType,
FText OutReason 
)
pure virtual

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

Implemented in FPluginManager.

◆ ResumePluginUnloadGC()

virtual UE_INTERNAL void IPluginManager::ResumePluginUnloadGC ( )
pure virtual

Implemented in FPluginManager.

◆ SetBinariesRootDirectories()

virtual void IPluginManager::SetBinariesRootDirectories ( const FString &  EngineBinariesRootDir,
const FString &  ProjectBinariesRootDir 
)
pure virtual

Set root directories for where to find binaries for plugins.

Implemented in FPluginManager.

◆ SetPreloadBinaries()

virtual void IPluginManager::SetPreloadBinaries ( )
pure virtual

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

Implemented in FPluginManager.

◆ SetRegisterMountPointDelegate()

virtual void IPluginManager::SetRegisterMountPointDelegate ( const FRegisterMountPointDelegate Delegate)
pure virtual

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

Implemented in FPluginManager.

◆ SetUnRegisterMountPointDelegate()

virtual void IPluginManager::SetUnRegisterMountPointDelegate ( const FRegisterMountPointDelegate Delegate)
pure virtual

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

Implemented in FPluginManager.

◆ SuppressPluginUnloadGC()

virtual UE_INTERNAL void IPluginManager::SuppressPluginUnloadGC ( )
pure virtual

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

Implemented in FPluginManager.

◆ UnmountExplicitlyLoadedPlugin() [1/2]

virtual bool IPluginManager::UnmountExplicitlyLoadedPlugin ( const FString &  PluginName,
FText OutReason 
)
pure virtual

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

Implemented in FPluginManager.

◆ UnmountExplicitlyLoadedPlugin() [2/2]

virtual bool IPluginManager::UnmountExplicitlyLoadedPlugin ( const FString &  PluginName,
FText OutReason,
bool  bAllowUnloadCode 
)
pure virtual

Implemented in FPluginManager.

◆ UnmountExplicitlyLoadedPluginLocalizationData()

virtual bool IPluginManager::UnmountExplicitlyLoadedPluginLocalizationData ( const FString &  PluginName,
TUniqueFunction< void(bool bUnloadedLocalization, const FString &PluginName)> &&  Notification = nullptr 
)
pure virtual

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.

Implemented in FPluginManager.


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