Navigation
API > API/Runtime > API/Runtime/Projects
PluginManager manages available code and content extensions (both loaded and not loaded).
| Name | IPluginManager |
| Type | class |
| Header File | /Engine/Source/Runtime/Projects/Public/Interfaces/IPluginManager.h |
| Include Path | #include "Interfaces/IPluginManager.h" |
Syntax
class IPluginManager
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~IPluginManager() |
Interfaces/IPluginManager.h |
Classes
| Name | Remarks |
|---|---|
| FLoadingModulesForPhaseEvent | Callback for when modules for when LoadModulesForEnabledPlugins() completes loading for a specific phase. |
| FNewPluginMountedEvent | Event signature for being notified that a new plugin has been mounted |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FGetExplanationForUnavailablePackageWithPluginInfoDelegate | TMulticastDelegate_ThreeParams< void, const FString &, class IPlugin *, FStringBuilderBase & > | Delegate type for allowing higher levels systems to provide additional context for why a package was skipped during loading | Interfaces/IPluginManager.h |
| FRegisterMountPointDelegate | TBaseDelegate_TwoParams< void, const FString &, const FString & > | Delegate type for mounting content paths. Used internally by FPackageName code. | Interfaces/IPluginManager.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AddPluginSearchPath
(
const FString& ExtraDiscoveryPath, |
Stores the specified path, utilizing it in future search passes when searching for available plugins. | Interfaces/IPluginManager.h | |
bool AddToPluginsList
(
const FString& PluginFilename, |
Adds a single plugin to the list of plugins. | Interfaces/IPluginManager.h | |
bool AreRequiredPluginsAvailable () |
Checks if all the required plug-ins are available. | Interfaces/IPluginManager.h | |
bool CanEnablePluginInCurrentTarget
(
const ANSICHAR* Name |
Interfaces/IPluginManager.h | ||
bool CanEnablePluginInCurrentTarget
(
const FStringView Name |
Returns true when the given plugin can be enabled for the current running exe. | Interfaces/IPluginManager.h | |
| Checks whether modules for the enabled plug-ins are up to date. | Interfaces/IPluginManager.h | ||
void EnumerateVersePathMountPoints
(
const UE::Core::FVersePath& VersePath, |
Enumerates all mounted plug-ins to find mount points that the Verse path maps to. | Interfaces/IPluginManager.h | |
TSharedPtr< IPlugin > FindEnabledPlugin
(
const ANSICHAR* Name |
Interfaces/IPluginManager.h | ||
TSharedPtr< IPlugin > FindEnabledPlugin
(
const FStringView Name |
Finds information for an enabled plugin. | Interfaces/IPluginManager.h | |
TSharedPtr< IPlugin > FindEnabledPluginFromDescriptor
(
const FPluginReferenceDescriptor& PluginDesc |
Interfaces/IPluginManager.h | ||
TSharedPtr< IPlugin > FindEnabledPluginFromPath
(
const FString& PluginPath |
Interfaces/IPluginManager.h | ||
TSharedPtr< IPlugin > FindPlugin
(
const FStringView Name |
Finds information for a plugin. | Interfaces/IPluginManager.h | |
TSharedPtr< IPlugin > FindPlugin
(
const ANSICHAR* Name |
Interfaces/IPluginManager.h | ||
TSharedPtr< IPlugin > FindPluginFromDescriptor
(
const FPluginReferenceDescriptor& PluginDesc |
Interfaces/IPluginManager.h | ||
TSharedPtr< IPlugin > FindPluginFromPath
(
const FString& PluginPath |
Interfaces/IPluginManager.h | ||
void FindPluginsUnderDirectory
(
const FString& Directory, |
Finds all plugin descriptors underneath a given directory (recursively) | Interfaces/IPluginManager.h | |
const TSet< FString > & GetAdditionalPluginSearchPaths () |
Returns the list of extra directories that are recursively searched for plugins (aside from the engine and project plugin directories). | Interfaces/IPluginManager.h | |
const TSet< FString > & GetBuiltInPluginNames() |
Returns the set of built-in plugin names | Interfaces/IPluginManager.h | |
TArray< TSharedRef< IPlugin > > GetDiscoveredPlugins() |
Gets an array of all the discovered plugins. | Interfaces/IPluginManager.h | |
TArray< TSharedRef< IPlugin > > GetEnabledPlugins() |
Gets an array of all the enabled plugins. | Interfaces/IPluginManager.h | |
TArray< TSharedRef< IPlugin > > GetEnabledPluginsWithContent() |
Gets an array of all enabled plugins that can have content. | Interfaces/IPluginManager.h | |
TArray< TSharedRef< IPlugin > > GetEnabledPluginsWithContentOrVerse() |
Gets an array of all enabled plugins that can have content or Verse code. | Interfaces/IPluginManager.h | |
TArray< TSharedRef< IPlugin > > GetEnabledPluginsWithVerse() |
Gets an array of all enabled plugins that can have Verse code. | Interfaces/IPluginManager.h | |
void GetExplanationForUnavailablePackage
(
const FName& UnavailablePackageName, |
Attempts to fill out InOutExplanation with information from various sources (registered via GetExplanationForUnavailablePackageWithPluginInfoDelegate) about why UnavailablePackageName is not available | Interfaces/IPluginManager.h | |
FGetExplanationForUnavailablePackageWithPluginInfoDelegate & GetExplanationForUnavailablePackageWithPluginInfoDelegate() |
Accessor for adding/removing FGetExplanationForUnavailablePackageWithPluginInfoDelegate delegates. | Interfaces/IPluginManager.h | |
void GetExternalPluginSources
(
TSet< FExternalPluginPath >& OutPluginSources |
Similar to GetAdditionalPluginSearchPaths, but also returns configuration sources for each path. | Interfaces/IPluginManager.h | |
ELoadingPhase::Type GetLastCompletedLoadingPhase() |
Returns the highest loading phase that has so far completed | Interfaces/IPluginManager.h | |
void GetLocalizationPathsForEnabledPlugins
(
TArray< FString >& OutLocResPaths |
Get the localization paths for all enabled plugins. | Interfaces/IPluginManager.h | |
TSharedPtr< IPlugin > GetModuleOwnerPlugin
(
FName ModuleName |
Returns the plugin that owns the specified module, if any | Interfaces/IPluginManager.h | |
bool GetPluginDependencies
(
const FString& PluginName, |
Tries to get a list of plugin dependencies for a given plugin. | Interfaces/IPluginManager.h | |
bool GetPluginDependencies_FromDescriptor
(
const FPluginReferenceDescriptor& PluginDescriptor, |
Interfaces/IPluginManager.h | ||
bool GetPluginDependencies_FromFileName
(
const FString& PluginFileName, |
Interfaces/IPluginManager.h | ||
const TSet< FString > & GetPluginsEnabledAtStartup () |
Returns the set of plugins compiled into the current application and enabled at startup. | Interfaces/IPluginManager.h | |
TArray< TSharedRef< IPlugin > > GetPluginsWithPakFile() |
Gets an array of plugins that loaded their own content pak file | Interfaces/IPluginManager.h | |
bool GetPreloadBinaries() |
Interfaces/IPluginManager.h | ||
virtual bool IntegratePluginsIntoConfig
(
FConfigCacheIni& ConfigSystem, |
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 | Interfaces/IPluginManager.h | |
bool LoadModulesForEnabledPlugins
(
const ELoadingPhase::Type LoadingPhase |
Loads all plug-ins | Interfaces/IPluginManager.h | |
bool MountExplicitlyLoadedPlugin
(
const FString& PluginName |
Marks an explicitly loaded plugin as enabled, mounts its content and tries to load its modules. | Interfaces/IPluginManager.h | |
bool MountExplicitlyLoadedPlugin_FromDescriptor
(
const FPluginReferenceDescriptor& PluginDescriptor |
Interfaces/IPluginManager.h | ||
bool MountExplicitlyLoadedPlugin_FromFileName
(
const FString& PluginFileName |
Interfaces/IPluginManager.h | ||
bool MountExplicitlyLoadedPluginLocalizationData
(
const FString& PluginName, |
Start loading localization data for an explicitly loaded plugin that has previously been mounted via one of the MountExplicitlyLoadedPlugin functions. | Interfaces/IPluginManager.h | |
void MountNewlyCreatedPlugin
(
const FString& PluginName |
Marks a newly created plugin as enabled, mounts its content and tries to load its modules | Interfaces/IPluginManager.h | |
FLoadingModulesForPhaseEvent & OnLoadingPhaseComplete() |
Interfaces/IPluginManager.h | ||
FNewPluginMountedEvent & OnNewPluginContentMounted() |
Event for being notified that a new plugin and its content have been mounted | Interfaces/IPluginManager.h | |
FNewPluginMountedEvent & OnNewPluginCreated() |
Event signature for being notified that a new plugin has been created | Interfaces/IPluginManager.h | |
FNewPluginMountedEvent & OnNewPluginMounted() |
Event for being notified that a new plugin has been mounted | Interfaces/IPluginManager.h | |
FNewPluginMountedEvent & OnPluginEdited() |
Event for being notified that a plugin has been edited | Interfaces/IPluginManager.h | |
FNewPluginMountedEvent & OnPluginUnmounted() |
Event for being notified that a plugin has been unmounted | Interfaces/IPluginManager.h | |
| Does a reverse lookup to try to figure out what the UObject package name is for a plugin | Interfaces/IPluginManager.h | ||
void RefreshPluginsList() |
Updates the list of plugins. | Interfaces/IPluginManager.h | |
bool RemoveFromPluginsList
(
const FString& PluginFilename, |
Remove a single plugin from the list of plugins. | Interfaces/IPluginManager.h | |
bool RemovePluginSearchPath
(
const FString& PathToRemove, |
Removes the specified path from consideration for available plugins. | Interfaces/IPluginManager.h | |
bool RequiresTempTargetForCodePlugin
(
const FProjectDescriptor* ProjectDescriptor, |
Determines if a content-only project requires a temporary target due to having a plugin enabled | Interfaces/IPluginManager.h | |
void ResumePluginUnloadGC() |
Interfaces/IPluginManager.h | ||
void SetBinariesRootDirectories
(
const FString& EngineBinariesRootDir, |
Set root directories for where to find binaries for plugins. | Interfaces/IPluginManager.h | |
void SetPreloadBinaries () |
If preload binaries is set all plugin binaries will be loaded in an early Loading phase. | Interfaces/IPluginManager.h | |
void SetRegisterMountPointDelegate
(
const FRegisterMountPointDelegate& Delegate |
Sets the delegate to call to register a new content mount point. | Interfaces/IPluginManager.h | |
void SetUnRegisterMountPointDelegate
(
const FRegisterMountPointDelegate& Delegate |
Sets the delegate to call to unregister a new content mount point. | Interfaces/IPluginManager.h | |
void SuppressPluginUnloadGC() |
Internal API for handling plugin garbage collection in a batch-friendly way. | Interfaces/IPluginManager.h | |
bool UnmountExplicitlyLoadedPlugin
(
const FString& PluginName, |
Marks an explicitly loaded plugin as disabled, unmounts its content (does not work on plugins with compiled modules). | Interfaces/IPluginManager.h | |
bool UnmountExplicitlyLoadedPlugin
(
const FString& PluginName, |
Interfaces/IPluginManager.h | ||
bool UnmountExplicitlyLoadedPluginLocalizationData
(
const FString& PluginName, |
Start unloading localization data for an explicitly loaded plugin that had its localization data mounted via MountExplicitlyLoadedPluginLocalizationData. | Interfaces/IPluginManager.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static IPluginManager & Get() |
Static: Access singleton instance. | Interfaces/IPluginManager.h |