mWidth( width ),
mHeight( height )
{
+ mRasterizer = nsvgCreateRasterizer();
+}
+
+RasterizingTask::~RasterizingTask()
+{
+ nsvgDeleteRasterizer( mRasterizer );
}
void RasterizingTask::Load()
}
}
-void RasterizingTask::Rasterize( NSVGrasterizer* rasterizer )
+void RasterizingTask::Rasterize( )
{
if( mParsedSvg != NULL && mWidth > 0u && mHeight > 0u )
{
unsigned int bufferSize = bufferStride * mHeight;
unsigned char* buffer = new unsigned char [bufferSize];
- nsvgRasterize(rasterizer, mParsedSvg, 0.f,0.f,scale,
+ nsvgRasterize(mRasterizer, mParsedSvg, 0.f,0.f,scale,
buffer, mWidth, mHeight,
bufferStride );
: mTrigger( trigger ),
mIsThreadWaiting( false )
{
- mRasterizer = nsvgCreateRasterizer();
}
SvgRasterizeThread::~SvgRasterizeThread()
{
-
- nsvgDeleteRasterizer( mRasterizer );
delete mTrigger;
}
while( RasterizingTaskPtr task = NextTaskToProcess() )
{
task->Load( );
- task->Rasterize( mRasterizer );
+ task->Rasterize( );
AddCompletedTask( task );
}
}