![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <ModuleInterface.h>
Inheritance diagram for IModuleInterface:Public Member Functions | |
| virtual | ~IModuleInterface () |
| virtual void | StartupModule () |
| virtual void | PreUnloadCallback () |
| virtual void | PostLoadCallback () |
| virtual void | ShutdownModule () |
| virtual bool | SupportsDynamicReloading () |
| virtual bool | SupportsAutomaticShutdown () |
| virtual bool | IsGameModule () const |
Interface class that all module implementations should derive from. This is used to initialize a module after it's been loaded, and also to clean it up before the module is unloaded.
|
inlinevirtual |
Note: Even though this is an interface class we need a virtual destructor here because modules are deleted via a pointer to this interface
Returns true if this module hosts gameplay code
Called after the module has been reloaded
Reimplemented in FHttpModule.
Called before the module has been unloaded
Reimplemented in IInstallBundleManagerModule, and FHttpModule.
Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finish StartupModule(). This means that, as long as a module references dependent modules in it's StartupModule(), it can safely reference those dependencies in ShutdownModule() as well.
Reimplemented in FAdvancedWidgetsModule, FAudioAnalyzerModule, FAVEncoderModule, FCrashReportCoreModule, FEngineModule, IDataflowSimulationPlugin, FLauncherPlatformModule, FStreamingPauseRenderingModule, FAdpcmAudioDecoderModule, FAnimGraphRuntimeModule, FAppFrameworkModule, FAudioCaptureCoreModule, Audio::FAudioCaptureAndroidModule, Audio::FAudioCaptureRtAudioModule, Audio::FAudioCaptureAudioUnitModule, Audio::FAudioCaptureWasapiModule, Audio::FWindowsMMDeviceEnumerationModule, FAudioLinkModule, FAudioPlatformSupportWasapiModule, FAutomationMessagesModule, FAutomationTestModule, FAutomationWorkerModule, FBinkAudioDecoderModule, FCborModule, FClothingSystemRuntimeCommonModule, FClothingSystemRuntimeInterfaceModule, FClothingSystemRuntimeModuleNv, FColorManagementModule, FCookOnTheFlyModule, FCUDAModule, FD3D12DynamicRHIModule, FDeveloperSettingsModule, IPIEPreviewDeviceModule, FEngineMessagesModule, FEngineSettingsModule, FConstraintsModule, FChaosEngineModule, FChaosCoreEngineModule, FChaosVehiclesCoreModule, FChaosVehiclesEngineModule, IDataflowCoreModule, FDataflowEngineModule, Experimental::FIndexedCacheStorageModule, UE::IoStore::FIoStoreOnDemandModule, UE::IoStore::FIoStoreOnDemandCoreModule, FGameplayDebuggerModule, FGameplayMediaEncoderModule, FGameplayTasksModule, FGeometryCoreModule, FGeometryFrameworkModule, FHardwareSurveyModule, FImageWrapperModule, FInstallBundleManagerModule, FInteractiveToolsFrameworkModule, FInterchangeCoreModule, FInterchangeEngineModule, FIOSPlatformFeatures, FLaunchDaemonMessagesModule, FMarketplaceKitModule, FJsonModule, FLandscapeModule, FLevelSequenceModule, FMediaModule, FMediaAssetsModule, FMediaUtilsModule, FMeshConversionModule, FMeshConversionEngineTypesModule, FMeshDescriptionModule, FMessagingModule, FMessagingRpcModule, FMovieSceneModule, FNetCommonModule, FNetCoreModule, FNetworkingModule, FHttpNetworkReplayStreamingFactory, FLocalFileNetworkReplayStreamingFactory, FBackgroundHttpModule, FBuildPatchServicesModule, UE::EventLoop::FEventLoopModule, FHttpModule, FHttpServerModule, FImageDownloadModule, FOpenColorIOWrapperModule, FOpusAudioDecoderModule, FOverlayModule, FPacketHandlerComponentModuleInterface, FPakFileModule, FPerfCountersModule, FPortalMessagesModule, FPortalProxiesModule, FPortalRpcModule, FPortalServicesModule, FProjectsModule, FPropertyPathModule, FRadAudioDecoderModule, FRenderCoreModule, FRendererModule, FSerializationModule, FSessionMessagesModule, FSessionServicesModule, Audio::FSignalProcessingModule, FSkeletalMeshDescriptionModule, FSlateNullRendererModule, FSlateRHIRendererModule, FSocketSubsystemModule, FSoundFieldRenderingModule, FStaticMeshUtilitiesModule, FStorageServerClientModule, FStorageServerClientDebugModule, FTypedElementFrameworkModule, FUMGModule, UE::UniversalObjectLocator::FUniversalObjectLocatorModule, FVorbisAudioDecoderModule, and FWidgetCarouselModule.
Called right after the module DLL has been loaded and the module object has been created Load dependent modules here, and they will be guaranteed to be available during ShutdownModule. ie:
FModuleManager::Get().LoadModuleChecked(TEXT("HTTP"));
Reimplemented in FAdvancedWidgetsModule, FAudioAnalyzerModule, FCrashReportCoreModule, FEngineModule, IDataflowSimulationPlugin, FLauncherPlatformModule, FStreamingPauseRenderingModule, FAdpcmAudioDecoderModule, FAudioMixerModuleAndroid, FAnimGraphRuntimeModule, FAppFrameworkModule, FAudioMixerModuleAudioUnit, FAudioMixerModuleCoreAudio, FAssetRegistryModule, FAudioCaptureCoreModule, Audio::FAudioCaptureAndroidModule, Audio::FAudioCaptureRtAudioModule, Audio::FAudioCaptureAudioUnitModule, Audio::FAudioCaptureWasapiModule, Audio::FWindowsMMDeviceEnumerationModule, FAudioExtensionsModule, FAudioLinkModule, FAudioMixerPlatformAudioLinkModule, FAudioMixerModule, FAudioMixerCoreModule, FAudioPlatformConfigurationModule, FAudioPlatformSupportWasapiModule, FAutomationMessagesModule, FAutomationTestModule, FAutomationWorkerModule, FBinkAudioDecoderModule, FCborModule, FCinematicCameraModule, FClothingSystemRuntimeCommonModule, FClothingSystemRuntimeInterfaceModule, FClothingSystemRuntimeModuleNv, FColorManagementModule, FCookOnTheFlyModule, FCoreUObjectModule, FCUDAModule, FD3D12DynamicRHIModule, FDirectLinkModule, FDeveloperSettingsModule, ICameraPhotographyModule, IPIEPreviewDeviceModule, FEngineMessagesModule, FEngineSettingsModule, FConstraintsModule, FChaosEngineModule, FChaosCoreEngineModule, FChaosVehiclesCoreModule, FChaosVehiclesEngineModule, IDataflowCoreModule, FDataflowEngineModule, Experimental::FIndexedCacheStorageModule, UE::IoStore::FIoStoreOnDemandModule, UE::IoStore::FIoStoreOnDemandCoreModule, IEyeTrackerModule, FGameplayDebuggerModule, FGameplayMediaEncoderModule, FGameplayTasksModule, FGeometryCoreModule, FGeometryFrameworkModule, FHardwareSurveyModule, IHeadMountedDisplayModule, FImageWrapperModule, FInputCoreModule, IInputDeviceModule, FInstallBundleManagerModule, TInstallBundleManagerModule< InstallBundleManagerModuleImpl >, TInstallBundleManagerModule< FNullInstallBundleManager >, FInteractiveToolsFrameworkModule, FInterchangeCoreModule, FInterchangeEngineModule, FIOSPlatformFeatures, FLaunchDaemonMessagesModule, FMarketplaceKitModule, FJsonModule, FLandscapeModule, FLevelSequenceModule, FAudioMixerModuleSDL, FMediaModule, FMediaAssetsModule, FMediaUtilsModule, FMeshConversionModule, FMeshConversionEngineTypesModule, FMeshDescriptionModule, FMessagingModule, FMessagingRpcModule, FMovieSceneModule, FBaseMeshReconstructorModule, FNetCommonModule, FNetCoreModule, FNetworkingModule, FLocalFileNetworkReplayStreamingFactory, FSaveGameNetworkReplayStreamingFactory, FBackgroundHttpModule, FBuildPatchServicesModule, UE::EventLoop::FEventLoopModule, FHttpModule, FHttpServerModule, FImageDownloadModule, FOpenColorIOWrapperModule, FOpusAudioDecoderModule, FOverlayModule, FPacketHandlerComponentModuleInterface, FPakFileModule, FPortalMessagesModule, FPortalProxiesModule, FPortalRpcModule, FPortalServicesModule, FProjectsModule, FPropertyPathModule, FRadAudioDecoderModule, FRenderCoreModule, FRendererModule, FRuntimeAssetCacheModule, FSerializationModule, FSessionMessagesModule, FSessionServicesModule, Audio::FSignalProcessingModule, FSkeletalMeshDescriptionModule, FSlateNullRendererModule, FSlateRHIRendererModule, FSocketSubsystemModule, FSoundFieldRenderingModule, FStaticMeshUtilitiesModule, FStorageServerClientModule, FStorageServerClientDebugModule, FTypedElementFrameworkModule, FTypedElementRuntimeModule, FUMGModule, UE::UniversalObjectLocator::FUniversalObjectLocatorModule, FVorbisAudioDecoderModule, FVulkanDynamicRHIModule, FWidgetCarouselModule, FAudioMixerModuleWasapi, and FAudioMixerModuleXAudio2.
Override this to set whether your module would like cleanup on application shutdown
Reimplemented in FPerfCountersModule, and FSocketSubsystemModule.
Override this to set whether your module is allowed to be unloaded on the fly
Reimplemented in FAutomationMessagesModule, FAutomationTestModule, FAutomationWorkerModule, FCborModule, FCookOnTheFlyModule, FCoreModule, FD3D12DynamicRHIModule, FEngineMessagesModule, FEngineSettingsModule, IDataflowCoreModule, FDataflowEngineModule, FInterchangeCoreModule, FInterchangeEngineModule, FLaunchDaemonMessagesModule, FMarketplaceKitModule, FJsonModule, FLiveLinkInterfaceModule, FLiveLinkMessageBusFrameworkModule, FMediaModule, FMediaAssetsModule, FMediaUtilsModule, FMessagingModule, FMessagingRpcModule, FNetCommonModule, FNetCoreModule, FNetworkingModule, FNullDynamicRHIModule, UE::EventLoop::FEventLoopModule, FOpenGLDynamicRHIModule, FOverlayModule, FPerfCountersModule, FPortalMessagesModule, FPortalProxiesModule, FPortalRpcModule, FPortalServicesModule, FProjectsModule, FRendererModule, FSerializationModule, FSessionMessagesModule, FSocketSubsystemModule, and FD3D11DynamicRHIModule.