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

#include <PluginManager.h>

+ Inheritance diagram for FPlugin:

Public Member Functions

 FPlugin (const FString &FileName, const FPluginDescriptor &InDescriptor, EPluginType InType)
 
virtual ~FPlugin ()
 
virtual const FString & GetName () const override
 
virtual const FString & GetFriendlyName () const override
 
virtual const FString & GetDescriptorFileName () const override
 
virtual FString GetBaseDir () const override
 
virtual TArray< FString > GetExtensionBaseDirs () const override
 
virtual FString GetContentDir () const override
 
virtual FString GetMountedAssetPath () const override
 
virtual bool IsEnabled () const override
 
virtual bool IsEnabledByDefault (bool bAllowEnginePluginsEnabledByDefault) const override
 
virtual bool IsMounted () const override
 
virtual bool IsHidden () const override
 
virtual bool CanContainContent () const override
 
virtual bool CanContainVerse () const override
 
virtual const FString & GetVersePath () const override
 
virtual TOptional< uint32GetVerseVersion () const override
 
virtual const FString & GetDeprecatedEngineVersion () const override
 
virtual bool IsSceneGraphEnabled () const override
 
virtual EPluginType GetType () const override
 
virtual EPluginLoadedFrom GetLoadedFrom () const override
 
virtual const FPluginDescriptorGetDescriptor () const override
 
virtual bool UpdateDescriptor (const FPluginDescriptor &NewDescriptor, FText &OutFailReason) override
 
void SetIsMounted (bool bInIsMounted)
 
- Public Member Functions inherited from IPlugin
virtual ~IPlugin ()
 
- Public Member Functions inherited from TSharedFromThis< IPlugin >
TSharedRef< IPlugin, Mode > AsShared ()
 
TSharedRef< IPlugin const, Mode > AsShared () const
 
TSharedRef< SubobjectType, Mode > AsSharedSubobject (SubobjectType *SubobjectPtr) const
 
TWeakPtr< IPlugin, Mode > AsWeak ()
 
TWeakPtr< IPlugin const, Mode > AsWeak () const
 
TWeakPtr< SubobjectType, Mode > AsWeakSubobject (SubobjectType *SubobjectPtr) const
 
void UpdateWeakReferenceInternal (TSharedPtr< SharedPtrType, SharedPtrMode > const *InSharedPtr, OtherType *InObject) const
 
void UpdateWeakReferenceInternal (TSharedRef< SharedRefType, SharedPtrMode > const *InSharedRef, OtherType *InObject) const
 
UE_FORCEINLINE_HINT bool DoesSharedInstanceExist () const
 

Public Attributes

FString Name
 
FString FileName
 
TArray< FString > PluginExtensionFileNameList
 
FPluginDescriptor Descriptor
 
EPluginType Type
 
bool bEnabled: 1
 
bool bIsMounted: 1
 
uint8 ExplicitlyLoadedLocalizationDataMountedRefCount = 0
 

Additional Inherited Members

- Protected Member Functions inherited from TSharedFromThis< IPlugin >
 TSharedFromThis ()
 
 TSharedFromThis (TSharedFromThis const &)
 
UE_FORCEINLINE_HINT TSharedFromThisoperator= (TSharedFromThis const &)
 
 ~TSharedFromThis ()
 
- Static Protected Member Functions inherited from TSharedFromThis< IPlugin >
static UE_FORCEINLINE_HINT TSharedRef< OtherType, Mode > SharedThis (OtherType *ThisPtr)
 
static UE_FORCEINLINE_HINT TSharedRef< OtherType const, Mode > SharedThis (const OtherType *ThisPtr)
 

Detailed Description

Instance of a plugin in memory

Constructor & Destructor Documentation

◆ FPlugin()

FPlugin::FPlugin ( const FString &  FileName,
const FPluginDescriptor InDescriptor,
EPluginType  InType 
)

FPlugin constructor

◆ ~FPlugin()

FPlugin::~FPlugin ( )
virtual

Destructor.

Member Function Documentation

◆ CanContainContent()

virtual bool FPlugin::CanContainContent ( ) const
inlineoverridevirtual

Determines if the plugin can contain content.

Returns
True if the plugin can contain content.

Implements IPlugin.

◆ CanContainVerse()

virtual bool FPlugin::CanContainVerse ( ) const
inlineoverridevirtual

Determines if the plugin can contain Verse code.

Returns
True if the plugin can contain Verse code.

Implements IPlugin.

◆ GetBaseDir()

FString FPlugin::GetBaseDir ( ) const
overridevirtual

Get a filesystem path to the plugin's directory.

Returns
Filesystem path to the plugin's base directory.

Implements IPlugin.

◆ GetContentDir()

FString FPlugin::GetContentDir ( ) const
overridevirtual

Get a filesystem path to the plugin's content directory.

Returns
Filesystem path to the plugin's content directory.

Implements IPlugin.

◆ GetDeprecatedEngineVersion()

virtual const FString & FPlugin::GetDeprecatedEngineVersion ( ) const
inlineoverridevirtual

Gets the engine version that this plugin was deprecated. If unset then this plugin is not deprecated.

Returns
Deprecated engine version. This may be an empty string.

Implements IPlugin.

◆ GetDescriptor()

