MCPcopy Create free account
hub / github.com/Snapchat/Valdi / loadAsset

Method loadAsset

valdi/src/valdi/snap_drawing/ImageLoading/ImageLoader.cpp:70–87  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

68}
69
70Valdi::Shared<snap::valdi_core::Cancelable> ImageLoader::loadAsset(
71 const Valdi::StringBox& url,
72 int32_t preferredWidth,
73 int32_t preferredHeight,
74 const Valdi::Value& associatedData,
75 const Valdi::Ref<Valdi::IRemoteDownloader>& downloader,
76 const Valdi::Ref<Valdi::AssetLoaderCompletion>& completion) {
77 auto task = Valdi::makeShared<ImageLoaderTask>(
78 Valdi::weakRef(this), url, preferredWidth, preferredHeight, associatedData, downloader, completion);
79
80 _queue->async([task] {
81 if (auto strongThis = task->getImageLoader().lock()) {
82 strongThis->loadImage(task);
83 }
84 });
85
86 return Valdi::makeShared<ImageLoaderTaskCancelable>(task);
87}
88
89void ImageLoader::loadImage(const Ref<ImageLoaderTask>& task) {
90 if (task->wasCanceled()) {

Callers

nothing calls this directly

Calls 4

weakRefFunction · 0.85
asyncMethod · 0.45
lockMethod · 0.45
loadImageMethod · 0.45

Tested by

no test coverage detected