UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FMessageContext Class Reference

#include <MessageContext.h>

+ Inheritance diagram for FMessageContext:

Public Member Functions

 FMessageContext ()
 
 FMessageContext (void *InMessage, UScriptStruct *InTypeInfo, const TMap< FName, FString > &InAnnotations, const TSharedPtr< IMessageAttachment, ESPMode::ThreadSafe > &InAttachment, const FMessageAddress &InSender, const TArray< FMessageAddress > &InRecipients, EMessageScope InScope, EMessageFlags InFlags, const FDateTime &InTimeSent, const FDateTime &InExpiration, ENamedThreads::Type InSenderThread)
 
 FMessageContext (const TSharedRef< IMessageContext, ESPMode::ThreadSafe > &InContext, const FMessageAddress &InForwarder, const TArray< FMessageAddress > &NewRecipients, EMessageScope NewScope, const FDateTime &InTimeForwarded, ENamedThreads::Type InForwarderThread)
 
virtual ~FMessageContext () override
 
virtual const TMap< FName, FString > & GetAnnotations () const override
 
virtual TSharedPtr< IMessageAttachment, ESPMode::ThreadSafeGetAttachment () const override
 
virtual const FDateTimeGetExpiration () const override
 
virtual const voidGetMessage () const override
 
virtual const TWeakObjectPtr< UScriptStruct > & GetMessageTypeInfo () const override
 
virtual TSharedPtr< IMessageContext, ESPMode::ThreadSafeGetOriginalContext () const override
 
virtual const TArray< FMessageAddress > & GetRecipients () const override
 
virtual EMessageScope GetScope () const override
 
virtual EMessageFlags GetFlags () const override
 
virtual const FMessageAddressGetSender () const override
 
virtual const FMessageAddressGetForwarder () const override
 
virtual ENamedThreads::Type GetSenderThread () const override
 
virtual const FDateTimeGetTimeForwarded () const override
 
virtual const FDateTimeGetTimeSent () const override
 
- Public Member Functions inherited from IMessageContext
FName GetMessageType () const
 
FTopLevelAssetPath GetMessageTypePathName () const
 
bool IsForwarded () const
 
bool IsValid () const
 
virtual ~IMessageContext ()
 

Detailed Description

Implements a message context for messages sent through the message bus.

Message contexts contain a message and additional data about that message, such as when the message was sent, who sent it and where it is being sent to.

Constructor & Destructor Documentation

◆ FMessageContext() [1/3]

FMessageContext::FMessageContext ( )
inline

Default constructor.

◆ FMessageContext() [2/3]

FMessageContext::FMessageContext ( void InMessage,
UScriptStruct InTypeInfo,
const TMap< FName, FString > &  InAnnotations,
const TSharedPtr< IMessageAttachment, ESPMode::ThreadSafe > &  InAttachment,
const FMessageAddress InSender,
const TArray< FMessageAddress > &  InRecipients,
EMessageScope  InScope,
EMessageFlags  InFlags,
const FDateTime InTimeSent,
const FDateTime InExpiration,
ENamedThreads::Type  InSenderThread 
)
inline

Creates and initializes a new message context.

This constructor overload is used for published and sent messages.

Parameters
InMessageThe message payload.
InTypeInfoThe message's type information.
InAnnotationThe message header to attach to the message.
InAttachmentThe binary data to attach to the message.
InSenderThe sender's address.
InRecipientsThe message recipients.
InScopeThe message scope.
InFlagsThe message flags.
InTimeSentThe time at which the message was sent.
InExpirationThe message's expiration time.
InSenderThreadThe name of the thread from which the message was sent.

◆ FMessageContext() [3/3]

FMessageContext::FMessageContext ( const TSharedRef< IMessageContext, ESPMode::ThreadSafe > &  InContext,
const FMessageAddress InForwarder,
const TArray< FMessageAddress > &  NewRecipients,
EMessageScope  NewScope,
const FDateTime InTimeForwarded,
ENamedThreads::Type  InForwarderThread 
)
inline

