UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UNetDriver Class Reference

#include <NetDriver.h>

+ Inheritance diagram for UNetDriver:

Public Types

enum class  ERemoteFunctionSendPolicy { Default , ForceSend , ForceQueue }
 
- Public Types inherited from UObject
enum class  ENetFields_Private { NETFIELD_REP_START = 0 , NETFIELD_REP_END = -1 }
 
typedef UObject WithinClass
 

Public Member Functions

virtual ENGINE_API ~UNetDriver ()
 
int32 GetNetServerMaxTickRate () const
 
ENGINE_API void SetNetServerMaxTickRate (int32 InServerMaxTickRate)
 
void TryUpgradeNetworkFeatures (EEngineNetworkRuntimeFeatures RemoteFeatures)
 
 DECLARE_MULTICAST_DELEGATE_ThreeParams (FOnNetServerMaxTickRateChanged, UNetDriver *, int32, int32)
 
bool IsKnownChannelName (const FName &ChName) const
 
ENGINE_API void CreateInitialClientChannels ()
 
ENGINE_API void CreateInitialServerChannels (UNetConnection *ClientConnection)
 
ENGINE_API void AddObjectToNetworkIdCache (UObject *Object)
 
ENGINE_API void RemoveObjectFromNetworkIdCache (UObject *Object)
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FOnNetUpdateFrequencyChanged, const AActor *Actor)
 
FOnNetUpdateFrequencyChangedGetOnNetUpdateFrequencyChanged ()
 
int32 GetMaxChannelsOverride () const
 
UChannelGetOrCreateChannelByName (const FName &ChName)
 
void ReleaseToChannelPool (UChannel *Channel)
 
void SetNetDriverName (FName NewNetDriverNamed)
 
void SetNetDriverDefinition (FName NewNetDriverDefinition)
 
FName GetNetDriverDefinition () const
 
ENGINE_API void PostCreation (bool bInitializeWithIris)
 
ENGINE_API void ReinitBase ()
 
void InitPacketSimulationSettings ()
 
bool IsSimulatingPacketLossBurst () const
 
double GetElapsedTime () const
 
void ResetElapsedTime ()
 
ENGINE_API void RequestNetDriverDestruction ()
 
bool IsInTick () const
 
bool GetPendingDestruction () const
 
ENGINE_API void SetPendingDestruction (bool bDestroy)
 
const TSharedPtr< class FNetGUIDCache > & GetNetGuidCache () const
 
TSharedPtr< class FNetGUIDCache > & GetNetGuidCache ()
 
void PrintDebugRelevantActors ()
 
const TSet< FNetworkGUID > & GetDestroyedStartupOrDormantActors (const FName &LevelName)
 
void SetNetAnalyticsAttributes (const FString &AttributeKey, const FString &AttributeValue)
 
TSharedPtr< FRepLayoutGetObjectClassRepLayout (UClass *InClass)
 
ENGINE_API TSharedPtr< FRepLayoutGetFunctionRepLayout (UFunction *Function)
 
ENGINE_API TSharedPtr< FRepLayoutGetStructRepLayout (UStruct *Struct)
 
TSharedPtr< FReplicationChangelistMgrGetReplicationChangeListMgr (UObject *Object)
 
void UpdateStandbyCheatStatus (void)
 
virtual ENGINE_API void SetAnalyticsProvider (TSharedPtr< IAnalyticsProvider > InProvider)
 
ENGINE_API void SetPacketSimulationSettings (const FPacketSimulationSettings &NewSettings)
 
ENGINE_API void OnPacketSimulationSettingsChanged ()
 
ENGINE_API UNetDriver (const FObjectInitializer &ObjectInitializer=FObjectInitializer::Get())
 
ENGINE_API UNetDriver (FVTableHelper &Helper)
 
virtual ENGINE_API void PostInitProperties () override
 
virtual ENGINE_API void PostReloadConfig (FProperty *PropertyToLoad) override
 
virtual ENGINE_API void FinishDestroy () override
 
virtual ENGINE_API void Serialize (FArchive &Ar) override
 
ENGINE_API void EnableExecuteRPCFunctions (bool bEnable)
 
ENGINE_API bool IsExecuteRPCFunctionsEnabled () const
 
ENGINE_API void EnablePreReplication (bool bEnable)
 
ENGINE_API bool IsPreReplicationEnabled () const
 
ENGINE_API void ReplicateAutonomousAsSimulated (bool bEnabled)
 
ENGINE_API bool IsReplicatingAutonomousAsSimulated () const
 
virtual bool CanDowngradeActorRole (UNetConnection *Connection, AActor *Actor) const
 
ENGINE_API ENetMode GetNetMode () const
 
virtual bool IsAvailable() const PURE_VIRTUAL(UNetDriver virtual ENGINE_API bool InitBase (bool bInitAsClient, FNetworkNotify *InNotify, const FURL &URL, bool bReuseAddressAndPort, FString &Error)
 
virtual ENGINE_API void InitDestroyedStartupActors ()
 
virtual ENGINE_API void InitConnectionlessHandler ()
 
virtual ENGINE_API void FlushHandler ()
 
virtual ENGINE_API bool InitConnectionClass (void)
 
virtual ENGINE_API bool InitReplicationDriverClass ()
 
virtual ENGINE_API bool InitReplicationBridgeClass ()
 
virtual ENGINE_API void Shutdown ()
 
virtual ENGINE_API void LowLevelDestroy ()
 
virtual ENGINE_API FString LowLevelGetNetworkNumber ()
 
virtual TSharedPtr< const FInternetAddrGetLocalAddr ()
 
virtual ENGINE_API void AssertValid ()
 
virtual ENGINE_API int32 ServerReplicateActors (float DeltaSeconds)
 
virtual ENGINE_API void ProcessRemoteFunction (class AActor *Actor, class UFunction *Function, void *Parms, struct FOutParmRec *OutParms, struct FFrame *Stack, class UObject *SubObject=nullptr)
 
TObjectPtr< UNetworkMetricsDatabaseGetMetrics ()
 
ENGINE_API void ProcessRemoteFunctionForChannel (UActorChannel *Ch, const class FClassNetCache *ClassCache, const FFieldNetCache *FieldCache, UObject *TargetObj, UNetConnection *Connection, UFunction *Function, void *Parms, FOutParmRec *OutParms, FFrame *Stack, const bool IsServer, const ERemoteFunctionSendPolicy SendPolicy=ERemoteFunctionSendPolicy::Default)
 
ENGINE_API void ProcessRemoteFunctionForChannel (UActorChannel *Ch, const class FClassNetCache *ClassCache, const FFieldNetCache *FieldCache, UObject *TargetObj, UNetConnection *Connection, UFunction *Function, void *Parms, FOutParmRec *OutParms, FFrame *Stack, const bool IsServer, const ERemoteFunctionSendPolicy SendPolicy, EProcessRemoteFunctionFlags &RemoteFunctionFlags)
 
virtual ENGINE_API void TickDispatch (float DeltaTime)
 
virtual ENGINE_API void PostTickDispatch ()
 
virtual ENGINE_API void TickFlush (float DeltaSeconds)
 
virtual ENGINE_API void PostTickFlush ()
 
virtual ENGINE_API void ProcessLocalClientPackets ()
 
virtual ENGINE_API void UpdateNetworkLagState ()
 
virtual ENGINE_API void ReplicateVoicePacket (TSharedPtr< class FVoicePacket > VoicePacket, class UNetConnection *CameFromConn)
 
bool HandleSocketsCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandlePackageMapCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleNetFloodCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleNetDebugTextCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleNetDisconnectCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleNetDumpServerRPCCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleNetDumpDormancy (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleDumpSubObjectsCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandleDumpRepLayoutFlagsCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandlePushModelMemCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
bool HandlePropertyConditionsMemCommand (const TCHAR *Cmd, FOutputDevice &Ar)
 
ENGINE_API void HandlePacketLossBurstCommand (int32 DurationInMilliseconds)
 
virtual ENGINE_API void ForceNetUpdate (AActor *Actor)
 
ENGINE_API void ForceAllActorsNetUpdateTime (float NetUpdateTimeOffset, TFunctionRef< bool(const AActor *const)> ValidActorTestFunc)
 
ENGINE_API void FlushActorDormancy (AActor *Actor, bool bWasDormInitial=false)
 
ENGINE_API void NotifyActorDormancyChange (AActor *Actor, ENetDormancy OldDormancyState)
 
virtual ENGINE_API void NotifyActorClientDormancyChanged (AActor *Actor, ENetDormancy OldDormancyState)
 
ENGINE_API void ForcePropertyCompare (AActor *Actor)
 
ENGINE_API void ForceActorRelevantNextUpdate (AActor *Actor)
 
virtual ENGINE_API void AddNetworkActor (AActor *Actor)
 
virtual ENGINE_API void NotifyActorDestroyed (AActor *Actor, bool IsSeamlessTravel=false, EChannelCloseReason CloseReason=EChannelCloseReason::Destroyed)
 
void NotifySubObjectDestroyed (UObject *SubObject)
 
virtual ENGINE_API void NotifyActorRenamed (AActor *Actor, FName PreviousName)
 
virtual ENGINE_API void NotifyActorRenamed (AActor *Actor, UObject *PreviousOuter, FName PreviousName)
 
virtual ENGINE_API void RemoveNetworkActor (AActor *Actor)
 
void DeleteSubObjectOnClients (AActor *Actor, UObject *SubObject)
 
void TearOffSubObjectOnClients (AActor *Actor, UObject *SubObject)
 
virtual ENGINE_API void NotifyActorLevelUnloaded (AActor *Actor)
 
virtual ENGINE_API void NotifyActorTearOff (AActor *Actor)
 
ENGINE_API void NotifyActorIsTraveling (AActor *TravelingActor)
 
ENGINE_API void SetRoleSwapOnReplicate (AActor *Actor, bool bSwapRoles)
 
virtual ENGINE_API void NotifyStreamingLevelUnload (ULevel *)
 
virtual ENGINE_API class UChildConnectionCreateChild (UNetConnection *Parent)
 
FString GetDescription () const
 
virtual ENGINE_API bool IsServer () const
 
virtual ENGINE_API void CleanPackageMaps ()
 
void RemoveClassRepLayoutReferences (UClass *Class)
 
ENGINE_API void CleanupWorldForSeamlessTravel ()
 
ENGINE_API void PreSeamlessTravelGarbageCollect ()
 
ENGINE_API void PostSeamlessTravelGarbageCollect ()
 
virtual ENGINE_API void SetWorld (class UWorld *InWorld)
 
virtual class UWorldGetWorld () const override final
 
class UPackageGetWorldPackage () const
 
virtual ENGINE_API void ResetGameWorldState ()
 
bool NetObjectIsDynamic (const UObject *Object) const
 
void DrawNetDriverDebug ()
 
TSharedPtr< FRepChangedPropertyTrackerFindOrCreateRepChangedPropertyTracker (UObject *Obj)
 
TSharedPtr< FRepChangedPropertyTrackerFindRepChangedPropertyTracker (UObject *Obj)
 
virtual bool ShouldClientDestroyTearOffActors () const
 
virtual ENGINE_API bool ShouldSkipRepNotifies () const
 
virtual bool ShouldQueueBunchesForActorGUID (FNetworkGUID InGUID) const
 
virtual bool ShouldIgnoreRPCs () const
 
virtual FNetworkGUID GetGUIDForActor (const AActor *InActor) const
 
virtual AActorGetActorForGUID (FNetworkGUID InGUID) const
 
virtual bool ShouldReceiveRepNotifiesForObject (UObject *Object) const
 
FNetworkObjectListGetNetworkObjectList ()
 
const FNetworkObjectListGetNetworkObjectList () const
 
ENGINE_API FNetworkObjectInfoFindOrAddNetworkObjectInfo (const AActor *InActor)
 
ENGINE_API FNetworkObjectInfoFindNetworkObjectInfo (const AActor *InActor)
 
const FNetworkObjectInfoFindNetworkObjectInfo (const AActor *InActor) const
 
ENGINE_API bool IsNetworkActorUpdateFrequencyThrottled (const AActor *InActor) const
 
ENGINE_API bool IsNetworkActorUpdateFrequencyThrottled (const FNetworkObjectInfo &InNetworkActor) const
 
ENGINE_API void CancelAdaptiveReplication (FNetworkObjectInfo &InNetworkActor)
 
ENGINE_API void CancelAdaptiveReplication (const AActor *InActor)
 
ENGINE_API bool IsPendingNetUpdate (const AActor *InActor) const
 
int32 GetDuplicateLevelID () const
 
void SetDuplicateLevelID (const int32 InDuplicateLevelID)
 
ENGINE_API void SetReplicationDriver (UReplicationDriver *NewReplicationManager)
 
UReplicationDriverGetReplicationDriver () const
 
bool IsUsingIrisReplication () const
 
ENGINE_API EEngineNetworkRuntimeFeatures GetNetworkRuntimeFeatures () const
 
ENGINE_API void RestartIrisSystem ()
 
ENGINE_API void DestroyIrisSystem ()
 
ENGINE_API void RecreateIrisSystem ()
 
template<class T >
T * GetReplicationDriver () const
 
UReplicationSystemGetReplicationSystem ()
 
UReplicationSystemGetReplicationSystem () const
 
void UpdateGroupFilterStatusForLevel (const ULevel *Level, UE::Net::FNetObjectGroupHandle LevelGroupHandle)
 
void DisallowReplicationOfAllLevelGroupsForConnection (UE::Net::FConnectionHandle Handle)
 
void UpdateGroupFilterStatusForAllLevelsForConnection (UE::Net::FConnectionHandle Handle)
 
void UpdateGroupFilterStatusForAllLevelsForAllConnections ()
 
const UE::Net::FNetTokenStoreGetNetTokenStore () const
 
UE::Net::FNetTokenStoreGetNetTokenStore ()
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FOnNetTokenStoreReady, UNetDriver *)
 
FOnNetTokenStoreReady::RegistrationType & OnNetTokenStoreReady ()
 
ENGINE_API void RemoveClientConnection (UNetConnection *ClientConnectionToRemove)
 
ENGINE_API void AddClientConnection (UNetConnection *NewConnection)
 
ENGINE_API void ForEachClientConnection (TFunction< bool(TObjectPtr< UNetConnection >)> Func)
 
ENGINE_API void NotifyActorFullyDormantForConnection (AActor *Actor, UNetConnection *Connection)
 
virtual ENGINE_API bool IsLevelInitializedForActor (const AActor *InActor, const UNetConnection *InConnection) const
 
void NotifyRPCProcessed (UFunction *Function, UNetConnection *Connection, double ElapsedTimeSeconds)
 
virtual ENGINE_API bool ShouldReplicateFunction (AActor *Actor, UFunction *Function) const
 
virtual ENGINE_API bool ShouldForwardFunction (AActor *Actor, UFunction *Function, void *Parms) const
 
virtual ENGINE_API bool ShouldReplicateActor (AActor *Actor) const
 
virtual ENGINE_API bool ShouldCallRemoteFunction (UObject *Object, UFunction *Function, const FReplicationFlags &RepFlags) const
 
virtual ENGINE_API bool ShouldClientDestroyActor (AActor *Actor, EChannelCloseReason CloseReason=EChannelCloseReason::Destroyed) const
 
virtual ENGINE_API void NotifyActorChannelOpen (UActorChannel *Channel, AActor *Actor)
 
virtual ENGINE_API void NotifyActorChannelCleanedUp (UActorChannel *Channel, EChannelCloseReason CloseReason)
 
virtual ENGINE_API void NotifyActorTornOff (AActor *Actor)
 
virtual ENGINE_API void ClientSetActorDormant (AActor *Actor)
 
virtual ENGINE_API void ClientSetActorTornOff (AActor *Actor)
 
ENGINE_API void ConsumeAsyncLoadDelinquencyAnalytics (FNetAsyncLoadDelinquencyAnalytics &Out)
 
ENGINE_API const FNetAsyncLoadDelinquencyAnalyticsGetAsyncLoadDelinquencyAnalytics () const
 
ENGINE_API void ResetAsyncLoadDelinquencyAnalytics ()
 
uint32 AllocateConnectionId ()
 
void FreeConnectionId (uint32 Id)
 
ENGINE_API UNetConnectionGetConnectionById (uint32 ParentConnectionId) const
 
ENGINE_API UNetConnectionGetConnectionByHandle (UE::Net::FConnectionHandle ConnectionHandle) const
 
uint32 GetNetTraceId () const
 
ENGINE_API bool CanCreateDestructionInfo () const
 
ENGINE_API int64 SendDestructionInfo (UNetConnection *Connection, FActorDestructionInfo *DestructionInfo)
 
bool SendDestructionInfoForLevelUnloadIfDormant (AActor *ThisActor, UNetConnection *Connection)
 
ENGINE_API UE::Net::FNetIDVariant CreateNetIDForObject (UObject *Object)
 
ENGINE_API void AssignNetIDToObject (UE::Net::FNetIDVariant NetID, const UObject *Object)
 
const bool MaySendProperties () const
 
uint32 GetOutTotalNotifiedPackets () const
 
void IncreaseOutTotalNotifiedPackets ()
 
int32 GetTotalOutOfOrderPackets () const
 
int32 GetTotalOutOfOrderPacketsLost () const
 
void IncreaseTotalOutOfOrderPacketsLost (int32 Count=1)
 
int32 GetTotalOutOfOrderPacketsRecovered () const
 
void IncreaseTotalOutOfOrderPacketsRecovered (int32 Count=1)
 
int32 GetTotalOutOfOrderPacketsDuplicate () const
 
void IncreaseTotalOutOfOrderPacketsDuplicate (int32 Count=1)
 
uint32 GetCachedGlobalNetTravelCount () const
 
bool DidHitchLastFrame () const
 
void MoveMappedObjectToUnmapped (const UObject *Object)
 
bool HasReplayConnection () const
 
virtual bool DoesSupportEncryption () const
 
virtual ENGINE_API bool IsEncryptionRequired () const
 
ENGINE_API float GetIncomingBunchFrameProcessingTimeLimit () const
 
ENGINE_API bool HasExceededIncomingBunchFrameProcessingTime () const
 
void AddBunchProcessingFrameTimeMS (float Milliseconds)
 
void AddQueuedBunchFailsafeChannel ()
 
void SetReplicateTransactionally (bool bInReplicateTransactionally)
 
constexpr bool ShouldReplicateTransactionally () const
 
void SetDeferTransactionalSend (bool bInDeferTransactionalSend)
 
bool ShouldDeferTransactionalSend () const
 
bool IsUsingRemoteObjectReferences () const
 
void SetUsingRemoteObjectReferences (bool bValue)
 
void SetSupportForNoPawnConnection (bool bInSupportNoPawnConnection)
 
bool HasSupportForNoPawnConnection ()
 
TObjectPtr< UNetConnectionFindConnection (struct FUniqueNetIdRepl &PlayerId)
 
bool IsSendingImmediateAcks () const
 
- Public Member Functions inherited from UObject
COREUOBJECT_API UObject ()
 
COREUOBJECT_API UObject (const FObjectInitializer &ObjectInitializer)
 
COREUOBJECT_API UObject (EStaticConstructor, EObjectFlags InFlags)
 
COREUOBJECT_API UObject (FVTableHelper &Helper)
 
COREUOBJECT_API UObjectCreateDefaultSubobject (FName SubobjectFName, UClass *ReturnType, UClass *ClassToCreateByDefault, bool bIsRequired, bool bIsTransient)
 
template<class TReturnType >
TReturnTypeCreateEditorOnlyDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
COREUOBJECT_API void GetDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects)
 
