8#include "Containers/Map.h"
13 class FNetBlobHandlerManager;
14 class FNetObjectAttachmentsReader;
15 class FNetObjectAttachmentsWriter;
106 uint32 MaxUnreliableCount;
190 enum EDeferredProcessingQueue :
unsigned
196 bool IsDeferredProcessingQueueEmpty(EDeferredProcessingQueue Queue)
const;
197 bool IsDeferredProcessingQueueSafeToDestroy(EDeferredProcessingQueue Queue)
const;
198 bool HasDeferredProcessingQueueUnprocessed(EDeferredProcessingQueue Queue)
const;
209 uint32 MaxUnreliableCount = 0;
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
void Init()
Definition LockFreeList.h:4
Definition ArrayView.h:139
Definition UnrealString.h.inl:34
Definition RefCounting.h:454
Definition ResizableCircularQueue.h:21
Definition UniquePtr.h:107
Definition NetRefHandle.h:25
Definition NetSerializationContext.h:31
Definition AttachmentReplication.cpp:719
Definition AttachmentReplication.h:168
const TRefCountPtr< FNetBlob > * PeekUnreliable() const
Definition AttachmentReplication.cpp:880
bool IsSafeToDestroy() const
Definition AttachmentReplication.cpp:853
~FNetObjectAttachmentReceiveQueue()
Definition AttachmentReplication.cpp:838
FNetObjectAttachmentReceiveQueue()
Definition AttachmentReplication.cpp:833
void SetUnreliableQueueCapacity(uint32 QueueCapacity)
Definition AttachmentReplication.cpp:897
bool HasUnprocessed() const
Definition AttachmentReplication.cpp:858
void PopReliable()
Definition AttachmentReplication.cpp:875
void PopUnreliable()
Definition AttachmentReplication.cpp:892
const TRefCountPtr< FNetBlob > * PeekReliable()
Definition AttachmentReplication.cpp:863
Definition AttachmentReplication.cpp:42
Definition AttachmentReplication.h:47
FReliableNetBlobQueue::FReplicationRecord FReliableReplicationRecord
Definition AttachmentReplication.h:49
SIZE_T GetUnreliableCount() const
Definition AttachmentReplication.cpp:246
bool HasUnsent() const
Definition AttachmentReplication.cpp:273
bool IsSafeToDestroy() const
Definition AttachmentReplication.cpp:298
bool HasUnsentUnreliable() const
Definition AttachmentReplication.cpp:278
bool Enqueue(TArrayView< const TRefCountPtr< FNetBlob > > Attachments)
Definition AttachmentReplication.cpp:215
bool IsAllReliableSentAndAcked() const
Definition AttachmentReplication.cpp:288
bool CanSendMoreReliableAttachments() const
Definition AttachmentReplication.cpp:293
void DropUnreliable(bool &bOutHasUnsentAttachments)
Definition AttachmentReplication.cpp:259
bool IsAllSentAndAcked() const
Definition AttachmentReplication.cpp:283
FNetObjectAttachmentSendQueue()
Definition AttachmentReplication.cpp:204
void SetUnreliableQueueCapacity(uint32 QueueCapacity)
Definition AttachmentReplication.cpp:303
~FNetObjectAttachmentSendQueue()
Definition AttachmentReplication.cpp:210
Definition AttachmentReplication.h:219
~FNetObjectAttachmentsReader()
Definition AttachmentReplication.cpp:1092
bool HasUnprocessedAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:1101
void DropAllAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex)
Definition AttachmentReplication.cpp:1112
FNetObjectAttachmentsReader()
Definition AttachmentReplication.cpp:1088
void Deserialize(FNetSerializationContext &Context, ENetObjectAttachmentType Type, uint32 ObjectIndex, FNetRefHandle RefHandle)
Definition AttachmentReplication.cpp:1117
FNetObjectAttachmentReceiveQueue * GetQueue(ENetObjectAttachmentType Type, uint32 ObjectIndex)
Definition AttachmentReplication.cpp:1129
Definition AttachmentReplication.h:110
bool AreAllObjectsReliableSentAndAcked() const
Definition AttachmentReplication.cpp:560
void DropAllAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex)
Definition AttachmentReplication.cpp:603
SIZE_T GetUnreliableAttachmentCount(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:608
FNetObjectAttachmentSendQueue::FReliableReplicationRecord FReliableReplicationRecord
Definition AttachmentReplication.h:113
void ProcessPacketDeliveryStatus(EPacketDeliveryStatus Status, ENetObjectAttachmentType Type, uint32 ObjectIndex, const FReliableReplicationRecord &Record)
Definition AttachmentReplication.cpp:657
bool HasUnsentUnreliableAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:527
FNetObjectAttachmentSendQueue::FCommitRecord FCommitRecord
Definition AttachmentReplication.h:112
bool IsAllReliableSentAndAcked(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:549
bool IsSafeToDestroy(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:592
void DropUnreliableAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex, bool &bOutHasUnsentAttachments)
Definition AttachmentReplication.cpp:619
bool IsAllSentAndAcked(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:538
void CommitReplicationRecord(ENetObjectAttachmentType Type, uint32 ObjectIndex, const FCommitRecord &Record)
Definition AttachmentReplication.cpp:651
bool CanSendMoreReliableAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:581
bool Enqueue(ENetObjectAttachmentType Type, uint32 ObjectIndex, TArrayView< const TRefCountPtr< FNetBlob > > Attachments)
Definition AttachmentReplication.cpp:505
bool HasUnsentAttachments(ENetObjectAttachmentType Type, uint32 ObjectIndex) const
Definition AttachmentReplication.cpp:516
Definition ReliableNetBlobQueue.h:25
Definition PartialNetObjectAttachmentHandler.h:44
Definition NetworkVersion.cpp:28
EAttachmentWriteStatus
Definition AttachmentReplication.h:35
ENetObjectAttachmentType
Definition AttachmentReplication.h:22
EPacketDeliveryStatus
Definition PacketNotification.h:12
constexpr FNetBlobType InvalidNetBlobType
Definition NetBlob.h:49
uint32 FNetBlobType
Definition NetBlob.h:46
Definition AttachmentReplication.h:163
const UPartialNetObjectAttachmentHandler * PartialNetObjectAttachmentHandler
Definition AttachmentReplication.h:164
Definition AttachmentReplication.h:61
FUnreliableReplicationRecord UnreliableCommitRecord
Definition AttachmentReplication.h:65
bool IsValid() const
Definition AttachmentReplication.h:62
FReliableReplicationRecord ReliableReplicationRecord
Definition AttachmentReplication.h:64
Definition AttachmentReplication.h:52
static constexpr uint32 InvalidReplicationRecord
Definition AttachmentReplication.h:55
uint32 Record
Definition AttachmentReplication.h:56
bool IsValid() const
Definition AttachmentReplication.h:53
Definition AttachmentReplication.h:214
const UPartialNetObjectAttachmentHandler * PartialNetObjectAttachmentHandler
Definition AttachmentReplication.h:215
Definition ReliableNetBlobQueue.h:29
bool IsValid() const
Definition ReliableNetBlobQueue.h:75