Creates and initializes a new message context from an existing context.

This constructor overload is used for forwarded messages.

Parameters
InContextThe existing context.
InForwarderThe forwarder's address.
NewRecipientsThe recipients of the new context.
NewScopeThe message's new scope.
InTimeForwardedThe time at which the message was forwarded.
InForwarderThreadThe name of the thread from which the message was forwarded.

◆ ~FMessageContext()

FMessageContext::~FMessageContext ( )
overridevirtual

Destructor.

Member Function Documentation

◆ GetAnnotations()

const TMap< FName, FString > & FMessageContext::GetAnnotations ( ) const
overridevirtual

Gets the optional message annotations.

Returns
Message header collection.

Implements IMessageContext.

◆ GetAttachment()

TSharedPtr< IMessageAttachment, ESPMode::ThreadSafe > FMessageContext::GetAttachment ( ) const
overridevirtual

Gets the message attachment, if present.

Returns
A pointer to the message attachment, or nullptr if no attachment is present.

Implements IMessageContext.

◆ GetExpiration()

const FDateTime & FMessageContext::GetExpiration ( ) const
overridevirtual

Gets the date and time at which the message expires.

Returns
Expiration time.

Implements IMessageContext.

◆ GetFlags()

EMessageFlags FMessageContext::GetFlags ( ) const
overridevirtual

Gets the scope to which the message was sent.

Returns
The message scope.

Implements IMessageContext.

◆ GetForwarder()

const FMessageAddress & FMessageContext::GetForwarder ( ) const
overridevirtual

Gets the forwarder's address.

Note
Identical to GetSender if the message wasn't forwarded.
Returns
Forwarder address.
See also
GetSender, GetRecipients, GetSenderThread

Implements IMessageContext.

◆ GetMessage()

const void * FMessageContext::GetMessage ( ) const
overridevirtual

Gets the message data.

Returns
A pointer to the message data.
See also
GetAttachment, GetMessageType, GetMessageTypeInfo

Implements IMessageContext.

◆ GetMessageTypeInfo()

const TWeakObjectPtr< UScriptStruct > & FMessageContext::GetMessageTypeInfo ( ) const
overridevirtual

Gets the message's type information.

Returns
Message type information.
See also
GetMessage, GetMessageType

Implements IMessageContext.

◆ GetOriginalContext()

TSharedPtr< IMessageContext, ESPMode::ThreadSafe > FMessageContext::GetOriginalContext ( ) const
overridevirtual

Returns the original message context in case the message was forwarded.

Returns
The original message context, or nullptr if the message wasn't forwarded.

Implements IMessageContext.

◆ GetRecipients()

const TArray< FMessageAddress > & FMessageContext::GetRecipients ( ) const
overridevirtual

Gets the list of message recipients.

Returns
Message recipients.
See also
GetSender

Implements IMessageContext.

◆ GetScope()

EMessageScope FMessageContext::GetScope ( ) const
overridevirtual

Gets the scope to which the message was sent.

Returns
The message scope.

Implements IMessageContext.

◆ GetSender()

const FMessageAddress & FMessageContext::GetSender ( ) const
overridevirtual

Gets the sender's address.

Returns
Sender address.
See also
GetRecipients, GetSenderThread

Implements IMessageContext.

◆ GetSenderThread()

ENamedThreads::Type FMessageContext::GetSenderThread ( ) const
overridevirtual

Gets the name of the thread from which the message was sent.

Returns
Sender threat name.
See also
GetSender

Implements IMessageContext.

◆ GetTimeForwarded()

const FDateTime & FMessageContext::GetTimeForwarded ( ) const
overridevirtual

Gets the time at which the message was forwarded.

Returns
Time forwarded.
See also
GetTimeSent, IsForwarded

Implements IMessageContext.

◆ GetTimeSent()

const FDateTime & FMessageContext::GetTimeSent ( ) const
overridevirtual

Gets the time at which the message was sent.

Returns
Time sent.
See also
GetTimeForwarded

Implements IMessageContext.


The documentation for this class was generated from the following files: