Blender V5.0
DEG_depsgraph_debug.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2014 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
10
11#pragma once
12
13#include <cstdio>
14#include <string>
15
16#include "BLI_string_ref.hh"
17
18struct Depsgraph;
19struct Main;
20struct Scene;
21struct ViewLayer;
22
23/* ------------------------------------------------ */
24
25/* NOTE: Those flags are same bit-mask as #G.debug_flags */
26
27void DEG_debug_flags_set(Depsgraph *depsgraph, int flags);
28int DEG_debug_flags_get(const Depsgraph *depsgraph);
29
30void DEG_debug_name_set(Depsgraph *depsgraph, const char *name);
31const char *DEG_debug_name_get(Depsgraph *depsgraph);
32
33/* ------------------------------------------------ */
34
41void DEG_stats_simple(const Depsgraph *graph,
42 size_t *r_outer,
43 size_t *r_operations,
44 size_t *r_relations);
45
46/* ************************************************ */
47/* Diagram-Based Graph Debugging */
48
49std::string DEG_debug_graph_to_dot(const Depsgraph &graph, blender::StringRef label);
50
51void DEG_debug_stats_gnuplot(const Depsgraph *graph,
52 FILE *fp,
53 const char *label,
54 const char *output_filename);
55
56/* ************************************************ */
57
59bool DEG_debug_compare(const Depsgraph *graph1, const Depsgraph *graph2);
60
62bool DEG_debug_graph_relations_validate(Depsgraph *graph,
63 Main *bmain,
64 Scene *scene,
65 ViewLayer *view_layer);
66
68bool DEG_debug_consistency_check(Depsgraph *graph);
69
79std::string DEG_stringify_recalc_flags(unsigned int flags);
void DEG_debug_flags_set(Depsgraph *depsgraph, int flags)
std::string DEG_stringify_recalc_flags(unsigned int flags)
int DEG_debug_flags_get(const Depsgraph *depsgraph)
bool DEG_debug_compare(const Depsgraph *graph1, const Depsgraph *graph2)
bool DEG_debug_consistency_check(Depsgraph *graph)
std::string DEG_debug_graph_to_dot(const Depsgraph &graph, blender::StringRef label)
bool DEG_debug_graph_relations_validate(Depsgraph *graph, Main *bmain, Scene *scene, ViewLayer *view_layer)
const char * DEG_debug_name_get(Depsgraph *depsgraph)
void DEG_debug_name_set(Depsgraph *depsgraph, const char *name)
void DEG_stats_simple(const Depsgraph *graph, size_t *r_outer, size_t *r_operations, size_t *r_relations)
void DEG_debug_stats_gnuplot(const Depsgraph *graph, FILE *fp, const char *label, const char *output_filename)
BPy_StructRNA * depsgraph
const char * name