| 93 | // --- Begin Internals --- |
| 94 | |
| 95 | void daxa_ImplTimelineQueryPool::zero_ref_callback(ImplHandle const * handle) |
| 96 | { |
| 97 | auto * self = rc_cast<daxa_TimelineQueryPool>(handle); |
| 98 | std::unique_lock const lock{self->device->zombies_mtx}; |
| 99 | u64 const submit_timeline = self->device->global_submit_timeline.load(std::memory_order::relaxed); |
| 100 | self->device->timeline_query_pool_zombies.emplace_back( |
| 101 | submit_timeline, |
| 102 | TimelineQueryPoolZombie{ |
| 103 | .vk_timeline_query_pool = self->vk_timeline_query_pool, |
| 104 | }); |
| 105 | self->device->dec_weak_refcnt( |
| 106 | daxa_ImplDevice::zero_ref_callback, |
| 107 | self->device->instance); |
| 108 | delete self; |
| 109 | } |
| 110 | |
| 111 | // --- End Internals --- |
nothing calls this directly
no outgoing calls
no test coverage detected