const FPluginDescriptor & FPlugin::GetDescriptor ( ) const
overridevirtual

Gets the plugin's descriptor

Returns
Reference to the plugin's descriptor

Implements IPlugin.

◆ GetDescriptorFileName()

virtual const FString & FPlugin::GetDescriptorFileName ( ) const
inlineoverridevirtual

Get a filesystem path to the plugin's descriptor

Returns
Filesystem path to the plugin's descriptor.

Implements IPlugin.

◆ GetExtensionBaseDirs()

TArray< FString > FPlugin::GetExtensionBaseDirs ( ) const
overridevirtual

Get a filesystem path to the plugin's directory.

Returns
Filesystem path to the plugin's base directory.

Implements IPlugin.

◆ GetFriendlyName()

virtual const FString & FPlugin::GetFriendlyName ( ) const
inlineoverridevirtual

Return plugin friendly name if available or the same name as GetName() otherwise.

Implements IPlugin.

◆ GetLoadedFrom()

EPluginLoadedFrom FPlugin::GetLoadedFrom ( ) const
overridevirtual

Returns the plugin's location

Returns
Where the plugin was loaded from

Implements IPlugin.

◆ GetMountedAssetPath()

FString FPlugin::GetMountedAssetPath ( ) const
overridevirtual

Get the virtual root path for assets.

Returns
The mounted root path for assets in this plugin's content folder; typically /PluginName/.

Implements IPlugin.

◆ GetName()

virtual const FString & FPlugin::GetName ( ) const
inlineoverridevirtual

Gets the plugin name.

Returns
Name of the plugin.

Implements IPlugin.

◆ GetType()

virtual EPluginType FPlugin::GetType ( ) const
inlineoverridevirtual

Gets the type of a plugin

Returns
The plugin type

Implements IPlugin.

◆ GetVersePath()

virtual const FString & FPlugin::GetVersePath ( ) const
inlineoverridevirtual

Gets the Verse path to the root of the plugin's content directory

Returns
Verse path to the root of the plugin's content directory

Implements IPlugin.

◆ GetVerseVersion()

virtual TOptional< uint32 > FPlugin::GetVerseVersion ( ) const
inlineoverridevirtual

Return the Verse language version to compile the plugin with (if unspecified, the latest stable version is used)

Implements IPlugin.

◆ IsEnabled()

virtual bool FPlugin::IsEnabled ( ) const
inlineoverridevirtual

Determines if the plugin is enabled.

Returns
True if the plugin is currently enabled.

Implements IPlugin.

◆ IsEnabledByDefault()

bool FPlugin::IsEnabledByDefault ( bool  bAllowEnginePluginsEnabledByDefault) const
overridevirtual

Determines if the plugin is enabled by default.

Returns
True if the plugin is currently enabled by default.

Implements IPlugin.

◆ IsHidden()

virtual bool FPlugin::IsHidden ( ) const
inlineoverridevirtual

Determines if the plugin is should be displayed in-editor for the user to enable/disable freely.

Returns
True if the plugin should be hidden.

Implements IPlugin.

◆ IsMounted()

virtual bool FPlugin::IsMounted ( ) const
inlineoverridevirtual

Determines if the plugin is mounted.

Returns
True if the plugin is currently mounted.

Implements IPlugin.

◆ IsSceneGraphEnabled()

virtual bool FPlugin::IsSceneGraphEnabled ( ) const
inlineoverridevirtual

Return whether Scene Graph is enabled or not. This impacts which Verse asset digest is generated.

Implements IPlugin.

◆ SetIsMounted()

void FPlugin::SetIsMounted ( bool  bInIsMounted)
inline

◆ UpdateDescriptor()

bool FPlugin::UpdateDescriptor ( const FPluginDescriptor NewDescriptor,
FText OutFailReason 
)
overridevirtual

Updates the plugin's descriptor

Parameters
NewDescriptorThe new plugin descriptor
OutFailReasonThe error message if the plugin's descriptor could not be updated
Returns
True if the descriptor was updated, false otherwise.

Implements IPlugin.

Member Data Documentation

◆ bEnabled

bool FPlugin::bEnabled

True if the plugin is marked as enabled

◆ bIsMounted

bool FPlugin::bIsMounted

True if this plugin has been mounted/loaded. A 'mounted' plugin is one whose content has been registered, and modules set to load. NOTE: Usually plugins are 'enabled' and 'mounted' at the same time, with the exception of 'ExplicitlyLoaded' plugins (which can be set
'enabled' but not mounted until much later)

◆ Descriptor

FPluginDescriptor FPlugin::Descriptor

The plugin's settings

◆ ExplicitlyLoadedLocalizationDataMountedRefCount

uint8 FPlugin::ExplicitlyLoadedLocalizationDataMountedRefCount = 0

>0 if an explicitly loaded plugin has also mounted its localization data.

Note
Unused for non-explicitly loaded plugins.

◆ FileName

FString FPlugin::FileName

The filename that the plugin was loaded from

◆ Name

FString FPlugin::Name

The name of the plugin

◆ PluginExtensionFileNameList

TArray<FString> FPlugin::PluginExtensionFileNameList

The filenames from which any child plugins that have been merged were loaded

◆ Type

EPluginType FPlugin::Type

Type of plugin


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