UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
PooledSyncEvent.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "PlatformProcess.h"
6
7// An RAII wrapper around FPlatformProcess::GetSynchEventFromPool/ReturnSynchEventToPool.
9{
10 explicit FPooledSyncEvent(bool bIsManualReset = false)
11 {
13 }
15 {
16 *this = nullptr;
17 }
18
19 // Non-copyable
24
25 explicit operator bool() const
26 {
27 return !!this->Event;
28 }
29
31 {
32 return this->Event;
33 }
34
36 {
37 if (Event)
38 {
40 Event = nullptr;
41 }
42 return *this;
43 }
44
46};
FPlatformTypes::TYPE_OF_NULLPTR TYPE_OF_NULLPTR
The type of the C++ nullptr keyword.
Definition Platform.h:1157
const bool
Definition NetworkReplayStreaming.h:178
Definition Event.h:21
static CORE_API class FEvent * GetSynchEventFromPool(bool bIsManualReset=false)
Definition GenericPlatformProcess.cpp:576
static CORE_API void ReturnSynchEventToPool(FEvent *Event)
Definition GenericPlatformProcess.cpp:589
Definition PooledSyncEvent.h:9
FPooledSyncEvent & operator=(TYPE_OF_NULLPTR)
Definition PooledSyncEvent.h:35
FEvent * operator->() const
Definition PooledSyncEvent.h:30
FPooledSyncEvent(const FPooledSyncEvent &)=delete
~FPooledSyncEvent()
Definition PooledSyncEvent.h:14
FPooledSyncEvent & operator=(FPooledSyncEvent &&)=delete
FPooledSyncEvent(bool bIsManualReset=false)
Definition PooledSyncEvent.h:10
FPooledSyncEvent(FPooledSyncEvent &&)=delete
FPooledSyncEvent & operator=(const FPooledSyncEvent &)=delete
FEvent * Event
Definition PooledSyncEvent.h:45