68 lines
8.9 KiB
HTML
68 lines
8.9 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
|
<title>proteaAudio</title>
|
|
<link href="protea.css" rel="stylesheet" type="text/css">
|
|
</head><body>
|
|
<div style="text-align: center"><img src="proteaAudio.png"/></div>
|
|
<!-- Generated by Doxygen 1.4.3 -->
|
|
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div>
|
|
<h1>proAudioSdl.h</h1><a href="pro_audio_sdl_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef _AUDIO_SDL_H</span>
|
|
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define _AUDIO_SDL_H</span>
|
|
<a name="l00003"></a>00003 <span class="preprocessor"></span>
|
|
<a name="l00004"></a>00004 <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
|
|
<a name="l00005"></a>00005 <span class="preprocessor">#include <SDL_audio.h></span>
|
|
<a name="l00006"></a>00006 };
|
|
<a name="l00007"></a>00007 <span class="preprocessor">#include "<a class="code" href="pro_audio_8h.html">proAudio.h</a>"</span>
|
|
<a name="l00008"></a>00008 <span class="preprocessor">#include <map></span>
|
|
<a name="l00009"></a>00009
|
|
<a name="l00016"></a>00016 <span class="comment">//--- class DeviceAudioSdl -----------------------------------------</span>
|
|
<a name="l00017"></a>00017
|
|
<a name="l00019"></a>00019 <span class="keyword">class </span>_AudioTrack;
|
|
<a name="l00020"></a>00020
|
|
<a name="l00022"></a><a class="code" href="class_device_audio_sdl.html">00022</a> <span class="keyword">class </span><a class="code" href="class_device_audio_sdl.html">DeviceAudioSdl</a> : <span class="keyword">public</span> <a class="code" href="class_device_audio.html">DeviceAudio</a> {
|
|
<a name="l00023"></a>00023 <span class="keyword">public</span>:
|
|
<a name="l00025"></a>00025
|
|
<a name="l00032"></a>00032 <span class="keyword">static</span> <a class="code" href="class_device_audio.html">DeviceAudio</a>* <a class="code" href="class_device_audio_sdl.html#e0">create</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nTracks=8, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> frequency=22050, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> chunkSize=1024);
|
|
<a name="l00033"></a>00033
|
|
<a name="l00035"></a>00035 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="class_device_audio_sdl.html#a0">sampleFromMemory</a>(<span class="keyword">const</span> <a class="code" href="class_audio_sample.html">AudioSample</a> & <a class="code" href="class_device_audio.html#a7">sample</a>, <span class="keywordtype">float</span> <a class="code" href="class_device_audio.html#a0">volume</a>=1.0f);
|
|
<a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="class_device_audio_sdl.html#a1">sampleDestroy</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sample);
|
|
<a name="l00038"></a>00038
|
|
<a name="l00040"></a>00040
|
|
<a name="l00046"></a>00046 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="class_device_audio_sdl.html#a2">soundPlay</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sample, <span class="keywordtype">float</span> volumeL=1.0f, <span class="keywordtype">float</span> volumeR=1.0f, <span class="keywordtype">float</span> disparity=0.0f, <span class="keywordtype">float</span> pitch=1.0f );
|
|
<a name="l00054"></a>00054 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="class_device_audio_sdl.html#a3">soundLoop</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sample, <span class="keywordtype">float</span> volumeL=1.0f, <span class="keywordtype">float</span> volumeR=1.0f, <span class="keywordtype">float</span> disparity=0.0f, <span class="keywordtype">float</span> pitch=1.0f );
|
|
<a name="l00056"></a>00056
|
|
<a name="l00062"></a>00062 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="class_device_audio_sdl.html#a4">soundUpdate</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sound, <span class="keywordtype">float</span> volumeL, <span class="keywordtype">float</span> volumeR, <span class="keywordtype">float</span> disparity=0.0f, <span class="keywordtype">float</span> pitch=1.0f );
|
|
<a name="l00064"></a>00064 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="class_device_audio_sdl.html#a6">soundStop</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sound);
|
|
<a name="l00066"></a>00066 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_device_audio_sdl.html#a6">soundStop</a>();
|
|
<a name="l00068"></a>00068 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="class_device_audio_sdl.html#a7">soundActive</a>() <span class="keyword">const</span>;
|
|
<a name="l00069"></a>00069 <span class="keyword">protected</span>:
|
|
<a name="l00071"></a>00071 <a class="code" href="class_device_audio_sdl.html#b0">DeviceAudioSdl</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nTracks, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> frequency, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> chunkSize);
|
|
<a name="l00073"></a>00073 <span class="keyword">virtual</span> <a class="code" href="class_device_audio_sdl.html#b1">~DeviceAudioSdl</a>();
|
|
<a name="l00075"></a><a class="code" href="class_device_audio_sdl.html#p0">00075</a> SDL_AudioSpec <a class="code" href="class_device_audio_sdl.html#p0">m_spec</a>;
|
|
<a name="l00077"></a><a class="code" href="class_device_audio_sdl.html#p1">00077</a> std::map<unsigned int, _AudioTrack> <a class="code" href="class_device_audio_sdl.html#p1">mm_sample</a>;
|
|
<a name="l00079"></a><a class="code" href="class_device_audio_sdl.html#p2">00079</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="class_device_audio_sdl.html#p2">m_sampleCounter</a>;
|
|
<a name="l00081"></a><a class="code" href="class_device_audio_sdl.html#p3">00081</a> <span class="keywordtype">bool</span> <a class="code" href="class_device_audio_sdl.html#p3">m_isDesiredFormat</a>;
|
|
<a name="l00082"></a>00082
|
|
<a name="l00084"></a><a class="code" href="class_device_audio_sdl.html#p4">00084</a> _AudioTrack * <a class="code" href="class_device_audio_sdl.html#p4">ma_sound</a>;
|
|
<a name="l00086"></a><a class="code" href="class_device_audio_sdl.html#p5">00086</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="class_device_audio_sdl.html#p5">m_nSound</a>;
|
|
<a name="l00087"></a>00087
|
|
<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="class_device_audio_sdl.html#f0">cbOutput</a>(<span class="keywordtype">void</span> *userData, Uint8 *stream, <span class="keywordtype">int</span> len);
|
|
<a name="l00091"></a>00091 <span class="keywordtype">void</span> <a class="code" href="class_device_audio_sdl.html#b2">mixOutputFloat</a>(<span class="keywordtype">signed</span> <span class="keywordtype">short</span> *outputBuffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nFrames);
|
|
<a name="l00093"></a>00093 <span class="keywordtype">void</span> <a class="code" href="class_device_audio_sdl.html#b3">mixOutputSInt</a>(Uint8 *stream, <span class="keywordtype">int</span> len);
|
|
<a name="l00094"></a>00094 };
|
|
<a name="l00095"></a>00095
|
|
<a name="l00096"></a>00096 <span class="preprocessor">#endif // _AUDIO_SDL_H</span>
|
|
</pre></div><div style="border-width: 1px; border-top-color: gray; border-top-style: solid; margin: 2em 0 0 0;">
|
|
<table cols="2" width="100%" border="0"><tr>
|
|
<td style = "text-align: left; font-size: 75%; padding: 0em 2em;">
|
|
© 2009-02-04 by Gerald Franz, www.viremo.de
|
|
</td>
|
|
<td style = "text-align: right; font-size: 75%; padding: 0em 2em;">
|
|
<a href="../impressum.html">impressum</a>
|
|
</td>
|
|
|
|
</tr></table>
|
|
</div>
|
|
</body>
|
|
</html>
|