UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FOutputDevice Class Referenceabstract

#include <OutputDevice.h>

+ Inheritance diagram for FOutputDevice:

Public Member Functions

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)
 
virtual void Flush ()
 
virtual void TearDown ()
 
void SetSuppressEventTag (bool bInSuppressEventTag)
 
UE_FORCEINLINE_HINT bool GetSuppressEventTag () const
 
void SetAutoEmitLineTerminator (bool bInAutoEmitLineTerminator)
 
UE_FORCEINLINE_HINT bool GetAutoEmitLineTerminator () const
 
virtual void Dump (class FArchive &Ar)
 
virtual bool IsMemoryOnly () const
 
virtual bool CanBeUsedOnAnyThread () const
 
virtual bool CanBeUsedOnMultipleThreads () const
 
virtual bool CanBeUsedOnPanicThread () 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)
 

Protected Attributes

bool bSuppressEventTag
 
bool bAutoEmitLineTerminator
 

Constructor & Destructor Documentation

◆ FOutputDevice() [1/3]

FOutputDevice::FOutputDevice ( )

◆ FOutputDevice() [2/3]

FOutputDevice::FOutputDevice ( FOutputDevice &&  )
default

◆ FOutputDevice() [3/3]

FOutputDevice::FOutputDevice ( const FOutputDevice )
default

◆ ~FOutputDevice()

FOutputDevice::~FOutputDevice ( )
virtualdefault

Member Function Documentation

◆ CanBeUsedOnAnyThread()

virtual bool FOutputDevice::CanBeUsedOnAnyThread ( ) const
inlinevirtual

◆ CanBeUsedOnMultipleThreads()

virtual bool FOutputDevice::CanBeUsedOnMultipleThreads ( ) const
inlinevirtual
Returns
whether this output device can be used from multiple threads simultaneously without any locking

Reimplemented in FOutputDeviceDebug.

◆ CanBeUsedOnPanicThread()

virtual bool FOutputDevice::CanBeUsedOnPanicThread ( ) const
inlinevirtual
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 in FOutputDeviceStdOutput, FLinuxConsoleOutputDevice, FWindowsConsoleOutputDevice, FOutputDeviceDebug, FOutputDeviceError, FOutputDeviceFile, and FOutputDeviceMemory.

◆ CategorizedLogf()

template<typename FmtType , typename... Types>
void FOutputDevice::CategorizedLogf ( const FName Category,
ELogVerbosity::Type  Verbosity,
const FmtType Fmt,
Types...  Args 
)
inline

◆ Dump()

virtual void FOutputDevice::Dump ( class FArchive Ar)
inlinevirtual

Dumps the contents of this output device's buffer to an archive (supported by output device that have a memory buffer)

Parameters
ArArchive to dump the buffer to

Reimplemented in FOutputDeviceMemory.

◆ Flush()

◆ GetAutoEmitLineTerminator()

UE_FORCEINLINE_HINT bool FOutputDevice::GetAutoEmitLineTerminator ( ) const
inline

◆ GetSuppressEventTag()

UE_FORCEINLINE_HINT bool FOutputDevice::GetSuppressEventTag ( ) const
inline

◆ IsMemoryOnly()

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

Reimplemented in FOutputDeviceMemory.

◆ Log() [1/7]

CORE_API void FOutputDevice::Log ( const FName Category,
ELogVerbosity::Type  Verbosity,
const FString &  S 
)

◆ Log() [2/7]

CORE_API void FOutputDevice::Log ( const FName Category,
ELogVerbosity::Type  Verbosity,
const TCHAR Str 
)

◆ Log() [3/7]

void FOutputDevice::Log ( const FString &  S)

◆ Log() [4/7]

void FOutputDevice::Log ( const FText S)

◆ Log() [5/7]

void FOutputDevice::Log ( const TCHAR S)

◆ Log() [6/7]

void FOutputDevice::Log ( ELogVerbosity::Type  Verbosity,
const FString &  S 
)

◆ Log() [7/7]

void FOutputDevice::Log ( ELogVerbosity::Type  Verbosity,
const TCHAR S 
)

◆ Logf() [1/3]

template<typename FmtType >
void FOutputDevice::Logf ( const FmtType Fmt)
inline

◆ Logf() [2/3]

template<typename FmtType , typename... Types>
void FOutputDevice::Logf ( const FmtType Fmt,
Types...  Args 
)
inline

◆ Logf() [3/3]

template<typename FmtType , typename... Types>
void FOutputDevice::Logf ( ELogVerbosity::Type  Verbosity,
const FmtType Fmt,
Types...  Args 
)
inline

◆ operator=() [1/2]

FOutputDevice & FOutputDevice::operator= ( const FOutputDevice )
default

◆ operator=() [2/2]

FOutputDevice & FOutputDevice::operator= ( FOutputDevice &&  )
default

◆ Serialize() [1/2]

◆ Serialize() [2/2]

virtual void FOutputDevice::Serialize ( const TCHAR V,
ELogVerbosity::Type  Verbosity,
const FName Category,
const double  Time 
)
inlinevirtual

◆ SerializeRecord()

void FOutputDevice::SerializeRecord ( const UE::FLogRecord Record)
virtual

◆ SetAutoEmitLineTerminator()

void FOutputDevice::SetAutoEmitLineTerminator ( bool  bInAutoEmitLineTerminator)
inline

◆ SetSuppressEventTag()

void FOutputDevice::SetSuppressEventTag ( bool  bInSuppressEventTag)
inline

◆ TearDown()

virtual void FOutputDevice::TearDown ( void  )
inlinevirtual

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

Reimplemented in FOutputDeviceRedirector, FOutputDeviceFile, FOutputDeviceMemory, and FWindowsEventLogOutputDevice.

Member Data Documentation

◆ bAutoEmitLineTerminator

bool FOutputDevice::bAutoEmitLineTerminator
protected

Whether to output a line-terminator after each log call...

◆ bSuppressEventTag

bool FOutputDevice::bSuppressEventTag
protected

Whether to output the 'Log: ' type front...


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