Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
GenericPlatformOutputDevices.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#
pragma
once
4
5
#
include
"Containers/Array.h"
6
#
include
"Containers/UnrealString.h"
7
#
include
"CoreTypes.h"
8
#
include
"GenericPlatform/GenericPlatform.h"
9
#
include
"HAL/CriticalSection.h"
10
#
include
"Templates/UniquePtr.h"
11
12
class
FFeedbackContext
;
13
class
FOutputDevice
;
14
class
FOutputDeviceConsole
;
15
class
FOutputDeviceError
;
16
17
/**
18
* Generic implementation for most platforms
19
*/
20
struct
FGenericPlatformOutputDevices
21
{
22
/** Add output devices which can vary depending on platform, configuration, command line parameters. */
23
static
void
SetupOutputDevices
();
24
25
/**
26
* Returns the absolute log filename generated from the project properties and/or command line parameters.
27
* The returned value may change during the execution, may not exist yet or may be locked by another process.
28
* It depends if the function is called before the log file was successfully opened or after. The log file is
29
* open lazily.
30
*/
31
static
FString
GetAbsoluteLogFilename
();
32
static
FOutputDevice
*
GetLog
();
33
static
void
GetPerChannelFileOverrides
(TArray<FOutputDevice*>& OutputDevices);
34
static
FOutputDevice
*
GetEventLog
()
35
{
36
return
nullptr
;
// normally only used for dedicated servers
37
}
38
39
static
FOutputDeviceError
*
GetError
();
40
static
FFeedbackContext
*
GetFeedbackContext
();
41
42
protected
:
43
static
void
ResetCachedAbsoluteFilename
();
44
45
private
:
46
static
constexpr
SIZE_T
AbsoluteFileNameMaxLength
= 1024;
47
static
TCHAR
CachedAbsoluteFilename
[
AbsoluteFileNameMaxLength
];
48
49
static
void
OnLogFileOpened
(
const
TCHAR* Pathname);
50
static
FCriticalSection
LogFilenameLock
;
51
};
FCriticalSection
FWindowsCriticalSection FCriticalSection
Definition
WindowsCriticalSection.h:173
FFeedbackContext
Definition
FeedbackContext.h:28
FOutputDeviceConsole
Definition
OutputDeviceConsole.h:14
FOutputDeviceError
Definition
OutputDeviceError.h:10
FOutputDevice
Definition
OutputDevice.h:130
FString
Definition
UnrealString.h:59
FGenericPlatformOutputDevices
Definition
GenericPlatformOutputDevices.h:21
FGenericPlatformOutputDevices::GetError
static FOutputDeviceError * GetError()
FGenericPlatformOutputDevices::CachedAbsoluteFilename
static TCHAR CachedAbsoluteFilename[AbsoluteFileNameMaxLength]
Definition
GenericPlatformOutputDevices.h:47
FGenericPlatformOutputDevices::GetAbsoluteLogFilename
static FString GetAbsoluteLogFilename()
FGenericPlatformOutputDevices::GetEventLog
static FOutputDevice * GetEventLog()
Definition
GenericPlatformOutputDevices.h:34
FGenericPlatformOutputDevices::AbsoluteFileNameMaxLength
static constexpr SIZE_T AbsoluteFileNameMaxLength
Definition
GenericPlatformOutputDevices.h:46
FGenericPlatformOutputDevices::GetLog
static FOutputDevice * GetLog()
FGenericPlatformOutputDevices::ResetCachedAbsoluteFilename
static void ResetCachedAbsoluteFilename()
FGenericPlatformOutputDevices::OnLogFileOpened
static void OnLogFileOpened(const TCHAR *Pathname)
FGenericPlatformOutputDevices::GetFeedbackContext
static FFeedbackContext * GetFeedbackContext()
FGenericPlatformOutputDevices::GetPerChannelFileOverrides
static void GetPerChannelFileOverrides(TArray< FOutputDevice * > &OutputDevices)
FGenericPlatformOutputDevices::SetupOutputDevices
static void SetupOutputDevices()
FGenericPlatformOutputDevices::LogFilenameLock
static FCriticalSection LogFilenameLock
Definition
GenericPlatformOutputDevices.h:50
Downloads
ArkServerAPI_NEW
ASA
AsaApi
AsaApi
Core
Public
API
UE
GenericPlatform
GenericPlatformOutputDevices.h
Generated by
1.10.0