COREUOBJECT_API UObjectGetDefaultSubobjectByName (FName ToFind)
 
virtual COREUOBJECT_API void PostReinitProperties ()
 
virtual void PostCDOContruct ()
 
virtual COREUOBJECT_API void PreSaveRoot (FObjectPreSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PostSaveRoot (FObjectPostSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PreSave (FObjectPreSaveContext SaveContext)
 
virtual COREUOBJECT_API void CollectSaveOverrides (FObjectCollectSaveOverridesContext SaveContext)
 
UE_FORCEINLINE_HINT bool Modify (bool bAlwaysMarkDirty=true)
 
UE_FORCEINLINE_HINT bool IsCapturingAsRootObjectForTransaction () const
 
virtual bool ResolveSubobject (const TCHAR *SubObjectPath, UObject *&OutObject, bool bLoadIfExists)
 
virtual bool IsReadyForAsyncPostLoad () const
 
virtual COREUOBJECT_API void PostLoad ()
 
virtual COREUOBJECT_API void PostLoadSubobjects (FObjectInstancingGraph *OuterInstanceGraph)
 
virtual COREUOBJECT_API void BeginDestroy ()
 
virtual bool IsReadyForFinishDestroy ()
 
virtual COREUOBJECT_API void Serialize (FStructuredArchive::FRecord Record)
 
virtual void ShutdownAfterError ()
 
virtual void PostInterpChange (FProperty *PropertyThatChanged)
 
virtual COREUOBJECT_API void PostRename (UObject *OldOuter, const FName OldName)
 
virtual void PreDuplicate (FObjectDuplicationParameters &DupParams)
 
virtual void PostDuplicate (bool bDuplicateForPIE)
 
virtual void PostDuplicate (EDuplicateMode::Type DuplicateMode)
 
virtual COREUOBJECT_API bool NeedsLoadForClient () const
 
virtual COREUOBJECT_API bool NeedsLoadForServer () const
 
virtual COREUOBJECT_API bool NeedsLoadForTargetPlatform (const class ITargetPlatform *TargetPlatform) const
 
virtual bool NeedsLoadForEditorGame () const
 
virtual bool IsEditorOnly () const
 
virtual bool HasNonEditorOnlyReferences () const
 
virtual bool IsPostLoadThreadSafe () const
 
virtual COREUOBJECT_API bool IsDestructionThreadSafe () const
 
virtual COREUOBJECT_API void GetPreloadDependencies (TArray< UObject * > &OutDeps)
 
virtual void GetPrestreamPackages (TArray< UObject * > &OutPrestream)
 
virtual void ExportCustomProperties (FOutputDevice &Out, uint32 Indent)
 
virtual void ImportCustomProperties (const TCHAR *SourceText, FFeedbackContext *Warn)
 
virtual void PostEditImport ()
 
virtual COREUOBJECT_API bool Rename (const TCHAR *NewName=nullptr, UObject *NewOuter=nullptr, ERenameFlags Flags=REN_None)
 
virtual FString GetDesc ()
 
COREUOBJECT_API UScriptStructGetSparseClassDataStruct () const
 
virtual bool GetNativePropertyValues (TMap< FString, FString > &out_PropertyValues, uint32 ExportFlags=0) const
 
virtual COREUOBJECT_API void GetResourceSizeEx (FResourceSizeEx &CumulativeResourceSize)
 
SIZE_T GetResourceSizeBytes (EResourceSizeMode::Type Mode)
 
virtual FName GetExporterName (void)
 
COREUOBJECT_API void CallAddReferencedObjects (FReferenceCollector &Collector)
 
virtual FRestoreForUObjectOverwriteGetRestoreForUObjectOverwrite ()
 
virtual bool AreNativePropertiesIdenticalTo (UObject *Other) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (TArray< FAssetRegistryTag > &OutTags) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetData &Out) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context, FAssetData &Out) const
 
virtual COREUOBJECT_API bool IsAsset () const
 
virtual COREUOBJECT_API FPrimaryAssetId GetPrimaryAssetId () const
 
virtual COREUOBJECT_API bool IsLocalizedResource () const
 
virtual COREUOBJECT_API bool IsSafeForRootSet () const
 
virtual COREUOBJECT_API void TagSubobjects (EObjectFlags NewFlags)
 
virtual COREUOBJECT_API void GetLifetimeReplicatedProps (TArray< class FLifetimeProperty > &OutLifetimeProps) const
 
virtual COREUOBJECT_API void GetReplicatedCustomConditionState (FCustomPropertyConditionState &OutActiveState) const
 
virtual COREUOBJECT_API void RegisterReplicationFragments (UE::Net::FFragmentRegistrationContext &Context, UE::Net::EFragmentRegistrationFlags RegistrationFlags)
 
virtual COREUOBJECT_API bool IsNameStableForNetworking () const
 
virtual COREUOBJECT_API bool IsFullNameStableForNetworking () const
 
virtual COREUOBJECT_API bool IsSupportedForNetworking () const
 
virtual void GetSubobjectsWithStableNamesForNetworking (TArray< UObject * > &ObjList)
 
virtual COREUOBJECT_API void PreNetReceive ()
 
virtual COREUOBJECT_API void PostNetReceive ()
 
virtual void PostRepNotifies ()
 
virtual COREUOBJECT_API void PreDestroyFromReplication ()
 
COREUOBJECT_API bool IsSelected () const
 
COREUOBJECT_API void SerializeScriptProperties (FArchive &Ar) const
 
COREUOBJECT_API void SerializeScriptProperties (FStructuredArchive::FSlot Slot) const
 
COREUOBJECT_API void ReinitializeProperties (UObject *SourceObject=NULL, struct FObjectInstancingGraph *InstanceGraph=NULL)
 
COREUOBJECT_API FString GetDetailedInfo () const
 
COREUOBJECT_API bool ConditionalBeginDestroy ()
 
COREUOBJECT_API bool ConditionalFinishDestroy ()
 
COREUOBJECT_API void ConditionalPostLoad ()
 
COREUOBJECT_API void ConditionalPreload ()
 
COREUOBJECT_API void ConditionalPostLoadSubobjects (struct FObjectInstancingGraph *OuterInstanceGraph=NULL)
 
bool IsBasedOnArchetype (const UObject *const SomeObject) const
 
COREUOBJECT_API UFunctionFindFunction (FName InName) const
 
COREUOBJECT_API UFunctionFindFunctionChecked (FName InName) const
 
virtual COREUOBJECT_API void BuildSubobjectMapping (UObject *OtherObject, TMap< UObject *, UObject * > &ObjectMapping) const
 
COREUOBJECT_API void CollectDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects, bool bIncludeNestedSubobjects=false) const
 
COREUOBJECT_API bool CheckDefaultSubobjects (bool bForceCheck=false) const
 
COREUOBJECT_API void SaveConfig (uint64 RequiredPropertyFlags=CPF_Config, const TCHAR *Filename=nullptr, FConfigCacheIni *Config=GConfig, bool bAllowCopyToDefaultObject=true)
 
COREUOBJECT_API void SaveConfig (const FSaveConfigContext &Context)
 
COREUOBJECT_API void UpdateDefaultConfigFile (const FString &SpecificFileLocation="")
 
COREUOBJECT_API bool TryUpdateDefaultConfigFile (const FString &SpecificFileLocation="", bool bWarnIfFail=true)
 
COREUOBJECT_API void UpdateGlobalUserConfigFile ()
 
COREUOBJECT_API void UpdateProjectUserConfigFile ()
 
COREUOBJECT_API void UpdateSinglePropertyInConfigFile (const FProperty *InProperty, const FString &InConfigIniName)
 
COREUOBJECT_API FString GetDefaultConfigFilename () const
 
COREUOBJECT_API FString GetGlobalUserConfigFilename () const
 
COREUOBJECT_API FString GetProjectUserConfigFilename () const
 
virtual const TCHARGetConfigOverridePlatform () const
 
virtual void OverrideConfigSection (FString &SectionName)
 
virtual void OverridePerObjectConfigSection (FString &SectionName)
 
COREUOBJECT_API void LoadConfig (UClass *ConfigClass=nullptr, const TCHAR *Filename=nullptr, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=nullptr, TArray< UE::ConfigAccessTracking::FConfigAccessData > *OutAccessedKeys=nullptr)
 
COREUOBJECT_API void ReloadConfig (UClass *ConfigClass=NULL, const TCHAR *Filename=NULL, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=NULL)
 
COREUOBJECT_API void ParseParms (const TCHAR *Parms)
 
COREUOBJECT_API void OutputReferencers (FOutputDevice &Ar, FReferencerInformationList *Referencers=NULL)
 
COREUOBJECT_API void RetrieveReferencers (TArray< FReferencerInformation > *OutInternalReferencers, TArray< FReferencerInformation > *OutExternalReferencers)
 
COREUOBJECT_API void SetLinker (FLinkerLoad *LinkerLoad, int32 LinkerIndex, bool bShouldDetachExisting=true, bool bSilenceLogs=false)
 
COREUOBJECT_API UObjectGetArchetype () const
 
COREUOBJECT_API void GetArchetypeInstances (TArray< UObject * > &Instances)
 
COREUOBJECT_API void InstanceSubobjectTemplates (struct FObjectInstancingGraph *InstanceGraph=NULL)
 
template<class T >
bool Implements () const
 
virtual COREUOBJECT_API void ProcessEvent (UFunction *Function, void *Parms)
 
virtual int32 GetFunctionCallspace (UFunction *Function, FFrame *Stack)
 
virtual bool CallRemoteFunction (UFunction *Function, void *Parms, struct FOutParmRec *OutParms, FFrame *Stack)
 
COREUOBJECT_API bool CallFunctionByNameWithArguments (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor, bool bForceCallWithNonExec=false)
 
COREUOBJECT_API void CallFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
 DECLARE_FUNCTION (ProcessInternal)
 
virtual bool ProcessConsoleExec (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor)
 
COREUOBJECT_API void SkipFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
virtual UClassRegenerateClass (UClass *ClassToRegenerate, UObject *PreviousCDO)
 
COREUOBJECT_API bool IsInBlueprint () const
 
COREUOBJECT_API void DestroyNonNativeProperties ()
 
virtual void MarkAsEditorOnlySubobject ()
 
