ThorVG  v0.1
Static Public Member Functions | List of all members
Initializerfinal

A class that enables initialization and termination of the TVG engines. More...

Static Public Member Functions

static Result init (CanvasEngine engine, uint32_t threads) noexcept
 Initializes TVG engines. More...
 
static Result term (CanvasEngine engine) noexcept
 Terminates TVG engines. More...
 

Detailed Description

A class that enables initialization and termination of the TVG engines.

Member Function Documentation

◆ init()

static Result init ( CanvasEngine  engine,
uint32_t  threads 
)
staticnoexcept

Initializes TVG engines.

TVG requires the running-engine environment. TVG runs its own task-scheduler for parallelizing rendering tasks efficiently. You can indicate the number of threads, the count of which is designated threads. In the initialization step, TVG will generate/spawn the threads as set by threads count.

Parameters
[in]engineThe engine types to initialize. This is relative to the Canvas types, in which it will be used. For multiple backeneds bitwise operation is allowed.
[in]threadsThe number of additional threads. Zero indicates only the main thread is to be used.
Return values
Result::SuccessWhen succeed.
Result::InsufficientConditionAn internal error possibly with memory allocation.
Result::InvalidArgumentsIf unknown engine type chosen.
Result::NonSupportIn case the engine type is not supported on the system.
Result::UnknownOthers.
Note
The Initializer keeps track of the number of times it was called. Threads count is fixed at the first init() call.
See also
Initializer::term()

◆ term()

static Result term ( CanvasEngine  engine)
staticnoexcept

Terminates TVG engines.

Parameters
[in]engineThe engine types to terminate. This is relative to the Canvas types, in which it will be used. For multiple backeneds bitwise operation is allowed
Return values
Result::SuccessWhen succeed.
Result::InsufficientConditionIn case there is nothing to be terminated.
Result::InvalidArgumentsIf unknown engine type chosen.
Result::NonSupportIn case the engine type is not supported on the system.
Result::UnknownOthers.
Note
Initializer does own reference counting for multiple calls.
See also
Initializer::init()