UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UploadQueue.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#if defined(UE_WITH_IAS_TOOL)
6
7
8
#include "
IO/IoBuffer.h
"
9
10
#include <
Async/Future.h
>
11
#include <Containers/Array.h>
12
#include <Containers/Queue.h>
13
#include <
Containers/StringView.h
>
14
#include <
Containers/UnrealString.h
>
15
#include <
String/LexFromString.h
>
16
17
18
19
namespace
UE
20
{
21
class
FS3Client
;
22
}
23
24
namespace
UE::IoStore::Tool {
25
27
// s3 upload helper....
28
class
FUploadQueue
29
{
30
public
:
31
FUploadQueue
(UE::FS3Client&
Client
,
const
FString& Bucket,
int32
ThreadCount);
32
bool
Enqueue(
FStringView
Key,
FIoBuffer
Payload);
33
bool
Flush
();
34
35
private
:
36
void
ThreadEntry();
37
38
struct
FQueueEntry
39
{
40
FString
Key
;
41
FIoBuffer
Payload;
42
};
43
44
UE::FS3Client&
Client
;
45
TArray<TFuture<void>
>
Threads
;
46
FString Bucket;
47
FCriticalSection
CriticalSection;
48
TQueue<FQueueEntry>
Queue;
49
FEventRef
WakeUpEvent;
50
FEventRef
UploadCompleteEvent
;
51
std::atomic_int32_t
ConcurrentUploads
{ 0 };
52
std::atomic_int32_t
ActiveThreadCount
{ 0 };
53
std::atomic_int32_t
ErrorCount
{ 0 };
54
std::atomic_bool
bCompleteAdding
{
false
};
55
};
56
57
}
// namespace UE::IoStore::Tool
58
59
#endif
// UE_WITH_IAS_TOOL
int32
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition
Platform.h:1125
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
FCriticalSection
UE::FPlatformRecursiveMutex FCriticalSection
Definition
CriticalSection.h:53
Future.h
EBuildTargetType::Client
@ Client
IoBuffer.h
LexFromString.h
EEndReplicationFlags::Flush
@ Flush
StringView.h
UnrealString.h
FEventRef
Definition
Event.h:135
FIoBuffer
Definition
IoBuffer.h:15
TArray
Definition
Array.h:670
TQueue
Definition
Queue.h:48
TStringView< TCHAR >
EAutomationAnalyticParam::ErrorCount
@ ErrorCount
Definition
AutomationAnalyticParams.h:41
FFrameEndSync::EFlushMode::Threads
@ Threads
TextNamespaceUtil::ETextEditAction::Key
@ Key
UE
Definition
AdvancedWidgetsModule.cpp:13
Engine
Source
Runtime
Experimental
IoStore
OnDemand
Private
Tool
UploadQueue.h
Generated by
1.9.8