[Tizen] Generate url and load texture from encoded image buffer 95/261195/1 accepted/tizen/unified/20210713.124100 submit/tizen/20210713.070142
authorEunki, Hong <eunkiki.hong@samsung.com>
Tue, 8 Jun 2021 06:07:20 +0000 (15:07 +0900)
committerEunki Hong <eunkiki.hong@samsung.com>
Tue, 13 Jul 2021 06:29:29 +0000 (23:29 -0700)
commite2f37baead455ee7c0ac151d0d195109e0146107
treee717f1ca062705c9bc771a6eff5ef327b13fcc84
parent4ea16deccb347cc6a062fc16e7f6605cd4de6d7f
[Tizen] Generate url and load texture from encoded image buffer

Make some way to load image from raw-buffer stream.
This raw-buffer will alive when some actor contain this buffer.

Limitation : animated-image, vector-image, animated-vector-image not working now. Will support another patch

1. Generate url from encoded raw buffer like this
  ImageUrl url = Toolkit::Image::GenerateUrl(const EncodedImageBuffer &);
2. When we use URL as this string, we can load it like normal LOCAL file.
  ImageView imageView = Toolkit::ImageView::New(url.GetUrl());
3. Buffer will automatically removed when ImageUrl scope is out-of-date, and no actor use it.

NOTE : even ImageUrl lifecycle is done, cached texture can use internally.

Change-Id: I517d9526d13a6b761792dcb7054864643f209b67
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
29 files changed:
automated-tests/src/dali-toolkit-internal/CMakeLists.txt
automated-tests/src/dali-toolkit-internal/utc-Dali-TextureManager.cpp
automated-tests/src/dali-toolkit-internal/utc-Dali-VisualUrl.cpp
automated-tests/src/dali-toolkit/CMakeLists.txt
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-encoded-image-buffer.cpp [new file with mode: 0644]
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-encoded-image-buffer.h [new file with mode: 0644]
automated-tests/src/dali-toolkit/utc-Dali-Image.cpp
automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp
automated-tests/src/dali-toolkit/utc-Dali-ImageVisual.cpp
dali-toolkit/devel-api/image-loader/async-image-loader-devel.h
dali-toolkit/devel-api/image-loader/image-atlas.cpp
dali-toolkit/devel-api/image-loader/image-atlas.h
dali-toolkit/devel-api/image-loader/texture-manager.cpp
dali-toolkit/devel-api/image-loader/texture-manager.h
dali-toolkit/internal/image-loader/async-image-loader-impl.cpp
dali-toolkit/internal/image-loader/image-load-thread.cpp
dali-toolkit/internal/image-loader/image-load-thread.h
dali-toolkit/internal/image-loader/image-url-impl.cpp
dali-toolkit/internal/image-loader/image-url-impl.h
dali-toolkit/internal/visuals/image/image-visual.cpp
dali-toolkit/internal/visuals/npatch/npatch-visual.cpp
dali-toolkit/internal/visuals/texture-manager-impl.cpp
dali-toolkit/internal/visuals/texture-manager-impl.h
dali-toolkit/internal/visuals/visual-url.cpp
dali-toolkit/internal/visuals/visual-url.h
dali-toolkit/public-api/image-loader/image-url.cpp
dali-toolkit/public-api/image-loader/image-url.h
dali-toolkit/public-api/image-loader/image.cpp
dali-toolkit/public-api/image-loader/image.h