X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Ftexture-upload-observer.h;h=d6657a27c0c802c23de77395b273bfaf0b508bd8;hb=refs%2Fchanges%2F46%2F265846%2F1;hp=d83a89e16f397df796575b762db6443ab40572b7;hpb=24d391fe222bd0fd5910e3b3481124fa23b796be;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/texture-upload-observer.h b/dali-toolkit/internal/visuals/texture-upload-observer.h index d83a89e..d6657a2 100644 --- a/dali-toolkit/internal/visuals/texture-upload-observer.h +++ b/dali-toolkit/internal/visuals/texture-upload-observer.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_INTERNAL_TEXTURE_UPLOAD_OBSERVER_H /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 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. @@ -18,18 +18,20 @@ * */ -#include +// EXTERNAL INCLUDES +#include #include +// INTERNAL INCLUDES +#include +#include + namespace Dali { - class TextureSet; namespace Toolkit { - - /** * @brief Base class used to observe the upload status of a texture. * @@ -39,8 +41,7 @@ namespace Toolkit class TextureUploadObserver { public: - - typedef Signal< void ( TextureUploadObserver* ) > DestructionSignalType; ///< Signal prototype for the Destruction Signal. + typedef Signal DestructionSignalType; ///< Signal prototype for the Destruction Signal. /** * @brief Constructor. @@ -61,8 +62,20 @@ public: * @param[in] textureSet The TextureSet containing the Texture * @param[in] useAtlasing True if atlasing was used (note: this may be different to what was requested) * @param[in] atlasRect If using atlasing, this is the rectangle within the atlas to use. + * @param[in] preMultiplied True if the image had pre-multiplied alpha applied */ - virtual void UploadComplete( bool loadSuccess, int32_t textureId, TextureSet textureSet, bool useAtlasing, const Vector4& atlasRect ) = 0; + virtual void UploadComplete(bool loadSuccess, int32_t textureId, TextureSet textureSet, bool useAtlasing, const Vector4& atlasRect, bool preMultiplied) = 0; + + /** + * The action to be taken once the async load has finished. + * This should be overridden by the deriving class. + * + * @param[in] loadSuccess True if the image load was successful (i.e. the resource is available). If false, then the resource failed to load. + * @param[in] pixelBuffer The PixelBuffer of the loaded image. + * @param[in] url The url address of the loaded image. + * @param[in] preMultiplied True if the image had pre-multiplied alpha applied + */ + virtual void LoadComplete(bool loadSuccess, Devel::PixelBuffer pixelBuffer, const Internal::VisualUrl& url, bool preMultiplied) = 0; /** * @brief Returns the destruction signal. @@ -72,12 +85,9 @@ public: DestructionSignalType& DestructionSignal(); private: - DestructionSignalType mDestructionSignal; ///< The destruction signal emitted when the observer is destroyed. - }; - } // namespace Toolkit } // namespace Dali