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

Method add_request

modules/engine/runtime/src/io/vram/vram_batch.cpp:18–40  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16}
17
18IOResultId VRAMIOBatch::add_request(IORequestId request, skr_io_future_t* future) SKR_NOEXCEPT
19{
20 auto srv = static_cast<VRAMService*>(service);
21 if (auto pStatus = io_component<IOStatusComponent>(request.get()))
22 {
23 pStatus->owner_batch = this;
24 pStatus->future = future;
25 }
26 if (auto pBufferComp = io_component<VRAMBufferComponent>(request.get()))
27 {
28 pBufferComp->artifact = srv->vram_buffer_pool->allocate();
29 addRequest(request);
30 return pBufferComp->artifact;
31 }
32 if (auto pTextureComp = io_component<VRAMTextureComponent>(request.get()))
33 {
34 pTextureComp->artifact = srv->vram_texture_pool->allocate();
35 addRequest(request);
36 return pTextureComp->artifact;
37 }
38 SKR_UNREACHABLE_CODE();
39 return nullptr;
40}
41
42} // namespace io
43} // namespace skr

Callers 2

addRAMRequestsMethod · 0.45
requestMethod · 0.45

Calls 3

addRequestFunction · 0.85
getMethod · 0.45
allocateMethod · 0.45

Tested by

no test coverage detected