UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VVMDebugger.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#if WITH_VERSE_VM || defined(__INTELLISENSE__)
6
7
#include "
VerseVM/VVMContext.h
"
8
#include "
VerseVM/VVMLocation.h
"
9
#include "
VerseVM/VVMUniqueString.h
"
10
#include "
VerseVM/VVMValue.h
"
11
12
namespace
Verse
13
{
14
struct
FLocation
;
15
struct
FOp;
16
struct
VFrame
;
17
struct
VUniqueString
;
18
19
struct
FDebugger
20
{
21
virtual
~FDebugger
() =
default
;
22
virtual
void
Notify(
FRunningContext
,
const
FOp&,
VFrame
&,
VTask
&) = 0;
23
virtual
void
AddLocation
(FAllocationContext,
VUniqueString
& FilePath,
const
FLocation
&) = 0;
24
virtual
void
AddTask(
FAccessContext
,
VTask
&) = 0;
25
};
26
27
COREUOBJECT_API
FDebugger
*
GetDebugger
();
28
29
COREUOBJECT_API
void
SetDebugger
(
FDebugger
*);
30
31
namespace
Debugger
32
{
33
using
FRegisters
=
TArray<TTuple<TWriteBarrier<VUniqueString>
, VValue>>;
34
35
struct
FFrame
36
{
37
explicit
FFrame
(
FAccessContext
Context
,
VUniqueString
&
Name
)
38
:
Name
{
Context
, &
Name
}
39
{
40
}
41
42
explicit
FFrame
(
FAccessContext
Context
,
VUniqueString
&
Name
,
VUniqueString
& FilePath,
FRegisters
Registers
)
43
:
Name
{
Context
, &
Name
}
44
, FilePath{
Context
, &FilePath}
45
,
Registers
{::
MoveTemp
(
Registers
)}
46
{
47
}
48
49
template
<
typename
TVisitor>
50
friend
void
Visit
(
TVisitor
& Visitor,
FFrame
&
Value
)
51
{
52
Visitor
.Visit(
Value
.Name,
TEXT
(
"Name"
));
53
Visitor
.Visit(
Value
.FilePath,
TEXT
(
"FilePath"
));
54
Visitor
.Visit(
Value
.Registers,
TEXT
(
"Registers"
));
55
}
56
57
TWriteBarrier<VUniqueString>
Name
;
58
TWriteBarrier<VUniqueString>
FilePath;
59
FRegisters
Registers
;
60
};
61
62
COREUOBJECT_API
void
ForEachStackFrame
(
63
FRunningContext
,
64
const
FOp&,
65
VFrame
&,
66
VTask
&,
67
const
FNativeFrame
*,
68
TFunctionRef
<
void
(
const
FLocation
*,
FFrame
)>);
69
}
// namespace Debugger
70
}
// namespace Verse
71
72
#endif
TEXT
#define TEXT(x)
Definition
Platform.h:1272
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
EColorPickerChannels::Value
@ Value
Visit
decltype(auto) Visit(Func &&Callable, Variants &&... Args)
Definition
TVariant.h:271
MoveTemp
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition
UnrealTemplate.h:520
VVMContext.h
VVMLocation.h
VVMUniqueString.h
VVMValue.h
EVariantTypes::Name
@ Name
EVulkanSyncPointType::Context
@ Context
TArray
Definition
Array.h:670
TFunctionRef
Definition
AssetRegistryState.h:50
EXmppChatMemberRole::Visitor
@ Visitor
Definition
XmppMultiUserChat.h:94
Verse
Definition
Archive.h:36
FFrame
Definition
Stack.h:114
Engine
Source
Runtime
CoreUObject
Public
VerseVM
VVMDebugger.h
Generated by
1.9.8