15#define GPU_MESSAGE_SCOPE(GraphBuilder) GPUMessage::FScope GPUMessageScope_(GraphBuilder);
33 static bool bRecursionCheck;
52 MessageId =
Other.MessageId;
82 template <
typename DataType>
83 DataType
Read(
const DataType& DefaultValue = {})
85 if (
ensure(ReadOffset < PayloadSize))
87 return PayloadData[ReadOffset++];
96 Payload.MidInline(ReadOffset,
Count);
97 ReadOffset += Payload.Num();
111 const uint32* PayloadData;
137template <
typename LambdaType>
163template <
typename LambdaType>
#define ensure( InExpression)
Definition AssertionMacros.h:464
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define SHADER_PARAMETER_RDG_BUFFER_UAV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1812
#define BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1482
#define END_SHADER_PARAMETER_STRUCT()
Definition ShaderParameterMacros.h:1485
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition RenderGraphResources.h:1452
Definition RenderGraphBuilder.h:49
Definition GPUMessaging.h:120
virtual void Execute(FReader Message)=0
virtual ~FHandler()=default
const TCHAR * GetName() const
Definition GPUMessaging.h:130
FHandler(const TCHAR *InName)
Definition GPUMessaging.h:122
Definition GPUMessaging.h:78
uint32 GetPayloadSize() const
Definition GPUMessaging.h:101
TConstArrayView< uint32 > ReadCount(int32 Count)
Definition GPUMessaging.h:93
DataType Read(const DataType &DefaultValue={})
Definition GPUMessaging.h:83
const FMessageId MessageId
Definition GPUMessaging.h:80
Definition GPUMessaging.h:25
RENDERCORE_API ~FScope()
Definition GPUMessaging.cpp:288
Definition GPUMessaging.h:40
FSocket & operator=(FSocket &&Other)
Definition GPUMessaging.h:49
FSocket(FSocket &&Other)
Definition GPUMessaging.h:44
~FSocket()
Definition GPUMessaging.h:57
const FMessageId GetMessageId() const
Definition GPUMessaging.h:62
RENDERCORE_API void Reset()
Definition GPUMessaging.cpp:268
Definition GPUMessaging.h:139
virtual void Execute(FReader Message) override
Definition GPUMessaging.h:146
TLambdaHandler(const TCHAR *InDebugId, LambdaType &&InLambda)
Definition GPUMessaging.h:141
static const TRDGHandle Null
Definition RenderGraphDefinitions.h:348
Definition SharedPointer.h:692
Definition GPUMessaging.cpp:27
FParameters GetShaderParameters(FRDGBuilder &GraphBuilder)
Definition GPUMessaging.cpp:299
FSocket RegisterHandler(const TSharedPtr< FHandler > &Handler)
Definition GPUMessaging.cpp:294
TRDGHandle< FSocket, uint32 > FMessageId
Definition GPUMessaging.h:36