Generate url and load texture from encoded image buffer 15/259415/24
authorEunki, Hong <eunkiki.hong@samsung.com>
Tue, 8 Jun 2021 06:07:20 +0000 (15:07 +0900)
committerEunki Hong <eunkiki.hong@samsung.com>
Mon, 26 Jul 2021 08:33:29 +0000 (01:33 -0700)
commita4b26c19783f73d4e0f3a9fdd23f5a1810406734
treed12bfca73972aa75c4654c28c84bb88b54d5dfc8
parentb0faad981257720e1a5fb15af45647f30b669adf
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>
25 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/image-atlas.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