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,241 @@
<!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>VST 3 Interfaces: ivsteditcontroller.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">VST 3 Interfaces<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('ivsteditcontroller_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="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle"><div class="title">ivsteditcontroller.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="elRef" href="../base/ipluginbase_8h.html">pluginterfaces/base/ipluginbase.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="vsttypes_8h.html">pluginterfaces/vst/vsttypes.h</a>&quot;</code><br />
<code>#include &quot;<a class="elRef" href="../base/falignpush_8h.html">pluginterfaces/base/falignpush.h</a>&quot;</code><br />
<code>#include &quot;<a class="elRef" href="../base/falignpop_8h.html">pluginterfaces/base/falignpop.h</a>&quot;</code><br />
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSteinberg_1_1Vst_1_1ParameterInfo.html">ParameterInfo</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Controller <a class="elRef" href="../vstsdk/classSteinberg_1_1Vst_1_1Parameter.html">Parameter</a> Info. <a href="structSteinberg_1_1Vst_1_1ParameterInfo.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandler.html">IComponentHandler</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Host callback interface for an edit controller: <a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandler.html" title="Host callback interface for an edit controller: Vst::IComponentHandler.">Vst::IComponentHandler</a>. <a href="classSteinberg_1_1Vst_1_1IComponentHandler.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandler2.html">IComponentHandler2</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extended host callback interface for an edit controller: <a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandler2.html" title="Extended host callback interface for an edit controller: Vst::IComponentHandler2.">Vst::IComponentHandler2</a>. <a href="classSteinberg_1_1Vst_1_1IComponentHandler2.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandlerBusActivation.html">IComponentHandlerBusActivation</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extended host callback interface for an edit controller: <a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandlerBusActivation.html" title="Extended host callback interface for an edit controller: Vst::IComponentHandlerBusActivation.">Vst::IComponentHandlerBusActivation</a>. <a href="classSteinberg_1_1Vst_1_1IComponentHandlerBusActivation.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IProgress.html">IProgress</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extended host callback interface for an edit controller: <a class="el" href="classSteinberg_1_1Vst_1_1IProgress.html" title="Extended host callback interface for an edit controller: Vst::IProgress.">Vst::IProgress</a>. <a href="classSteinberg_1_1Vst_1_1IProgress.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IEditController.html">IEditController</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Edit controller component interface: <a class="el" href="classSteinberg_1_1Vst_1_1IEditController.html" title="Edit controller component interface: Vst::IEditController.">Vst::IEditController</a>. <a href="classSteinberg_1_1Vst_1_1IEditController.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IEditController2.html">IEditController2</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Edit controller component interface extension: <a class="el" href="classSteinberg_1_1Vst_1_1IEditController2.html" title="Edit controller component interface extension: Vst::IEditController2.">Vst::IEditController2</a>. <a href="classSteinberg_1_1Vst_1_1IEditController2.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IMidiMapping.html">IMidiMapping</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">MIDI Mapping interface: <a class="el" href="classSteinberg_1_1Vst_1_1IMidiMapping.html" title="MIDI Mapping interface: Vst::IMidiMapping.">Vst::IMidiMapping</a>. <a href="classSteinberg_1_1Vst_1_1IMidiMapping.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IEditControllerHostEditing.html">IEditControllerHostEditing</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="elRef" href="../vstsdk/classSteinberg_1_1Vst_1_1Parameter.html">Parameter</a> Editing from host: <a class="el" href="classSteinberg_1_1Vst_1_1IEditControllerHostEditing.html" title="Parameter Editing from host: Vst::IEditControllerHostEditing.">Vst::IEditControllerHostEditing</a>. <a href="classSteinberg_1_1Vst_1_1IEditControllerHostEditing.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandlerSystemTime.html">IComponentHandlerSystemTime</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extended plug-in interface <a class="el" href="classSteinberg_1_1Vst_1_1IComponentHandler.html" title="Host callback interface for an edit controller: Vst::IComponentHandler.">IComponentHandler</a> for an edit controller. <a href="classSteinberg_1_1Vst_1_1IComponentHandlerSystemTime.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" href="../base/namespaceSteinberg.html">Steinberg</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSteinberg_1_1Vst.html">Steinberg::Vst</a></td></tr>
<tr class="memdesc:namespaceSteinberg_1_1Vst"><td class="mdescLeft">&#160;</td><td class="mdescRight">All VST specific interfaces are located in <a class="el" href="namespaceSteinberg_1_1Vst.html" title="All VST specific interfaces are located in Vst namespace.">Vst</a> namespace. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSteinberg_1_1Vst_1_1ViewType.html">Steinberg::Vst::ViewType</a></td></tr>
<tr class="memdesc:namespaceSteinberg_1_1Vst_1_1ViewType"><td class="mdescLeft">&#160;</td><td class="mdescRight">View Types used for <a class="el" href="classSteinberg_1_1Vst_1_1IEditController.html#a2fe381a8fb8412e6854c941dbb085fec" title="Creates the editor view of the plug-in, currently only &quot;editor&quot; is supported, see ViewType.">IEditController::createView</a>. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a49d6f6f53c7630ea334474e9998c0a99" id="r_a49d6f6f53c7630ea334474e9998c0a99"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a49d6f6f53c7630ea334474e9998c0a99">kVstComponentControllerClass</a>&#160;&#160;&#160;&quot;Component Controller Class&quot;</td></tr>
<tr class="memdesc:a49d6f6f53c7630ea334474e9998c0a99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class Category Name for Controller Component. <br /></td></tr>
<tr class="separator:a49d6f6f53c7630ea334474e9998c0a99"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr class="memitem:gace7eaa9efefc89d60148285cfbbad71d" id="r_gace7eaa9efefc89d60148285cfbbad71d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__vst3typedef.html#gace7eaa9efefc89d60148285cfbbad71d">KnobMode</a> = <a class="elRef" href="../base/group__smtgtypedef.html#gab7903878916593daecbeb95b98115ab0">int32</a></td></tr>
<tr class="memdesc:gace7eaa9efefc89d60148285cfbbad71d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Knob Mode Type. <br /></td></tr>
<tr class="separator:gace7eaa9efefc89d60148285cfbbad71d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a35f71d02b79cbd11942a149e651373e6" id="r_a35f71d02b79cbd11942a149e651373e6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6">RestartFlags</a> : int32 { <br />
&#160;&#160;<a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6a22ef5ace2e53c785283a595b6add28b3">kReloadComponent</a> = 1 &lt;&lt; 0
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6a47642f19b6da08e1bea896b6e06e630b">kIoChanged</a> = 1 &lt;&lt; 1
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6a67a358277112f9c5ac816474ae501a09">kParamValuesChanged</a> = 1 &lt;&lt; 2
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6a560af1d548105a5e1c72f07a1b6fbd29">kLatencyChanged</a> = 1 &lt;&lt; 3
, <br />
&#160;&#160;<a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6af5308f6f5d92e718ccbd4cb0ca414907">kParamTitlesChanged</a> = 1 &lt;&lt; 4
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6ae2e3ed4527f88e577a2aeb595bd853fd">kMidiCCAssignmentChanged</a> = 1 &lt;&lt; 5
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6aa11fe6e24349c6d2f7e0035dbc01c10b">kNoteExpressionChanged</a> = 1 &lt;&lt; 6
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6abf3d2b0a3519f44507b88691c0e6555e">kIoTitlesChanged</a> = 1 &lt;&lt; 7
, <br />
&#160;&#160;<a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6a2f4bc9de12259020c78fa4225f1d90b3">kPrefetchableSupportChanged</a> = 1 &lt;&lt; 8
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6a1a2ea1cc0af4a65e3576a2f8c366350d">kRoutingInfoChanged</a> = 1 &lt;&lt; 9
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6ab9d170d239305a60a6632d2224dd0cc9">kKeyswitchChanged</a> = 1 &lt;&lt; 10
, <a class="el" href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6aad5c03a524a2b60c6e72f3f1b7fa1efa">kParamIDMappingChanged</a> = 1 &lt;&lt; 11
<br />
}</td></tr>
<tr class="memdesc:a35f71d02b79cbd11942a149e651373e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flags used for IComponentHandler::restartComponent. <a href="namespaceSteinberg_1_1Vst.html#a35f71d02b79cbd11942a149e651373e6">More...</a><br /></td></tr>
<tr class="separator:a35f71d02b79cbd11942a149e651373e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8ed0b1f451e979e746e721810469fc6" id="r_ac8ed0b1f451e979e746e721810469fc6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSteinberg_1_1Vst.html#ac8ed0b1f451e979e746e721810469fc6">KnobModes</a> : KnobMode { <a class="el" href="namespaceSteinberg_1_1Vst.html#ac8ed0b1f451e979e746e721810469fc6a261944b6b143c6fc78fa1e9c783200ea">kCircularMode</a> = 0
, <a class="el" href="namespaceSteinberg_1_1Vst.html#ac8ed0b1f451e979e746e721810469fc6a98a7d7b1f331414876a55df149340e1e">kRelativCircularMode</a>
, <a class="el" href="namespaceSteinberg_1_1Vst.html#ac8ed0b1f451e979e746e721810469fc6a248b4aaa79db639d5610c6e632269d7a">kLinearMode</a>
}</td></tr>
<tr class="memdesc:ac8ed0b1f451e979e746e721810469fc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Knob Mode. <a href="namespaceSteinberg_1_1Vst.html#ac8ed0b1f451e979e746e721810469fc6">More...</a><br /></td></tr>
<tr class="separator:ac8ed0b1f451e979e746e721810469fc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:aaa62c4c32f0270a908eb20c7c7124dfc" id="r_aaa62c4c32f0270a908eb20c7c7124dfc"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="group__vst3typedef.html#gaf857b729bfca1b912196dd4ff5421420">CString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSteinberg_1_1Vst_1_1ViewType.html#aaa62c4c32f0270a908eb20c7c7124dfc">kEditor</a> = &quot;editor&quot;</td></tr>
<tr class="separator:aaa62c4c32f0270a908eb20c7c7124dfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a49d6f6f53c7630ea334474e9998c0a99" name="a49d6f6f53c7630ea334474e9998c0a99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49d6f6f53c7630ea334474e9998c0a99">&#9670;&#160;</a></span>kVstComponentControllerClass</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define kVstComponentControllerClass&#160;&#160;&#160;&quot;Component Controller Class&quot;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Class Category Name for Controller Component. </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>