| 33 | }; |
| 34 | |
| 35 | static 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 | |
| 58 | static void JobCallback(HJobContext, HJob hjob, JobSystemStatus status, void* context, void* data, int result) |
| 59 | { |
nothing calls this directly
no test coverage detected