thorvg/docs/html/group__ThorVGCapi__Initializer.html
2021-05-25 14:21:09 +09:00

269 lines
14 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ThorVG: Initializer</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="docs_logo.svg"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">ThorVG
&#160;<span id="projectnumber">v0.1</span>
</div>
<div id="projectbrief">ThorVG is a platform-independent portable library for drawing vector-based scene and animation. It&#39;s an open-source software that is freely used by a variety of software platforms and applications. ThorVG provides neat and easy APIs, its library has no dependencies and keeps cheap and super compact size. It serves as the vector graphics engine for Tizen OS that powers many products.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__ThorVGCapi__Initializer.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Initializer<div class="ingroups"><a class="el" href="group__ThorVG__CAPI.html">ThorVG_CAPI (BETA version)</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>A module enabling initialization and termination of the TVG engines.
<a href="#details">More...</a></p>
<div class="dynheader">
Collaboration diagram for Initializer:</div>
<div class="dyncontent">
<center><table><tr><td><img src="group__ThorVGCapi__Initializer.png" border="0" alt="" usemap="#group____ThorVGCapi____Initializer"/>
<map name="group____ThorVGCapi____Initializer" id="group____ThorVGCapi____Initializer">
<area shape="rect" id="node1" href="group__ThorVG__CAPI.html" title="ThorVG C language binding APIs. " alt="" coords="5,5,204,32"/>
</map>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga9502ec8d4433abfcf1f92cfb1aa36d78"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Initializer.html#ga9502ec8d4433abfcf1f92cfb1aa36d78">TVG_ENGINE_SW</a>&#160;&#160;&#160;(1 &lt;&lt; 1)</td></tr>
<tr class="separator:ga9502ec8d4433abfcf1f92cfb1aa36d78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga47a4b3bac424698c6c3a21bc4e5aaca3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Initializer.html#ga47a4b3bac424698c6c3a21bc4e5aaca3">TVG_ENGINE_GL</a>&#160;&#160;&#160;(1 &lt;&lt; 2)</td></tr>
<tr class="separator:ga47a4b3bac424698c6c3a21bc4e5aaca3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga1b517176a56dde4e9ea9c8eb331660a9"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Initializer.html#ga1b517176a56dde4e9ea9c8eb331660a9">tvg_engine_init</a> (unsigned engine_method, unsigned threads)</td></tr>
<tr class="memdesc:ga1b517176a56dde4e9ea9c8eb331660a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes TVG engines. <a href="#ga1b517176a56dde4e9ea9c8eb331660a9">More...</a><br /></td></tr>
<tr class="separator:ga1b517176a56dde4e9ea9c8eb331660a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga661d062ba6f2c98689b5b70e1cbf7a92"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Initializer.html#ga661d062ba6f2c98689b5b70e1cbf7a92">tvg_engine_term</a> (unsigned engine_method)</td></tr>
<tr class="memdesc:ga661d062ba6f2c98689b5b70e1cbf7a92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Terminates TVG engines. <a href="#ga661d062ba6f2c98689b5b70e1cbf7a92">More...</a><br /></td></tr>
<tr class="separator:ga661d062ba6f2c98689b5b70e1cbf7a92"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>A module enabling initialization and termination of the TVG engines. </p>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ga47a4b3bac424698c6c3a21bc4e5aaca3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga47a4b3bac424698c6c3a21bc4e5aaca3">&#9670;&nbsp;</a></span>TVG_ENGINE_GL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define TVG_ENGINE_GL&#160;&#160;&#160;(1 &lt;&lt; 2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>OpenGL raster engine type. </p>
</div>
</div>
<a id="ga9502ec8d4433abfcf1f92cfb1aa36d78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9502ec8d4433abfcf1f92cfb1aa36d78">&#9670;&nbsp;</a></span>TVG_ENGINE_SW</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define TVG_ENGINE_SW&#160;&#160;&#160;(1 &lt;&lt; 1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>CPU raster engine type. </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga1b517176a56dde4e9ea9c8eb331660a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1b517176a56dde4e9ea9c8eb331660a9">&#9670;&nbsp;</a></span>tvg_engine_init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_engine_init </td>
<td>(</td>
<td class="paramtype">unsigned&#160;</td>
<td class="paramname"><em>engine_method</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned&#160;</td>
<td class="paramname"><em>threads</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes TVG engines. </p>
<p>It must be called before any other function, at the beginning of the TVG client.</p>
<div class="fragment"><div class="line"><a class="code" href="group__ThorVGCapi__Initializer.html#ga1b517176a56dde4e9ea9c8eb331660a9">tvg_engine_init</a>(<a class="code" href="group__ThorVGCapi__Initializer.html#ga9502ec8d4433abfcf1f92cfb1aa36d78">TVG_ENGINE_SW</a>, 0); <span class="comment">//Initialize software renderer and use the main thread only</span></div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">engine_method</td><td>The engine types<ul>
<li>TVG_ENGINE_SW: CPU rasterizer</li>
<li>TVG_ENGINE_GL: OpenGL rasterizer (not supported yet) </li>
</ul>
</td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">threads</td><td>The number of additional threads used to perform rendering. Zero indicates only the main thread is to be used.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
<tr><td class="paramname">TVG_RESULT_INSUFFICIENT_CONDITION</td><td>An internal error possibly with memory allocation. </td></tr>
<tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>Unknown engine type. </td></tr>
<tr><td class="paramname">TVG_RESULT_NOT_SUPPORTED</td><td>Unsupported engine type. </td></tr>
<tr><td class="paramname">TVG_RESULT_UNKNOWN</td><td>Other error.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>For multiple backeneds bitwise operation on the engine types is allowed. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__ThorVGCapi__Initializer.html#ga661d062ba6f2c98689b5b70e1cbf7a92" title="Terminates TVG engines. ">tvg_engine_term()</a> </dd>
<dd>
<a class="el" href="group__ThorVGCapi__Initializer.html#ga9502ec8d4433abfcf1f92cfb1aa36d78">TVG_ENGINE_SW</a>, <a class="el" href="group__ThorVGCapi__Initializer.html#ga47a4b3bac424698c6c3a21bc4e5aaca3">TVG_ENGINE_GL</a> </dd></dl>
</div>
</div>
<a id="ga661d062ba6f2c98689b5b70e1cbf7a92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga661d062ba6f2c98689b5b70e1cbf7a92">&#9670;&nbsp;</a></span>tvg_engine_term()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_engine_term </td>
<td>(</td>
<td class="paramtype">unsigned&#160;</td>
<td class="paramname"><em>engine_method</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Terminates TVG engines. </p>
<p>It should be called in case of termination of the TVG client with the same engine types as were passed when <a class="el" href="group__ThorVGCapi__Initializer.html#ga1b517176a56dde4e9ea9c8eb331660a9" title="Initializes TVG engines. ">tvg_engine_init()</a> was called.</p>
<div class="fragment"><div class="line"><a class="code" href="group__ThorVGCapi__Initializer.html#ga1b517176a56dde4e9ea9c8eb331660a9">tvg_engine_init</a>(<a class="code" href="group__ThorVGCapi__Initializer.html#ga9502ec8d4433abfcf1f92cfb1aa36d78">TVG_ENGINE_SW</a>, 0);</div><div class="line"><span class="comment">//define canvas and shapes, update shapes, general rendering calls</span></div><div class="line"><a class="code" href="group__ThorVGCapi__Initializer.html#ga661d062ba6f2c98689b5b70e1cbf7a92">tvg_engine_term</a>(<a class="code" href="group__ThorVGCapi__Initializer.html#ga9502ec8d4433abfcf1f92cfb1aa36d78">TVG_ENGINE_SW</a>);</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">engine_method</td><td>renderer type<ul>
<li>TVG_ENGINE_SW: CPU rasterizer</li>
<li>TVG_ENGINE_GL: OpenGL rasterizer (not supported yet)</li>
</ul>
</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
<tr><td class="paramname">TVG_RESULT_INSUFFICIENT_CONDITION</td><td>Multiple function calls. </td></tr>
<tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>Unknown engine type. </td></tr>
<tr><td class="paramname">TVG_RESULT_NOT_SUPPORTED</td><td>Unsupported engine type. </td></tr>
<tr><td class="paramname">TVG_RESULT_UNKNOWN</td><td>An internal error.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__ThorVGCapi__Initializer.html#ga1b517176a56dde4e9ea9c8eb331660a9" title="Initializes TVG engines. ">tvg_engine_init()</a> </dd>
<dd>
<a class="el" href="group__ThorVGCapi__Initializer.html#ga9502ec8d4433abfcf1f92cfb1aa36d78">TVG_ENGINE_SW</a>, <a class="el" href="group__ThorVGCapi__Initializer.html#ga47a4b3bac424698c6c3a21bc4e5aaca3">TVG_ENGINE_GL</a> </dd></dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>