MCPcopy Create free account
hub / github.com/SakuraEngine/SakuraEngine / finalize

Method finalize

modules/render/renderer/src/renderer_device.cpp:113–153  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

111}
112
113void RendererDeviceImpl::finalize()
114{
115 // free dstorage queues
116 if (file_dstorage_queue)
117 cgpu_free_dstorage_queue(file_dstorage_queue);
118 if (memory_dstorage_queue)
119 cgpu_free_dstorage_queue(memory_dstorage_queue);
120
121 for (auto& swapchain : swapchains)
122 {
123 if (swapchain.value)
124 cgpu_free_swapchain(swapchain.value);
125 }
126 swapchains.clear();
127 for (auto& surface : surfaces)
128 {
129 if (surface.value)
130 cgpu_free_surface(device, surface.value);
131 }
132 surfaces.clear();
133 cgpu_free_sampler(linear_sampler);
134
135 // free queues & device
136 for (auto& cpy_queue : cpy_queues)
137 {
138 if (cpy_queue && cpy_queue != gfx_queue)
139 cgpu_free_queue(cpy_queue);
140 }
141 for (auto& cmpt_queue : cmpt_queues)
142 {
143 if (cmpt_queue && cmpt_queue != gfx_queue)
144 cgpu_free_queue(cmpt_queue);
145 }
146 cpy_queues.clear();
147 cgpu_free_queue(gfx_queue);
148 cgpu_free_device(device);
149 // free nsight tracker
150 if (nsight_tracker)
151 cgpu_free_nsight_tracker(nsight_tracker);
152 cgpu_free_instance(instance);
153}
154
155#define MAX_CPY_QUEUE_COUNT 2
156#define MAX_CMPT_QUEUE_COUNT 2

Callers 1

on_unloadMethod · 0.45

Calls 9

cgpu_free_dstorage_queueFunction · 0.85
cgpu_free_swapchainFunction · 0.85
cgpu_free_surfaceFunction · 0.85
cgpu_free_samplerFunction · 0.85
cgpu_free_queueFunction · 0.85
cgpu_free_deviceFunction · 0.85
cgpu_free_instanceFunction · 0.85
cgpu_free_nsight_trackerFunction · 0.50
clearMethod · 0.45

Tested by

no test coverage detected