UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TypedElementQueryContext.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include <type_traits>
8
10{
11 struct IContextContract;
12
13 template<typename T>
14 concept ContextCapability = std::is_base_of_v<IContextCapability, T> && !std::is_same_v<IContextCapability, T>;
15
16 template<ContextCapability... Capabilities>
17 struct TCapabilityStore : Capabilities...
18 {
19 static constexpr bool bIsSingle = (EnumHasAnyFlags(Capabilities::Flags, EContextCapabilityFlags::SupportsSingle) && ...);
20 static constexpr bool bIsBatch = (EnumHasAnyFlags(Capabilities::Flags, EContextCapabilityFlags::SupportsBatch) && ...);
21 };
22
31 struct TQueryContext final : Private::TForwarder<CapabilityTypes...>
32 {
34
36 "One or more capabilities that only support single or batch processing were mixed.");
37
38 TQueryContext() = default;
40 };
41
42 //
43 // Implementations.
44 //
45
51} // namespace UE::Editor::DataStorage::Queries
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
constexpr bool EnumHasAnyFlags(Enum Flags, Enum Contains)
Definition EnumClassFlags.h:35
Definition TypedElementQueryContext.h:14
Definition OverriddenPropertySet.cpp:45
Definition Conditions.cpp:11
Definition TypedElementQueryContract.h:113
Definition TypedElementQueryCapabilityForwarder.h:25
Definition TypedElementQueryContext.h:18
static constexpr bool bIsSingle
Definition TypedElementQueryContext.h:19
static constexpr bool bIsBatch
Definition TypedElementQueryContext.h:20
Definition TypedElementQueryContext.h:32