MCPcopy Create free account
hub / github.com/defold/defold / JobProcess

Function JobProcess

engine/resource/src/resource_streamer.cpp:35–56  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33};
34
35static int JobProcess(HJobContext, HJob hjob, void* context, void* data)
36{
37 HFactory factory = (HFactory)context;
38 ResourceStreamJob* job = (ResourceStreamJob*)data;
39
40 if (job->m_Data.Capacity() < job->m_Size)
41 {
42 job->m_Data.SetCapacity(job->m_Size);
43 }
44
45 DM_MUTEX_SCOPED_LOCK(dmResource::GetLoadMutex(factory));
46
47 uint32_t resource_size;
48 uint32_t buffer_size;
49 dmResource::Result result = dmResource::LoadResourceToBufferWithOffset(factory, job->m_CanonicalPath, job->m_Path, job->m_Offset, job->m_Size, &resource_size, &buffer_size, &job->m_Data);
50 if (dmResource::RESULT_OK != result)
51 {
52 dmLogError("Failed to read chunk (offset: %u, size: %u) from '%s' (%s)", job->m_Offset, job->m_Size, job->m_Path, dmResource::ResultToString(result));
53 return 0;
54 }
55 return 1;
56}
57
58static void JobCallback(HJobContext, HJob hjob, JobSystemStatus status, void* context, void* data, int result)
59{

Callers

nothing calls this directly

Calls 5

GetLoadMutexFunction · 0.85
ResultToStringFunction · 0.70
CapacityMethod · 0.45
SetCapacityMethod · 0.45

Tested by

no test coverage detected