UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Culture.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include "CoreTypes.h"
5#include "Containers/Array.h"
9
11enum class ETextPluralForm : uint8;
12enum class ETextPluralType : uint8;
13
14#if UE_ENABLE_ICU
17#else
20#endif
21
23{
25 UE,
27 Verse,
28};
29
31{
32#if UE_ENABLE_ICU
33 friend class FText;
34 friend class FTextChronoFormatter;
35 friend class FTextComparison;
36 friend class FICUBreakIteratorManager;
37#endif
38
39public:
41
43
44 CORE_API const FString& GetDisplayName() const;
45
46 CORE_API const FString& GetEnglishName() const;
47
48 CORE_API int GetKeyboardLayoutId() const;
49
50 CORE_API int GetLCID() const;
51
53
54 static CORE_API TArray<FString> GetPrioritizedParentCultureNames(const FString& LanguageCode, const FString& ScriptCode, const FString& RegionCode);
55
56 static CORE_API FString CreateCultureName(const FString& LanguageCode, const FString& ScriptCode, const FString& RegionCode);
57
58 static CORE_API FString GetCanonicalName(const FString& Name);
59
63 static CORE_API FString CultureNameToVerseIdentifier(const FString& Name);
64
69 static CORE_API FString CultureNameFromVerseIdentifier(const FString& VerseIdentifer);
70
76
81 CORE_API const FString& GetPreferredOnDiskIdentifier() const;
82
86 CORE_API const FString& GetName() const;
87
91 CORE_API const FString& GetVerseIdentifier() const;
92
93 CORE_API const FString& GetNativeName() const;
94
96
97 CORE_API const FString& GetThreeLetterISOLanguageName() const;
98
99 CORE_API const FString& GetTwoLetterISOLanguageName() const;
100
101 CORE_API const FString& GetNativeLanguage() const;
102
103 CORE_API const FString& GetRegion() const;
104
105 CORE_API const FString& GetNativeRegion() const;
106
107 CORE_API const FString& GetScript() const;
108
109 CORE_API const FString& GetVariant() const;
110
111 CORE_API bool IsRightToLeft() const;
112
114
116
118
124 CORE_API ETextPluralForm GetPluralForm(double Val, const ETextPluralType PluralType) const;
134
140
142
143private:
145
147
148 FString CachedDisplayName;
149 FString CachedEnglishName;
150 FString CachedName;
151 FString CachedVerseIdentifier;
152 FString CachedNativeName;
153 FString CachedUnrealLegacyThreeLetterISOLanguageName;
154 FString CachedThreeLetterISOLanguageName;
155 FString CachedTwoLetterISOLanguageName;
156 FString CachedNativeLanguage;
157 FString CachedRegion;
158 FString CachedNativeRegion;
159 FString CachedScript;
160 FString CachedVariant;
161 bool CachedIsRightToLeft;
162};
FPlatformTypes::int16 int16
A 16-bit signed integer.
Definition Platform.h:1123
FPlatformTypes::int8 int8
An 8-bit signed integer.
Definition Platform.h:1121
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition Platform.h:1127
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ECultureIdentifierType
Definition Culture.h:23
FLegacyCultureImplementation FCultureImplementation
Definition Culture.h:19
ETextPluralType
Definition Text.h:95
ETextPluralForm
Definition Text.h:101
float Val(const FString &Value)
Definition UnrealMath.cpp:3163
uint8_t uint8
Definition binka_ue_file_header.h:8
uint16_t uint16
Definition binka_ue_file_header.h:7
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Culture.h:31
CORE_API void RefreshCultureDisplayNames(const TArray< FString > &InPrioritizedDisplayCultureNames, const bool bFullRefresh=true)
Definition Culture.cpp:365
CORE_API const FString & GetRegion() const
Definition Culture.cpp:284
static CORE_API FString CultureNameToVerseIdentifier(const FString &Name)
Definition Culture.cpp:206
CORE_API const FString & GetVariant() const
Definition Culture.cpp:299
CORE_API const FDecimalNumberFormattingRules & GetCurrencyFormattingRules(const FString &InCurrencyCode) const
Definition Culture.cpp:319
CORE_API ETextPluralForm GetPluralForm(int16 Val, const ETextPluralType PluralType) const
CORE_API const FString & GetScript() const
Definition Culture.cpp:294
CORE_API const TArray< ETextPluralForm > & GetValidPluralForms(const ETextPluralType PluralType) const
Definition Culture.cpp:360
CORE_API const FString & GetVerseIdentifier() const
Definition Culture.cpp:254
CORE_API const FDecimalNumberFormattingRules & GetPercentFormattingRules() const
Definition Culture.cpp:314
CORE_API TArray< FString > GetPrioritizedParentCultureNames() const
Definition Culture.cpp:135
CORE_API int GetKeyboardLayoutId() const
Definition Culture.cpp:125
CORE_API ETextPluralForm GetPluralForm(uint8 Val, const ETextPluralType PluralType) const
CORE_API const FString & GetEnglishName() const
Definition Culture.cpp:120
CORE_API const FString & GetNativeRegion() const
Definition Culture.cpp:289
CORE_API int GetLCID() const
Definition Culture.cpp:130
CORE_API ~FCulture()
Definition Culture.cpp:110
CORE_API bool IsRightToLeft() const
Definition Culture.cpp:304
CORE_API ETextPluralForm GetPluralForm(uint64 Val, const ETextPluralType PluralType) const
CORE_API const FString & GetTwoLetterISOLanguageName() const
Definition Culture.cpp:274
CORE_API const FString & GetNativeName() const
Definition Culture.cpp:259
CORE_API ETextPluralForm GetPluralForm(long Val, const ETextPluralType PluralType) const
CORE_API const FString & GetUnrealLegacyThreeLetterISOLanguageName() const
Definition Culture.cpp:264
CORE_API const FDecimalNumberFormattingRules & GetDecimalNumberFormattingRules() const
Definition Culture.cpp:309
CORE_API ETextPluralForm GetPluralForm(float Val, const ETextPluralType PluralType) const
static CORE_API ECultureIdentifierType GetPreferredOnDiskIdentifierType()
Definition Culture.cpp:222
static CORE_API FString CultureNameFromVerseIdentifier(const FString &VerseIdentifer)
Definition Culture.cpp:214
CORE_API const FString & GetDisplayName() const
Definition Culture.cpp:115
CORE_API const FString & GetNativeLanguage() const
Definition Culture.cpp:279
CORE_API const FString & GetThreeLetterISOLanguageName() const
Definition Culture.cpp:269
CORE_API ETextPluralForm GetPluralForm(uint32 Val, const ETextPluralType PluralType) const
CORE_API ETextPluralForm GetPluralForm(int64 Val, const ETextPluralType PluralType) const
CORE_API const FString & GetPreferredOnDiskIdentifier() const
Definition Culture.cpp:242
CORE_API ETextPluralForm GetPluralForm(int8 Val, const ETextPluralType PluralType) const
CORE_API ETextPluralForm GetPluralForm(uint16 Val, const ETextPluralType PluralType) const
CORE_API const FString & GetName() const
Definition Culture.cpp:249
static CORE_API FString GetCanonicalName(const FString &Name)
Definition Culture.cpp:201
static CORE_API FString CreateCultureName(const FString &LanguageCode, const FString &ScriptCode, const FString &RegionCode)
Definition Culture.cpp:164
Definition LegacyCulture.h:17
Definition TextChronoFormatter.h:13
Definition TextComparison.h:26
Definition Text.h:385
Definition Array.h:670
Definition SharedPointer.h:153
Definition UniquePtr.h:107
Definition FastDecimalFormat.h:16