COREUOBJECT_API void AbortInsideMemberFunction () const
 
 DECLARE_FUNCTION (execUndefined)
 
 DECLARE_FUNCTION (execLocalVariable)
 
 DECLARE_FUNCTION (execInstanceVariable)
 
 DECLARE_FUNCTION (execDefaultVariable)
 
 DECLARE_FUNCTION (execLocalOutVariable)
 
 DECLARE_FUNCTION (execInterfaceVariable)
 
 DECLARE_FUNCTION (execClassSparseDataVariable)
 
 DECLARE_FUNCTION (execInterfaceContext)
 
 DECLARE_FUNCTION (execArrayElement)
 
 DECLARE_FUNCTION (execBoolVariable)
 
 DECLARE_FUNCTION (execClassDefaultVariable)
 
 DECLARE_FUNCTION (execEndFunctionParms)
 
 DECLARE_FUNCTION (execNothing)
 
 DECLARE_FUNCTION (execNothingInt32)
 
 DECLARE_FUNCTION (execNothingOp4a)
 
 DECLARE_FUNCTION (execBreakpoint)
 
 DECLARE_FUNCTION (execTracepoint)
 
 DECLARE_FUNCTION (execWireTracepoint)
 
 DECLARE_FUNCTION (execInstrumentation)
 
 DECLARE_FUNCTION (execEndOfScript)
 
 DECLARE_FUNCTION (execReturnNothing)
 
 DECLARE_FUNCTION (execEmptyParmValue)
 
 DECLARE_FUNCTION (execJump)
 
 DECLARE_FUNCTION (execJumpIfNot)
 
 DECLARE_FUNCTION (execAssert)
 
 DECLARE_FUNCTION (execPushExecutionFlow)
 
 DECLARE_FUNCTION (execPopExecutionFlow)
 
 DECLARE_FUNCTION (execComputedJump)
 
 DECLARE_FUNCTION (execPopExecutionFlowIfNot)
 
 DECLARE_FUNCTION (execLet)
 
 DECLARE_FUNCTION (execLetObj)
 
 DECLARE_FUNCTION (execLetWeakObjPtr)
 
 DECLARE_FUNCTION (execLetBool)
 
 DECLARE_FUNCTION (execLetDelegate)
 
 DECLARE_FUNCTION (execLetMulticastDelegate)
 
 DECLARE_FUNCTION (execAddMulticastDelegate)
 
 DECLARE_FUNCTION (execClearMulticastDelegate)
 
 DECLARE_FUNCTION (execEatReturnValue)
 
 DECLARE_FUNCTION (execRemoveMulticastDelegate)
 
 DECLARE_FUNCTION (execSelf)
 
 DECLARE_FUNCTION (execContext)
 
 DECLARE_FUNCTION (execContext_FailSilent)
 
 DECLARE_FUNCTION (execStructMemberContext)
 
 DECLARE_FUNCTION (execVirtualFunction)
 
 DECLARE_FUNCTION (execFinalFunction)
 
 DECLARE_FUNCTION (execLocalVirtualFunction)
 
 DECLARE_FUNCTION (execLocalFinalFunction)
 
 DECLARE_FUNCTION (execStructCmpEq)
 
 DECLARE_FUNCTION (execStructCmpNe)
 
 DECLARE_FUNCTION (execStructMember)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execNotEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execNotEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execIntConst)
 
 DECLARE_FUNCTION (execInt64Const)
 
 DECLARE_FUNCTION (execUInt64Const)
 
 DECLARE_FUNCTION (execSkipOffsetConst)
 
 DECLARE_FUNCTION (execFloatConst)
 
 DECLARE_FUNCTION (execDoubleConst)
 
 DECLARE_FUNCTION (execStringConst)
 
 DECLARE_FUNCTION (execUnicodeStringConst)
 
 DECLARE_FUNCTION (execTextConst)
 
 DECLARE_FUNCTION (execPropertyConst)
 
 DECLARE_FUNCTION (execObjectConst)
 
 DECLARE_FUNCTION (execSoftObjectConst)
 
 DECLARE_FUNCTION (execFieldPathConst)
 
 DECLARE_FUNCTION (execInstanceDelegate)
 
 DECLARE_FUNCTION (execNameConst)
 
 DECLARE_FUNCTION (execByteConst)
 
 DECLARE_FUNCTION (execIntZero)
 
 DECLARE_FUNCTION (execIntOne)
 
 DECLARE_FUNCTION (execTrue)
 
 DECLARE_FUNCTION (execFalse)
 
 DECLARE_FUNCTION (execNoObject)
 
 DECLARE_FUNCTION (execNullInterface)
 
 DECLARE_FUNCTION (execIntConstByte)
 
 DECLARE_FUNCTION (execRotationConst)
 
 DECLARE_FUNCTION (execVectorConst)
 
 DECLARE_FUNCTION (execVector3fConst)
 
 DECLARE_FUNCTION (execTransformConst)
 
 DECLARE_FUNCTION (execStructConst)
 
 DECLARE_FUNCTION (execSetArray)
 
 DECLARE_FUNCTION (execSetSet)
 
 DECLARE_FUNCTION (execSetMap)
 
 DECLARE_FUNCTION (execArrayConst)
 
 DECLARE_FUNCTION (execSetConst)
 
 DECLARE_FUNCTION (execMapConst)
 
 DECLARE_FUNCTION (execBitFieldConst)
 
 DECLARE_FUNCTION (execNew)
 
 DECLARE_FUNCTION (execClassContext)
 
 DECLARE_FUNCTION (execNativeParm)
 
 DECLARE_FUNCTION (execCast)
 
 DECLARE_FUNCTION (execDynamicCast)
 
 DECLARE_FUNCTION (execMetaCast)
 
 DECLARE_FUNCTION (execInterfaceCast)
 
 DECLARE_FUNCTION (execDoubleToFloatCast)
 
 DECLARE_FUNCTION (execFloatToDoubleCast)
 
 DECLARE_FUNCTION (execObjectToBool)
 
 DECLARE_FUNCTION (execInterfaceToBool)
 
 DECLARE_FUNCTION (execObjectToInterface)
 
 DECLARE_FUNCTION (execInterfaceToInterface)
 
 DECLARE_FUNCTION (execInterfaceToObject)
 
 DECLARE_FUNCTION (execGetDynArrayElement)
 
 DECLARE_FUNCTION (execSetDynArrayElement)
 
 DECLARE_FUNCTION (execGetDynArrayLength)
 
 DECLARE_FUNCTION (execSetDynArrayLength)
 
 DECLARE_FUNCTION (execDynArrayInsert)
 
 DECLARE_FUNCTION (execDynArrayRemove)
 
 DECLARE_FUNCTION (execDynArrayFind)
 
 DECLARE_FUNCTION (execDynArrayFindStruct)
 
 DECLARE_FUNCTION (execDynArrayAdd)
 
 DECLARE_FUNCTION (execDynArrayAddItem)
 
 DECLARE_FUNCTION (execDynArrayInsertItem)
 
 DECLARE_FUNCTION (execDynArrayRemoveItem)
 
 DECLARE_FUNCTION (execDynArraySort)
 
 DECLARE_FUNCTION (execBindDelegate)
 
 DECLARE_FUNCTION (execCallMulticastDelegate)
 
 DECLARE_FUNCTION (execLetValueOnPersistentFrame)
 
 DECLARE_FUNCTION (execCallMathFunction)
 
 DECLARE_FUNCTION (execSwitchValue)
 
 DECLARE_FUNCTION (execArrayGetByRef)
 
 DECLARE_FUNCTION (execAutoRtfmTransact)
 
 DECLARE_FUNCTION (execAutoRtfmStopTransact)
 
 DECLARE_FUNCTION (execAutoRtfmAbortIfNot)
 
void ExecuteUbergraph (int32 EntryPoint)
 
virtual void ValidateGeneratedRepEnums (const TArray< struct FRepRecord > &ClassReps) const
 
virtual uint64 GetNetPushIdDynamic () const
 
- Public Member Functions inherited from UObjectBaseUtility
 UObjectBaseUtility ()
 
 UObjectBaseUtility (EObjectFlags InFlags)
 
void SetFlags (EObjectFlags NewFlags)
 
void ClearFlags (EObjectFlags FlagsToClear)
 
bool HasAnyFlags (EObjectFlags FlagsToCheck) const
 
bool HasAllFlags (EObjectFlags FlagsToCheck) const
 
UE_FORCEINLINE_HINT EObjectFlags GetMaskedFlags (EObjectFlags Mask=RF_AllFlags) const
 
UE_FORCEINLINE_HINT void Mark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT void UnMark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAnyMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAllMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT EObjectMark GetAllMarks () const
 
void MarkAsGarbage ()
 
void ClearGarbage ()
 
UE_FORCEINLINE_HINT void AddToRoot ()
 
UE_FORCEINLINE_HINT void RemoveFromRoot ()
 
UE_FORCEINLINE_HINT bool IsRooted () const
 
UE_FORCEINLINE_HINT int32 GetRefCount () const
 
bool ThisThreadAtomicallyClearedRFUnreachable ()
 
UE_FORCEINLINE_HINT bool IsUnreachable () const
 
UE_FORCEINLINE_HINT bool IsNative () const
 
void SetInternalFlags (EInternalObjectFlags FlagsToSet) const
 
UE_FORCEINLINE_HINT EInternalObjectFlags GetInternalFlags () const
 
UE_FORCEINLINE_HINT bool HasAnyInternalFlags (EInternalObjectFlags FlagsToCheck) const
 
void ClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
bool AtomicallyClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
COREUOBJECT_API FString GetFullName (const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (const UObject *StopOuter, FString &ResultString, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (FStringBuilderBase &ResultString, const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API FString GetPathName (const UObject *StopOuter=NULL) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FString &ResultString) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FStringBuilderBase &ResultString) const
 
virtual bool CanBeClusterRoot () const
 
virtual COREUOBJECT_API bool CanBeInCluster () const
 
virtual COREUOBJECT_API void CreateCluster ()
 
virtual void OnClusterMarkedAsPendingKill ()
 
COREUOBJECT_API void AddToCluster (UObjectBaseUtility *ClusterRootOrObjectFromCluster, bool bAddAsMutableObject=false)
 
COREUOBJECT_API FString GetFullGroupName (bool bStartWithOuter) const
 
UE_FORCEINLINE_HINT FString GetName () const
 
UE_FORCEINLINE_HINT void GetName (FString &ResultString) const
 
UE_FORCEINLINE_HINT void AppendName (FString &ResultString) const
 
COREUOBJECT_API bool IsPackageExternal () const
 
COREUOBJECT_API void DetachExternalPackage ()
 
COREUOBJECT_API void ReattachExternalPackage ()
 
COREUOBJECT_API UObjectGetOutermostObject () const
 
COREUOBJECT_API UPackageGetPackage () const
 
UE_INTERNAL virtual COREUOBJECT_API UE::Core::FVersePath GetVersePath () const
 
COREUOBJECT_API UPackageGetOutermost () const
 
COREUOBJECT_API bool MarkPackageDirty () const
 
COREUOBJECT_API bool IsTemplate (EObjectFlags TemplateTypes=RF_ArchetypeObject|RF_ClassDefaultObject) const
 
COREUOBJECT_API UObjectGetTypedOuter (UClass *Target) const
 
template<typename T >
T * GetTypedOuter () const
 
template<typename InterfaceClassType >
InterfaceClassTypeGetImplementingOuter () const
 
COREUOBJECT_API UObjectBaseUtilityGetImplementingOuterObject (const UClass *InInterfaceClass) const
 
COREUOBJECT_API bool IsIn (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsIn (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInOuter (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsInPackage (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInA (const UClass *SomeBaseClass) const
 
COREUOBJECT_API bool RootPackageHasAnyFlags (uint32 CheckFlagMask) const
 
template<typename OtherClassType >
bool IsA (OtherClassType SomeBase) const
 
template<class T >
bool IsA () const
 
COREUOBJECT_API const UClassFindNearestCommonBaseClass (const UClass *TestClass) const
 
COREUOBJECT_API voidGetInterfaceAddress (UClass *InterfaceClass)
 
COREUOBJECT_API voidGetNativeInterfaceAddress (UClass *InterfaceClass)
 
const voidGetNativeInterfaceAddress (UClass *InterfaceClass) const
 
COREUOBJECT_API bool IsTemplateForSubobjects (EObjectFlags TemplateTypes=RF_ClassDefaultObject|RF_DefaultSubObject|RF_InheritableComponentTemplate) const
 
COREUOBJECT_API bool IsDefaultSubobject () const
 
COREUOBJECT_API class FLinkerLoadGetLinker () const
 
COREUOBJECT_API int32 GetLinkerIndex () const
 
COREUOBJECT_API FPackageFileVersion GetLinkerUEVersion () const
 
int32 GetLinkerUE4Version () const
 
COREUOBJECT_API int32 GetLinkerLicenseeUEVersion () const
 
int32 GetLinkerLicenseeUE4Version () const
 
COREUOBJECT_API int32 GetLinkerCustomVersion (FGuid CustomVersionKey) const
 
UE_FORCEINLINE_HINT bool operator< (const UObjectBaseUtility &Other) const
 
TStatId GetStatID (bool bForDeferredUse=false) const
 
- Public Member Functions inherited from UObjectBase
COREUOBJECT_API UObjectBase (UClass *InClass, EObjectFlags InFlags, EInternalObjectFlags InInternalFlags, UObject *InOuter, FName InName, int32 InInternalIndex=-1, int32 InSerialNumber=0, FRemoteObjectId InRemoteId=FRemoteObjectId())
 
virtual COREUOBJECT_API ~UObjectBase ()
 
COREUOBJECT_API bool IsValidLowLevel () const
 
COREUOBJECT_API bool IsValidLowLevelFast (bool bRecursive=true) const
 
FORCEINLINE uint32 GetUniqueID () const
 
FORCEINLINE UClassGetClass () const
 
FORCEINLINE UObjectGetOuter () const
 
FORCEINLINE FName GetFName () const
 
virtual COREUOBJECT_API FName GetFNameForStatID () const
 
COREUOBJECT_API UPackageGetExternalPackage () const
 
COREUOBJECT_API void SetExternalPackage (UPackage *InPackage)
 
COREUOBJECT_API UPackageGetExternalPackageInternal () const
 
COREUOBJECT_API void MarkAsReachable () const
 
COREUOBJECT_API void AddRef () const
 
COREUOBJECT_API void ReleaseRef () const
 
FORCEINLINE EObjectFlags GetFlags () const
 
FORCENOINLINE void AtomicallySetFlags (EObjectFlags FlagsToAdd)
 
FORCENOINLINE void AtomicallyClearFlags (EObjectFlags FlagsToClear)
 
- Public Member Functions inherited from FExec
virtual CORE_API ~FExec ()
 
virtual CORE_API bool Exec (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
 

Static Public Member Functions

static ENGINE_API void AddReferencedObjects (UObject *InThis, FReferenceCollector &Collector)
 
static ENGINE_API bool IsAdaptiveNetUpdateFrequencyEnabled ()
 
static bool IsDormInitialStartupActor (AActor *Actor)
 
- Static Public Member Functions inherited from UObject
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedServer (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedClient (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API bool CanCreateInCurrentContext (UObject *Template)
 
static COREUOBJECT_API void AddReferencedObjects (UObject *InThis, FReferenceCollector &Collector)
 
static COREUOBJECT_API const FNameSourceFileTagName ()
 
static COREUOBJECT_API UObjectGetArchetypeFromRequiredInfo (const UClass *Class, const UObject *Outer, FName Name, EObjectFlags ObjectFlags)
 
- Static Public Member Functions inherited from UObjectBaseUtility
static bool IsGarbageEliminationEnabled ()
 
static bool IsPendingKillEnabled ()
 
static void SetGarbageEliminationEnabled (bool bEnabled)
 
static COREUOBJECT_API void ReloadObjectsFromModifiedConfigSections (const class FConfigModificationTracker *ChangeTracker)
 
- Static Public Member Functions inherited from UObjectBase
static COREUOBJECT_API FString RemoveClassPrefix (const TCHAR *ClassName)
 
static void PrefetchClass (UObject *Object)
 
static void PrefetchOuter (UObject *Object)
 

Public Attributes

FString NetConnectionClassName
 
FString ReplicationDriverClassName
 
FString ReplicationBridgeClassName
 
FNetDriverReplicationSystemConfig ReplicationSystemConfigServer
 
FNetDriverReplicationSystemConfig ReplicationSystemConfigClient
 
int32 MaxDownloadSize
 
uint32 bClampListenServerTickRate:1
 
int32 NetServerMaxTickRate
 
FOnNetServerMaxTickRateChanged OnNetServerMaxTickRateChanged
 
int32 MaxNetTickRate
 
int32 MaxInternetClientRate
 
int32 MaxClientRate
 
float ServerTravelPause
 
float SpawnPrioritySeconds
 
float RelevantTimeout
 
float KeepAliveTime
 
float InitialConnectTimeout
 
float ConnectionTimeout
 
float GracefulCloseConnectionTimeout = 2.0f
 
float TimeoutMultiplierForUnoptimizedBuilds
 
TObjectPtr< class UNetConnectionServerConnection
 
TArray< TObjectPtr< UNetConnection > > ClientConnections
 
FConnectionMap MappedClientConnections
 
TArray< FDisconnectedClientRecentlyDisconnectedClients
 
int32 RecentlyDisconnectedTrackingTime
 
TUniquePtr< PacketHandlerConnectionlessHandler
 
TWeakPtr< StatelessConnectHandlerComponentStatelessConnectComponent
 
TSharedPtr< IAnalyticsProviderAnalyticsProvider
 
TSharedPtr< FNetAnalyticsAggregatorAnalyticsAggregator
 
TObjectPtr< class UWorldWorld
 
TObjectPtr< class UPackageWorldPackage
 
TSharedPtr< class FNetGUIDCacheGuidCache
 
TSharedPtr< class FClassNetCacheMgrNetCache
 
TObjectPtr< UClassNetConnectionClass
 
TObjectPtr< UClassChildNetConnectionClass
 
TObjectPtr< UClassReplicationDriverClass
 
TObjectPtr< UClassReplicationBridgeClass
 
FPropertyRoleProperty
 
FPropertyRemoteRoleProperty
 
FName NetDriverName
 
TArray< FChannelDefinitionChannelDefinitions
 
TMap< FName, FChannelDefinitionChannelDefinitionMap
 
class FNetworkNotifyNotify
 
uint8 bNoTimeouts: 1
 
uint8 bNeverApplyNetworkEmulationSettings: 1
 
uint8 bIsPeer: 1
 
uint8 ProfileStats: 1
 
uint8 bSkipLocalStats: 1
 
uint8 bCollectNetStats: 1
 
uint8 bIsStandbyCheckingEnabled: 1
 
uint8 bHasStandbyCheatTriggered: 1
 
double LastTickDispatchRealtime
 
int32 SendCycles
 
uint32 InBytesPerSecond
 
uint32 OutBytesPerSecond
 
uint32 InBytes
 
uint32 InTotalBytes
 
uint32 OutBytes
 
uint32 OutTotalBytes
 
uint32 NetGUIDOutBytes
 
uint32 NetGUIDInBytes
 
uint32 InPackets
 
uint32 PrevInPackets
 
uint32 InTotalPackets
 
uint32 OutPackets
 
uint32 PrevOutPackets
 
uint32 OutTotalPackets
 
uint32 InBunches
 
uint32 OutBunches
 
uint32 InTotalBunches
 
uint32 OutTotalBunches
 
uint32 OutTotalReliableBunches
 
uint32 InTotalReliableBunches
 
uint32 InPacketsLost
 
uint32 PrevInPacketsLost
 
uint32 InTotalPacketsLost
 
uint32 OutPacketsLost
 
uint32 PrevOutPacketsLost
 
uint32 OutTotalPacketsLost
 
uint32 VoicePacketsSent
 
uint32 VoiceBytesSent
 
uint32 VoicePacketsRecv
 
uint32 VoiceBytesRecv
 
uint32 VoiceInPercent
 
uint32 VoiceOutPercent
 
double StatUpdateTime
 
float StatPeriod
 
uint32 TotalRPCsCalled
 
uint32 OutTotalAcks
 
double LastCleanupTime
 
float StandbyRxCheatTime
 
float StandbyTxCheatTime
 
int32 BadPingThreshold
 
float PercentMissingForRxStandby
 
float PercentMissingForTxStandby
 
float PercentForBadPing
 
float JoinInProgressStandbyWaitTime
 
int32 NetTag
 
bool DebugRelevantActors
 
TArray< TWeakObjectPtr< AActor > > LastPrioritizedActors
 
TArray< TWeakObjectPtr< AActor > > LastRelevantActors
 
TArray< TWeakObjectPtr< AActor > > LastSentActors
 
TArray< TWeakObjectPtr< AActor > > LastNonRelevantActors
 
TMap< FNetworkGUID, TUniquePtr< FActorDestructionInfo > > DestroyedStartupOrDormantActors
 
TMap< FName, FNameRenamedStartupActors
 
uint32 ReplicationFrame
 
TMap< TWeakObjectPtr< UObject >, TSharedPtr< FRepLayout >, FDefaultSetAllocator, TWeakObjectPtrMapKeyFuncs< TWeakObjectPtr< UObject >, TSharedPtr< FRepLayout > > > RepLayoutMap
 
TMap< FNetworkGUID, TSet< FObjectReplicator * > > GuidToReplicatorMap
 
int32 TotalTrackedGuidMemoryBytes
 
TSet< FObjectReplicator * > UnmappedReplicators
 
TSet< FObjectReplicator * > AllOwnedReplicators
 
FDelegateHandle TickDispatchDelegateHandle
 
FDelegateHandle PostTickDispatchDelegateHandle
 
FDelegateHandle TickFlushDelegateHandle
 
FDelegateHandle PostTickFlushDelegateHandle
 
FOnSendRPC SendRPCDel
 
FShouldSkipRepNotifies SkipRepNotifiesDel
 
float ProcessQueuedBunchesCurrentFrameMilliseconds
 
FDDoSDetection DDoS
 
TSharedPtr< FInternetAddrLocalAddr
 
FPacketSimulationSettings PacketSimulationSettings
 
virtual bool InitConnect (class FNetworkNotify *InNotify, const FURL &ConnectURL, FString &Error) PURE_VIRTUAL(UNetDriver
 
virtual bool InitListen (class FNetworkNotify *InNotify, FURL &ListenURL, bool bReuseAddressAndPort, FString &Error) PURE_VIRTUAL(UNetDriver
 
virtual void LowLevelSend(TSharedPtr< const FInternetAddr > Address, void *Data, int32 CountBits, FOutPacketTraits &Traits) PURE_VIRTUAL(UNetDriver virtual ENGINE_API voi ProcessLocalServerPackets )()
 
virtual class ISocketSubsystemGetSocketSubsystem () PURE_VIRTUAL(UNetDriver
 
virtual bool IsNetResourceValid (void) PURE_VIRTUAL(UNetDriver
 

Static Public Attributes

static constexpr ERemoteFunctionSendPolicy Default = ERemoteFunctionSendPolicy::Default
 
static constexpr ERemoteFunctionSendPolicy ForceSend = ERemoteFunctionSendPolicy::ForceSend
 
static constexpr ERemoteFunctionSendPolicy ForceQueue = ERemoteFunctionSendPolicy::ForceQueue
 

Protected Member Functions

virtual ENGINE_API void InternalProcessRemoteFunction (class AActor *Actor, class UObject *SubObject, class UNetConnection *Connection, class UFunction *Function, void *Parms, FOutParmRec *OutParms, FFrame *Stack, bool bIsServer)
 
virtual ENGINE_API void SetupNetworkMetrics ()
 
virtual ENGINE_API bool Exec_Dev (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar=*GLog) override
 
virtual ENGINE_API bool ShouldUpdateStats () const
 
virtual ENGINE_API bool ShouldRegisterMetricsDatabaseListeners () const
 
void SetIsInTick (bool bIsInTick)
 
ENGINE_API void RegisterTickEvents (class UWorld *InWorld)
 
ENGINE_API void UnregisterTickEvents (class UWorld *InWorld)
 
virtual ENGINE_API UChannelInternalCreateChannelByName (const FName &ChName)
 
void UpdateNetworkStats ()
 
virtual ENGINE_API void OnLevelRemovedFromWorld (class ULevel *Level, class UWorld *World)
 
virtual ENGINE_API void OnLevelAddedToWorld (class ULevel *Level, class UWorld *World)
 
void NotifyGameInstanceUpdated ()
 
virtual ENGINE_API void ForwardRemoteFunction (UObject *RootObject, UObject *SubObject, UFunction *Function, void *Parms)
 
void EvaluateNoTimeouts ()
 
- Protected Member Functions inherited from UObject
virtual FString GetDetailedInfoInternal () const
 
COREUOBJECT_API bool CanCheckDefaultSubObjects (bool bForceCheck, bool &bResult) const
 
virtual COREUOBJECT_API bool CheckDefaultSubobjectsInternal () const
 
- Protected Member Functions inherited from UObjectBase
 UObjectBase ()
 
COREUOBJECT_API UObjectBase (EObjectFlags InFlags)
 
COREUOBJECT_API void LowLevelRename (FName NewName, UObject *NewOuter=NULL)
 
virtual void RegisterDependencies ()
 
COREUOBJECT_API void Register (class UClass *(*StaticClassFn)(), const TCHAR *PackageName, const TCHAR *Name)
 
COREUOBJECT_API void Register (const TCHAR *PackageName, const TCHAR *Name)
 
virtual COREUOBJECT_API void DeferredRegister (UClass *UClassStaticClass, const TCHAR *PackageName, const TCHAR *Name)
 
FORCEINLINE void SetFlagsTo (EObjectFlags NewFlags)
 
- Protected Member Functions inherited from FExec
virtual bool Exec_Runtime (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
 
virtual bool Exec_Editor (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
 

Protected Attributes

uint8 bMaySendProperties: 1
 
uint8 bSkipServerReplicateActors: 1
 
uint8 bSkipClearVoicePackets: 1
 
FDelegateHandle OnLevelRemovedFromWorldHandle
 
FDelegateHandle OnLevelAddedToWorldHandle
 
FRandomStream UpdateDelayRandomStream
 
bool bTickingThrottleEnabled = true
 

Member Enumeration Documentation

◆ ERemoteFunctionSendPolicy

Enumerator
Default 

Unreliable multicast are queued. Everything else is send immediately

ForceSend 

Bunch is send immediately no matter what

ForceQueue 

Bunch is queued until next actor replication, no matter what

Constructor & Destructor Documentation

◆ ~UNetDriver()

PRAGMA_DISABLE_DEPRECATION_WARNINGS UNetDriver::~UNetDriver ( )
virtualdefault

Destructor

◆ UNetDriver() [1/2]

UNetDriver::UNetDriver ( const FObjectInitializer ObjectInitializer = FObjectInitializer::Get())

◆ UNetDriver() [2/2]

UNetDriver::UNetDriver ( FVTableHelper Helper)

Member Function Documentation

◆ AddBunchProcessingFrameTimeMS()

void UNetDriver::AddBunchProcessingFrameTimeMS ( float  Milliseconds)
inline

Called internally by channels to track processing time for net.ClientIncomingBunchFrameTimeLimitMS and HasExceededIncomingBunchFrameProcessingTime()

◆ AddClientConnection()

void UNetDriver::AddClientConnection ( UNetConnection NewConnection)

Adds (fully initialized, ready to go) client connection to the ClientConnections list + any other game related setup

◆ AddNetworkActor()

void UNetDriver::AddNetworkActor ( AActor Actor)
virtual

Tells the net driver about a networked actor that was spawned

◆ AddObjectToNetworkIdCache()

void UNetDriver::AddObjectToNetworkIdCache ( UObject Object)

Utility function that adds an object and, if an actor or component, their sub-objects to the driver's NetGUID cache.

Only currently supports generic replication.

◆ AddQueuedBunchFailsafeChannel()

void UNetDriver::AddQueuedBunchFailsafeChannel ( )
inline

Called internally by channels to track how many hit net.QueuedBunchTimeFailsafeSeconds

◆ AddReferencedObjects()

void UNetDriver::AddReferencedObjects ( UObject InThis,
FReferenceCollector Collector 
)
static

◆ AllocateConnectionId()

uint32 UNetDriver::AllocateConnectionId ( )
inline

◆ AssertValid()

void UNetDriver::AssertValid ( )
virtual

Make sure this connection is in a reasonable state.

◆ AssignNetIDToObject()

void UNetDriver::AssignNetIDToObject ( UE::Net::FNetIDVariant  NetID,
const UObject Object 
)

Explicitly assigns NetID to Object. Can be called on clients that have received a NetID generated on the server by a call to CreateNetIDForObject. These functions can be used to associate actor instances that are spawned manually for replication, as opposed to the default behavior of letting the engine spawn the client's instance of a replicated actor automatically. Only actors or Iris root objects are supported.

See also
UNetDriver::CreateNetIDForObject

◆ CancelAdaptiveReplication() [1/2]

void UNetDriver::CancelAdaptiveReplication ( const AActor InActor)

◆ CancelAdaptiveReplication() [2/2]

void UNetDriver::CancelAdaptiveReplication ( FNetworkObjectInfo InNetworkActor)

Stop adaptive replication for the given actor if it's currently throttled. It maybe be allowed to throttle again later.

◆ CanCreateDestructionInfo()

bool UNetDriver::CanCreateDestructionInfo ( ) const

Is the netdriver allowed to create destruction infos

◆ CanDowngradeActorRole()

virtual bool UNetDriver::CanDowngradeActorRole ( UNetConnection Connection,
AActor Actor 
) const
inlinevirtual

(Generic Replicaton Only) Return true if an actor's role can be downgraded during replication to a given connection.

◆ CleanPackageMaps()

void UNetDriver::CleanPackageMaps ( )
virtual

◆ CleanupWorldForSeamlessTravel()

void UNetDriver::CleanupWorldForSeamlessTravel ( )

◆ ClientSetActorDormant()

void UNetDriver::ClientSetActorDormant ( AActor Actor)
virtual

Called on clients when an actor channel is closed because it went dormant.

◆ ClientSetActorTornOff()

void UNetDriver::ClientSetActorTornOff ( AActor Actor)
virtual

Called on clients when an actor is torn off.

◆ ConsumeAsyncLoadDelinquencyAnalytics()

void UNetDriver::ConsumeAsyncLoadDelinquencyAnalytics ( FNetAsyncLoadDelinquencyAnalytics Out)

Returns the current delinquency analytics and resets them. This would be similar to calls to Get and Reset separately, except that the caller will assume ownership of data in this case.

◆ CreateChild()

UChildConnection * UNetDriver::CreateChild ( UNetConnection Parent)
virtual

creates a child connection and adds it to the given parent connection

◆ CreateInitialClientChannels()

void UNetDriver::CreateInitialClientChannels ( )

Creates a channel of each type that is set as bInitialClient.

◆ CreateInitialServerChannels()

void UNetDriver::CreateInitialServerChannels ( UNetConnection ClientConnection)

Creates a channel of each type that is set as bIniitalServer for the given connection.

◆ CreateNetIDForObject()

UE::Net::FNetIDVariant UNetDriver::CreateNetIDForObject ( UObject Object)

Explicitly generates and assigns a new network ID (FNetRefHandle if using Iris, FNetworkGUID if using generic replication) to Object and returns it. This can be used in combination with AssignNetIDToObject to associate actor instances that are spawned manually for replication, as opposed to the default behavior of letting the engine spawn the client's instance of a replicated actor automatically. This function would typically be called on a server, and the caller is responsible for communicating the returned ID to the remote/client side and calling AssignNetIDToObject to associate the ID with the client instance of the object. Only actors or Iris root objects are supported.

See also
UNetDriver::AssignNetIDToObject

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [1/2]

UNetDriver::DECLARE_MULTICAST_DELEGATE_OneParam ( FOnNetTokenStoreReady  ,
UNetDriver  
)

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [2/2]

UNetDriver::DECLARE_MULTICAST_DELEGATE_OneParam ( FOnNetUpdateFrequencyChanged  ,
const AActor Actor 
)

Delegate that will notify when an actors NetUpdateFrequency UPROPERTY has changed.

◆ DECLARE_MULTICAST_DELEGATE_ThreeParams()

UNetDriver::DECLARE_MULTICAST_DELEGATE_ThreeParams ( FOnNetServerMaxTickRateChanged  ,
UNetDriver ,
int32  ,
int32   
)

Delegate triggered when SetNetServerMaxTickRate is called and causes a change to the current max tick rate.

Parameters
UNetDriverThe netdriver that changed max tick rate.
int32The new value of NetServerMaxTickRate
int32The old value of NetServerMaxTickRate

◆ DeleteSubObjectOnClients()

void UNetDriver::DeleteSubObjectOnClients ( AActor Actor,
UObject SubObject 
)

Called when an authoritative actor wants to delete a replicated subobject on the clients it was already replicated to

◆ DestroyIrisSystem()

void UNetDriver::DestroyIrisSystem ( )

Destroy the Iris replication system before it gets recreated.

◆ DidHitchLastFrame()

bool UNetDriver::DidHitchLastFrame ( ) const

◆ DisallowReplicationOfAllLevelGroupsForConnection()

void UNetDriver::DisallowReplicationOfAllLevelGroupsForConnection ( UE::Net::FConnectionHandle  Handle)

◆ DoesSupportEncryption()

virtual bool UNetDriver::DoesSupportEncryption ( ) const
inlinevirtual

Whether or not this NetDriver supports encryption. Does not signify that encryption is actually enabled, nor setup by the PacketHandler.

Returns
Whether or not this NetDriver supports encryption.

Reimplemented in UDemoNetDriver.

◆ DrawNetDriverDebug()

void UNetDriver::DrawNetDriverDebug ( )

Draws debug markers in the world based on network state

◆ EnableExecuteRPCFunctions()

void UNetDriver::EnableExecuteRPCFunctions ( bool  bEnable)

(Generic Replicaton Only) Enable/disable the execution of received RPC functions.

◆ EnablePreReplication()

void UNetDriver::EnablePreReplication ( bool  bEnable)

(Generic Replication Only) Enable/disable calls to AActor::PreReplication().

◆ EvaluateNoTimeouts()

void UNetDriver::EvaluateNoTimeouts ( )
protected

Determine the correct value for bNoTimeouts based on config/command line/PIE

◆ Exec_Dev()

bool UNetDriver::Exec_Dev ( UWorld InWorld,
const TCHAR Cmd,
FOutputDevice Ar = *GLog 
)
overrideprotectedvirtual

Handle exec commands

Parameters
InWorldthe world context
Cmdthe exec command being executed
Arthe archive to log results to
Returns
true if the handler consumed the input, false to continue searching handlers

Reimplemented from FExec.

◆ FindConnection()

TObjectPtr< UNetConnection > UNetDriver::FindConnection ( struct FUniqueNetIdRepl PlayerId)

Enumerate all connections to find one that matches a particular player id.

◆ FindNetworkObjectInfo() [1/2]

FNetworkObjectInfo * UNetDriver::FindNetworkObjectInfo ( const AActor InActor)

Get the network object matching the given Actor.

◆ FindNetworkObjectInfo() [2/2]

const FNetworkObjectInfo * UNetDriver::FindNetworkObjectInfo ( const AActor InActor) const
inline

◆ FindOrAddNetworkObjectInfo()

FNetworkObjectInfo * UNetDriver::FindOrAddNetworkObjectInfo ( const AActor InActor)

Get the network object matching the given Actor. If the Actor is not present in the NetworkObjectInfo list, it will be added.

◆ FindOrCreateRepChangedPropertyTracker()

TSharedPtr< FRepChangedPropertyTracker > UNetDriver::FindOrCreateRepChangedPropertyTracker ( UObject Obj)

Finds a FRepChangedPropertyTracker associated with an object. If not found, creates one.

◆ FindRepChangedPropertyTracker()

TSharedPtr< FRepChangedPropertyTracker > UNetDriver::FindRepChangedPropertyTracker ( UObject Obj)

Finds a FRepChangedPropertyTracker associated with an object.

◆ FinishDestroy()

void UNetDriver::FinishDestroy ( )
overridevirtual

Called to finish destroying the object. After UObject::FinishDestroy is called, the object's memory should no longer be accessed.

Warning
Because properties are destroyed here, Super::FinishDestroy() should always be called at the end of your child class's FinishDestroy() method, rather than at the beginning.

Reimplemented from UObject.

Reimplemented in UDemoNetDriver.

◆ FlushActorDormancy()

void UNetDriver::FlushActorDormancy ( AActor Actor,
bool  bWasDormInitial = false 
)

Flushes actor from NetDriver's dormancy list, but does not change any state on the Actor itself

UNetDriver::FlushActorDormancy(AActor* Actor) Flushes the actor from the NetDriver's dormant list and/or cancels pending dormancy on the actor channel.

This does not change the Actor's actual NetDormant state. If a dormant actor is Flushed, it will net update at least one more time, and then go back to dormant.

◆ FlushHandler()

void UNetDriver::FlushHandler ( )
virtual

Flushes all packets queued by the connectionless PacketHandler NOTE: This should be called shortly after all calls to PacketHandler::IncomingConnectionless, to minimize packet buffer buildup.

◆ ForceActorRelevantNextUpdate()

void UNetDriver::ForceActorRelevantNextUpdate ( AActor Actor)

Force this actor to be relevant for at least one update

◆ ForceAllActorsNetUpdateTime()

void UNetDriver::ForceAllActorsNetUpdateTime ( float  NetUpdateTimeOffset,
TFunctionRef< bool(const AActor *const)>  ValidActorTestFunc 
)

◆ ForceNetUpdate()

void UNetDriver::ForceNetUpdate ( AActor Actor)
virtual

Reimplemented in UDemoNetDriver.

◆ ForcePropertyCompare()

void UNetDriver::ForcePropertyCompare ( AActor Actor)

Forces properties on this actor to do a compare for one frame (rather than share shadow state)

◆ ForEachClientConnection()

void UNetDriver::ForEachClientConnection ( TFunction< bool(TObjectPtr< UNetConnection >)>  Func)

Enumerate through each client connection (including any child connections).

Func is a function that is called with the current instance of UNetConnection in the enumeration, and should return true if the enumeration must stop (i.e. no more calls to Func) or false for the enumeration to continue.

◆ ForwardRemoteFunction()

void UNetDriver::ForwardRemoteFunction ( UObject RootObject,
UObject SubObject,
UFunction Function,
void Parms 
)
protectedvirtual

Called from RPC processing code to forward RPC to other NetDrivers if ShouldForwardFunction returns true.

◆ FreeConnectionId()

void UNetDriver::FreeConnectionId ( uint32  Id)
inline

◆ GetActorForGUID()

virtual AActor * UNetDriver::GetActorForGUID ( FNetworkGUID  InGUID) const
inlinevirtual

Returns the actor that corresponds to InGUID, if one can be found.

Reimplemented in UDemoNetDriver.

◆ GetAsyncLoadDelinquencyAnalytics()

const FNetAsyncLoadDelinquencyAnalytics & UNetDriver::GetAsyncLoadDelinquencyAnalytics ( ) const

Returns the current delinquency analytics.

◆ GetCachedGlobalNetTravelCount()

uint32 UNetDriver::GetCachedGlobalNetTravelCount ( ) const
inline

◆ GetConnectionByHandle()

UNetConnection * UNetDriver::GetConnectionByHandle ( UE::Net::FConnectionHandle  ConnectionHandle) const

Returns the NetConnection associated with the ConnectionHandle. Slow as it iterates over all connections to find one with matching handle.

◆ GetConnectionById()

UNetConnection * UNetDriver::GetConnectionById ( uint32  ParentConnectionId) const

Returns the NetConnection associated with the ParentConnectionId. Slow.

◆ GetDescription()

FString UNetDriver::GetDescription ( ) const
inline
Returns
String that uniquely describes the net driver instance

◆ GetDestroyedStartupOrDormantActors()

const TSet< FNetworkGUID > & UNetDriver::GetDestroyedStartupOrDormantActors ( const FName LevelName)
inline

◆ GetDuplicateLevelID()

int32 UNetDriver::GetDuplicateLevelID ( ) const
inline

Returns the level ID/PIE instance ID for this netdriver to use.

◆ GetElapsedTime()

double UNetDriver::GetElapsedTime ( ) const
inline

◆ GetFunctionRepLayout()

TSharedPtr< FRepLayout > UNetDriver::GetFunctionRepLayout ( UFunction Function)

Creates if necessary, and returns a FRepLayout that maps to the passed in UFunction

◆ GetGUIDForActor()

virtual FNetworkGUID UNetDriver::GetGUIDForActor ( const AActor InActor) const
inlinevirtual

Returns the existing FNetworkGUID of InActor, if it has one.

Reimplemented in UDemoNetDriver.

◆ GetIncomingBunchFrameProcessingTimeLimit()

float UNetDriver::GetIncomingBunchFrameProcessingTimeLimit ( ) const

Returns the value of cvar net.ClientIncomingBunchFrameTimeLimitMS on clients, or 0 otherwise. 0 = no limit.

◆ GetLocalAddr()

virtual TSharedPtr< const FInternetAddr > UNetDriver::GetLocalAddr ( )
inlinevirtual

◆ GetMaxChannelsOverride()

int32 UNetDriver::GetMaxChannelsOverride ( ) const
inline

Get the value of MaxChannelsOverride cached from the net driver definition

◆ GetMetrics()

TObjectPtr< UNetworkMetricsDatabase > UNetDriver::GetMetrics ( )
inline

Return a reference to the database that holds metrics calcluated by the networking system.

◆ GetNetDriverDefinition()

FName UNetDriver::GetNetDriverDefinition ( ) const
inline

Get the NetDriver's NetDriverDefintion.

◆ GetNetGuidCache() [1/2]

TSharedPtr< class FNetGUIDCache > & UNetDriver::GetNetGuidCache ( )
inline

Get const GuidCache Note: GuidCache/FNetworkGUIDs are not used when using Iris replication.

◆ GetNetGuidCache() [2/2]

const TSharedPtr< class FNetGUIDCache > & UNetDriver::GetNetGuidCache ( ) const
inline

Get const GuidCache Note: GuidCache/FNetworkGUIDs are not used when using Iris replication.

◆ GetNetMode()

ENetMode UNetDriver::GetNetMode ( ) const

◆ GetNetServerMaxTickRate()

int32 UNetDriver::GetNetServerMaxTickRate ( ) const
inline

The current max tick rate of the engine when running in dedicated server mode.

◆ GetNetTokenStore() [1/2]

UE::Net::FNetTokenStore * UNetDriver::GetNetTokenStore ( )
inline

◆ GetNetTokenStore() [2/2]

const UE::Net::FNetTokenStore * UNetDriver::GetNetTokenStore ( ) const
inline

Returns NetTokenStore that is required to create and serialize NetTokens

◆ GetNetTraceId()

uint32 UNetDriver::GetNetTraceId ( ) const
inline

Returns identifier used for NetTrace

◆ GetNetworkObjectList() [1/2]

FNetworkObjectList & UNetDriver::GetNetworkObjectList ( )
inline

Returns the object that manages the list of replicated UObjects.

◆ GetNetworkObjectList() [2/2]

const FNetworkObjectList & UNetDriver::GetNetworkObjectList ( ) const
inline

Returns the object that manages the list of replicated UObjects.

◆ GetNetworkRuntimeFeatures()

EEngineNetworkRuntimeFeatures UNetDriver::GetNetworkRuntimeFeatures ( ) const

Returns the bitflag telling which network features are activated for this NetDriver.

◆ GetObjectClassRepLayout()

TSharedPtr< FRepLayout > UNetDriver::GetObjectClassRepLayout ( UClass InClass)

Creates if necessary, and returns a FRepLayout that maps to the passed in UClass

◆ GetOnNetUpdateFrequencyChanged()

FOnNetUpdateFrequencyChanged & UNetDriver::GetOnNetUpdateFrequencyChanged ( )
inline

◆ GetOrCreateChannelByName()

UChannel * UNetDriver::GetOrCreateChannelByName ( const FName ChName)

Creates a new channel of the specified type name. If the type is pooled, it will return a pre-created channel

◆ GetOutTotalNotifiedPackets()

uint32 UNetDriver::GetOutTotalNotifiedPackets ( ) const
inline

Get the current number of sent packets for which we have received a delivery notification

◆ GetPendingDestruction()

bool UNetDriver::GetPendingDestruction ( ) const
inline

Is a destruction request queued to be executed later.

◆ GetReplicationChangeListMgr()

TSharedPtr< FReplicationChangelistMgr > UNetDriver::GetReplicationChangeListMgr ( UObject Object)

Returns the FReplicationChangelistMgr that is associated with the passed in object, creating one if none exist.

This should never be called on client NetDrivers!

◆ GetReplicationDriver() [1/2]

UReplicationDriver * UNetDriver::GetReplicationDriver ( ) const
inline

◆ GetReplicationDriver() [2/2]

template<class T >
T * UNetDriver::GetReplicationDriver ( ) const
inline

◆ GetReplicationSystem() [1/2]

UReplicationSystem * UNetDriver::GetReplicationSystem ( )
inline

◆ GetReplicationSystem() [2/2]

UReplicationSystem * UNetDriver::GetReplicationSystem ( ) const
inline

◆ GetStructRepLayout()

TSharedPtr< FRepLayout > UNetDriver::GetStructRepLayout ( UStruct Struct)

Creates if necessary, and returns a FRepLayout that maps to the passed in UStruct

◆ GetTotalOutOfOrderPackets()

int32 UNetDriver::GetTotalOutOfOrderPackets ( ) const
inline

Get the total number of out of order packets for all connections.

Returns
The total number of out of order packets.

◆ GetTotalOutOfOrderPacketsDuplicate()

int32 UNetDriver::GetTotalOutOfOrderPacketsDuplicate ( ) const
inline

Get the total number of out of order packets that were duplicates for all connections.

Returns
The total number of out of order packets that were duplicates.

◆ GetTotalOutOfOrderPacketsLost()

int32 UNetDriver::GetTotalOutOfOrderPacketsLost ( ) const
inline

Get the total number of out of order packets lost for all connections.

Returns
The total number of out of order packets lost.

◆ GetTotalOutOfOrderPacketsRecovered()

int32 UNetDriver::GetTotalOutOfOrderPacketsRecovered ( ) const
inline

Get the total number of out of order packets recovered for all connections.

Returns
The total number of out of order packets recovered.

◆ GetWorld()

virtual class UWorld * UNetDriver::GetWorld ( ) const
inlinefinaloverridevirtual

Get the world associated with this net driver

◆ GetWorldPackage()

class UPackage * UNetDriver::GetWorldPackage ( ) const
inline

◆ HandleDumpRepLayoutFlagsCommand()

bool UNetDriver::HandleDumpRepLayoutFlagsCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleDumpSubObjectsCommand()

bool UNetDriver::HandleDumpSubObjectsCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleNetDebugTextCommand()

bool UNetDriver::HandleNetDebugTextCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleNetDisconnectCommand()

bool UNetDriver::HandleNetDisconnectCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleNetDumpDormancy()

bool UNetDriver::HandleNetDumpDormancy ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleNetDumpServerRPCCommand()

bool UNetDriver::HandleNetDumpServerRPCCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleNetFloodCommand()

bool UNetDriver::HandleNetFloodCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandlePackageMapCommand()

bool UNetDriver::HandlePackageMapCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandlePacketLossBurstCommand()

void UNetDriver::HandlePacketLossBurstCommand ( int32  DurationInMilliseconds)

◆ HandlePropertyConditionsMemCommand()

bool UNetDriver::HandlePropertyConditionsMemCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandlePushModelMemCommand()

bool UNetDriver::HandlePushModelMemCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

◆ HandleSocketsCommand()

bool UNetDriver::HandleSocketsCommand ( const TCHAR Cmd,
FOutputDevice Ar 
)

Exec command handlers

◆ HasExceededIncomingBunchFrameProcessingTime()

bool UNetDriver::HasExceededIncomingBunchFrameProcessingTime ( ) const

Returns true if the cvar net.ClientIncomingBunchFrameTimeLimitMS is set and the limit was exceeded

◆ HasReplayConnection()

bool UNetDriver::HasReplayConnection ( ) const
inline

Whether or not this driver has an IsReplay() connection, updated in Add/RemoveClientConnection

◆ HasSupportForNoPawnConnection()

bool UNetDriver::HasSupportForNoPawnConnection ( )

Return true if the driver supports NMT_JoinNoPawn and NMT_JoinNoPawnSplit.

◆ IncreaseOutTotalNotifiedPackets()

void UNetDriver::IncreaseOutTotalNotifiedPackets ( )
inline

Increase the current number of sent packets for which we have received a delivery notification

◆ IncreaseTotalOutOfOrderPacketsDuplicate()

void UNetDriver::IncreaseTotalOutOfOrderPacketsDuplicate ( int32  Count = 1)
inline

Increase the value of TotalOutOfOrderPacketsDuplicate.

Parameters
CountThe amount to add to TotalOutOfOrderPacketsDuplicate

◆ IncreaseTotalOutOfOrderPacketsLost()

void UNetDriver::IncreaseTotalOutOfOrderPacketsLost ( int32  Count = 1)
inline

Increase the value of TotalOutOfOrderPacketsLost.

Parameters
CountThe amount to add to TotalOutOfOrderPacketsLost

◆ IncreaseTotalOutOfOrderPacketsRecovered()

void UNetDriver::IncreaseTotalOutOfOrderPacketsRecovered ( int32  Count = 1)
inline

Increase the value of TotalOutOfOrderPacketsRecovered.

Parameters
CountThe amount to add to TotalOutOfOrderPacketsRecovered

◆ InitBase()

bool UNetDriver::InitBase ( bool  bInitAsClient,
FNetworkNotify InNotify,
const FURL URL,
bool  bReuseAddressAndPort,
FString &  Error 
)
virtual

Returns true if this net driver is valid for the current configuration. Safe to call on a CDO if necessary

Returns
true if available, false otherwise Common initialization between server and client connection setup
Parameters
bInitAsClientare we a client or server
InNotifynotification object to associate with the net driver
URLdestination
bReuseAddressAndPortwhether to allow multiple sockets to be bound to the same address/port
Erroroutput containing an error string on failure
Returns
true if successful, false otherwise (check Error parameter)

Reimplemented in UDemoNetDriver.

◆ InitConnectionClass()

bool UNetDriver::InitConnectionClass ( void  )
virtual

Initializes the net connection class to use for new connections

◆ InitConnectionlessHandler()

void UNetDriver::InitConnectionlessHandler ( )
virtual

Initialize a PacketHandler for serverside net drivers, for handling connectionless packets NOTE: Only triggered by net driver subclasses that support it - from within InitListen.

◆ InitDestroyedStartupActors()

void UNetDriver::InitDestroyedStartupActors ( )
virtual

Initialize the list of destroyed net startup actors from the current World

Reimplemented in UDemoNetDriver.

◆ InitPacketSimulationSettings()

PRAGMA_ENABLE_DEPRECATION_WARNINGS void UNetDriver::InitPacketSimulationSettings ( )

◆ InitReplicationBridgeClass()

bool UNetDriver::InitReplicationBridgeClass ( )
virtual

Initialized the replication bridge class to use for this driver if using iris replication

◆ InitReplicationDriverClass()

bool UNetDriver::InitReplicationDriverClass ( )
virtual

Initialized the replication driver class to use for this driver

◆ InternalCreateChannelByName()

UChannel * UNetDriver::InternalCreateChannelByName ( const FName ChName)
protectedvirtual

Subclasses may override this to customize channel creation. Called by GetOrCreateChannel if the pool is exhausted and a new channel must be allocated.

Reimplemented in UDemoNetDriver.

◆ InternalProcessRemoteFunction()

void UNetDriver::InternalProcessRemoteFunction ( class AActor Actor,
class UObject SubObject,
class UNetConnection Connection,
class UFunction Function,
void Parms,
FOutParmRec OutParms,
FFrame Stack,
bool  bIsServer 
)
protectedvirtual

◆ IsAdaptiveNetUpdateFrequencyEnabled()

bool UNetDriver::IsAdaptiveNetUpdateFrequencyEnabled ( )
static

Returns whether adaptive net frequency is enabled. If enabled, update frequency is allowed to ramp down to MinNetUpdateFrequency for an actor when no replicated properties have changed. This is currently controlled by the CVar "net.UseAdaptiveNetUpdateFrequency".

◆ IsDormInitialStartupActor()

bool UNetDriver::IsDormInitialStartupActor ( AActor Actor)
static

◆ IsEncryptionRequired()

bool UNetDriver::IsEncryptionRequired ( ) const
virtual

Whether or not this NetDriver requires encryption. Does signify that encryption is enabled, but does not signify that it's setup properly.

Returns
Whether or not encryption is presently required for connections.

◆ IsExecuteRPCFunctionsEnabled()

bool UNetDriver::IsExecuteRPCFunctionsEnabled ( ) const

◆ IsInTick()

bool UNetDriver::IsInTick ( ) const
inline

True only inside one of the NetDriver's tick function.

◆ IsKnownChannelName()

bool UNetDriver::IsKnownChannelName ( const FName ChName) const
inline
Returns
true if the specified channel definition exists.

◆ IsLevelInitializedForActor()

bool UNetDriver::IsLevelInitializedForActor ( const AActor InActor,
const UNetConnection InConnection 
) const
virtual

Returns true if this actor is considered to be in a loaded level

Reimplemented in UDemoNetDriver.

◆ IsNetworkActorUpdateFrequencyThrottled() [1/2]

bool UNetDriver::IsNetworkActorUpdateFrequencyThrottled ( const AActor InActor) const

Returns true if adaptive net update frequency is enabled and the given actor is having its update rate lowered from its standard rate.

◆ IsNetworkActorUpdateFrequencyThrottled() [2/2]

bool UNetDriver::IsNetworkActorUpdateFrequencyThrottled ( const FNetworkObjectInfo InNetworkActor) const

Returns true if adaptive net update frequency is enabled and the given actor is having its update rate lowered from its standard rate.

◆ IsPendingNetUpdate()

bool UNetDriver::IsPendingNetUpdate ( const AActor InActor) const

Returns true if the driver's world time has exceeded the next replication update time for this actor, or if it is pending replication from a previous frame.

◆ IsPreReplicationEnabled()

bool UNetDriver::IsPreReplicationEnabled ( ) const

◆ IsReplicatingAutonomousAsSimulated()

bool UNetDriver::IsReplicatingAutonomousAsSimulated ( ) const

◆ IsSendingImmediateAcks()

bool UNetDriver::IsSendingImmediateAcks ( ) const
inline

Used by UNetConnection after receiving a packet to determine whether to send an ack packet on the next connection flush regardless of whether there's any other data to send. Set via the config property bSendImmediateAcks.

◆ IsServer()

bool UNetDriver::IsServer ( ) const
virtual
Returns
true if this netdriver is handling accepting connections

Reimplemented in UDemoNetDriver.

◆ IsSimulatingPacketLossBurst()

bool UNetDriver::IsSimulatingPacketLossBurst ( ) const

Returns true during the duration of a packet loss burst triggered by the net.pktlossburst command.

◆ IsUsingIrisReplication()

bool UNetDriver::IsUsingIrisReplication ( ) const
inline

Returns if this netdriver is initialized to replicate using the Iris replication system or the Legacy replication system.

◆ IsUsingRemoteObjectReferences()

bool UNetDriver::IsUsingRemoteObjectReferences ( ) const
inline

Returns true if references to UObjects should be serialized as FRemoteObjectReference

◆ LowLevelDestroy()

void UNetDriver::LowLevelDestroy ( )
virtual

◆ LowLevelGetNetworkNumber()

FString UNetDriver::LowLevelGetNetworkNumber ( )
virtual

Reimplemented in UDemoNetDriver.

◆ MaySendProperties()

const bool UNetDriver::MaySendProperties ( ) const
inline

Typically, properties will only ever be replicated / sent from Server net drivers. Therefore, on clients sending replication state won't be created. Setting this to true will force creation of sending replication state.

Note, this doesn't imply the NetDriver will ever send properties and will not standard NetDrivers to send properties from clients.

◆ MoveMappedObjectToUnmapped()

void UNetDriver::MoveMappedObjectToUnmapped ( const UObject Object)

Unmap all references to this object, so that if later we receive this object again, we can remap the original references

◆ NetObjectIsDynamic()

bool UNetDriver::NetObjectIsDynamic ( const UObject Object) const

◆ NotifyActorChannelCleanedUp()

void UNetDriver::NotifyActorChannelCleanedUp ( UActorChannel Channel,
EChannelCloseReason  CloseReason 
)
virtual

Called when an actor channel is cleaned up for an actor.

Reimplemented in UDemoNetDriver.

◆ NotifyActorChannelOpen()

void UNetDriver::NotifyActorChannelOpen ( UActorChannel Channel,
AActor Actor 
)
virtual

Called when an actor channel is remotely opened for an actor.

Reimplemented in UDemoNetDriver.

◆ NotifyActorClientDormancyChanged()

void UNetDriver::NotifyActorClientDormancyChanged ( AActor Actor,
ENetDormancy  OldDormancyState 
)
virtual

Called after an actor channel is opened on a client when the actor was previously dormant.

Reimplemented in UDemoNetDriver.

◆ NotifyActorDestroyed()

void UNetDriver::NotifyActorDestroyed ( AActor Actor,
bool  IsSeamlessTravel = false,
EChannelCloseReason  CloseReason = EChannelCloseReason::Destroyed 
)
virtual

Called when a spawned actor is destroyed.

Reimplemented in UDemoNetDriver.

◆ NotifyActorDormancyChange()

void UNetDriver::NotifyActorDormancyChange ( AActor Actor,
ENetDormancy  OldDormancyState 
)

Notifies the NetDriver that the desired Dormancy state for this Actor has changed.

◆ NotifyActorFullyDormantForConnection()

void UNetDriver::NotifyActorFullyDormantForConnection ( AActor Actor,
UNetConnection Connection 
)

◆ NotifyActorIsTraveling()

void UNetDriver::NotifyActorIsTraveling ( AActor TravelingActor)

Called when an actor is about to be carried during a seamless travel

◆ NotifyActorLevelUnloaded()

void UNetDriver::NotifyActorLevelUnloaded ( AActor TheActor)
virtual

Called when an actor is being unloaded during a seamless travel or do due level streaming The main point is that it calls the normal NotifyActorDestroyed to destroy the channel on the server but also removes the Actor reference, sets broken flag, and cleans up actor class references on clients.

Reimplemented in UDemoNetDriver.

◆ NotifyActorRenamed() [1/2]

void UNetDriver::NotifyActorRenamed ( AActor Actor,
FName  PreviousName 
)
virtual

Called when an actor is renamed.

◆ NotifyActorRenamed() [2/2]

void UNetDriver::NotifyActorRenamed ( AActor Actor,
UObject PreviousOuter,
FName  PreviousName 
)
virtual

Called when an actor is renamed.

◆ NotifyActorTearOff()

void UNetDriver::NotifyActorTearOff ( AActor Actor)
virtual

◆ NotifyActorTornOff()

void UNetDriver::NotifyActorTornOff ( AActor Actor)
virtual

Reimplemented in UDemoNetDriver.

◆ NotifyGameInstanceUpdated()

void UNetDriver::NotifyGameInstanceUpdated ( )
protected

Creates a trace event that updates the name and properties of the associated Game Instance

◆ NotifyRPCProcessed()

void UNetDriver::NotifyRPCProcessed ( UFunction Function,
UNetConnection Connection,
double  ElapsedTimeSeconds 
)

Called after processing RPC to track time spent

◆ NotifyStreamingLevelUnload()

void UNetDriver::NotifyStreamingLevelUnload ( ULevel Level)
virtual

Reimplemented in UDemoNetDriver.

◆ NotifySubObjectDestroyed()

void UNetDriver::NotifySubObjectDestroyed ( UObject SubObject)

◆ OnLevelAddedToWorld()

void UNetDriver::OnLevelAddedToWorld ( class ULevel Level,
class UWorld World 
)
protectedvirtual

Used to handle any NetDriver specific setup when a level has been added to the world.

◆ OnLevelRemovedFromWorld()

void UNetDriver::OnLevelRemovedFromWorld ( class ULevel Level,
class UWorld World 
)
protectedvirtual

Used to handle any NetDriver specific cleanup once a level has been removed from the world.

◆ OnNetTokenStoreReady()

FOnNetTokenStoreReady::RegistrationType & UNetDriver::OnNetTokenStoreReady ( )
inline

Fired when the NetTokenStore is ready for use and has been initialized, but before it will be used for any NetSerializations

◆ OnPacketSimulationSettingsChanged()

ENGINE_API void UNetDriver::OnPacketSimulationSettingsChanged ( )

◆ PostCreation()

void UNetDriver::PostCreation ( bool  bInitializeWithIris)

Callback after the engine created the NetDriver and set our name for the first time

◆ PostInitProperties()

void UNetDriver::PostInitProperties ( )
overridevirtual

Called after the C++ constructor and after the properties have been initialized, including those loaded from config. This is called before any serialization or other setup has happened.

Reimplemented from UObject.

◆ PostReloadConfig()

void UNetDriver::PostReloadConfig ( FProperty PropertyThatWasLoaded)
overridevirtual

Called from ReloadConfig after the object has reloaded its configuration data.

Reimplemented from UObject.

◆ PostSeamlessTravelGarbageCollect()

void UNetDriver::PostSeamlessTravelGarbageCollect ( )

◆ PostTickDispatch()

void UNetDriver::PostTickDispatch ( )
virtual

PostTickDispatch actions

◆ PostTickFlush()

void UNetDriver::PostTickFlush ( )
virtual

PostTick actions

Reimplemented in UDemoNetDriver.

◆ PreSeamlessTravelGarbageCollect()

void UNetDriver::PreSeamlessTravelGarbageCollect ( )

◆ PrintDebugRelevantActors()

void UNetDriver::PrintDebugRelevantActors ( )

◆ ProcessLocalClientPackets()

void UNetDriver::ProcessLocalClientPackets ( )
virtual

Process any local talker packets that need to be sent to the server

Reimplemented in UDemoNetDriver.

◆ ProcessRemoteFunction()

void UNetDriver::ProcessRemoteFunction ( class AActor Actor,
class UFunction Function,
void Parms,
struct FOutParmRec OutParms,
struct FFrame Stack,
class UObject SubObject = nullptr 
)
virtual

Process a remote function call on some actor destined for a remote location

Parameters
Actoractor making the function call
Functionfunction definition called
Parmsparameters in a UObject memory layout
OutParmsout parameter information (irrelevant for RPC's)
Stackstack frame the UFunction is called in
SubObjectoptional: sub object to actually call function on

Reimplemented in UDemoNetDriver.

◆ ProcessRemoteFunctionForChannel() [1/2]

ENGINE_API void UNetDriver::ProcessRemoteFunctionForChannel ( UActorChannel Ch,
const class FClassNetCache ClassCache,
const FFieldNetCache FieldCache,
UObject TargetObj,
UNetConnection Connection,
UFunction Function,
void Parms,
FOutParmRec OutParms,
FFrame Stack,
const bool  IsServer,
const ERemoteFunctionSendPolicy  SendPolicy,
EProcessRemoteFunctionFlags RemoteFunctionFlags 
)

◆ ProcessRemoteFunctionForChannel() [2/2]

ENGINE_API void UNetDriver::ProcessRemoteFunctionForChannel ( UActorChannel Ch,
const class FClassNetCache ClassCache,
const FFieldNetCache FieldCache,
UObject TargetObj,
UNetConnection Connection,
UFunction Function,
void Parms,
FOutParmRec OutParms,
FFrame Stack,
const bool  IsServer,
const ERemoteFunctionSendPolicy  SendPolicy = ERemoteFunctionSendPolicy::Default 
)

Process a remote function on given actor channel. This is called by ProcessRemoteFunction.

◆ RecreateIrisSystem()

void UNetDriver::RecreateIrisSystem ( )

Create the Iris replication system after it got destroyed.

◆ RegisterTickEvents()

void UNetDriver::RegisterTickEvents ( class UWorld InWorld)
protected

Register all TickDispatch, TickFlush, PostTickFlush to tick in World

◆ ReinitBase()

void UNetDriver::ReinitBase ( )

Reset some NetDriver settings after destroying and recreating a replication system or replication driver

◆ ReleaseToChannelPool()

void UNetDriver::ReleaseToChannelPool ( UChannel Channel)

If the channel's type is pooled, this will add the channel to the pool. Otherwise, nothing will happen.

◆ RemoveClassRepLayoutReferences()

void UNetDriver::RemoveClassRepLayoutReferences ( UClass Class)

◆ RemoveClientConnection()

void UNetDriver::RemoveClientConnection ( UNetConnection ClientConnectionToRemove)

◆ RemoveNetworkActor()

void UNetDriver::RemoveNetworkActor ( AActor Actor)
virtual

◆ RemoveObjectFromNetworkIdCache()

void UNetDriver::RemoveObjectFromNetworkIdCache ( UObject Object)

Utility function that removes an object and, if an actor or component, their sub-objects from the driver's NetGUID cache.

Only currently supports generic replication.

◆ ReplicateAutonomousAsSimulated()

void UNetDriver::ReplicateAutonomousAsSimulated ( bool  bEnabled)

(Generic Replicaton Only) Treat actors with ROLE_AutonomousProxy as ROLE_SimulatedProxy when replicating state (applies to all client connections).

◆ ReplicateVoicePacket()

void UNetDriver::ReplicateVoicePacket ( TSharedPtr< class FVoicePacket VoicePacket,
class UNetConnection CameFromConn 
)
virtual

Determines which other connections should receive the voice packet and queues the packet for those connections. Used for sending both local/remote voice packets.

Parameters
VoicePacketthe packet to be queued
CameFromConnthe connection this packet came from (NULL if local)

◆ RequestNetDriverDestruction()

void UNetDriver::RequestNetDriverDestruction ( )

Trigger the destruction of this NetDriver. If called while the NetDriver is ticking it will queue the destruction request and execute it after all the NetDriver work is finished.

◆ ResetAsyncLoadDelinquencyAnalytics()

void UNetDriver::ResetAsyncLoadDelinquencyAnalytics ( )

Resets the current delinquency analytics.

◆ ResetElapsedTime()

void UNetDriver::ResetElapsedTime ( )
inline

◆ ResetGameWorldState()

void UNetDriver::ResetGameWorldState ( )
virtual

Called during seamless travel to clear all state that was tied to the previous game world (actor lists, etc)

◆ RestartIrisSystem()

void UNetDriver::RestartIrisSystem ( )

Destroy and recreate the iris replication system for an active netdriver. This will re-add all existing replicated actors back in the system. Useful if you need to reapply hotfix configs downloaded post-initialization.

◆ SendDestructionInfo()

int64 UNetDriver::SendDestructionInfo ( UNetConnection Connection,
FActorDestructionInfo DestructionInfo 
)

Sends a message to a client to destroy an actor to the client. The actor may already be destroyed locally.

◆ SendDestructionInfoForLevelUnloadIfDormant()

bool UNetDriver::SendDestructionInfoForLevelUnloadIfDormant ( AActor ThisActor,
UNetConnection Connection 
)

Creates and sends a destruction info with the LevelUnloaded reason, only if ThisActor is dormant or recently dormant on Connection. Returns true if the destruction info was sent, false if the actor isn't replicated or dormant/recently dormant.

◆ Serialize()

void UNetDriver::Serialize ( FArchive Ar)
overridevirtual

Handles reading, writing, and reference collecting using FArchive. This implementation handles all FProperty serialization, but can be overridden for native variables.

Reimplemented from UObject.

Reimplemented in UDemoNetDriver.

◆ ServerReplicateActors()

int32 UNetDriver::ServerReplicateActors ( float  DeltaSeconds)
virtual

Called to replicate any relevant actors to the connections contained within this net driver

Process as many clients as allowed given Engine.NetClientTicksPerSecond, first building a list of actors to consider for relevancy checking, and then attempting to replicate each actor for each connection that it is relevant to until the connection becomes saturated.

NetClientTicksPerSecond is used to throttle how many clients are updated each frame, hoping to avoid saturating the server's upstream bandwidth, although the current solution is far from optimal. Ideally the throttling could be based upon the server connection becoming saturated, at which point each connection is reduced to priority only updates, and spread out amongst several ticks. Also might want to investigate eliminating the redundant consider/relevancy checks for Actors that were successfully replicated for some channels but not all, since that would make a decent CPU optimization.

Parameters
DeltaSecondselapsed time since last call
Returns
the number of actors that were replicated

◆ SetAnalyticsProvider()

void UNetDriver::SetAnalyticsProvider ( TSharedPtr< IAnalyticsProvider InProvider)
virtual

Sets the analytics provider

Reimplemented in UDemoNetDriver.

◆ SetDeferTransactionalSend()

void UNetDriver::SetDeferTransactionalSend ( bool  bInDeferTransactionalSend)
inline

◆ SetDuplicateLevelID()

void UNetDriver::SetDuplicateLevelID ( const int32  InDuplicateLevelID)
inline

Sets the level ID/PIE instance ID for this netdriver to use.

◆ SetIsInTick()

void UNetDriver::SetIsInTick ( bool  bIsInTick)
inlineprotected

◆ SetNetAnalyticsAttributes()

void UNetDriver::SetNetAnalyticsAttributes ( const FString &  AttributeKey,
const FString &  AttributeValue 
)
inline

Add or overwrite an analytics attribute that will be appended via FNetAnalyticsAggregator::AppendGameInstanceAttributes Useful to add game specific attributes to your analytics.

Parameters
AttributeKeyThe key of the attribute. Stored in a case-insensitive map
AttributeValueValue of the attribute to store. Only supports strings.

◆ SetNetDriverDefinition()

void UNetDriver::SetNetDriverDefinition ( FName  NewNetDriverDefinition)

Set the NetDriver's NetDriverDefintion.

◆ SetNetDriverName()

void UNetDriver::SetNetDriverName ( FName  NewNetDriverNamed)

Change the NetDriver's NetDriverName. This will also reinit packet simulation settings so that settings can be qualified to a specific driver.

◆ SetNetServerMaxTickRate()

PRAGMA_DISABLE_DEPRECATION_WARNINGS void UNetDriver::SetNetServerMaxTickRate ( int32  InServerMaxTickRate)

Override the configured server tick rate. Value is in ticks per second.

◆ SetPacketSimulationSettings()

ENGINE_API void UNetDriver::SetPacketSimulationSettings ( const FPacketSimulationSettings NewSettings)

Modify the current emulation settings

◆ SetPendingDestruction()

void UNetDriver::SetPendingDestruction ( bool  bDestroy)

◆ SetReplicateTransactionally()

void UNetDriver::SetReplicateTransactionally ( bool  bInReplicateTransactionally)
inline

Sets whether this driver should run certain operations via UE::RemoteExecutor::ExecuteTransactional

◆ SetReplicationDriver()

void UNetDriver::SetReplicationDriver ( UReplicationDriver NewReplicationManager)

Explicitly sets the ReplicationDriver instance (you instantiate it and initialize it). Shouldn't be done during gameplay: ok to do in GameMode startup or via console commands for testing. Existing ReplicationDriver (if set) is destroyed when this is called.

◆ SetRoleSwapOnReplicate()

void UNetDriver::SetRoleSwapOnReplicate ( AActor Actor,
bool  bSwapRoles 
)

Set whether this actor should swap roles before replicating properties.

◆ SetSupportForNoPawnConnection()

void UNetDriver::SetSupportForNoPawnConnection ( bool  bInSupportNoPawnConnection)
inline

Enable/disable support for NMT_JoinNoPawn and NMT_JoinNoPawnSplit.

◆ SetupNetworkMetrics()

void UNetDriver::SetupNetworkMetrics ( )
protectedvirtual

Register each metric used by the networking system.

If a sub-class needs to create new metrics, those metrics should be added to the metrics database in the sub-class implementation of this function. Metrics should only be added to the database after calling Super::SetupNetworkMetrics().

◆ SetUsingRemoteObjectReferences()

void UNetDriver::SetUsingRemoteObjectReferences ( bool  bValue)
inline

When using remote objects with UE_WITH_REMOTE_OBJECT_HANDLE, determines whether or not references to UObjects (either from TObjectPtr or TWeakObjectPtr) are serialized as FRemoteObjectReference

◆ SetWorld()

void UNetDriver::SetWorld ( class UWorld InWorld)
virtual

Associate a world with this net driver. Disassociates any previous world first.

Parameters
InWorldthe world to associate with this netdriver

Reimplemented in UDemoNetDriver.

◆ ShouldCallRemoteFunction()

bool UNetDriver::ShouldCallRemoteFunction ( UObject Object,
UFunction Function,
const FReplicationFlags RepFlags 
) const
virtual

Returns true if this network driver should execute this remote call locally.

◆ ShouldClientDestroyActor()

bool UNetDriver::ShouldClientDestroyActor ( AActor Actor,
EChannelCloseReason  CloseReason = EChannelCloseReason::Destroyed 
) const
virtual

Returns true if clients should destroy the actor when the channel is closed.

◆ ShouldClientDestroyTearOffActors()

virtual bool UNetDriver::ShouldClientDestroyTearOffActors ( ) const
inlinevirtual

Returns true if the client should destroy immediately any actor that becomes torn-off

Reimplemented in UDemoNetDriver.

◆ ShouldDeferTransactionalSend()

bool UNetDriver::ShouldDeferTransactionalSend ( ) const
inline

◆ ShouldForwardFunction()

bool UNetDriver::ShouldForwardFunction ( AActor Actor,
UFunction Function,
void Parms 
) const
virtual

Returns true if this network driver will forward a received remote function call to other active net drivers.

Reimplemented in UDemoNetDriver.

◆ ShouldIgnoreRPCs()

virtual bool UNetDriver::ShouldIgnoreRPCs ( ) const
inlinevirtual

Returns whether or not RPCs processed by this driver should be ignored.

Reimplemented in UDemoNetDriver.

◆ ShouldQueueBunchesForActorGUID()

virtual bool UNetDriver::ShouldQueueBunchesForActorGUID ( FNetworkGUID  InGUID) const
inlinevirtual

Returns true if actor channels with InGUID should queue up bunches, even if they wouldn't otherwise be queued.

Reimplemented in UDemoNetDriver.

◆ ShouldReceiveRepNotifiesForObject()

virtual bool UNetDriver::ShouldReceiveRepNotifiesForObject ( UObject Object) const
inlinevirtual

Returns true if RepNotifies should be checked and generated when receiving properties for the given object.

Reimplemented in UDemoNetDriver.

◆ ShouldRegisterMetricsDatabaseListeners()

bool UNetDriver::ShouldRegisterMetricsDatabaseListeners ( ) const
protectedvirtual

Return true if this driver should register metrics database listeners based on UNetworkMetricsConfig ini configuration.

◆ ShouldReplicateActor()

bool UNetDriver::ShouldReplicateActor ( AActor Actor) const
virtual

Returns true if this network driver will replicate the given actor.

Reimplemented in UDemoNetDriver.

◆ ShouldReplicateFunction()

bool UNetDriver::ShouldReplicateFunction ( AActor Actor,
UFunction Function 
) const
virtual

Returns true if this network driver will handle the remote function call for the given actor.

Reimplemented in UDemoNetDriver.

◆ ShouldReplicateTransactionally()

constexpr bool UNetDriver::ShouldReplicateTransactionally ( ) const
inlineconstexpr

This function is not valid unless UE_WITH_REMOTE_OBJECT_HANDLE is set

◆ ShouldSkipRepNotifies()

bool UNetDriver::ShouldSkipRepNotifies ( ) const
virtual

Returns whether or not properties that are replicating using this driver should not call RepNotify functions.

Reimplemented in UDemoNetDriver.

◆ ShouldUpdateStats()

bool UNetDriver::ShouldUpdateStats ( ) const
protectedvirtual

Return true if this driver should update network stats in UpdateNetworkStats().

◆ Shutdown()

void UNetDriver::Shutdown ( )
virtual

Shutdown all connections managed by this net driver

◆ TearOffSubObjectOnClients()

void UNetDriver::TearOffSubObjectOnClients ( AActor Actor,
UObject SubObject 
)

Called when an authoritative actor wants to tear off a subobject on the clients it was already replicated to

◆ TickDispatch()

void UNetDriver::TickDispatch ( float  DeltaTime)
virtual

handle time update: read and process packets

Reimplemented in UDemoNetDriver.

◆ TickFlush()

void UNetDriver::TickFlush ( float  DeltaSeconds)
virtual

ReplicateActors and Flush

Reimplemented in UDemoNetDriver.

◆ TryUpgradeNetworkFeatures()

void UNetDriver::TryUpgradeNetworkFeatures ( EEngineNetworkRuntimeFeatures  RemoteFeatures)

Change the netdriver to have runtime features compatible with the remote connection.

◆ UnregisterTickEvents()

void UNetDriver::UnregisterTickEvents ( class UWorld InWorld)
protected

Unregister all TickDispatch, TickFlush, PostTickFlush to tick in World

◆ UpdateGroupFilterStatusForAllLevelsForAllConnections()

void UNetDriver::UpdateGroupFilterStatusForAllLevelsForAllConnections ( )

◆ UpdateGroupFilterStatusForAllLevelsForConnection()

void UNetDriver::UpdateGroupFilterStatusForAllLevelsForConnection ( UE::Net::FConnectionHandle  Handle)

◆ UpdateGroupFilterStatusForLevel()

void UNetDriver::UpdateGroupFilterStatusForLevel ( const ULevel Level,
UE::Net::FNetObjectGroupHandle  LevelGroupHandle 
)

◆ UpdateNetworkLagState()

void UNetDriver::UpdateNetworkLagState ( )
virtual

Update the LagState based on a heuristic to determine if we are network lagging

◆ UpdateNetworkStats()

void UNetDriver::UpdateNetworkStats ( )
protected

Update stats related to networking.

◆ UpdateStandbyCheatStatus()

void UNetDriver::UpdateStandbyCheatStatus ( void  )

Updates the standby cheat information and causes the dialog to be shown/hidden as needed

Member Data Documentation

◆ AllOwnedReplicators

TSet< FObjectReplicator* > UNetDriver::AllOwnedReplicators

◆ AnalyticsAggregator

TSharedPtr<FNetAnalyticsAggregator> UNetDriver::AnalyticsAggregator

Special analytics aggregator tied to AnalyticsProvider - combines analytics from all NetConnections/PacketHandlers, in one event

◆ AnalyticsProvider

TSharedPtr<IAnalyticsProvider> UNetDriver::AnalyticsProvider

The analytics provider used by the packet handler

◆ BadPingThreshold

int32 UNetDriver::BadPingThreshold

The point we think the host is cheating or shouldn't be hosting due to crappy network

◆ bClampListenServerTickRate

uint32 UNetDriver::bClampListenServerTickRate

◆ bCollectNetStats

uint8 UNetDriver::bCollectNetStats

Collect net stats even if not FThreadStats::IsCollectingData().

◆ bHasStandbyCheatTriggered

uint8 UNetDriver::bHasStandbyCheatTriggered

Used to determine whether we've already caught a cheat or not

◆ bIsPeer

uint8 UNetDriver::bIsPeer

If true then client connections are to other client peers

◆ bIsStandbyCheckingEnabled

uint8 UNetDriver::bIsStandbyCheckingEnabled

Used to determine if checking for standby cheats should occur

◆ bMaySendProperties

uint8 UNetDriver::bMaySendProperties
protected

◆ bNeverApplyNetworkEmulationSettings

uint8 UNetDriver::bNeverApplyNetworkEmulationSettings

If true this NetDriver will not apply the network emulation settings that simulate latency and packet loss in non-shippable builds

◆ bNoTimeouts

uint8 UNetDriver::bNoTimeouts

If true, ignore timeouts completely. Should be used only in development

◆ bSkipClearVoicePackets

uint8 UNetDriver::bSkipClearVoicePackets
protected

◆ bSkipLocalStats

uint8 UNetDriver::bSkipLocalStats

If true, it assumes the stats are being set by server data

◆ bSkipServerReplicateActors

uint8 UNetDriver::bSkipServerReplicateActors
protected

◆ bTickingThrottleEnabled

bool UNetDriver::bTickingThrottleEnabled = true
protected

Indicates whether ticking throttle is enabled for this instance of NetDriver

◆ ChannelDefinitionMap

TMap<FName, FChannelDefinition> UNetDriver::ChannelDefinitionMap

Used for faster lookup of channel definitions by name.

◆ ChannelDefinitions

TArray<FChannelDefinition> UNetDriver::ChannelDefinitions

Used to specify available channel types and their associated UClass

◆ ChildNetConnectionClass

TObjectPtr<UClass> UNetDriver::ChildNetConnectionClass

◆ ClientConnections

TArray<TObjectPtr<UNetConnection> > UNetDriver::ClientConnections

Array of connections to clients (this net driver is a host) - unsorted, and ordering changes depending on actor replication

◆ ConnectionlessHandler

TUniquePtr<PacketHandler> UNetDriver::ConnectionlessHandler

Serverside PacketHandler for managing connectionless packets

◆ ConnectionTimeout

float UNetDriver::ConnectionTimeout

Amount of time to wait before considering an established connection timed out.
Typically shorter than the time to wait on a new connection because this connection should already have been setup and any interruption should be trapped quicker.

◆ DDoS

FDDoSDetection UNetDriver::DDoS

DDoS detection management

◆ DebugRelevantActors

bool UNetDriver::DebugRelevantActors

Dumps next net update's relevant actors when true

◆ Default

constexpr ERemoteFunctionSendPolicy UNetDriver::Default = ERemoteFunctionSendPolicy::Default
staticconstexpr

◆ DestroyedStartupOrDormantActors

TMap<FNetworkGUID, TUniquePtr<FActorDestructionInfo> > UNetDriver::DestroyedStartupOrDormantActors

The server adds an entry into this map for every actor that is destroyed that join-in-progress clients need to know about, that is, startup actors. Also, individual UNetConnections need to keep track of FActorDestructionInfo for dormant and recently-dormant actors in addition to startup actors (because they won't have an associated channel), and this map stores those FActorDestructionInfos also.

◆ ForceQueue

constexpr ERemoteFunctionSendPolicy UNetDriver::ForceQueue = ERemoteFunctionSendPolicy::ForceQueue
staticconstexpr

◆ ForceSend

constexpr ERemoteFunctionSendPolicy UNetDriver::ForceSend = ERemoteFunctionSendPolicy::ForceSend
staticconstexpr

◆ GetSocketSubsystem

virtual class ISocketSubsystem* UNetDriver::GetSocketSubsystem() PURE_VIRTUAL(UNetDriver

Get the socket subsytem appropriate for this net driver

◆ GracefulCloseConnectionTimeout

float UNetDriver::GracefulCloseConnectionTimeout = 2.0f

Amount of time to wait for a graceful close/bPendingDestroy to complete before considering the connection timed out.
This is the time used to allow any existing, pending reliable data to be acknowledged.

◆ GuidCache

TSharedPtr<class FNetGUIDCache> UNetDriver::GuidCache

◆ GuidToReplicatorMap

TMap< FNetworkGUID, TSet< FObjectReplicator* > > UNetDriver::GuidToReplicatorMap

◆ InBunches

uint32 UNetDriver::InBunches

todo document

◆ InBytes

uint32 UNetDriver::InBytes

todo document

◆ InBytesPerSecond

uint32 UNetDriver::InBytesPerSecond

Stats for network perf

◆ InitConnect

virtual bool UNetDriver::InitConnect(class FNetworkNotify *InNotify, const FURL &ConnectURL, FString &Error) PURE_VIRTUAL(UNetDriver

Initialize the net driver in client mode

Parameters
InNotifynotification object to associate with the net driver
ConnectURLremote ip:port of host to connect to
Errorresulting error string from connection attempt
Returns
true if successful, false otherwise (check Error parameter)

◆ InitialConnectTimeout

float UNetDriver::InitialConnectTimeout

Amount of time to wait for a new net connection to be established before destroying the connection

◆ InitListen

virtual bool UNetDriver::InitListen(class FNetworkNotify *InNotify, FURL &ListenURL, bool bReuseAddressAndPort, FString &Error) PURE_VIRTUAL(UNetDriver

Initialize the network driver in server mode (listener)

Parameters
InNotifynotification object to associate with the net driver
ListenURLthe connection URL for this listener
bReuseAddressAndPortwhether to allow multiple sockets to be bound to the same address/port
Errorout param with any error messages generated
Returns
true if successful, false otherwise (check Error parameter)

◆ InPackets

uint32 UNetDriver::InPackets

The number of packets per second that have been received.

◆ InPacketsLost

uint32 UNetDriver::InPacketsLost

The percentage of incoming packets that have been found to be lost.

◆ InTotalBunches

uint32 UNetDriver::InTotalBunches

Total bunches received since the net driver's creation

◆ InTotalBytes

uint32 UNetDriver::InTotalBytes

Total bytes in packets received since the net driver's creation

◆ InTotalPackets

uint32 UNetDriver::InTotalPackets

Total packets received since the net driver's creation

◆ InTotalPacketsLost

uint32 UNetDriver::InTotalPacketsLost

Total packets lost that have been sent by clients since the net driver's creation

◆ InTotalReliableBunches

uint32 UNetDriver::InTotalReliableBunches

Total number of incoming reliable bunches

◆ IsNetResourceValid

virtual bool UNetDriver::IsNetResourceValid(void) PURE_VIRTUAL(UNetDriver ( void  )
Returns
true if the net resource is valid or false if it should not be used

◆ JoinInProgressStandbyWaitTime

float UNetDriver::JoinInProgressStandbyWaitTime

The amount of time to wait before checking a connection for standby issues

◆ KeepAliveTime

float UNetDriver::KeepAliveTime

◆ LastCleanupTime

double UNetDriver::LastCleanupTime

Time of last netdriver cleanup pass

◆ LastNonRelevantActors

TArray< TWeakObjectPtr<AActor> > UNetDriver::LastNonRelevantActors

◆ LastPrioritizedActors

TArray< TWeakObjectPtr<AActor> > UNetDriver::LastPrioritizedActors

These are debug list of actors. They are using TWeakObjectPtr so that they do not affect GC performance since they are rarely in use (DebugRelevantActors)

◆ LastRelevantActors

TArray< TWeakObjectPtr<AActor> > UNetDriver::LastRelevantActors

◆ LastSentActors

TArray< TWeakObjectPtr<AActor> > UNetDriver::LastSentActors

◆ LastTickDispatchRealtime

double UNetDriver::LastTickDispatchRealtime

Last realtime a tick dispatch occurred. Used currently to try and diagnose timeout issues

◆ LocalAddr

TSharedPtr<FInternetAddr> UNetDriver::LocalAddr

Local address this net driver is associated with

◆ MappedClientConnections

FConnectionMap UNetDriver::MappedClientConnections

Map of IP's to NetConnection's - for fast lookup, particularly under DDoS. Only valid IP's mapped (e.g. excludes DemoNetConnection). Recently disconnected clients remain mapped as nullptr connections.

◆ MaxClientRate

int32 UNetDriver::MaxClientRate

◆ MaxDownloadSize

int32 UNetDriver::MaxDownloadSize

◆ MaxInternetClientRate

int32 UNetDriver::MaxInternetClientRate

◆ MaxNetTickRate

int32 UNetDriver::MaxNetTickRate

Limit tick rate of replication to allow very high frame rates to still replicate data. A value less or equal to zero means use the engine tick rate. A value greater than zero will clamp the net tick rate to this value.

◆ NetCache

TSharedPtr< class FClassNetCacheMgr > UNetDriver::NetCache

◆ NetConnectionClass

TObjectPtr<UClass> UNetDriver::NetConnectionClass

The loaded UClass of the net connection type to use

◆ NetConnectionClassName

FString UNetDriver::NetConnectionClassName

Used to specify the class to use for connections

◆ NetDriverName

FName UNetDriver::NetDriverName

Used to specify the net driver to filter actors with (NAME_None || NAME_GameNetDriver is the default net driver)

◆ NetGUIDInBytes

uint32 UNetDriver::NetGUIDInBytes

Incoming rate of NetGUID Bunches

◆ NetGUIDOutBytes

uint32 UNetDriver::NetGUIDOutBytes

Outgoing rate of NetGUID Bunches

◆ NetServerMaxTickRate

int32 UNetDriver::NetServerMaxTickRate

Limit the tick rate of the engine when running in dedicated server mode.

See also
UGameEngine::GetMaxTickRate

◆ NetTag

int32 UNetDriver::NetTag

Used to track whether a given actor was replicated by the net driver recently

◆ Notify

class FNetworkNotify* UNetDriver::Notify

Interface for communication network state to others (ie World usually, but anything that implements FNetworkNotify)

◆ OnLevelAddedToWorldHandle

FDelegateHandle UNetDriver::OnLevelAddedToWorldHandle
protected

◆ OnLevelRemovedFromWorldHandle

FDelegateHandle UNetDriver::OnLevelRemovedFromWorldHandle
protected

Handles that track our LevelAdded / Removed delegates.

◆ OnNetServerMaxTickRateChanged

FOnNetServerMaxTickRateChanged UNetDriver::OnNetServerMaxTickRateChanged

◆ OutBunches

uint32 UNetDriver::OutBunches

todo document

◆ OutBytes

uint32 UNetDriver::OutBytes

todo document

◆ OutBytesPerSecond

uint32 UNetDriver::OutBytesPerSecond

todo document

◆ OutPackets

uint32 UNetDriver::OutPackets

The number of packets per second that have been sent.

◆ OutPacketsLost

uint32 UNetDriver::OutPacketsLost

The percentage of outgoing packets that have been found to be lost.

◆ OutTotalAcks

uint32 UNetDriver::OutTotalAcks

Total acks sent since the net driver's creation

◆ OutTotalBunches

uint32 UNetDriver::OutTotalBunches

Total bunches sent since the net driver's creation

◆ OutTotalBytes

uint32 UNetDriver::OutTotalBytes

Total bytes in packets sent since the net driver's creation

◆ OutTotalPackets

uint32 UNetDriver::OutTotalPackets

Total packets sent since the net driver's creation

◆ OutTotalPacketsLost

uint32 UNetDriver::OutTotalPacketsLost

Total packets lost that have been sent by the server since the net driver's creation

◆ OutTotalReliableBunches

uint32 UNetDriver::OutTotalReliableBunches

Total number of outgoing reliable bunches

◆ PacketSimulationSettings

FPacketSimulationSettings UNetDriver::PacketSimulationSettings

◆ PercentForBadPing

float UNetDriver::PercentForBadPing

The number of clients with bad ping before triggering the standby code

◆ PercentMissingForRxStandby

float UNetDriver::PercentMissingForRxStandby

The number of clients missing data before triggering the standby code

◆ PercentMissingForTxStandby

float UNetDriver::PercentMissingForTxStandby

◆ PostTickDispatchDelegateHandle

FDelegateHandle UNetDriver::PostTickDispatchDelegateHandle

◆ PostTickFlushDelegateHandle

FDelegateHandle UNetDriver::PostTickFlushDelegateHandle

◆ PrevInPackets

uint32 UNetDriver::PrevInPackets

The number of packets that were received in the previous frame.

◆ PrevInPacketsLost

uint32 UNetDriver::PrevInPacketsLost

The number of incoming packets that were found to be lost in the previous frame.

◆ PrevOutPackets

uint32 UNetDriver::PrevOutPackets

The number of packets that were sent in the previous frame.

◆ PrevOutPacketsLost

uint32 UNetDriver::PrevOutPacketsLost

The number of outgoing packets that were found to be lost in the previous frame.

◆ ProcessLocalServerPackets

void UNetDriver::ProcessLocalServerPackets

Sends a 'connectionless' (not associated with a UNetConection) packet, to the specified address. NOTE: Address is an abstract format defined by subclasses. Anything calling this, must use an address supplied by the net driver.

Parameters
AddressThe address the packet should be sent to (format is abstract, determined by net driver subclasses)
DataThe packet data
CountBitsThe size of the packet data, in bits
TraitsTraits for the packet, if applicable Process any local talker packets that need to be sent to clients

Process any local talker packets that need to be sent to clients

◆ ProcessQueuedBunchesCurrentFrameMilliseconds

float UNetDriver::ProcessQueuedBunchesCurrentFrameMilliseconds

Tracks the amount of time spent during the current frame processing queued bunches.

◆ ProfileStats

uint8 UNetDriver::ProfileStats

◆ RecentlyDisconnectedClients

TArray<FDisconnectedClient> UNetDriver::RecentlyDisconnectedClients

Tracks recently disconnected client IP's, and the disconnect time - so they can be cleaned from MappedClientConnections

◆ RecentlyDisconnectedTrackingTime

int32 UNetDriver::RecentlyDisconnectedTrackingTime

The amount of time, in seconds, that recently disconnected clients should be tracked

◆ RelevantTimeout

float UNetDriver::RelevantTimeout

Amount of time (in seconds) before we close the channel of a replicated actor when it goes out of relevancy. Ex: If the client moves farther then the actor's netculldistance, the actor will still be replicated to that client for the duration of the RelevantTimeout. Default value is 5 seconds Note: ReplicationGraph and Iris do not use this value directly and instead have their unique config.

◆ RemoteRoleProperty

FProperty* UNetDriver::RemoteRoleProperty

◆ RenamedStartupActors

TMap<FName, FName> UNetDriver::RenamedStartupActors

The server adds an entry into this map for every startup actor that has been renamed, and will always map from current name to original name

◆ RepLayoutMap

◆ ReplicationBridgeClass

TObjectPtr<UClass> UNetDriver::ReplicationBridgeClass

◆ ReplicationBridgeClassName

FString UNetDriver::ReplicationBridgeClassName

Used to specify the class to use for ReplicationBridge

◆ ReplicationDriverClass

TObjectPtr<UClass> UNetDriver::ReplicationDriverClass

◆ ReplicationDriverClassName

FString UNetDriver::ReplicationDriverClassName

◆ ReplicationFrame

uint32 UNetDriver::ReplicationFrame

Used to invalidate properties marked "unchanged" in FRepChangedPropertyTracker's

◆ ReplicationSystemConfigClient

FNetDriverReplicationSystemConfig UNetDriver::ReplicationSystemConfigClient

Can be used to configure Client settings for the ReplicationSystem

◆ ReplicationSystemConfigServer

FNetDriverReplicationSystemConfig UNetDriver::ReplicationSystemConfigServer

Can be used to configure Server settings for the ReplicationSystem

◆ RoleProperty

FProperty* UNetDriver::RoleProperty

◆ SendCycles

int32 UNetDriver::SendCycles

Timings for Socket::SendTo()

◆ SendRPCDel

FOnSendRPC UNetDriver::SendRPCDel

Delegate for hooking ProcessRemoteFunction

◆ ServerConnection

TObjectPtr<class UNetConnection> UNetDriver::ServerConnection

Connection to the server (this net driver is a client)

◆ ServerTravelPause

float UNetDriver::ServerTravelPause

Amount of time a server will wait before traveling to next map, gives clients time to receive final RPCs on existing level

See also
NextSwitchCountdown

◆ SkipRepNotifiesDel

FShouldSkipRepNotifies UNetDriver::SkipRepNotifiesDel

Delegate for hooking ShouldSkipRepNotifies

◆ SpawnPrioritySeconds

float UNetDriver::SpawnPrioritySeconds

◆ StandbyRxCheatTime

float UNetDriver::StandbyRxCheatTime

The amount of time without packets before triggering the cheat code

◆ StandbyTxCheatTime

float UNetDriver::StandbyTxCheatTime

todo document

◆ StatelessConnectComponent

TWeakPtr<StatelessConnectHandlerComponent> UNetDriver::StatelessConnectComponent

Reference to the PacketHandler component, for managing stateless connection handshakes

◆ StatPeriod

float UNetDriver::StatPeriod

Interval between gathering stats

◆ StatUpdateTime

double UNetDriver::StatUpdateTime

Time of last stat update

◆ TickDispatchDelegateHandle

FDelegateHandle UNetDriver::TickDispatchDelegateHandle

Handles to various registered delegates

◆ TickFlushDelegateHandle

FDelegateHandle UNetDriver::TickFlushDelegateHandle

◆ TimeoutMultiplierForUnoptimizedBuilds

float UNetDriver::TimeoutMultiplierForUnoptimizedBuilds

A multiplier that is applied to the above values when we are running with unoptimized builds (debug) or data (uncooked). This allows us to retain normal timeout behavior while debugging without resorting to the nuclear 'notimeouts' option or bumping the values above. If ==0 multiplier = 1

◆ TotalRPCsCalled

uint32 UNetDriver::TotalRPCsCalled

Total RPCs called since the net driver's creation

◆ TotalTrackedGuidMemoryBytes

int32 UNetDriver::TotalTrackedGuidMemoryBytes

◆ UnmappedReplicators

TSet< FObjectReplicator* > UNetDriver::UnmappedReplicators

◆ UpdateDelayRandomStream

FRandomStream UNetDriver::UpdateDelayRandomStream
protected

Stream of random numbers to be used by this instance of UNetDriver

◆ VoiceBytesRecv

uint32 UNetDriver::VoiceBytesRecv

Tracks the total number of voice bytes received

◆ VoiceBytesSent

uint32 UNetDriver::VoiceBytesSent

Tracks the total number of voice bytes sent

◆ VoiceInPercent

uint32 UNetDriver::VoiceInPercent

Tracks the voice data percentage of in bound bytes

◆ VoiceOutPercent

uint32 UNetDriver::VoiceOutPercent

Tracks the voice data percentage of out bound bytes

◆ VoicePacketsRecv

uint32 UNetDriver::VoicePacketsRecv

Tracks the total number of voice packets received

◆ VoicePacketsSent

uint32 UNetDriver::VoicePacketsSent

Tracks the total number of voice packets sent

◆ World

TObjectPtr<class UWorld> UNetDriver::World

World this net driver is associated with

◆ WorldPackage

TObjectPtr<class UPackage> UNetDriver::WorldPackage

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