Navigation
Unreal Engine C++ API Reference > Runtime > MovieScene > Evaluation
Inheritance Hierarchy
- FMovieSceneEvaluationTree
- TMovieSceneEvaluationTree
References
Module | MovieScene |
Header | /Engine/Source/Runtime/MovieScene/Public/Evaluation/MovieSceneEvaluationTree.h |
Include | #include "Evaluation/MovieSceneEvaluationTree.h" |
Syntax
struct FMovieSceneEvaluationTree
Remarks
A tree structure used to efficiently reference overlapping time ranges hierarchically. Each node represents a unique combination of 'entities' overlapping for a given range. Example structure (dependent on order of addition): Time -inf 10 20 25 30 inf [============= 0 ===========] [============= 1 ==================] [========================== 2 ==================================] [================== 3 ==========================] [================== 4 ==========================] [===== 5 ======]
Where each time range is added in order, this is represented as: [======== 3 =======][========== 0,2,3 ==========][============= 1,2 ================][============ 4 ===========] | \ [===== 5 ====] [======== 4 ========]
Unique Ranges [ 3 | 0,2,3 | 0,2,3,5 | 0,2,3 | 1,2 | 1,2,4 | 4 ]
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
TEvaluationTreeEntryContainer< FMovieSceneEvaluationTreeNode > | ChildNodes | Segmented array of all child nodes within this tree (in no particular order) |
![]() |
FMovieSceneEvaluationTreeNode | RootNode | This tree's root node |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
|||
![]() |
FMovieSceneEvaluationTree
(
const FMovieSceneEvaluationTree& RHS |
||
![]() |
Move construction must ensure that the root node is correctly restored to its default to ensure that invariant |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | AddTimeRange
(
TRange< FFrameNumber > InTimeRange |
Insert the specified time range into this tree |
![]() |
void | AddTimeRange
(
TRange< FFrameNumber > InTimeRange, |
Insert the specified time range into this tree |
![]() |
TArrayView< FMovieSceneEvaluationTreeNode > | GetChildren
(
const FMovieSceneEvaluationTreeNode& InNode |
Get the children associated with the specified node |
![]() ![]() |
TArrayView< const FMovieSceneEvaluationTreeNode > | GetChildren
(
const FMovieSceneEvaluationTreeNode& InNode |
Get the children associated with the specified node |
![]() ![]() |
const FMovieSceneEvaluationTreeNode & | GetNode
(
FEvaluationTreeEntryHandle ChildrenID, |
Const access to a node from its parent's ChildrenID and this node's index. |
![]() |
FMovieSceneEvaluationTreeNode & | GetNode
(
FEvaluationTreeEntryHandle ChildrenID, |
Non-const access to a node from its parent's ChildrenID and this node's index. |
![]() ![]() |
const FMovieSceneEvaluationTreeNode & | GetNode
(
FMovieSceneEvaluationTreeNodeHandle Handle |
Const access to a node from its handle. Handle must be valid. |
![]() |
FMovieSceneEvaluationTreeNode & | GetNode
(
FMovieSceneEvaluationTreeNodeHandle Handle |
Non-const access to a node from its handle. Handle must be valid. |
![]() ![]() |
const FMovieSceneEvaluationTreeNode & | GetRootNode () |
Access this tree's root node (infinite range) |
![]() |
void | InsertNewChild
(
TRange< FFrameNumber > InEffectiveRange, |
Helper function that creates a new child for the specified parent node |
![]() ![]() |
bool | IsValid
(
FMovieSceneEvaluationTreeNodeHandle Handle |
Check whether the specified handle corresponds to a node within this tree |
![]() ![]() |
FMovieSceneEvaluationTreeRangeIterator | IterateFromLowerBound
(
TRangeBound< FFrameNumber > InStartingLowerBound |
Start iterating this tree from the specified lower boundary |
![]() ![]() |
FMovieSceneEvaluationTreeRangeIterator | IterateFromTime
(
FFrameNumber Time |
Start iterating this tree from the specified time |
![]() |
void | Reset () |
Operators
Type | Name | Description | |
---|---|---|---|
![]() |
FMovieSceneEvaluationTree & | operator=
(
const FMovieSceneEvaluationTree& RHS |
|
![]() |
FMovieSceneEvaluationTree & | operator=
(
FMovieSceneEvaluationTree&& RHS |
Move assignment must ensure that the root node is correctly restored to its default to ensure that invariant |