111 template<
typename NodeInfo>
113 const typename NodeInfo::CreateInfo &create_info)
119 type = NodeInfo::node_type;
120 node_info.set_node_data(*
this, storage, create_info);
128 template<
typename NodeInfo>
131 const typename NodeInfo::CreateInfo &create_info)
136 node_info.build_links(resources, node_links, create_info);
148 return VK_PIPELINE_STAGE_NONE;
197 return VK_PIPELINE_STAGE_NONE;
214#define BUILD_COMMANDS_STORAGE(NODE_TYPE, NODE_CLASS, ATTRIBUTE_NAME) \
216 NODE_CLASS node_info; \
217 node_info.build_commands( \
218 command_buffer, storage.ATTRIBUTE_NAME[storage_index], r_bound_pipelines); \
222#define BUILD_COMMANDS(NODE_TYPE, NODE_CLASS, ATTRIBUTE_NAME) \
224 NODE_CLASS node_info; \
225 node_info.build_commands(command_buffer, ATTRIBUTE_NAME, r_bound_pipelines); \
235 VKClearDepthStencilImageNode,
236 clear_depth_stencil_image)
259#undef BUILD_COMMANDS_STORAGE
270#define FREE_DATA_STORAGE(NODE_TYPE, NODE_CLASS, ATTRIBUTE_NAME) \
272 NODE_CLASS node_info; \
273 node_info.free_data(storage.ATTRIBUTE_NAME[storage_index]); \
277#define FREE_DATA(NODE_TYPE, NODE_CLASS, ATTRIBUTE_NAME) \
279 NODE_CLASS node_info; \
280 node_info.free_data(ATTRIBUTE_NAME); \
293#undef FREE_DATA_STORAGE