CanvasRendererRasterizingTask::CanvasRendererRasterizingTask(CanvasView* canvasView, CanvasRenderer canvasRenderer)
: mCanvasView(canvasView),
mCanvasRenderer(canvasRenderer),
- mPixelData(PixelData()),
- mBufferSize(0, 0)
+ mRasterizedTexture()
{
}
{
if(mCanvasRenderer && mCanvasRenderer.Rasterize())
{
- Devel::PixelBuffer pixbuf = mCanvasRenderer.GetPixelBuffer();
- auto width = pixbuf.GetWidth();
- auto height = pixbuf.GetHeight();
- if(width > 0 && height > 0)
- {
- mBufferSize.width = width;
- mBufferSize.height = height;
-
- mPixelData = Devel::PixelBuffer::Convert(pixbuf);
- return true;
- }
+ return true;
}
return false;
}
return mCanvasView.Get();
}
-PixelData CanvasRendererRasterizingTask::GetPixelData() const
-{
- return mPixelData;
-}
-
-Vector2 CanvasRendererRasterizingTask::GetBufferSize() const
+Texture CanvasRendererRasterizingTask::GetRasterizedTexture()
{
- return mBufferSize;
+ return mCanvasRenderer.GetRasterizedTexture();
}
CanvasViewRasterizeThread::CanvasViewRasterizeThread()
{
while(CanvasRendererRasterizingTaskPtr task = NextCompletedTask())
{
- RasterizationCompletedSignal().Emit(task->GetPixelData());
+ RasterizationCompletedSignal().Emit(task->GetRasterizedTexture()); // Here texture get
}
UnregisterProcessor();