UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ApplePlatformMisc.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3/*=============================================================================================
4 ApplePlatformMisc.h: Apple platform misc functions
5==============================================================================================*/
6
7#pragma once
9#if PLATFORM_MAC
11#else
13#endif
14
15#ifndef APPLE_PROFILING_ENABLED
16#define APPLE_PROFILING_ENABLED (UE_BUILD_DEBUG | UE_BUILD_DEVELOPMENT)
17#endif
18
19#ifndef WITH_IOS_SIMULATOR
20#define WITH_IOS_SIMULATOR 0
21#endif
22
23#define UE_DEBUG_BREAK_IMPL() PLATFORM_BREAK()
24
25#ifdef __OBJC__
26#if !__has_feature(objc_arc)
27
29{
30public:
31
33 {
34 Pool = [[NSAutoreleasePool alloc] init];
35 }
36
38 {
39 [Pool release];
40 }
41
42private:
43
45};
46
47#define SCOPED_AUTORELEASE_POOL const FScopeAutoreleasePool PREPROCESSOR_JOIN(Pool,__LINE__);
48
49#endif // !__has_feature(objc_arc)
50#endif // __OBJC__
51
56{
57 static void PlatformInit();
58
59 UE_DEPRECATED(4.21, "void FPlatformMisc::GetEnvironmentVariable(Name, Result, Length) is deprecated. Use FString FPlatformMisc::GetEnvironmentVariable(Name) instead.")
60 static void GetEnvironmentVariable(const TCHAR* VariableName, TCHAR* Result, int32 ResultLength);
61
62 static FString GetEnvironmentVariable(const TCHAR* VariableName);
63
64#if !UE_BUILD_SHIPPING
65 static bool IsDebuggerPresent();
66#endif
67
72
73 static void LocalPrint(const TCHAR* Message);
74 static const TCHAR* GetSystemErrorMessage(TCHAR* OutBuffer, int32 BufferCount, int32 Error);
75 static uint32 GetLastError();
76 static int32 NumberOfCores();
77
80 {
81 // ApplePlatformFile currently uses thread-local lists that can close filehandles arbitrarily and reopen them at need, so filehandles are not transferrable between threads
82 return false;
83 }
84
85 static void CreateGuid(struct FGuid& Result);
87 static FString GetDefaultLocale();
88 static FString GetDefaultLanguage();
89 static FString GetLocalCurrencyCode();
90 static FString GetLocalCurrencySymbol();
91
92 static bool IsOSAtLeastVersion(const uint32 MacOSVersion[3], const uint32 IOSVersion[3], const uint32 TVOSVersion[3]);
93
94#if APPLE_PROFILING_ENABLED
96 static void BeginNamedEvent(const struct FColor& Color, const TCHAR* Text);
97 static void BeginNamedEvent(const struct FColor& Color, const ANSICHAR* Text);
98 static void EndNamedEvent();
99#endif
100
102 static void* CreateAutoreleasePool();
103 static void ReleaseAutoreleasePool(void *Pool);
104
105 static CORE_API void SetEnvironmentVar(const TCHAR* InVariableName, const TCHAR* Value);
106};
FPlatformTypes::TCHAR TCHAR
Either ANSICHAR or WIDECHAR, depending on whether the platform supports wide characters or the requir...
Definition Platform.h:1135
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
#define UE_FORCEINLINE_HINT
Definition Platform.h:723
FPlatformTypes::ANSICHAR ANSICHAR
An ANSI character. Normally a signed type.
Definition Platform.h:1131
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Array.h:670
Definition ApplePlatformMisc.h:56
static void PlatformInit()
static bool SupportsMultithreadedFileHandles()
Definition ApplePlatformMisc.h:79
UE_DEPRECATED(4.21, "void FPlatformMisc::GetEnvironmentVariable(Name, Result, Length) is deprecated. Use FString FPlatformMisc::GetEnvironmentVariable(Name) instead.") static void GetEnvironmentVariable(const TCHAR *VariableName
static UE_FORCEINLINE_HINT void MemoryBarrier()
Definition ApplePlatformMisc.h:68
Definition Color.h:486
Definition GenericPlatformMisc.h:561
static CORE_API TArray< uint8 > GetSystemFontBytes()
Definition GenericPlatformMisc.cpp:1756
static CORE_API FString GetDefaultLanguage()
Definition GenericPlatformMisc.cpp:1773
static FORCEINLINE bool IsDebuggerPresent()
Definition GenericPlatformMisc.h:699
static CORE_API FString GetLocalCurrencyCode()
Definition GenericPlatformMisc.cpp:1958
static FORCEINLINE void BeginNamedEvent(const struct FColor &Color, const TCHAR *Text)
Definition GenericPlatformMisc.h:920
static CORE_API int32 NumberOfCores()
Definition GenericPlatformMisc.cpp:1641
static CORE_API const TCHAR * GetSystemErrorMessage(TCHAR *OutBuffer, int32 BufferCount, int32 Error)
Definition GenericPlatformMisc.cpp:1016
static CORE_API FString GetDefaultLocale()
Definition GenericPlatformMisc.cpp:1778
static CORE_API void SetEnvironmentVar(const TCHAR *VariableName, const TCHAR *Value)
Definition GenericPlatformMisc.cpp:545
static CORE_API void CreateGuid(struct FGuid &Result)
Definition GenericPlatformMisc.cpp:1025
static FORCEINLINE uint32 GetLastError()
Definition GenericPlatformMisc.h:894
static FORCEINLINE void EndNamedEvent()
Definition GenericPlatformMisc.h:926
static CORE_API FString GetLocalCurrencySymbol()
Definition GenericPlatformMisc.cpp:1964
static CORE_API void LocalPrint(const TCHAR *Str)
Definition GenericPlatformMisc.cpp:962
Definition Guid.h:109