mirror of
https://github.com/thorvg/thorvg.git
synced 2025-06-15 12:34:30 +00:00
code refactoring.
revise internal class & variable names for better code readibility. Change-Id: I7f1b4474f3129c3be04444350496485f000afd15
This commit is contained in:
parent
9b7337622d
commit
7097940c22
3 changed files with 38 additions and 38 deletions
|
@ -24,7 +24,7 @@
|
|||
/* Internal Class Implementation */
|
||||
/************************************************************************/
|
||||
|
||||
static RenderMethodInit engineInit;
|
||||
static RenderInitializer renderInit;
|
||||
|
||||
struct GlShape
|
||||
{
|
||||
|
@ -58,31 +58,31 @@ void* GlRenderer::prepare(const ShapeNode& shape, void* data, UpdateFlag flags)
|
|||
|
||||
int GlRenderer::init()
|
||||
{
|
||||
return RenderMethodInit::init(engineInit, new GlRenderer);
|
||||
return RenderInitializer::init(renderInit, new GlRenderer);
|
||||
}
|
||||
|
||||
|
||||
int GlRenderer::term()
|
||||
{
|
||||
return RenderMethodInit::term(engineInit);
|
||||
return RenderInitializer::term(renderInit);
|
||||
}
|
||||
|
||||
|
||||
size_t GlRenderer::unref()
|
||||
{
|
||||
return RenderMethodInit::unref(engineInit);
|
||||
return RenderInitializer::unref(renderInit);
|
||||
}
|
||||
|
||||
|
||||
size_t GlRenderer::ref()
|
||||
{
|
||||
return RenderMethodInit::ref(engineInit);
|
||||
return RenderInitializer::ref(renderInit);
|
||||
}
|
||||
|
||||
|
||||
GlRenderer* GlRenderer::inst()
|
||||
{
|
||||
return dynamic_cast<GlRenderer*>(RenderMethodInit::inst(engineInit));
|
||||
return dynamic_cast<GlRenderer*>(RenderInitializer::inst(renderInit));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
/* Internal Class Implementation */
|
||||
/************************************************************************/
|
||||
|
||||
static RenderMethodInit engineInit;
|
||||
static RenderInitializer renderInit;
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
|
@ -70,31 +70,31 @@ void* SwRenderer::prepare(const ShapeNode& shape, void* data, UpdateFlag flags)
|
|||
|
||||
int SwRenderer::init()
|
||||
{
|
||||
return RenderMethodInit::init(engineInit, new SwRenderer);
|
||||
return RenderInitializer::init(renderInit, new SwRenderer);
|
||||
}
|
||||
|
||||
|
||||
int SwRenderer::term()
|
||||
{
|
||||
return RenderMethodInit::term(engineInit);
|
||||
return RenderInitializer::term(renderInit);
|
||||
}
|
||||
|
||||
|
||||
size_t SwRenderer::unref()
|
||||
{
|
||||
return RenderMethodInit::unref(engineInit);
|
||||
return RenderInitializer::unref(renderInit);
|
||||
}
|
||||
|
||||
|
||||
size_t SwRenderer::ref()
|
||||
{
|
||||
return RenderMethodInit::ref(engineInit);
|
||||
return RenderInitializer::ref(renderInit);
|
||||
}
|
||||
|
||||
|
||||
SwRenderer* SwRenderer::inst()
|
||||
{
|
||||
return dynamic_cast<SwRenderer*>(RenderMethodInit::inst(engineInit));
|
||||
return dynamic_cast<SwRenderer*>(RenderInitializer::inst(renderInit));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -40,60 +40,60 @@ public:
|
|||
virtual size_t unref() = 0;
|
||||
};
|
||||
|
||||
struct RenderMethodInit
|
||||
struct RenderInitializer
|
||||
{
|
||||
RenderMethod* pInst = nullptr;
|
||||
size_t refCnt = 0;
|
||||
bool initted = false;
|
||||
bool initialized = false;
|
||||
|
||||
static int init(RenderMethodInit& initter, RenderMethod* engine)
|
||||
static int init(RenderInitializer& renderInit, RenderMethod* engine)
|
||||
{
|
||||
assert(engine);
|
||||
if (initter.pInst || initter.refCnt > 0) return -1;
|
||||
initter.pInst = engine;
|
||||
initter.refCnt = 0;
|
||||
initter.initted = true;
|
||||
if (renderInit.pInst || renderInit.refCnt > 0) return -1;
|
||||
renderInit.pInst = engine;
|
||||
renderInit.refCnt = 0;
|
||||
renderInit.initialized = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int term(RenderMethodInit& initter)
|
||||
static int term(RenderInitializer& renderInit)
|
||||
{
|
||||
if (!initter.pInst || !initter.initted) return -1;
|
||||
if (!renderInit.pInst || !renderInit.initialized) return -1;
|
||||
|
||||
initter.initted = false;
|
||||
renderInit.initialized = false;
|
||||
|
||||
//Still it's refered....
|
||||
if (initter.refCnt > 0) return 0;
|
||||
delete(initter.pInst);
|
||||
initter.pInst = nullptr;
|
||||
if (renderInit.refCnt > 0) return 0;
|
||||
delete(renderInit.pInst);
|
||||
renderInit.pInst = nullptr;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static size_t unref(RenderMethodInit& initter)
|
||||
static size_t unref(RenderInitializer& renderInit)
|
||||
{
|
||||
assert(initter.refCnt > 0);
|
||||
--initter.refCnt;
|
||||
assert(renderInit.refCnt > 0);
|
||||
--renderInit.refCnt;
|
||||
|
||||
//engine has been requested to termination
|
||||
if (!initter.initted && initter.refCnt == 0) {
|
||||
if (initter.pInst) {
|
||||
delete(initter.pInst);
|
||||
initter.pInst = nullptr;
|
||||
if (!renderInit.initialized && renderInit.refCnt == 0) {
|
||||
if (renderInit.pInst) {
|
||||
delete(renderInit.pInst);
|
||||
renderInit.pInst = nullptr;
|
||||
}
|
||||
}
|
||||
return initter.refCnt;
|
||||
return renderInit.refCnt;
|
||||
}
|
||||
|
||||
static RenderMethod* inst(RenderMethodInit& initter)
|
||||
static RenderMethod* inst(RenderInitializer& renderInit)
|
||||
{
|
||||
assert(initter.pInst);
|
||||
return initter.pInst;
|
||||
assert(renderInit.pInst);
|
||||
return renderInit.pInst;
|
||||
}
|
||||
|
||||
static size_t ref(RenderMethodInit& initter)
|
||||
static size_t ref(RenderInitializer& renderInit)
|
||||
{
|
||||
return ++initter.refCnt;
|
||||
return ++renderInit.refCnt;
|
||||
}
|
||||
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue