Blender  V2.93
Functions
depsgraph_debug.cc File Reference
#include "BLI_utildefines.h"
#include "DNA_scene_types.h"
#include "DNA_object_types.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "DEG_depsgraph_debug.h"
#include "DEG_depsgraph_query.h"
#include "intern/debug/deg_debug.h"
#include "intern/depsgraph.h"
#include "intern/depsgraph_relation.h"
#include "intern/depsgraph_type.h"
#include "intern/node/deg_node_component.h"
#include "intern/node/deg_node_id.h"
#include "intern/node/deg_node_time.h"

Go to the source code of this file.

Functions

void DEG_debug_flags_set (Depsgraph *depsgraph, int flags)
 
int DEG_debug_flags_get (const Depsgraph *depsgraph)
 
void DEG_debug_name_set (struct Depsgraph *depsgraph, const char *name)
 
const char * DEG_debug_name_get (struct Depsgraph *depsgraph)
 
bool DEG_debug_compare (const struct Depsgraph *graph1, const struct Depsgraph *graph2)
 
bool DEG_debug_graph_relations_validate (Depsgraph *graph, Main *bmain, Scene *scene, ViewLayer *view_layer)
 
bool DEG_debug_consistency_check (Depsgraph *graph)
 
void DEG_stats_simple (const Depsgraph *graph, size_t *r_outer, size_t *r_operations, size_t *r_relations)
 
static deg::string depsgraph_name_for_logging (struct Depsgraph *depsgraph)
 
void DEG_debug_print_begin (struct Depsgraph *depsgraph)
 
void DEG_debug_print_eval (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address)
 
void DEG_debug_print_eval_subdata (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, const char *subdata_comment, const char *subdata_name, const void *subdata_address)
 
void DEG_debug_print_eval_subdata_index (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, const char *subdata_comment, const char *subdata_name, const void *subdata_address, const int subdata_index)
 
void DEG_debug_print_eval_parent_typed (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, const char *parent_comment, const char *parent_name, const void *parent_address)
 
void DEG_debug_print_eval_time (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, float time)
 

Detailed Description

Implementation of tools for debugging the depsgraph

Definition in file depsgraph_debug.cc.

Function Documentation

◆ DEG_debug_compare()

bool DEG_debug_compare ( const struct Depsgraph graph1,
const struct Depsgraph graph2 
)

◆ DEG_debug_consistency_check()

bool DEG_debug_consistency_check ( Depsgraph graph)

◆ DEG_debug_flags_get()

int DEG_debug_flags_get ( const Depsgraph depsgraph)

◆ DEG_debug_flags_set()

void DEG_debug_flags_set ( Depsgraph depsgraph,
int  flags 
)

◆ DEG_debug_graph_relations_validate()

bool DEG_debug_graph_relations_validate ( Depsgraph graph,
Main bmain,
Scene scene,
ViewLayer view_layer 
)

◆ DEG_debug_name_get()

const char* DEG_debug_name_get ( struct Depsgraph depsgraph)

◆ DEG_debug_name_set()

void DEG_debug_name_set ( struct Depsgraph depsgraph,
const char *  name 
)

◆ DEG_debug_print_begin()

void DEG_debug_print_begin ( struct Depsgraph depsgraph)

Definition at line 257 of file depsgraph_debug.cc.

References depsgraph, and depsgraph_name_for_logging().

◆ DEG_debug_print_eval()

void DEG_debug_print_eval ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void *  object_address 
)

◆ DEG_debug_print_eval_parent_typed()

void DEG_debug_print_eval_parent_typed ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void *  object_address,
const char *  parent_comment,
const char *  parent_name,
const void *  parent_address 
)

◆ DEG_debug_print_eval_subdata()

void DEG_debug_print_eval_subdata ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void *  object_address,
const char *  subdata_comment,
const char *  subdata_name,
const void *  subdata_address 
)

◆ DEG_debug_print_eval_subdata_index()

void DEG_debug_print_eval_subdata_index ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void *  object_address,
const char *  subdata_comment,
const char *  subdata_name,
const void *  subdata_address,
const int  subdata_index 
)

◆ DEG_debug_print_eval_time()

void DEG_debug_print_eval_time ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void *  object_address,
float  time 
)

◆ DEG_stats_simple()

void DEG_stats_simple ( const Depsgraph graph,
size_t *  r_outer,
size_t *  r_operations,
size_t *  r_relations 
)

Obtain simple statistics about the complexity of the depsgraph.

Parameters
[out]r_outerThe number of outer nodes in the graph
[out]r_operationsThe number of operation nodes in the graph
[out]r_relationsThe number of relations between (executable) nodes in the graph

Definition at line 205 of file depsgraph_debug.cc.

References blender::deg::Depsgraph::find_time_source(), graph, id_node, blender::deg::Depsgraph::id_nodes, blender::deg::Node::inlinks, blender::deg::Depsgraph::operations, and blender::Vector< T, InlineBufferCapacity, Allocator >::size().

◆ depsgraph_name_for_logging()

static deg::string depsgraph_name_for_logging ( struct Depsgraph depsgraph)
static