Blender V4.3
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
11#pragma once
12
13#include <cstdio>
14
15#include "BLI_string_ref.hh"
16
17struct Depsgraph;
18struct Main;
19struct Scene;
20struct ViewLayer;
21
22/* ------------------------------------------------ */
23
24/* NOTE: Those flags are same bit-mask as #G.debug_flags */
25
26void DEG_debug_flags_set(Depsgraph *depsgraph, int flags);
27int DEG_debug_flags_get(const Depsgraph *depsgraph);
28
29void DEG_debug_name_set(Depsgraph *depsgraph, const char *name);
30const char *DEG_debug_name_get(Depsgraph *depsgraph);
31
32/* ------------------------------------------------ */
33
40void DEG_stats_simple(const Depsgraph *graph,
41 size_t *r_outer,
42 size_t *r_operations,
43 size_t *r_relations);
44
45/* ************************************************ */
46/* Diagram-Based Graph Debugging */
47
48std::string DEG_debug_graph_to_dot(const Depsgraph &graph, blender::StringRef label);
49
50void DEG_debug_stats_gnuplot(const Depsgraph *graph,
51 FILE *fp,
52 const char *label,
53 const char *output_filename);
54
55/* ************************************************ */
56
58bool DEG_debug_compare(const Depsgraph *graph1, const Depsgraph *graph2);
59
61bool DEG_debug_graph_relations_validate(Depsgraph *graph,
62 Main *bmain,
63 Scene *scene,
64 ViewLayer *view_layer);
65
67bool DEG_debug_consistency_check(Depsgraph *graph);
void DEG_debug_flags_set(Depsgraph *depsgraph, 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)
const char * output_filename
const char * label
const Depsgraph * depsgraph