MCPcopy Create free account
hub / github.com/CesiumGS/cesium-native / load

Method load

CesiumGltfReader/src/NetworkImageAssetDescriptor.cpp:47–67  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

45}
46
47Future<ResultPointer<ImageAsset>> NetworkImageAssetDescriptor::load(
48 const AsyncSystem& asyncSystem,
49 const std::shared_ptr<IAssetAccessor>& pAssetAccessor) const {
50 return this->loadBytesFromNetwork(asyncSystem, pAssetAccessor)
51 .thenInWorkerThread([ktx2TranscodeTargets = this->ktx2TranscodeTargets](
52 Result<std::vector<std::byte>>&& result) {
53 if (!result.value) {
54 return ResultPointer<ImageAsset>(result.errors);
55 }
56
57 ImageReaderResult imageResult =
58 ImageDecoder::readImage(*result.value, ktx2TranscodeTargets);
59
60 result.errors.merge(
61 ErrorList{imageResult.errors, imageResult.warnings});
62
63 return ResultPointer<ImageAsset>(
64 imageResult.pImage,
65 std::move(result.errors));
66 });
67}
68
69} // namespace CesiumGltfReader
70

Callers 2

resolveExternalDataMethod · 0.45
createDefaultFunction · 0.45

Calls 3

loadBytesFromNetworkMethod · 0.80
thenInWorkerThreadMethod · 0.45
mergeMethod · 0.45

Tested by

no test coverage detected