HumanRender/Thirdparty/irrKlang/doc/cpp/irr_klang_8h_source.html

173 lines
18 KiB
HTML
Raw Permalink Normal View History

2024-12-19 17:46:41 +00:00
<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!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"/>
<title>irrKlang: irrKlang.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.1 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<img id="MSearchSelect" src="search/search.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</div>
</li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File&nbsp;List</span></a></li>
<li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
</ul>
</div>
<h1>irrKlang.h</h1><a href="irr_klang_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* irrKlang.h -- interface of the &apos;irrKlang&apos; library</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment"> Copyright (C) 2002-2018 Nikolaus Gebhardt</span>
<a name="l00004"></a>00004 <span class="comment"></span>
<a name="l00005"></a>00005 <span class="comment"> This software is provided &apos;as-is&apos;, without any express or implied</span>
<a name="l00006"></a>00006 <span class="comment"> warranty. In no event will the authors be held liable for any damages</span>
<a name="l00007"></a>00007 <span class="comment"> arising from the use of this software.</span>
<a name="l00008"></a>00008 <span class="comment">*/</span>
<a name="l00009"></a>00009
<a name="l00010"></a>00010 <span class="preprocessor">#ifndef __IRR_KLANG_H_INCLUDED__</span>
<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define __IRR_KLANG_H_INCLUDED__</span>
<a name="l00012"></a>00012 <span class="preprocessor"></span>
<a name="l00013"></a>00013 <span class="preprocessor">#include &quot;<a class="code" href="ik__irr_klang_types_8h.html">ik_irrKlangTypes.h</a>&quot;</span>
<a name="l00014"></a>00014 <span class="preprocessor">#include &quot;<a class="code" href="ik__vec3d_8h.html">ik_vec3d.h</a>&quot;</span>
<a name="l00015"></a>00015
<a name="l00016"></a>00016 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_ref_counted_8h.html">ik_IRefCounted.h</a>&quot;</span>
<a name="l00017"></a>00017 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_virtual_ref_counted_8h.html">ik_IVirtualRefCounted.h</a>&quot;</span>
<a name="l00018"></a>00018
<a name="l00019"></a>00019 <span class="preprocessor">#include &quot;<a class="code" href="ik___e_sound_output_drivers_8h.html">ik_ESoundOutputDrivers.h</a>&quot;</span>
<a name="l00020"></a>00020 <span class="preprocessor">#include &quot;<a class="code" href="ik___e_sound_engine_options_8h.html">ik_ESoundEngineOptions.h</a>&quot;</span>
<a name="l00021"></a>00021 <span class="preprocessor">#include &quot;<a class="code" href="ik___e_stream_modes_8h.html">ik_EStreamModes.h</a>&quot;</span>
<a name="l00022"></a>00022 <span class="preprocessor">#include &quot;<a class="code" href="ik___s_audio_stream_format_8h.html">ik_SAudioStreamFormat.h</a>&quot;</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_engine_8h.html">ik_ISoundEngine.h</a>&quot;</span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_source_8h.html">ik_ISoundSource.h</a>&quot;</span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_8h.html">ik_ISound.h</a>&quot;</span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_audio_stream_8h.html">ik_IAudioStream.h</a>&quot;</span>
<a name="l00027"></a>00027 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_audio_stream_loader_8h.html">ik_IAudioStreamLoader.h</a>&quot;</span>
<a name="l00028"></a>00028 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_effect_control_8h.html">ik_ISoundEffectControl.h</a>&quot;</span>
<a name="l00029"></a>00029 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_stop_event_receiver_8h.html">ik_ISoundStopEventReceiver.h</a>&quot;</span>
<a name="l00030"></a>00030 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_file_factory_8h.html">ik_IFileFactory.h</a>&quot;</span>
<a name="l00031"></a>00031 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_file_reader_8h.html">ik_IFileReader.h</a>&quot;</span>
<a name="l00032"></a>00032 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_device_list_8h.html">ik_ISoundDeviceList.h</a>&quot;</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_audio_recorder_8h.html">ik_IAudioRecorder.h</a>&quot;</span>
<a name="l00034"></a>00034 <span class="preprocessor">#include &quot;<a class="code" href="ik___i_sound_mixed_output_receiver_8h.html">ik_ISoundMixedOutputReceiver.h</a>&quot;</span>
<a name="l00035"></a>00035
<a name="l00037"></a><a class="code" href="irr_klang_8h.html#a3c47e8f6a51361741ab48b1cee6c4ba2">00037</a> <span class="preprocessor">#define IRR_KLANG_VERSION &quot;1.6.0&quot;</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span>
<a name="l00912"></a>00912 <span class="preprocessor">#if defined(IRRKLANG_STATIC)</span>
<a name="l00913"></a>00913 <span class="preprocessor"></span><span class="preprocessor"> #define IRRKLANG_API</span>
<a name="l00914"></a>00914 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00915"></a>00915 <span class="preprocessor"></span><span class="preprocessor"> #if (defined(WIN32) || defined(WIN64) || defined(_MSC_VER))</span>
<a name="l00916"></a>00916 <span class="preprocessor"></span><span class="preprocessor"> #ifdef IRRKLANG_EXPORTS</span>
<a name="l00917"></a>00917 <span class="preprocessor"></span><span class="preprocessor"> #define IRRKLANG_API __declspec(dllexport)</span>
<a name="l00918"></a>00918 <span class="preprocessor"></span><span class="preprocessor"> #else</span>
<a name="l00919"></a>00919 <span class="preprocessor"></span><span class="preprocessor"> #define IRRKLANG_API __declspec(dllimport)</span>
<a name="l00920"></a>00920 <span class="preprocessor"></span><span class="preprocessor"> #endif // IRRKLANG_EXPORT</span>
<a name="l00921"></a>00921 <span class="preprocessor"></span><span class="preprocessor"> #else</span>
<a name="l00922"></a><a class="code" href="irr_klang_8h.html#a46984c40d70515d79d72043bfbd554d5">00922</a> <span class="preprocessor"></span><span class="preprocessor"> #define IRRKLANG_API __attribute__((visibility(&quot;default&quot;)))</span>
<a name="l00923"></a>00923 <span class="preprocessor"></span><span class="preprocessor"> #endif // defined(WIN32) || defined(WIN64)</span>
<a name="l00924"></a>00924 <span class="preprocessor"></span><span class="preprocessor">#endif // IRRKLANG_STATIC</span>
<a name="l00925"></a>00925 <span class="preprocessor"></span>
<a name="l00926"></a>00926 <span class="preprocessor">#if defined(_STDCALL_SUPPORTED)</span>
<a name="l00927"></a>00927 <span class="preprocessor"></span><span class="preprocessor">#define IRRKLANGCALLCONV __stdcall // Declare the calling convention.</span>
<a name="l00928"></a>00928 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00929"></a><a class="code" href="irr_klang_8h.html#abd61a1fa49408e803e5aa3049fdf43f8">00929</a> <span class="preprocessor"></span><span class="preprocessor">#define IRRKLANGCALLCONV</span>
<a name="l00930"></a>00930 <span class="preprocessor"></span><span class="preprocessor">#endif // STDCALL_SUPPORTED</span>
<a name="l00931"></a>00931 <span class="preprocessor"></span>
<a name="l00933"></a>00933 <span class="keyword">namespace </span>irrklang
<a name="l00934"></a>00934 {
<a name="l00936"></a>00936
<a name="l00952"></a>00952 <a class="code" href="irr_klang_8h.html#a46984c40d70515d79d72043bfbd554d5">IRRKLANG_API</a> ISoundEngine* <a class="code" href="irr_klang_8h.html#abd61a1fa49408e803e5aa3049fdf43f8">IRRKLANGCALLCONV</a> <a class="code" href="namespaceirrklang.html#ad9829f898bc0665fdd2554a6f5c7ca1c" title="Creates an irrKlang device. The irrKlang device is the root object for using the...">createIrrKlangDevice</a>(
<a name="l00953"></a>00953 <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afe" title="An enumeration for all types of supported sound drivers.">E_SOUND_OUTPUT_DRIVER</a> driver = <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afea8cc9863f3b410698313b8637721e51ec" title="Autodetects the best sound driver for the system.">ESOD_AUTO_DETECT</a>,
<a name="l00954"></a>00954 <span class="keywordtype">int</span> options = <a class="code" href="namespaceirrklang.html#ac9155ff55b347df6e905462100762d7facca58ad3ee7e3c2e874bc4015f36f2a9" title="Default parameters when starting up the engine.">ESEO_DEFAULT_OPTIONS</a>,
<a name="l00955"></a>00955 <span class="keyword">const</span> <span class="keywordtype">char</span>* deviceID = 0,
<a name="l00956"></a>00956 <span class="keyword">const</span> <span class="keywordtype">char</span>* sdk_version_do_not_use = <a class="code" href="irr_klang_8h.html#a3c47e8f6a51361741ab48b1cee6c4ba2" title="irrKlang Version">IRR_KLANG_VERSION</a>);
<a name="l00957"></a>00957
<a name="l00958"></a>00958
<a name="l00960"></a>00960
<a name="l00971"></a>00971 <a class="code" href="irr_klang_8h.html#a46984c40d70515d79d72043bfbd554d5">IRRKLANG_API</a> ISoundDeviceList* <a class="code" href="irr_klang_8h.html#abd61a1fa49408e803e5aa3049fdf43f8">IRRKLANGCALLCONV</a> <a class="code" href="namespaceirrklang.html#a38d9a69bf54fd60e76e80e199e44faee" title="Creates a list of available sound devices for the driver type.">createSoundDeviceList</a>(
<a name="l00972"></a>00972 <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afe" title="An enumeration for all types of supported sound drivers.">E_SOUND_OUTPUT_DRIVER</a> driver = <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afea8cc9863f3b410698313b8637721e51ec" title="Autodetects the best sound driver for the system.">ESOD_AUTO_DETECT</a>,
<a name="l00973"></a>00973 <span class="keyword">const</span> <span class="keywordtype">char</span>* sdk_version_do_not_use = <a class="code" href="irr_klang_8h.html#a3c47e8f6a51361741ab48b1cee6c4ba2" title="irrKlang Version">IRR_KLANG_VERSION</a>);
<a name="l00974"></a>00974
<a name="l00975"></a>00975
<a name="l00977"></a>00977
<a name="l00995"></a>00995 <a class="code" href="irr_klang_8h.html#a46984c40d70515d79d72043bfbd554d5">IRRKLANG_API</a> IAudioRecorder* <a class="code" href="irr_klang_8h.html#abd61a1fa49408e803e5aa3049fdf43f8">IRRKLANGCALLCONV</a> <a class="code" href="namespaceirrklang.html#aaa4535359bd66857aaadb746cf7d8cec" title="Creates an irrKlang audio recording device. The IAudioRecorder is the root object...">createIrrKlangAudioRecorder</a>(
<a name="l00996"></a>00996 ISoundEngine* irrKlangDeviceForPlayback,
<a name="l00997"></a>00997 <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afe" title="An enumeration for all types of supported sound drivers.">E_SOUND_OUTPUT_DRIVER</a> driver = <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afea8cc9863f3b410698313b8637721e51ec" title="Autodetects the best sound driver for the system.">ESOD_AUTO_DETECT</a>,
<a name="l00998"></a>00998 <span class="keyword">const</span> <span class="keywordtype">char</span>* deviceID = 0,
<a name="l00999"></a>00999 <span class="keyword">const</span> <span class="keywordtype">char</span>* sdk_version_do_not_use = <a class="code" href="irr_klang_8h.html#a3c47e8f6a51361741ab48b1cee6c4ba2" title="irrKlang Version">IRR_KLANG_VERSION</a>);
<a name="l01000"></a>01000
<a name="l01002"></a>01002
<a name="l01012"></a>01012 <a class="code" href="irr_klang_8h.html#a46984c40d70515d79d72043bfbd554d5">IRRKLANG_API</a> ISoundDeviceList* <a class="code" href="irr_klang_8h.html#abd61a1fa49408e803e5aa3049fdf43f8">IRRKLANGCALLCONV</a> <a class="code" href="namespaceirrklang.html#a0e8013b9e8f11231e69ce1da9457a339" title="Creates a list of available recording devices for the driver type.">createAudioRecorderDeviceList</a>(
<a name="l01013"></a>01013 <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afe" title="An enumeration for all types of supported sound drivers.">E_SOUND_OUTPUT_DRIVER</a> driver = <a class="code" href="namespaceirrklang.html#a77f31ac02a7d33fe94807be709f72afea8cc9863f3b410698313b8637721e51ec" title="Autodetects the best sound driver for the system.">ESOD_AUTO_DETECT</a>,
<a name="l01014"></a>01014 <span class="keyword">const</span> <span class="keywordtype">char</span>* sdk_version_do_not_use = <a class="code" href="irr_klang_8h.html#a3c47e8f6a51361741ab48b1cee6c4ba2" title="irrKlang Version">IRR_KLANG_VERSION</a>);
<a name="l01015"></a>01015
<a name="l01016"></a>01016
<a name="l01018"></a>01018
<a name="l01028"></a>01028 <a class="code" href="irr_klang_8h.html#a46984c40d70515d79d72043bfbd554d5">IRRKLANG_API</a> <span class="keywordtype">bool</span> <a class="code" href="irr_klang_8h.html#abd61a1fa49408e803e5aa3049fdf43f8">IRRKLANGCALLCONV</a> <a class="code" href="namespaceirrklang.html#a2552f41aac247b77e0f1287c28744cd7" title="Converts a wchar_t string to an utf8 string, useful when using Windows in unicode...">makeUTF8fromUTF16string</a>(
<a name="l01029"></a>01029 <span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* pInputString, <span class="keywordtype">char</span>* pOutputBuffer, <span class="keywordtype">int</span> outputBufferSize);
<a name="l01030"></a>01030
<a name="l01031"></a>01031
<a name="l01032"></a>01032 } <span class="comment">// end namespace irrklang</span>
<a name="l01033"></a>01033
<a name="l01034"></a>01034
<a name="l01039"></a>01039 <span class="preprocessor">#endif</span>
<a name="l01040"></a>01040 <span class="preprocessor"></span>
</pre></div></div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<hr size="1">
<address style="align: right;">
<small> </small>
</address>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr>
<td width="0"> <div align="left"><small><a href="http://www.ambiera.com/irrklang" target="_blank"><img src="irrklang.png" alt="irrKlang Audio Library" align="middle" border=0 width=88 height=30></a></small></div></td>
<td> <div align="left"><small><em><font size="2">The <a href="http://www.ambiera.com/irrklang" target="_blank">irrKlang
Engine</a> Documentation &copy; 2003-2018 by Nikolaus Gebhardt. Generated
by <a href="http://www.doxygen.org" target="_blank">Doxygen</a>
(1.6.1)</font></em></small></div></td>
</tr>
</table>
<address style="align: right;">
</address>
</body>
</html>