Navigation
API > API/Runtime > API/Runtime/IrisCore
Base replication bridge Should only be used by internal Iris classes, public access should be restricted to the UObjectReplicationBridge.
| Name | UReplicationBridge |
| Type | class |
| Header File | /Engine/Source/Runtime/Net/Iris/Public/Iris/ReplicationSystem/ReplicationBridge.h |
| Include Path | #include "Iris/ReplicationSystem/ReplicationBridge.h" |
Syntax
UCLASS (Transient, MinimalAPI)
class UReplicationBridge : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UReplicationBridge
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UReplicationBridge() |
ReplicationBridge Implementation | Iris/ReplicationSystem/ReplicationBridge.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~UReplicationBridge() |
Iris/ReplicationSystem/ReplicationBridge.h |
Structs
| Name | Remarks |
|---|---|
| FPendingEndReplicationInfo |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FNetDependencyInfoArray | UE::Net::FNetDependencyInfoArray | Iris/ReplicationSystem/ReplicationBridge.h | |
| FNetHandle | UE::Net::FNetHandle | Iris/ReplicationSystem/ReplicationBridge.h | |
| FNetRefHandle | UE::Net::FNetRefHandle | Iris/ReplicationSystem/ReplicationBridge.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bInReceiveUpdate | bool | Tracks if we are in the middle of processing incoming data | Iris/ReplicationSystem/ReplicationBridge.h | |
| Groups | UE::Net::Private::FNetObjectGroups * | Iris/ReplicationSystem/ReplicationBridge.h | ||
| HandlesPendingEndReplication | TArray< FPendingEndReplicationInfo > | Iris/ReplicationSystem/ReplicationBridge.h | ||
| HandlesToStopReplicating | TMap< FNetRefHandle, EEndReplicationFlags > | List of replicated objects that requested to stop replicating while we were in ReceiveUpdate | Iris/ReplicationSystem/ReplicationBridge.h | |
| LevelGroups | TMap< FObjectKey, UE::Net::FNetObjectGroupHandle > | Iris/ReplicationSystem/ReplicationBridge.h | ||
| NetRefHandleManager | UE::Net::Private::FNetRefHandleManager * | Iris/ReplicationSystem/ReplicationBridge.h | ||
| ObjectReferenceCache | UE::Net::Private::FObjectReferenceCache * | Iris/ReplicationSystem/ReplicationBridge.h | ||
| ReplicationProtocolManager | UE::Net::Private::FReplicationProtocolManager * | Iris/ReplicationSystem/ReplicationBridge.h | ||
| ReplicationStateDescriptorRegistry | UE::Net::Private::FReplicationStateDescriptorRegistry * | Iris/ReplicationSystem/ReplicationBridge.h | ||
| ReplicationSystem | UReplicationSystem * | Iris/ReplicationSystem/ReplicationBridge.h | ||
| UObjectReplicationBridge | friend | Iris/ReplicationSystem/ReplicationBridge.h | ||
| UReplicationSystem | friend | Iris/ReplicationSystem/ReplicationBridge.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
const TMap< FObjectKey, UE::Net::FNetObjectGroupHandle > & GetAllLevelGroups () |
Get all level groups. | Iris/ReplicationSystem/ReplicationBridge.h | |
UE::Net::FNetObjectGroupHandle GetLevelGroup
(
const UObject* Level |
Get the group associated with the level in order to control connection filtering for it. | Iris/ReplicationSystem/ReplicationBridge.h | |
bool IsInReceiveUpdate() |
Returns true when we are in the middle of processing incoming data. | Iris/ReplicationSystem/ReplicationBridge.h | |
bool IsReplicatedHandle
(
FNetRefHandle Handle |
Returns true if the handle is replicated. | Iris/ReplicationSystem/ReplicationBridge.h | |
FString PrintObjectFromNetRefHandle
(
FNetRefHandle RefHandle |
Print common information about this handle and the object it is mapped to | Iris/ReplicationSystem/ReplicationBridge.h | |
void StopReplicatingNetRefHandle
(
FNetRefHandle Handle, |
Stop replicating the NetObject associated with the handle and mark the handle to be destroyed. | Iris/ReplicationSystem/ReplicationBridge.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CacheNetRefHandleCreationInfo
(
FNetRefHandle Handle |
Cache info required to allow deferred writing of NetRefHandleCreationInfo | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual bool CanCreateDestructionInfo() |
Returns if the bridge is allowed to create new destruction info at this moment. | Iris/ReplicationSystem/ReplicationBridge.h | |
UE::Net::FNetObjectGroupHandle CreateLevelGroup
(
const UObject* Level, |
Creates a group for a level for object filtering purposes. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void Deinitialize() |
Deinitializes the bridge. Is called during ReplicationSystem deinitialization. | Iris/ReplicationSystem/ReplicationBridge.h | |
void DestroyLevelGroup
(
const UObject* Level |
Destroys the group associated with the level. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void DetachInstance
(
FNetRefHandle Handle |
Called when we detach instance protocol from the local instance | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void GetInitialDependencies
(
FNetRefHandle Handle, |
Invoked when we start to replicate an object for a specific connection to fill in any initial dependencies | Iris/ReplicationSystem/ReplicationBridge.h | |
UE::Net::FNetObjectFactoryId GetNetObjectFactoryId
(
FNetRefHandle RefHandle |
Return the NetFactoryId assigned to a replicated object. | Iris/ReplicationSystem/ReplicationBridge.h | |
UE::Net::Private::FObjectReferenceCache * GetObjectReferenceCache() |
Iris/ReplicationSystem/ReplicationBridge.h | ||
UE::Net::Private::FReplicationProtocolManager * GetReplicationProtocolManager() |
Iris/ReplicationSystem/ReplicationBridge.h | ||
UE::Net::Private::FReplicationStateDescriptorRegistry * GetReplicationStateDescriptorRegistry() |
Iris/ReplicationSystem/ReplicationBridge.h | ||
UReplicationSystem * GetReplicationSystem() |
Iris/ReplicationSystem/ReplicationBridge.h | ||
virtual void Initialize
(
UReplicationSystem* InReplicationSystem |
Initializes the bridge. Is called during ReplicationSystem initialization. | Iris/ReplicationSystem/ReplicationBridge.h | |
void InternalAddSubObject
(
FNetRefHandle OwnerHandle, |
Add SubObjectHandle as SubObject to OwnerHandle. | Iris/ReplicationSystem/ReplicationBridge.h | |
void InternalAttachInstanceToNetRefHandle
(
FNetRefHandle RefHandle, |
Attach instance to NetRefHandle. | Iris/ReplicationSystem/ReplicationBridge.h | |
FNetRefHandle InternalCreateNetObject
(
FNetRefHandle AllocatedHandle, |
Create a local NetRefHandle / NetObject using the ReplicationProtocol. | Iris/ReplicationSystem/ReplicationBridge.h | |
FNetRefHandle InternalCreateNetObjectFromRemote
(
FNetRefHandle WantedNetHandle, |
Create a NetRefHandle / NetObject on request from the authoritative end. | Iris/ReplicationSystem/ReplicationBridge.h | |
void InternalDestroyNetObject
(
FNetRefHandle Handle |
Destroy the handle and all internal book keeping associated with it. | Iris/ReplicationSystem/ReplicationBridge.h | |
void InternalDetachInstanceFromNetRefHandle
(
UE::Net::Private::FInternalNetRefIndex InternalObjectIndex |
Detach instance from NetRefHandle and destroy the instance protocol. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual bool IsAllowedToDestroyInstance
(
const UObject* Instance |
Called when destruction info is received to determine whether the instance may be destroyed. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnErrorWithNetRefHandleReported
(
UE::Net::ENetRefHandleError ErrorType, |
Called when a remote connection has a critical error caused by a specific NetRefHandle | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnPostReceiveUpdate() |
Invoked after we processed all incoming data | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnPostSeamlessTravelGarbageCollect() |
Called from PostSeamlessTravelGarbageCollect. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnPostSendUpdate() |
Invoked after we sent data to all connections. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnPreSeamlessTravelGarbageCollect() |
Called from PreSeamlessTravelGarbageCollect. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnProtocolMismatchReported
(
FNetRefHandle RefHandle, |
Called when a remote connection detected a protocol mismatch when trying to instantiate the NetRefHandle replicated object. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void OnStartPreSendUpdate() |
Invoked when the ReplicationSystem starts the PreSendUpdate tick. | Iris/ReplicationSystem/ReplicationBridge.h | |
void PostSeamlessTravelGarbageCollect () |
Called just after garbage collecting/destroying the previous world tied to a NetDriver during seamless travel. | Iris/ReplicationSystem/ReplicationBridge.h | |
void PreSeamlessTravelGarbageCollect () |
Called just prior to garbage collecting/destroying the previous world tied to a NetDriver during seamless travel. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void PreSendUpdate() |
Invoked before ReplicationSystem copies dirty state data. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void PreSendUpdateSingleHandle
(
FNetRefHandle Handle |
Invoked before ReplicationSystem copies dirty state data for a single replicated object. | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void PruneStaleObjects() |
Invoked post garbage collect to allow us to detect stale objects | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void RemoveDestructionInfosForGroup
(
UE::Net::FNetObjectGroupHandle GroupHandle |
Remove destruction infos associated with group Passing in an invalid group handle indicates that we should remove all destruction infos | Iris/ReplicationSystem/ReplicationBridge.h | |
virtual void UpdateInstancesWorldLocation() |
Update world locations in FWorldLocations for objects that support it. | Iris/ReplicationSystem/ReplicationBridge.h |