28 links_.clear_and_shrink();
30 node.free_data(storage_);
32 nodes_.clear_and_shrink();
35 debug_.node_group_map.clear();
36 debug_.used_groups.clear();
37 debug_.group_stack.clear();
38 debug_.groups.clear();
43 std::cout << __func__ <<
" nodes: (" << nodes_.size() <<
"/" << nodes_.capacity() <<
"), "
44 <<
"links: (" << links_.size() <<
"/" << links_.capacity() <<
")\n";
45#define PRINT_STORAGE(name) \
46 std::cout << " " #name " : (" << storage_.name.size() << " / " << storage_.name.capacity() \
72 (debug_.group_stack.size() > 0))
74 useColor = debug_.groups[debug_.group_stack.last()].color;
76 DebugGroupNameID name_id = debug_.groups.index_of_or_add({std::string(name), useColor});
77 debug_.group_stack.append(name_id);
78 debug_.group_used =
false;
83 debug_.group_stack.pop_last();
84 debug_.group_used =
false;
89 std::ostream &os = std::cout;
92 os <<
" type:" << node.
type <<
"\n";
112 return std::string();
115 DebugGroupID debug_group = debug_.node_group_map[node_handle];
116 if (debug_group == -1) {
117 return std::string();
120 std::stringstream ss;
121 for (
const VKRenderGraph::DebugGroupNameID &name_id : debug_.used_groups[debug_group]) {
122 ss <<
"/" << debug_.groups[name_id].name;
VKRenderGraph(VKResourceStateTracker &resources)
void debug_group_begin(const char *name, const ColorTheme4f &color)
void debug_print(NodeHandle node_handle) const
VKSubmissionID submission_id
std::string full_debug_group(NodeHandle node_handle) const
static blender::ColorTheme4f GPU_DEBUG_GROUP_COLOR_DEFAULT
ColorTheme4< float > ColorTheme4f
void debug_print(std::ostream &ss, const VKResourceStateTracker &resources) const
Vector< VKRenderGraphLink > inputs
Vector< VKRenderGraphLink > outputs
#define PRINT_STORAGE(name)