UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CommonTypes.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6
7#include "CommonTypes.generated.h"
8
12USTRUCT()
17
21USTRUCT()
26
27namespace UE
28{
29 // Work around missing header/implementations on some platforms
30 namespace detail
31 {
32 template<typename T, typename U>
33 concept SameHelper = std::is_same_v<T, U>;
34 }
35 template<typename T, typename U>
37
38 template<typename From, typename To>
39 concept convertible_to = std::is_convertible_v<From, To> && requires { static_cast<To>(std::declval<From>()); };
40
41 template<typename Derived, typename Base>
42 concept derived_from = std::is_base_of_v<Base, Derived> && std::is_convertible_v<const volatile Derived*, const volatile Base*>;
43
44 namespace Editor::DataStorage
45 {
48
57 {
58 public:
59 TYPEDELEMENTFRAMEWORK_API explicit FValueTag(const FName& InName);
60
62 bool operator==(const FValueTag& Other) const = default;
63 private:
65 FName Name;
66 };
67
68 template<typename T>
69 concept TValueTagType = std::is_same_v<T, FValueTag>;
70
79 // Standard callbacks.
80
82 using ColumnCreationCallbackRef = TFunctionRef<void(void* Column, const UScriptStruct& ColumnType)>;
84 using ColumnListWithDataCallbackRef = TFunctionRef<void(void* Column, const UScriptStruct& ColumnType)>;
85 using ColumnCopyOrMoveCallback = void (*)(const UScriptStruct& ColumnType, void* Destination, void* Source);
86
87 template<typename T>
88 concept THasDynamicColumnTemplateSpecifier = std::is_empty_v<typename T::EditorDataStorage_DynamicColumnTemplate>;
89
90 template<typename T>
92
93 // Template concepts to enforce type correctness.
94 template<typename T>
96
97 template<typename T>
99
100 template<typename T>
102
103 template<typename T>
104 concept TEnumType = std::is_enum_v<T>;
105 } // namespace Editor::DataStorage
106} // namespace UE
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition NameTypes.h:617
Definition AssetRegistryState.h:50
Definition CommonTypes.h:57
bool operator==(const FValueTag &Other) const =default
TYPEDELEMENTFRAMEWORK_API const FName & GetName() const
Definition CommonTypes.cpp:11
TYPEDELEMENTFRAMEWORK_API friend uint32 GetTypeHash(const FValueTag &InName)
Definition CommonTypes.cpp:20
Definition Class.h:1720
Definition CommonTypes.h:101
Definition CommonTypes.h:95
Definition CommonTypes.h:104
Definition CommonTypes.h:98
Definition CommonTypes.h:69
Definition CommonTypes.h:39
Definition CommonTypes.h:42
Definition CommonTypes.h:33
Definition CommonTypes.h:36
uint64 RowHandle
Definition Handles.h:15
void(*)(const UScriptStruct &ColumnType, void *Destination, void *Source) ColumnCopyOrMoveCallback
Definition CommonTypes.h:85
Definition AdvancedWidgetsModule.cpp:13
Definition CommonTypes.h:14
Definition CommonTypes.h:23
TYPEDELEMENTFRAMEWORK_API friend uint32 GetTypeHash(const FDynamicColumnDescription &Descriptor)
Definition CommonTypes.cpp:25
const UScriptStruct * TemplateType
Definition CommonTypes.h:73
bool operator==(const FDynamicColumnDescription &) const =default
FName Identifier
Definition CommonTypes.h:74