|
- <!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">
- <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.9.1"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>DISTRHO Plugin Framework: Namespace Macros</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="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" />
- </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="projectalign" style="padding-left: 0.5em;">
- <div id="projectname">DISTRHO Plugin Framework
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.9.1 -->
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
- /* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- $(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
- });
- /* @license-end */</script>
- <div id="main-nav"></div>
- </div><!-- top -->
- <!-- 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> </div>
- <div class="headertitle">
- <div class="title">Namespace Macros</div> </div>
- </div><!--header-->
- <div class="contents">
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
- Macros</h2></td></tr>
- <tr class="memitem:gad4d95edc702f6066ba2f41740f7e5393"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NamespaceMacros.html#gad4d95edc702f6066ba2f41740f7e5393">DISTRHO_NAMESPACE</a>   DISTRHO</td></tr>
- <tr class="separator:gad4d95edc702f6066ba2f41740f7e5393"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:gac4cb97c393d20c28ba19365d844341cd"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NamespaceMacros.html#gac4cb97c393d20c28ba19365d844341cd">START_NAMESPACE_DISTRHO</a>   namespace <a class="el" href="group__NamespaceMacros.html#gad4d95edc702f6066ba2f41740f7e5393">DISTRHO_NAMESPACE</a> {</td></tr>
- <tr class="separator:gac4cb97c393d20c28ba19365d844341cd"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ga3ff541a449593e069a29e92d21e38ef3"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NamespaceMacros.html#ga3ff541a449593e069a29e92d21e38ef3">END_NAMESPACE_DISTRHO</a>   }</td></tr>
- <tr class="separator:ga3ff541a449593e069a29e92d21e38ef3"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:gadcd7e7d900fbae0fa1a71d6fbab4d59c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NamespaceMacros.html#gadcd7e7d900fbae0fa1a71d6fbab4d59c">USE_NAMESPACE_DISTRHO</a>   using namespace <a class="el" href="group__NamespaceMacros.html#gad4d95edc702f6066ba2f41740f7e5393">DISTRHO_NAMESPACE</a>;</td></tr>
- <tr class="separator:gadcd7e7d900fbae0fa1a71d6fbab4d59c"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <p>C Macros to use and customize DPF namespaces.</p>
- <p>These are macros that serve as helpers around C++ namespaces, and also as a way to set custom namespaces during a build. </p>
- <h2 class="groupheader">Macro Definition Documentation</h2>
- <a id="gad4d95edc702f6066ba2f41740f7e5393"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#gad4d95edc702f6066ba2f41740f7e5393">◆ </a></span>DISTRHO_NAMESPACE</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define DISTRHO_NAMESPACE   DISTRHO</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Compiler macro that sets the C++ namespace for DPF plugins.<br />
- If unset during build, it will use the name <b>DISTRHO</b> by default.</p>
- <p>Unless you know exactly what you are doing, you do need to modify this value.<br />
- The only probable useful case for customizing it is if you are building a big collection of very similar DPF-based plugins in your application.<br />
- For example, having 2 different versions of the same plugin that should behave differently but still exist within the same binary.</p>
- <p>On macOS (where due to Objective-C restrictions all code that interacts with Cocoa needs to be in a flat namespace), DPF will automatically use the plugin name as prefix to flat namespace functions in order to avoid conflicts.</p>
- <p>So, basically, it is DPF's job to make sure plugin binaries are 100% usable as-is.<br />
- You typically do not need to care about this at all. </p>
-
- </div>
- </div>
- <a id="gac4cb97c393d20c28ba19365d844341cd"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#gac4cb97c393d20c28ba19365d844341cd">◆ </a></span>START_NAMESPACE_DISTRHO</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define START_NAMESPACE_DISTRHO   namespace <a class="el" href="group__NamespaceMacros.html#gad4d95edc702f6066ba2f41740f7e5393">DISTRHO_NAMESPACE</a> {</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Compiler macro that begins the C++ namespace for <b>DISTRHO</b>, as needed for (the DSP side of) plugins.<br />
- All classes in DPF are within this namespace except for UI/graphics stuff. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__NamespaceMacros.html#ga3ff541a449593e069a29e92d21e38ef3">END_NAMESPACE_DISTRHO</a> </dd></dl>
-
- </div>
- </div>
- <a id="ga3ff541a449593e069a29e92d21e38ef3"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ga3ff541a449593e069a29e92d21e38ef3">◆ </a></span>END_NAMESPACE_DISTRHO</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define END_NAMESPACE_DISTRHO   }</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Close the namespace previously started by START_NAMESPACE_DISTRHO.<br />
- This doesn't really need to be a macro, it is just prettier/more consistent that way. </p>
-
- </div>
- </div>
- <a id="gadcd7e7d900fbae0fa1a71d6fbab4d59c"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#gadcd7e7d900fbae0fa1a71d6fbab4d59c">◆ </a></span>USE_NAMESPACE_DISTRHO</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define USE_NAMESPACE_DISTRHO   using namespace <a class="el" href="group__NamespaceMacros.html#gad4d95edc702f6066ba2f41740f7e5393">DISTRHO_NAMESPACE</a>;</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Make the <b>DISTRHO</b> namespace available in the current function scope.<br />
- This is not set by default in order to avoid conflicts with commonly used names such as "Parameter" and "Plugin". </p>
-
- </div>
- </div>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
- </small></address>
- </body>
- </html>
|