@@ -148,6 +148,13 @@ using Dispatch = pp::message<
148148 /* Any user defined debug labels associated with the dispatch */
149149 pp::string_field<" debug_label" , 5 , pp::repeated>>;
150150
151+ /* A dispatch data graph object submission */
152+ using DispatchDataGraph = pp::message<
153+ /* The unique identifier for this operation */
154+ pp::uint64_field<" tag_id" , 1 >,
155+ /* Any user defined debug labels associated with the dispatch */
156+ pp::string_field<" debug_label" , 2 , pp::repeated>>;
157+
151158/* A trace rays object submission */
152159using TraceRays = pp::message<
153160 /* The unique identifier for this operation */
@@ -251,7 +258,8 @@ using TimelineRecord =
251258 pp::message_field<" image_transfer" , 9 , ImageTransfer>,
252259 pp::message_field<" buffer_transfer" , 10 , BufferTransfer>,
253260 pp::message_field<" acceleration_structure_build" , 11 , AccelerationStructureBuild>,
254- pp::message_field<" acceleration_structure_transfer" , 12 , AccelerationStructureTransfer>>;
261+ pp::message_field<" acceleration_structure_transfer" , 12 , AccelerationStructureTransfer>,
262+ pp::message_field<" dispatch_data_graph" , 13 , DispatchDataGraph>>;
255263
256264namespace
257265{
@@ -527,6 +535,23 @@ Comms::MessageData serialize(const Tracker::LCSDispatch& dispatch, const std::ve
527535 });
528536}
529537
538+ /* *
539+ * @brief Get the metadata for this workload
540+ *
541+ * @param dispatch The dispatch data graph to serialize
542+ * @param debugLabel The debug label stack for the VkQueue at submit time.
543+ */
544+ Comms::MessageData serialize (const Tracker::LCSDispatchDataGraph& dispatch, const std::vector<std::string>& debugLabel)
545+ {
546+ using namespace pp ;
547+
548+ return packBuffer (" dispatch_data_graph" _f,
549+ DispatchDataGraph {
550+ dispatch.getTagID (),
551+ debugLabel,
552+ });
553+ }
554+
530555/* *
531556 * @brief Get the metadata for this workload
532557 *
@@ -702,6 +727,12 @@ void TimelineProtobufEncoder::operator()(const Tracker::LCSDispatch& dispatch,
702727 device.txMessage (serialize (dispatch, debugStack));
703728}
704729
730+ void TimelineProtobufEncoder::operator ()(const Tracker::LCSDispatchDataGraph& dispatch,
731+ const std::vector<std::string>& debugStack)
732+ {
733+ device.txMessage (serialize (dispatch, debugStack));
734+ }
735+
705736void TimelineProtobufEncoder::operator ()(const Tracker::LCSTraceRays& traceRays,
706737 const std::vector<std::string>& debugStack)
707738{
0 commit comments