#include <algorithm>
#include "tvgMath.h"
#include "tvgSwCommon.h"
#include "tvgTaskScheduler.h"
#include "tvgSwRenderer.h"
static int32_t initEngineCnt = …;
static int32_t rendererCnt = …;
static SwMpool* globalMpool = …;
static uint32_t threadsCnt = …;
struct SwTask : Task
{ … };
struct SwShapeTask : SwTask
{ … };
struct SwImageTask : SwTask
{ … };
static void _termEngine()
{ … }
static void _renderFill(SwShapeTask* task, SwSurface* surface, uint8_t opacity)
{ … }
static void _renderStroke(SwShapeTask* task, SwSurface* surface, uint8_t opacity)
{ … }
SwRenderer::~SwRenderer()
{ … }
bool SwRenderer::clear()
{ … }
bool SwRenderer::sync()
{ … }
RenderRegion SwRenderer::viewport()
{ … }
bool SwRenderer::viewport(const RenderRegion& vp)
{ … }
bool SwRenderer::target(pixel_t* data, uint32_t stride, uint32_t w, uint32_t h, ColorSpace cs)
{ … }
bool SwRenderer::preRender()
{ … }
void SwRenderer::clearCompositors()
{ … }
bool SwRenderer::postRender()
{ … }
bool SwRenderer::renderImage(RenderData data)
{ … }
bool SwRenderer::renderShape(RenderData data)
{ … }
bool SwRenderer::blend(BlendMethod method)
{ … }
RenderRegion SwRenderer::region(RenderData data)
{ … }
bool SwRenderer::beginComposite(Compositor* cmp, CompositeMethod method, uint8_t opacity)
{ … }
bool SwRenderer::mempool(bool shared)
{ … }
const Surface* SwRenderer::mainSurface()
{ … }
Compositor* SwRenderer::target(const RenderRegion& region, ColorSpace cs)
{ … }
bool SwRenderer::endComposite(Compositor* cmp)
{ … }
ColorSpace SwRenderer::colorSpace()
{ … }
void SwRenderer::dispose(RenderData data)
{ … }
void* SwRenderer::prepareCommon(SwTask* task, const Matrix& transform, const Array<RenderData>& clips, uint8_t opacity, RenderUpdateFlag flags)
{ … }
RenderData SwRenderer::prepare(Surface* surface, RenderData data, const Matrix& transform, Array<RenderData>& clips, uint8_t opacity, RenderUpdateFlag flags)
{ … }
RenderData SwRenderer::prepare(const RenderShape& rshape, RenderData data, const Matrix& transform, Array<RenderData>& clips, uint8_t opacity, RenderUpdateFlag flags, bool clipper)
{ … }
SwRenderer::SwRenderer(): … { … }
bool SwRenderer::init(uint32_t threads)
{ … }
int32_t SwRenderer::init()
{ … }
bool SwRenderer::term()
{ … }
SwRenderer* SwRenderer::gen()
{ … }