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

#include <OutputDeviceMemory.h>

+ Inheritance diagram for FOutputDeviceMemory:

Public Member Functions

CORE_API FOutputDeviceMemory (int32 InPreserveSize=256 *1024, int32 InBufferSize=2048 *1024, bool bInSuppressEventTag=false)
 
CORE_API ~FOutputDeviceMemory ()
 
virtual CORE_API void Dump (FArchive &Ar) override
 
virtual CORE_API void TearDown () override
 
virtual CORE_API void Flush () override
 
virtual CORE_API void Serialize (const TCHAR *Data, ELogVerbosity::Type Verbosity, const class FName &Category, const double Time) override
 
virtual CORE_API void Serialize (const TCHAR *Data, ELogVerbosity::Type Verbosity, const class FName &Category) override
 
virtual bool CanBeUsedOnAnyThread () const override
 
virtual bool CanBeUsedOnPanicThread () const override
 
virtual bool IsMemoryOnly () const override
 
- Public Member Functions inherited from FOutputDevice
CORE_API FOutputDevice ()
 
CORE_API FOutputDevice (FOutputDevice &&)
 
CORE_API FOutputDevice (const FOutputDevice &)
 
CORE_API FOutputDeviceoperator= (FOutputDevice &&)
 
CORE_API FOutputDeviceoperator= (const FOutputDevice &)
 
virtual CORE_API ~FOutputDevice ()
 
virtual void Serialize (const TCHAR *V, ELogVerbosity::Type Verbosity, const FName &Category)=0
 
virtual void Serialize (const TCHAR *V, ELogVerbosity::Type Verbosity, const FName &Category, const double Time)
 
virtual CORE_API void SerializeRecord (const UE::FLogRecord &Record)
 
void SetSuppressEventTag (bool bInSuppressEventTag)
 
UE_FORCEINLINE_HINT bool GetSuppressEventTag () const
 
void SetAutoEmitLineTerminator (bool bInAutoEmitLineTerminator)
 
UE_FORCEINLINE_HINT bool GetAutoEmitLineTerminator () const
 
virtual bool CanBeUsedOnMultipleThreads () const
 
CORE_API void Log (const TCHAR *S)
 
CORE_API void Log (ELogVerbosity::Type Verbosity, const TCHAR *S)
 
CORE_API void Log (const FName &Category, ELogVerbosity::Type Verbosity, const TCHAR *Str)
 
CORE_API void Log (const FString &S)
 
CORE_API void Log (const FText &S)
 
CORE_API void Log (ELogVerbosity::Type Verbosity, const FString &S)
 
CORE_API void Log (const FName &Category, ELogVerbosity::Type Verbosity, const FString &S)
 
template<typename FmtType >
void Logf (const FmtType &Fmt)
 
template<typename FmtType , typename... Types>
void Logf (const FmtType &Fmt, Types... Args)
 
template<typename FmtType , typename... Types>
void Logf (ELogVerbosity::Type Verbosity, const FmtType &Fmt, Types... Args)
 
template<typename FmtType , typename... Types>
void CategorizedLogf (const FName &Category, ELogVerbosity::Type Verbosity, const FmtType &Fmt, Types... Args)
 

Additional Inherited Members

- Protected Attributes inherited from FOutputDevice
bool bSuppressEventTag
 
bool bAutoEmitLineTerminator
 

Detailed Description

Memory output device. Logs only into pre-allocated memory buffer.

Constructor & Destructor Documentation

◆ FOutputDeviceMemory()

FOutputDeviceMemory::FOutputDeviceMemory ( int32  InPreserveSize = 256 * 1024,
int32  InBufferSize = 2048 * 1024,
bool  bInSuppressEventTag = false 
)

Constructor, initializing member variables.

Parameters
InPreserveSizeBytes of the rung buffer not to overwrite (startup info etc)
InBufferSizeMaximum size of the memory ring buffer

◆ ~FOutputDeviceMemory()

FOutputDeviceMemory::~FOutputDeviceMemory ( )
default

Member Function Documentation

◆ CanBeUsedOnAnyThread()

virtual bool FOutputDeviceMemory::CanBeUsedOnAnyThread ( ) const
inlineoverridevirtual
Returns
whether this output device can be used on any thread.

Reimplemented from FOutputDevice.

◆ CanBeUsedOnPanicThread()

virtual bool FOutputDeviceMemory::CanBeUsedOnPanicThread ( ) const
inlineoverridevirtual
Returns
whether this output device can be used after a panic (crash or fatal error) has been flagged.
Note
The return value is cached by AddOutputDevice because calling this during a panic may fail.

Reimplemented from FOutputDevice.

◆ Dump()

void FOutputDeviceMemory::Dump ( FArchive Ar)
overridevirtual

Dumps the contents of the buffer to an archive

Reimplemented from FOutputDevice.

◆ Flush()

void FOutputDeviceMemory::Flush ( void  )
overridevirtual

Flush the write cache so the file isn't truncated in case we crash right after calling this function.

Reimplemented from FOutputDevice.

◆ IsMemoryOnly()

virtual bool FOutputDeviceMemory::IsMemoryOnly ( ) const
inlineoverridevirtual
Returns
whether this output device is a memory-only device

Reimplemented from FOutputDevice.

◆ Serialize() [1/2]

void FOutputDeviceMemory::Serialize ( const TCHAR Data,
ELogVerbosity::Type  Verbosity,
const class FName Category 
)
overridevirtual

◆ Serialize() [2/2]

void FOutputDeviceMemory::Serialize ( const TCHAR Data,
ELogVerbosity::Type  Verbosity,
const class FName Category,
const double  Time 
)
overridevirtual

◆ TearDown()

void FOutputDeviceMemory::TearDown ( void  )
overridevirtual

Closes output device and cleans up. This can't happen in the destructor as we have to call "delete" which cannot be done for static/ global objects.

Reimplemented from FOutputDevice.


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