Navigation
API > API/Runtime > API/Runtime/IrisCore
ChunkedDataStream Experimental DataStream used to split and carry large payloads with potential exports
| Name | UChunkedDataStream |
| Type | class |
| Header File | /Engine/Source/Runtime/Net/Iris/Public/Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h |
| Include Path | #include "Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h" |
Syntax
UCLASS (MinimalAPI)
class UChunkedDataStream : public UDataStream
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UDataStream → UChunkedDataStream
Enums
Public
| Name | Remarks |
|---|---|
| EDispatchResult |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ChunkedReader | UE::Net::Private::FChunkedDataReader * | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
| ChunkedWriter | UE::Net::Private::FChunkedDataWriter * | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
| FChunkedDataStreamExportReadScope | friend | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
| FChunkedDataStreamExportWriteScope | friend | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
| PackageMap | TObjectPtr< UIrisObjectReferencePackageMap > | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
EDispatchResult DispatchReceivedPayload
(
TFunctionRef< void(TConstArrayView64< uint8 >)> DispatchPayloadFunction |
Dispatch received Payload Object References can be read from the payload through the PackageMap associated with the DataStream. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
EDispatchResult DispatchReceivedPayloads
(
TFunctionRef< void(TConstArrayView64< uint8 >)> DispatchPayloadFunction |
Dispatch all received Payloads Object References can be read from the payload through the PackageMap associated with the DataStream. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
bool EnqueuePayload
(
const TSharedPtr< TArray64< uint8 > >& Payload |
Enqueue Payload for sending, Object References written to the payload by using the PackageMap associated with the DataStream will be appended to the payload. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
uint32 GetNumReceivedPayloadsPendingDispatch() |
Get the number of received payloads that are ready for dispatch | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
| Get UIrisObjectReferencePackageMap associated with the DataStream | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
const UIrisObjectReferencePackageMap * GetPackageMap () |
Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
uint32 GetQueuedByteCount() |
Get number of payload bytes that is yet to be acknowledged | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
bool HasError() |
Returns true if the stream is in an error state and should be closed. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
void SetMaxEnqueuedPayloadBytes
(
uint32 MaxEnqueuedPayloadBytes |
Set the maximum number of enqueued payload bytes we can have on the sending side. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
void SetMaxUndispatchedPayloadBytes
(
uint32 MaxUndispatchedPayloadBytes |
Set the maximum number of undispatched payload bytes we can have on the receiing side. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h |
Protected
Overridden from UDataStream
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual EWriteResult BeginWrite
(
const FBeginWriteParameters& Params |
Called before any calls to potential WriteData, if it returns EWriteData::NoData no other calls will be made. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
virtual void Deinit() |
Called when a created stream is destroyed. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
virtual bool HasAcknowledgedAllReliableData() |
Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | ||
virtual void Init
(
const UDataStream::FInitParameters& Params |
Called before any other calls are made. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
virtual void ProcessPacketDeliveryStatus
(
UE::Net::EPacketDeliveryStatus Status, |
For each packet into which we have written data we are guaranteed to get a call to ProcessPacketDeliveryStatus when it's known whether the packet was delivered or not. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
virtual void ReadData
(
UE::Net::FNetSerializationContext& Context |
Deserialize data that was written with WriteData. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h | |
virtual EWriteResult WriteData
(
UE::Net::FNetSerializationContext& Context, |
Serialize data to a bitstream and optionally store record of what was serialized to a custom FDataStreamRecord. | Iris/ReplicationSystem/ChunkedDataStream/ChunkedDataStream.h |