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

Function memdup

modules/engine/runtime/src/ecs/chunk_view.cpp:240–251  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

238}
239
240void memdup(void* dst, const void* src, size_t size, size_t count) noexcept
241{
242 size_t copied = 1;
243 memcpy(dst, src, size);
244 while (copied <= count / 2)
245 {
246 memcpy((char*)dst + copied * size, dst, copied * size);
247 copied *= 2;
248 }
249 if (copied < count)
250 memcpy((char*)dst + copied * size, dst, (count - copied) * size);
251}
252
253static void duplicate_impl(sugoi_chunk_view_t dstV, const sugoi_chunk_t* srcC, uint32_t srcIndex, type_index_t type, EIndex offset, EIndex dstOffset, uint32_t size, uint32_t align, uint32_t elemSize, resource_fields_t resourceFields, void (*copy)(sugoi_chunk_t* chunk, EIndex index, char* dst, sugoi_chunk_t* schunk, EIndex sindex, const char* src))
254{

Callers 1

duplicate_implFunction · 0.85

Calls 1

memcpyFunction · 0.85

Tested by

no test coverage detected