67 using DebugGroupNameID =
int64_t;
88 std::unique_ptr<VKCommandBufferInterface> command_buffer_;
130 VKRenderGraph(std::unique_ptr<VKCommandBufferInterface> command_buffer,
137 template<
typename NodeInfo>
void add_node(
const typename NodeInfo::CreateInfo &create_info)
148 std::cout <<
"break\n";
151 if (nodes_.
size() > links_.
size()) {
154 VKRenderGraphNode &node = nodes_[node_handle];
155 node.set_node_data<NodeInfo>(create_info);
157 VKRenderGraphNodeLinks &node_links = links_[node_handle];
160 node.build_links<NodeInfo>(resources_, node_links, create_info);
163 if (!debug_.group_used) {
164 debug_.group_used =
true;
165 debug_.used_groups.append(debug_.group_stack);
167 if (nodes_.
size() > debug_.node_group_map.size()) {
168 debug_.node_group_map.resize(nodes_.
size());
170 debug_.node_group_map[node_handle] = debug_.used_groups.size() - 1;
175#define ADD_NODE(NODE_CLASS) \
176 void add_node(const NODE_CLASS::CreateInfo &create_info) \
178 add_node<NODE_CLASS>(create_info); \
186 ADD_NODE(VKClearDepthStencilImageNode)
261 return nodes_.
size();