UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AnimDataModelNotifyCollector.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#include "
Animation/AnimData/AnimDataNotifications.h
"
6
#include "Containers/Set.h"
7
#include "Containers/Array.h"
8
9
enum class
EAnimDataModelNotifyType
:
uint8
;
10
11
namespace
UE
{
12
namespace
Anim {
13
14
#if WITH_EDITORONLY_DATA
15
18
struct
FAnimDataModelNotifyCollector
19
{
20
FAnimDataModelNotifyCollector
() :
BracketDepth
(0),
bDataModified
(
false
) {}
21
23
void
Handle
(
EAnimDataModelNotifyType
NotifyType)
24
{
25
if
(
BracketDepth
== 0)
26
{
27
Reset
();
28
bDataModified
=
false
;
29
}
30
31
NotifyTypes
.Add(NotifyType);
32
33
if
(NotifyType ==
EAnimDataModelNotifyType::BracketOpened
)
34
{
35
++
BracketDepth
;
36
}
37
else
if
(NotifyType ==
EAnimDataModelNotifyType::BracketClosed
)
38
{
39
--
BracketDepth
;
40
}
41
}
42
44
bool
Contains
(
EAnimDataModelNotifyType
NotifyType)
const
45
{
46
return
NotifyTypes
.Find(NotifyType) !=
nullptr
;
47
}
48
50
bool
Contains
(
const
TArray<EAnimDataModelNotifyType>
&
TestNotifyTypes
)
const
51
{
52
for
(
EAnimDataModelNotifyType
Notify :
TestNotifyTypes
)
53
{
54
if
(
NotifyTypes
.Find(Notify) !=
nullptr
)
55
{
56
return
true
;
57
}
58
}
59
60
return
false
;
61
}
62
64
bool
IsWithinBracket
()
const
{
return
BracketDepth
> 0; }
65
67
bool
IsNotWithinBracket
()
const
{
return
BracketDepth
== 0; }
68
69
void
MarkDataModified
() {
bDataModified
=
true
; }
70
bool
WasDataModified
() {
return
bDataModified
; }
71
protected
:
72
void
Reset
()
73
{
74
NotifyTypes
.Empty();
75
}
76
protected
:
77
TSet<EAnimDataModelNotifyType>
NotifyTypes
;
78
int32
BracketDepth
;
79
bool
bDataModified
;
80
};
81
82
#endif
// WITH_EDITORONLY_DATA
83
84
}
// namespace Anim
85
86
}
// namespace UE
AnimDataNotifications.h
EAnimDataModelNotifyType
EAnimDataModelNotifyType
Definition
AnimDataNotifications.h:20
EAnimDataModelNotifyType::BracketClosed
@ BracketClosed
EAnimDataModelNotifyType::BracketOpened
@ BracketOpened
int32
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition
Platform.h:1125
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
EPathFollowingVelocityMode::Reset
@ Reset
ESerializePropertyType::Handle
@ Handle
uint8
uint8_t uint8
Definition
binka_ue_file_header.h:8
TArray
Definition
Array.h:670
EAutomationExpectedMessageFlags::Contains
@ Contains
Definition
AutomationTest.h:160
UE
Definition
AdvancedWidgetsModule.cpp:13
false
@ false
Definition
radaudio_common.h:23
Engine
Source
Runtime
Engine
Classes
Animation
AnimData
AnimDataModelNotifyCollector.h
Generated by
1.9.8