X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fcanvas-view%2Fcanvas-view-impl.h;h=1a468b09186d651b2dd8d5016e8a7e1c94f9f2ce;hp=b2d5775e091794d92a74f1329dffe15aed0a4c07;hb=0a079815dfdc1dc941a0741d8c1e390528ac80ef;hpb=1d96cc43e6699102d9e93d9aaf515a155893ba0b diff --git a/dali-toolkit/internal/controls/canvas-view/canvas-view-impl.h b/dali-toolkit/internal/controls/canvas-view/canvas-view-impl.h index b2d5775..1a468b0 100644 --- a/dali-toolkit/internal/controls/canvas-view/canvas-view-impl.h +++ b/dali-toolkit/internal/controls/canvas-view/canvas-view-impl.h @@ -33,10 +33,11 @@ namespace Dali { namespace Toolkit { -class CanvasView; - namespace Internal { +class CanvasView; +class CanvasViewRasterizeThread; + class CanvasView : public Control, public Integration::Processor { public: @@ -78,27 +79,37 @@ private: // From Control */ void OnInitialize() override; -protected: // Implementation of Processor + /** + * @bried Rasterize the canvas, and add it to the view. + * + * @param[in] size The target size of the canvas view rasterization. + */ + void AddRasterizationTask(); + +protected: /** * @copydoc Dali::Integration::Processor::Process() */ void Process(bool postProcessor) override; -private: +public: /** - * @brief Draw drawables added to CanvasView on inner canvas. - * Then make that buffer into a texture and add it to renderer. + * @bried Apply the rasterized image to the canvas view + * + * @param[in] rasterizedPixelData The pixel buffer with the rasterized pixels */ - void Commit(); + void ApplyRasterizedImage(PixelData rasterizedPixelData); private: CanvasView(const CanvasView&) = delete; CanvasView& operator=(const CanvasView&) = delete; private: - CanvasRenderer mCanvasRenderer; - Dali::Texture mTexture; - bool mChanged; + CanvasRenderer mCanvasRenderer; + Dali::Texture mTexture; + TextureSet mTextureSet; + Vector2 mSize; + CanvasViewRasterizeThread* mCanvasViewRasterizeThread; }; } // namespace Internal