UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
NetTokenDataStream.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
8
9#include "NetTokenDataStream.generated.h"
10
11namespace UE::Net
12{
13 class FNetToken;
14 class FNetTokenStore;
15 class FNetTokenStoreState;
16 class FStringTokenStore;
17
18 namespace Private
19 {
20 class FNetExports;
21 }
22}
23
24UCLASS()
26{
28
29public:
30
31 const UE::Net::FNetTokenStoreState* GetRemoteNetTokenStoreState() const { return RemoteNetTokenStoreState; }
32 void AddNetTokenForExplicitExport(UE::Net::FNetToken NetToken);
33
34private:
36 virtual ~UNetTokenDataStream();
37
38 // UDataStream interface
39 virtual void Init(const UDataStream::FInitParameters& Params) override;
40 virtual EWriteResult BeginWrite(const FBeginWriteParameters& Params) override;
41 virtual EWriteResult WriteData(UE::Net::FNetSerializationContext& Context, FDataStreamRecord const*& OutRecord) override;
42 virtual void ReadData(UE::Net::FNetSerializationContext& Context) override;
43 virtual void ProcessPacketDeliveryStatus(UE::Net::EPacketDeliveryStatus Status, FDataStreamRecord const* Record) override;
44 virtual bool HasAcknowledgedAllReliableData() const override;
45
46private:
47
48 // Record of in-flight NetTokens
49 TRingBuffer<UE::Net::FNetToken> NetTokenExports;
50
51 // All NetTokens enqueued for explicit export
52 TRingBuffer<UE::Net::FNetToken> NetTokensPendingExport;
53
54 // External record, simply track how many records we have in the internal record
55 struct FExternalRecord : public FDataStreamRecord
56 {
57 uint32 Count = 0U;
58 };
59
60 UE::Net::FNetTokenStore* NetTokenStore;
61 UE::Net::FNetTokenStoreState* RemoteNetTokenStoreState;
63
64 uint32 ReplicationSystemId;
65 uint32 ConnectionId;
66};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
void Init()
Definition LockFreeList.h:4
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition RingBuffer.h:135
Definition DataStream.h:60
Definition NetSerializationContext.h:31
Definition NetTokenStore.cpp:22
Definition NetTokenStore.h:189
Definition NetToken.h:22
Definition NetExports.h:17
Definition NetTokenDataStream.h:26
const UE::Net::FNetTokenStoreState * GetRemoteNetTokenStoreState() const
Definition NetTokenDataStream.h:31
Definition OverriddenPropertySet.cpp:45
Definition NetworkVersion.cpp:28
EPacketDeliveryStatus
Definition PacketNotification.h:12
Definition DataStream.h:39
Definition DataStream.h:102