16#include "ReplicationSystem.generated.h"
20#ifndef UE_NUM_INLINE_REPLICATIONSYSTEMS
21 #define UE_NUM_INLINE_REPLICATIONSYSTEMS 8
40 class FNetObjectAttachment;
41 class FNetObjectReference;
42 class FReplicationSystemDelegates;
43 class FReplicationSystemFactory;
45 class FStringTokenStore;
46 class FNameTokenStore;
47 class FWorldLocations;
48 class FNetTokenResolveContext;
50 struct FReplicationSystemUtil;
51 struct FReplicationView;
54 struct FReplicationProtocol;
63 class FReplicationSystemImpl;
64 class FReplicationSystemInternal;
88 uint32 MaxReplicatedObjectCount = 65536U;
96 uint32 InitialNetObjectListCount = 65536U;
112 uint32 PreAllocatedMemoryBuffersObjectCount = 65536U;
119 uint32 MaxReplicationWriterObjectCount = 0;
122 uint32 MaxDeltaCompressedObjectCount = 2048U;
128 bool bIsServer =
false;
134 bool bAllowObjectReplication =
false;
137 bool bUseRemoteObjectReferences =
false;
143 bool bAllowParallelTasks =
false;
146 bool bAllowMinimalUpdateIfNoConnections =
true;
168 IRISCORE_API bool IsUsingRemoteObjectReferences()
const;
232 IRISCORE_API void SetReplicationEnabledForConnection(
uint32 ConnectionId,
bool bReplicationEnabled);
442 IRISCORE_API void DestroyGroup(FNetObjectGroupHandle GroupHandle);
455 IRISCORE_API void AddToGroup(FNetObjectGroupHandle GroupHandle, FNetRefHandle
Handle);
462 IRISCORE_API void RemoveFromGroup(FNetObjectGroupHandle GroupHandle, FNetRefHandle
Handle);
476 IRISCORE_API bool IsInGroup(FNetObjectGroupHandle GroupHandle, FNetRefHandle
Handle)
const;
483 IRISCORE_API bool IsValidGroup(FNetObjectGroupHandle GroupHandle)
const;
486 IRISCORE_API FNetObjectGroupHandle GetNotReplicatedNetObjectGroup()
const;
489 IRISCORE_API FNetObjectGroupHandle GetNetGroupOwnerNetObjectGroup()
const;
492 IRISCORE_API FNetObjectGroupHandle GetNetGroupReplayNetObjectGroup()
const;
563 IRISCORE_API bool AddExclusionFilterGroup(FNetObjectGroupHandle GroupHandle);
577 IRISCORE_API bool AddInclusionFilterGroup(FNetObjectGroupHandle GroupHandle);
580 IRISCORE_API void RemoveGroupFilter(FNetObjectGroupHandle GroupHandle);
604 IRISCORE_API FNetObjectGroupHandle GetSubObjectFilterGroupHandle(
FName GroupName)
const;
712 IRISCORE_API float GetCullDistance(FNetRefHandle
Handle,
float DefaultValue = -1.0f)
const;
763 void PostGarbageCollection();
773 double ElapsedTime = 0;
777 uint32 bAllowObjectReplication : 1;
778 uint32 bDoCollectGarbage : 1;
824 return Id >=
static_cast<uint32>(FReplicationSystemFactory::ReplicationSystems.Num()) ?
nullptr : FReplicationSystemFactory::ReplicationSystems[
Id];
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_MULTICAST_DELEGATE_OneParam(DelegateName, Param1Type)
Definition DelegateCombinations.h:49
void CollectGarbage(EObjectFlags KeepFlags, bool bPerformFullPurge)
Definition GarbageCollection.cpp:6203
void Init()
Definition LockFreeList.h:4
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition IDelegateInstance.h:14
Definition NameTypes.h:617
Definition UObjectGlobals.h:2492
Definition ArrayView.h:139
Definition AssetRegistryState.h:50
Definition RefCounting.h:454
Definition DataStreamManager.h:40
Definition DataStream.h:60
Definition ConnectionHandle.h:17
Definition NetBitArray.h:74
Definition NetHandle.h:32
Definition NetObjectGroupHandle.h:22
Definition NetObjectReference.h:38
Definition NetRefHandle.h:25
Definition NetToken.h:112
Definition NetTokenStore.h:189
Definition ReplicationSystemDelegates.h:18
Definition ReplicationSystem.h:790
static IRISCORE_API UReplicationSystem * CreateReplicationSystem(const UReplicationSystem::FReplicationSystemParams &Params)
Definition ReplicationSystem.cpp:2118
static IRISCORE_API FReplicationSystemCreatedDelegate & GetReplicationSystemCreatedDelegate()
Definition ReplicationSystem.cpp:2103
static IRISCORE_API FReplicationSystemDestroyedDelegate & GetReplicationSystemDestroyedDelegate()
Definition ReplicationSystem.cpp:2109
friend UReplicationSystem * GetReplicationSystem(uint32 Id)
Definition ReplicationSystem.h:822
static IRISCORE_API TArrayView< UReplicationSystem * > GetAllReplicationSystems()
Definition ReplicationSystem.cpp:2193
static IRISCORE_API void DestroyReplicationSystem(UReplicationSystem *System)
Definition ReplicationSystem.cpp:2158
Definition WorldLocations.h:57
Definition ReplicationSystemInternal.h:46
Definition NetBlobHandler.h:44
Definition NetDriver.h:799
Definition NetObjectFilter.h:178
Definition NetObjectPrioritizer.h:158
Definition ObjectReplicationBridge.h:83
Definition ReplicationSystem.h:70
T * GetReplicationBridgeAs() const
Definition ReplicationSystem.h:384
int32 GetPIEInstanceID() const
Definition ReplicationSystem.h:703
IRISCORE_API bool IsReplicationEnabledForConnection(uint32 ConnectionId) const
uint32 GetId() const
Definition ReplicationSystem.h:156
bool IsServer() const
Definition ReplicationSystem.h:162
double GetElapsedTime() const
Definition ReplicationSystem.h:715
bool AllowObjectReplication()
Definition ReplicationSystem.h:165
Definition ExpressionParserTypes.h:21
Definition OverriddenPropertySet.cpp:45
Definition NetworkVersion.cpp:28
uint32 FNetObjectPrioritizerHandle
Definition ObjectReplicationBridge.h:34
UReplicationSystem * GetReplicationSystem(uint32 Id)
Definition ReplicationSystem.h:822
EReplicationCondition
Definition ReplicationCondition.h:12
ENetRefHandleError
Definition NetEnums.h:130
FReplicationSystemLifeTime FReplicationSystemDestroyedDelegate
Definition ReplicationSystem.h:787
uint32 FNetObjectFilterHandle
Definition ReplicationFiltering.h:20
FReplicationSystemLifeTime FReplicationSystemCreatedDelegate
Definition ReplicationSystem.h:786
ENetObjectDeltaCompressionStatus
Definition ReplicationSystemTypes.h:13
ENetFilterStatus
Definition NetObjectFilter.h:37
ENetObjectAttachmentSendPolicyFlags
Definition ReplicationSystemTypes.h:52
Definition ObjectPtr.h:488
Definition NetDebugName.h:17
Definition NetMetrics.h:107
Definition ReplicationProtocol.h:83
Definition ReplicationView.h:19
Definition ReplicationSystem.h:80
UE::Net::FForwardNetRPCCallDelegate ForwardNetRPCCallDelegate
Definition ReplicationSystem.h:149