X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fimage-loader%2Fimage-load-thread.h;h=35fe2166edbe1c4a8c0d47fc8a0cc44d7f82e33a;hp=85ea4195b4f6afe623ed48d2ef6a8f6f4041b5c7;hb=8b474798c4b5a53412ed526f6279d4d27b440fc9;hpb=b87ea88c9c1af89ddbca860abda6ed9154820ab7 diff --git a/dali-toolkit/internal/image-loader/image-load-thread.h b/dali-toolkit/internal/image-loader/image-load-thread.h index 85ea419..35fe216 100644 --- a/dali-toolkit/internal/image-loader/image-load-thread.h +++ b/dali-toolkit/internal/image-loader/image-load-thread.h @@ -1,8 +1,8 @@ -#ifndef __DALI_TOOLKIT_IMAGE_LOAD_THREAD_H__ -#define __DALI_TOOLKIT_IMAGE_LOAD_THREAD_H__ +#ifndef DALI_TOOLKIT_IMAGE_LOAD_THREAD_H +#define DALI_TOOLKIT_IMAGE_LOAD_THREAD_H /* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,11 +20,15 @@ // EXTERNAL INCLUDES #include #include +#include #include #include #include -#include #include +#include +#include +#include +#include namespace Dali { @@ -42,8 +46,23 @@ struct LoadingTask { /** * Constructor. + * @param [in] id of the task + * @param [in] url The URL of the image file to load. + * @param [in] size The width and height to fit the loaded image to, 0.0 means whole image + * @param [in] fittingMode The method used to fit the shape of the image before loading to the shape defined by the size parameter. + * @param [in] samplingMode The filtering method used when sampling pixels from the input image while fitting it to desired size. + * @param [in] orientationCorrection Reorient the image to respect any orientation metadata in its header. + * @param [in] preMultiplyOnLoad ON if the image's color should be multiplied by it's alpha. */ - LoadingTask( uint32_t id, BitmapLoader loader ); + LoadingTask( uint32_t id, const VisualUrl& url, ImageDimensions dimensions, + FittingMode::Type fittingMode, SamplingMode::Type samplingMode, + bool orientationCorrection, + DevelAsyncImageLoader::PreMultiplyOnLoad preMultiplyOnLoad ); + + /** + * Load the image + */ + void Load(); private: @@ -55,8 +74,14 @@ private: public: - BitmapLoader loader; ///< The loader used to load the bitmap from URL - uint32_t id; ///< The id associated with this task. + Devel::PixelBuffer pixelBuffer; ///< pixelBuffer handle after successful load + VisualUrl url; ///< url of the image to load + uint32_t id; ///< The unique id associated with this task. + ImageDimensions dimensions; ///< dimensions to load + FittingMode::Type fittingMode; ///< fitting options + SamplingMode::Type samplingMode; ///< sampling options + bool orientationCorrection:1; ///< if orientation correction is needed + DevelAsyncImageLoader::PreMultiplyOnLoad preMultiplyOnLoad; //< if the image's color should be multiplied by it's alpha }; @@ -141,10 +166,11 @@ private: Vector< LoadingTask* > mLoadQueue; /// mCompleteQueue; ///