Blender
V3.3
source
blender
depsgraph
intern
eval
deg_eval_stats.cc
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later
2
* Copyright 2017 Blender Foundation. All rights reserved. */
3
8
#include "
intern/eval/deg_eval_stats.h
"
9
10
#include "
BLI_utildefines.h
"
11
12
#include "
intern/depsgraph.h
"
13
14
#include "
intern/node/deg_node.h
"
15
#include "
intern/node/deg_node_component.h
"
16
#include "
intern/node/deg_node_id.h
"
17
#include "
intern/node/deg_node_operation.h
"
18
19
namespace
blender::deg
{
20
21
void
deg_eval_stats_aggregate
(
Depsgraph
*
graph
)
22
{
23
/* Reset current evaluation stats for ID and component nodes.
24
* Those are not filled in by the evaluation engine. */
25
for
(
Node
*
node
:
graph
->
id_nodes
) {
26
IDNode
*
id_node
= (
IDNode
*)
node
;
27
for
(
ComponentNode
*comp_node :
id_node
->
components
.values()) {
28
comp_node->
stats
.
reset_current
();
29
}
30
id_node
->
stats
.
reset_current
();
31
}
32
/* Now accumulate operation timings to components and IDs. */
33
for
(
OperationNode
*op_node :
graph
->
operations
) {
34
ComponentNode
*comp_node = op_node->
owner
;
35
IDNode
*
id_node
= comp_node->
owner
;
36
id_node
->
stats
.
current_time
+= op_node->
stats
.
current_time
;
37
comp_node->
stats
.
current_time
+= op_node->
stats
.
current_time
;
38
}
39
}
40
41
}
// namespace blender::deg
BLI_utildefines.h
node
OperationNode * node
Definition:
deg_builder_cycle.cc:38
graph
Depsgraph * graph
Definition:
deg_builder_cycle.cc:56
id_node
const IDNode * id_node
Definition:
deg_debug_stats_gnuplot.cc:36
deg_eval_stats.h
deg_node.h
deg_node_component.h
deg_node_id.h
deg_node_operation.h
depsgraph.h
blender::deg
Definition:
deg_builder.cc:40
blender::deg::deg_eval_stats_aggregate
void deg_eval_stats_aggregate(Depsgraph *graph)
Definition:
deg_eval_stats.cc:21
blender::deg::ComponentNode
Definition:
deg_node_component.h:32
blender::deg::ComponentNode::owner
IDNode * owner
Definition:
deg_node_component.h:112
blender::deg::Depsgraph
Definition:
depsgraph.h:43
blender::deg::Depsgraph::operations
OperationNodes operations
Definition:
depsgraph.h:120
blender::deg::Depsgraph::id_nodes
IDDepsNodes id_nodes
Definition:
depsgraph.h:86
blender::deg::IDNode
Definition:
deg_node_id.h:34
blender::deg::IDNode::components
Map< ComponentIDKey, ComponentNode * > components
Definition:
deg_node_id.h:80
blender::deg::Node::Stats::current_time
double current_time
Definition:
deg_node.h:163
blender::deg::Node::Stats::reset_current
void reset_current()
Definition:
deg_node.cc:270
blender::deg::Node
Definition:
deg_node.h:146
blender::deg::Node::stats
Stats stats
Definition:
deg_node.h:175
blender::deg::OperationNode
Definition:
deg_node_operation.h:225
blender::deg::OperationNode::owner
ComponentNode * owner
Definition:
deg_node_operation.h:256
Generated on Sat Jul 27 2024 14:57:55 for Blender by
doxygen
1.9.1