Files
UnrealEngineUWP/Engine/Source/Runtime/Messaging/Private/Bus/MessageContext.cpp
ryan durand 0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00

145 lines
2.3 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "Bus/MessageContext.h"
/* FMessageContext structors
*****************************************************************************/
FMessageContext::~FMessageContext()
{
if (Message != nullptr)
{
if (UScriptStruct* TypeInfoPtr = TypeInfo.Get())
{
TypeInfoPtr->DestroyStruct(Message);
}
FMemory::Free(Message);
}
}
/* IMessageContext interface
*****************************************************************************/
const TMap<FName, FString>& FMessageContext::GetAnnotations() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetAnnotations();
}
return Annotations;
}
TSharedPtr<IMessageAttachment, ESPMode::ThreadSafe> FMessageContext::GetAttachment() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetAttachment();
}
return Attachment;
}
const FDateTime& FMessageContext::GetExpiration() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetExpiration();
}
return Expiration;
}
const void* FMessageContext::GetMessage() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetMessage();
}
return Message;
}
const TWeakObjectPtr<UScriptStruct>& FMessageContext::GetMessageTypeInfo() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetMessageTypeInfo();
}
return TypeInfo;
}
TSharedPtr<IMessageContext, ESPMode::ThreadSafe> FMessageContext::GetOriginalContext() const
{
return OriginalContext;
}
const TArray<FMessageAddress>& FMessageContext::GetRecipients() const
{
return Recipients;
}
EMessageScope FMessageContext::GetScope() const
{
return Scope;
}
EMessageFlags FMessageContext::GetFlags() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetFlags();
}
return Flags;
}
const FMessageAddress& FMessageContext::GetSender() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetSender();
}
return Sender;
}
const FMessageAddress& FMessageContext::GetForwarder() const
{
return Sender;
}
ENamedThreads::Type FMessageContext::GetSenderThread() const
{
return SenderThread;
}
const FDateTime& FMessageContext::GetTimeForwarded() const
{
return TimeSent;
}
const FDateTime& FMessageContext::GetTimeSent() const
{
if (OriginalContext.IsValid())
{
return OriginalContext->GetTimeSent();
}
return TimeSent;
}