Initial release

This commit is contained in:
civ
2026-08-16 18:24:52 +07:00
commit 876886a39a
13244 changed files with 2353959 additions and 0 deletions
@@ -0,0 +1,326 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Base Module: classfactoryhelpers.h File Reference</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>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></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="smtg_extra.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 id="projectrow">
<td id="projectalign">
<div id="projectname">Base Module<span id="projectnumber">&#160;VST 3.8</span>
</div>
<div id="projectbrief">SDK for developing VST plug-in</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
</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">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfactoryhelpers_8h.html',''); initResizable(true); });
/* @license-end */
</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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle"><div class="title">classfactoryhelpers.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:afab65b35bec1c0222e99218f057b0a2c" id="r_afab65b35bec1c0222e99218f057b0a2c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afab65b35bec1c0222e99218f057b0a2c">META_CREATE_FUNC</a>(funcName)</td></tr>
<tr class="separator:afab65b35bec1c0222e99218f057b0a2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae92c46dda6d8a5e8b0862006d1722484" id="r_ae92c46dda6d8a5e8b0862006d1722484"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae92c46dda6d8a5e8b0862006d1722484">CLASS_CREATE_FUNC</a>(className)</td></tr>
<tr class="separator:ae92c46dda6d8a5e8b0862006d1722484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00b4a846a7ea809e79966dbb26cf86c0" id="r_a00b4a846a7ea809e79966dbb26cf86c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a00b4a846a7ea809e79966dbb26cf86c0">SINGLE_CREATE_FUNC</a>(className)</td></tr>
<tr class="separator:a00b4a846a7ea809e79966dbb26cf86c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46dabd263537e5305c29e252e9d4e0df" id="r_a46dabd263537e5305c29e252e9d4e0df"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a46dabd263537e5305c29e252e9d4e0df">_META_CLASS</a>(className)</td></tr>
<tr class="separator:a46dabd263537e5305c29e252e9d4e0df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc4233582b4e6b60c26daffd4e9d3573" id="r_acc4233582b4e6b60c26daffd4e9d3573"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acc4233582b4e6b60c26daffd4e9d3573">_META_CLASS_IFACE</a>(className, Interface)</td></tr>
<tr class="separator:acc4233582b4e6b60c26daffd4e9d3573"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af57be3698f87fcd9b59da1379350b19b" id="r_af57be3698f87fcd9b59da1379350b19b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af57be3698f87fcd9b59da1379350b19b">META_CLASS</a>(className)</td></tr>
<tr class="memdesc:af57be3698f87fcd9b59da1379350b19b"><td class="mdescLeft">&#160;</td><td class="mdescRight">TODO. <br /></td></tr>
<tr class="separator:af57be3698f87fcd9b59da1379350b19b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a865cf36ad2027604dad50327bf9761b5" id="r_a865cf36ad2027604dad50327bf9761b5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a865cf36ad2027604dad50327bf9761b5">META_CLASS_IFACE</a>(className, Interface)</td></tr>
<tr class="memdesc:a865cf36ad2027604dad50327bf9761b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">TODO. <br /></td></tr>
<tr class="separator:a865cf36ad2027604dad50327bf9761b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63944ca72c7a04d6ec65301936202ffe" id="r_a63944ca72c7a04d6ec65301936202ffe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a63944ca72c7a04d6ec65301936202ffe">META_CLASS_SINGLE</a>(className, Interface)</td></tr>
<tr class="memdesc:a63944ca72c7a04d6ec65301936202ffe"><td class="mdescLeft">&#160;</td><td class="mdescRight">TODO. <br /></td></tr>
<tr class="separator:a63944ca72c7a04d6ec65301936202ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="afab65b35bec1c0222e99218f057b0a2c" name="afab65b35bec1c0222e99218f057b0a2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afab65b35bec1c0222e99218f057b0a2c">&#9670;&#160;</a></span>META_CREATE_FUNC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define META_CREATE_FUNC</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>funcName</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> FUnknown* funcName ()</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae92c46dda6d8a5e8b0862006d1722484" name="ae92c46dda6d8a5e8b0862006d1722484"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae92c46dda6d8a5e8b0862006d1722484">&#9670;&#160;</a></span>CLASS_CREATE_FUNC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CLASS_CREATE_FUNC</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keyword">namespace </span>Meta { \</div>
<div class="line"> META_CREATE_FUNC (make##className) { <span class="keywordflow">return</span> (<a class="code hl_define" href="fdebug_8h.html#ab6bca16ed021b1e211fde8669758f199">NEW</a> className)-&gt;unknownCast (); } \</div>
<div class="line"> }</div>
<div class="ttc" id="afdebug_8h_html_ab6bca16ed021b1e211fde8669758f199"><div class="ttname"><a href="fdebug_8h.html#ab6bca16ed021b1e211fde8669758f199">NEW</a></div><div class="ttdeci">#define NEW</div><div class="ttdef"><b>Definition</b> fdebug.h:197</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a00b4a846a7ea809e79966dbb26cf86c0" name="a00b4a846a7ea809e79966dbb26cf86c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00b4a846a7ea809e79966dbb26cf86c0">&#9670;&#160;</a></span>SINGLE_CREATE_FUNC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SINGLE_CREATE_FUNC</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keyword">namespace </span>Meta { \</div>
<div class="line"> META_CREATE_FUNC (make##className) { <span class="keywordflow">return</span> className::instance ()-&gt;unknownCast (); } \</div>
<div class="line"> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a46dabd263537e5305c29e252e9d4e0df" name="a46dabd263537e5305c29e252e9d4e0df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46dabd263537e5305c29e252e9d4e0df">&#9670;&#160;</a></span>_META_CLASS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define _META_CLASS</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keyword">namespace </span>Meta { \</div>
<div class="line"> <span class="keyword">static</span> Steinberg::MetaClass meta##className ((#className), Meta::make##className); \</div>
<div class="line"> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="acc4233582b4e6b60c26daffd4e9d3573" name="acc4233582b4e6b60c26daffd4e9d3573"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc4233582b4e6b60c26daffd4e9d3573">&#9670;&#160;</a></span>_META_CLASS_IFACE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define _META_CLASS_IFACE</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>Interface</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keyword">namespace </span>Meta { \</div>
<div class="line"> <span class="keyword">static</span> Steinberg::MetaClass meta##Interface##className ((#className), Meta::make##className, \</div>
<div class="line"> Interface##_iid); \</div>
<div class="line"> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="af57be3698f87fcd9b59da1379350b19b" name="af57be3698f87fcd9b59da1379350b19b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af57be3698f87fcd9b59da1379350b19b">&#9670;&#160;</a></span>META_CLASS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define META_CLASS</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <a class="code hl_define" href="#ae92c46dda6d8a5e8b0862006d1722484">CLASS_CREATE_FUNC</a> (className) \</div>
<div class="line"> _META_CLASS (className)</div>
<div class="ttc" id="aclassfactoryhelpers_8h_html_ae92c46dda6d8a5e8b0862006d1722484"><div class="ttname"><a href="#ae92c46dda6d8a5e8b0862006d1722484">CLASS_CREATE_FUNC</a></div><div class="ttdeci">#define CLASS_CREATE_FUNC(className)</div><div class="ttdef"><b>Definition</b> classfactoryhelpers.h:30</div></div>
</div><!-- fragment -->
<p>TODO. </p>
</div>
</div>
<a id="a865cf36ad2027604dad50327bf9761b5" name="a865cf36ad2027604dad50327bf9761b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a865cf36ad2027604dad50327bf9761b5">&#9670;&#160;</a></span>META_CLASS_IFACE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define META_CLASS_IFACE</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>Interface</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <a class="code hl_define" href="#ae92c46dda6d8a5e8b0862006d1722484">CLASS_CREATE_FUNC</a> (className) \</div>
<div class="line"> _META_CLASS_IFACE (className, Interface)</div>
</div><!-- fragment -->
<p>TODO. </p>
</div>
</div>
<a id="a63944ca72c7a04d6ec65301936202ffe" name="a63944ca72c7a04d6ec65301936202ffe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63944ca72c7a04d6ec65301936202ffe">&#9670;&#160;</a></span>META_CLASS_SINGLE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define META_CLASS_SINGLE</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>className</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>Interface</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <a class="code hl_define" href="#a00b4a846a7ea809e79966dbb26cf86c0">SINGLE_CREATE_FUNC</a> (className) \</div>
<div class="line"> _META_CLASS_IFACE (className, Interface)</div>
<div class="ttc" id="aclassfactoryhelpers_8h_html_a00b4a846a7ea809e79966dbb26cf86c0"><div class="ttname"><a href="#a00b4a846a7ea809e79966dbb26cf86c0">SINGLE_CREATE_FUNC</a></div><div class="ttdeci">#define SINGLE_CREATE_FUNC(className)</div><div class="ttdef"><b>Definition</b> classfactoryhelpers.h:35</div></div>
</div><!-- fragment -->
<p>TODO. </p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<html>
<head>
<title>Empty</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Author" content="Steinberg">
</head>
<body>
<br/>
<hr width="100%" size="2" align="left" />
<div align=right>
Copyright &copy;<span id="year"></span> <a href="http://www.steinberg.net" target="_blank"><u>Steinberg Media Technologies GmbH</u></a>.
All Rights Reserved. This documentation is under this <a href="http://www.steinberg.net/sdklicenses" target="_blank"><u>license</u></a>.
</div>
<script>
document.querySelector("#year").textContent = new Date().getFullYear();
</script>
</body>
</html>