aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a03427.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/nel/a03427.html')
-rw-r--r--docs/doxygen/nel/a03427.html1764
1 files changed, 1764 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a03427.html b/docs/doxygen/nel/a03427.html
new file mode 100644
index 00000000..69bf9902
--- /dev/null
+++ b/docs/doxygen/nel/a03427.html
@@ -0,0 +1,1764 @@
+<!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>NeL: NLSOUND::CSourceAL class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NLSOUND::CSourceAL Class Reference</h1><code>#include &lt;<a class="el" href="a06426.html">source_al.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for NLSOUND::CSourceAL:
+<p><center><img src="a03427.png" usemap="#NLSOUND::CSourceAL_map" border="0" alt=""></center>
+<map name="NLSOUND::CSourceAL_map">
+<area href="a03428.html" alt="NLSOUND::ISource" shape="rect" coords="0,0,144,24">
+</map>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+OpenAL sound source<p>
+Note: the creation/deletion of sources and the setting of their rolloff factor are done in <a class="el" href="a03418.html">CSoundDriverAL</a>.<p>
+The EAX extensions are not available on all sound cards, and currently not at all on Linux.<p>
+For arguments as 3D vectors, use the NeL vector coordinate system (not OpenAL/OpenGL's one).<p>
+<dl compact><dt><b>Author:</b></dt><dd>Olivier Cado <p>
+Nevrax France </dd></dl>
+<dl compact><dt><b>Date:</b></dt><dd>2001 </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06426.html#l00053">53</a> of file <a class="el" href="a06426.html">source_al.h</a>.<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALa0">CSourceAL</a> (ALuint sourcename=AL_NONE)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <a href="#NLSOUND_1_1CSourceALa0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a02298.html">IBuffer</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALa1">getStaticBuffer</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the next source that is to be played immediately after the present source. <a href="#NLSOUND_1_1CSourceALa1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>ALuint&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALa2">sourceName</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the OpenAL source name. <a href="#NLSOUND_1_1CSourceALa2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALa3">~CSourceAL</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <a href="#NLSOUND_1_1CSourceALa3"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Source properties</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_0">getCone</a> (float &amp;innerAngle, float &amp;outerAngle, float &amp;outerGain) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the cone angles (in radian). <a href="#NLSOUND_1_1CSourceALz1328_0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_1">getDirection</a> (<a class="el" href="a03128.html">NLMISC::CVector</a> &amp;dir) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the direction vector. <a href="#NLSOUND_1_1CSourceALz1328_1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_2">getGain</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the gain. <a href="#NLSOUND_1_1CSourceALz1328_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_3">getMinMaxDistances</a> (float &amp;mindist, float &amp;maxdist) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the min and max distances. <a href="#NLSOUND_1_1CSourceALz1328_3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_4">getPitch</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the pitch. <a href="#NLSOUND_1_1CSourceALz1328_4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_5">getPos</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_6">getSourceRelativeMode</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the source relative mode. <a href="#NLSOUND_1_1CSourceALz1328_6"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_7">getVelocity</a> (<a class="el" href="a03128.html">NLMISC::CVector</a> &amp;vel) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the velocity vector. <a href="#NLSOUND_1_1CSourceALz1328_7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_8">setCone</a> (float innerAngle, float outerAngle, float outerGain)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the cone angles (in radian) and gain (in [0 , 1]) (default: 2PI, 2PI, 0) (3D mode only). <a href="#NLSOUND_1_1CSourceALz1328_8"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_9">setDirection</a> (const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;dir)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the direction vector (3D mode only) (default: (0,0,0) as non-directional). <a href="#NLSOUND_1_1CSourceALz1328_9"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_10">setEAXProperty</a> (<a class="el" href="a04558.html#a15">uint</a> prop, void *<a class="el" href="a04223.html#a658">value</a>, <a class="el" href="a04558.html#a15">uint</a> valuesize)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set any EAX source property if EAX available. <a href="#NLSOUND_1_1CSourceALz1328_10"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_11">setGain</a> (float gain)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_12">setMinMaxDistances</a> (float mindist, float maxdist, bool deferred)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the min and max distances (default: 1, MAX_FLOAT) (3D mode only). <a href="#NLSOUND_1_1CSourceALz1328_12"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_13">setPitch</a> (float pitch)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_14">setPos</a> (const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;pos, bool deffered=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_15">setSourceRelativeMode</a> (bool mode)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the source relative mode. If true, positions are interpreted relative to the listener position (default: false). <a href="#NLSOUND_1_1CSourceALz1328_15"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_16">setVelocity</a> (const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;vel, bool deferred)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the velocity vector (3D mode only) (default: (0,0,0)). <a href="#NLSOUND_1_1CSourceALz1328_16"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Playback control</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_0">getLooping</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the looping state. <a href="#NLSOUND_1_1CSourceALz1326_0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_1">isPlaying</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the playing state. <a href="#NLSOUND_1_1CSourceALz1326_1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_2">isStopped</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return true if playing is finished or <a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_6">stop()</a> has been called. <a href="#NLSOUND_1_1CSourceALz1326_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_3">pause</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pause. Call <a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_4">play()</a> to resume. <a href="#NLSOUND_1_1CSourceALz1326_3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_4">play</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Play the static buffer (or stream in and play). <a href="#NLSOUND_1_1CSourceALz1326_4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_5">setLooping</a> (bool l)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set looping on/off for future playbacks (default: off). <a href="#NLSOUND_1_1CSourceALz1326_5"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_6">stop</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stop playing. <a href="#NLSOUND_1_1CSourceALz1326_6"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_7">update</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Update the source (e.g. continue to stream the data in). <a href="#NLSOUND_1_1CSourceALz1326_7"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Playback control</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_1">getTime</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of milliseconds the source has been playing. <a href="#NLSOUND_1_1ISourcez1332_1"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Source properties</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_8">setAlpha</a> (double a)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Testing. <a href="#NLSOUND_1_1ISourcez1334_8"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Initialization</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1324_0">setStaticBuffer</a> (<a class="el" href="a02298.html">IBuffer</a> *<a class="el" href="a04223.html#a589">buffer</a>)</td></tr>
+
+<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03862.html">ILoader</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03428.html#NLSOUND_1_1ISourcep0">_Loader</a></td></tr>
+
+<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03128.html">NLMISC::CVector</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALr0">_Pos</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>ALuint&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03427.html#NLSOUND_1_1CSourceALr1">_SourceName</a></td></tr>
+
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NLSOUND_1_1CSourceALa0" doxytag="NLSOUND::CSourceAL::CSourceAL" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLSOUND::CSourceAL::CSourceAL </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">ALuint&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>sourcename</em> = AL_NONE </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Constructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06425.html#l00047">47</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+<div class="fragment"><pre>00047 : <a class="code" href="a03428.html#NLSOUND_1_1ISourcea0">ISource</a>(), <a class="code" href="a03427.html#NLSOUND_1_1CSourceALr1">_SourceName</a>(sourcename)
+00048 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALa3" doxytag="NLSOUND::CSourceAL::~CSourceAL" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLSOUND::CSourceAL::~<a class="el" href="a03427.html">CSourceAL</a> </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Destructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06425.html#l00054">54</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06418.html#l00358">NLSOUND::CSoundDriverAL::removeSource()</a>.
+<p>
+<div class="fragment"><pre>00055 {
+00056 CSoundDriverAL *sdal = CSoundDriverAL::instance();
+00057 sdal-&gt;removeSource( <span class="keyword">this</span> );
+00058 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_0" doxytag="NLSOUND::CSourceAL::getCone" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::getCone </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>innerAngle</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>outerAngle</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>outerGain</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the cone angles (in radian).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_0">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00400">400</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05587.html#l00170">NLMISC::degToRad()</a>, and <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00401 {
+00402 <span class="keywordtype">float</span> ina, outa;
+00403 alGetSourcef( _SourceName, AL_CONE_INNER_ANGLE, &amp;ina );
+00404 innerAngle = <a class="code" href="a05378.html#a382">degToRad</a>(ina);
+00405 alGetSourcef( _SourceName, AL_CONE_OUTER_ANGLE, &amp;outa );
+00406 outerAngle = <a class="code" href="a05378.html#a382">degToRad</a>(outa);
+00407 alGetSourcef( _SourceName, AL_CONE_OUTER_GAIN, &amp;outerGain );
+00408 <a class="code" href="a04996.html#a0">TestALError</a>();
+00409 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_1" doxytag="NLSOUND::CSourceAL::getDirection" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::getDirection </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03128.html">NLMISC::CVector</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>dir</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the direction vector.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_1">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00280">280</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06682.html#l00136">NLMISC::CVector::set()</a>, <a class="el" href="a06419.html#l00074">TestALError</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00281 {
+00282 ALfloat <a class="code" href="a04223.html#a576">v</a>[3];
+00283 alGetSourcefv( _SourceName, AL_DIRECTION, v );
+00284 <a class="code" href="a04996.html#a0">TestALError</a>();
+00285 <span class="comment">// Coordsys conversion</span>
+00286 dir.<a class="code" href="a03128.html#NLMISC_1_1CVectorz2051_8">set</a>( v[0], -v[2], v[1] );
+00287 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_2" doxytag="NLSOUND::CSourceAL::getGain" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float NLSOUND::CSourceAL::getGain </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the gain.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_2">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00307">307</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00308 {
+00309 ALfloat gain;
+00310 alGetSourcef( _SourceName, AL_GAIN, &amp;gain );
+00311 <a class="code" href="a04996.html#a0">TestALError</a>();
+00312 <span class="keywordflow">return</span> gain;
+00313 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_0" doxytag="NLSOUND::CSourceAL::getLooping" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLSOUND::CSourceAL::getLooping </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Return the looping state.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_0">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00104">104</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00105 {
+00106 ALint b;
+00107 alGetSourcei( _SourceName, AL_LOOPING, &amp;b );
+00108 <a class="code" href="a04996.html#a0">TestALError</a>();
+00109 <span class="keywordflow">return</span> ( b == AL_TRUE );
+00110 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_3" doxytag="NLSOUND::CSourceAL::getMinMaxDistances" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::getMinMaxDistances </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>mindist</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>maxdist</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the min and max distances.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_3">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00376">376</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00377 {
+00378 alGetSourcef( _SourceName, AL_REFERENCE_DISTANCE, &amp;mindist );
+00379 alGetSourcef( _SourceName, AL_MAX_DISTANCE, &amp;maxdist );
+00380 <a class="code" href="a04996.html#a0">TestALError</a>();
+00381 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_4" doxytag="NLSOUND::CSourceAL::getPitch" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float NLSOUND::CSourceAL::getPitch </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the pitch.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_4">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00330">330</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00331 {
+00332 ALfloat pitch;
+00333 alGetSourcef( _SourceName, AL_PITCH, &amp;pitch );
+00334 <a class="code" href="a04996.html#a0">TestALError</a>();
+00335 <span class="keywordflow">return</span> pitch;
+00336 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_5" doxytag="NLSOUND::CSourceAL::getPos" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp; NLSOUND::CSourceAL::getPos </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the position vector. See <a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1328_14">setPos()</a> for details.
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_5">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00229">229</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+<div class="fragment"><pre>00230 {
+00231 <span class="keywordflow">return</span> <a class="code" href="a03427.html#NLSOUND_1_1CSourceALr0">_Pos</a>;
+00232 <span class="comment">/*</span>
+00233 <span class="comment"> ALfloat v[3];</span>
+00234 <span class="comment"> alGetSourcefv( _SourceName, AL_POSITION, v );</span>
+00235 <span class="comment"> TestALError();</span>
+00236 <span class="comment"> // Coordsys conversion</span>
+00237 <span class="comment"> pos.set( v[0], -v[2], v[1] );</span>
+00238 <span class="comment">*/</span>
+00239 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_6" doxytag="NLSOUND::CSourceAL::getSourceRelativeMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLSOUND::CSourceAL::getSourceRelativeMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the source relative mode.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_6">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00352">352</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00353 {
+00354 ALint b;
+00355 alGetSourcei( _SourceName, AL_SOURCE_RELATIVE, &amp;b );
+00356 <a class="code" href="a04996.html#a0">TestALError</a>();
+00357 <span class="keywordflow">return</span> (b==AL_TRUE);
+00358 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALa1" doxytag="NLSOUND::CSourceAL::getStaticBuffer" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual <a class="el" href="a02298.html">IBuffer</a>* NLSOUND::CSourceAL::getStaticBuffer </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the next source that is to be played immediately after the present source.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1330_0">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06426.html#l00075">75</a> of file <a class="el" href="a06426.html">source_al.h</a>.
+<p>
+<div class="fragment"><pre>00075 { <span class="comment">/* TODO */</span> <span class="keywordflow">return</span> NULL; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1ISourcez1332_1" doxytag="NLSOUND::CSourceAL::getTime" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual <a class="el" href="a04558.html#a11">uint32</a> NLSOUND::ISource::getTime </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns the number of milliseconds the source has been playing.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03430.html#NLSOUND_1_1CSourceDSoundz1312_1">NLSOUND::CSourceDSound</a>.
+<p>
+Definition at line <a class="el" href="a06424.html#l00101">101</a> of file <a class="el" href="a06424.html">source.h</a>.
+<p>
+References <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a06390.html#l00071">NLSOUND::CSimpleSource::getTime()</a>.
+<p>
+<div class="fragment"><pre>00101 { <span class="keywordflow">return</span> 0; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_7" doxytag="NLSOUND::CSourceAL::getVelocity" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::getVelocity </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03128.html">NLMISC::CVector</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>vel</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the velocity vector.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_7">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00256">256</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06682.html#l00136">NLMISC::CVector::set()</a>, <a class="el" href="a06419.html#l00074">TestALError</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00257 {
+00258 ALfloat <a class="code" href="a04223.html#a576">v</a>[3];
+00259 alGetSourcefv( _SourceName, AL_VELOCITY, v );
+00260 <a class="code" href="a04996.html#a0">TestALError</a>();
+00261 <span class="comment">// Coordsys conversion</span>
+00262 vel.<a class="code" href="a03128.html#NLMISC_1_1CVectorz2051_8">set</a>( v[0], -v[2], v[1] );
+00263 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_1" doxytag="NLSOUND::CSourceAL::isPlaying" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLSOUND::CSourceAL::isPlaying </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Return the playing state.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_2">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00181">181</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00182 {
+00183 ALint srcstate;
+00184 alGetSourcei( _SourceName, AL_SOURCE_STATE, &amp;srcstate );
+00185 <a class="code" href="a04996.html#a0">TestALError</a>();
+00186 <span class="keywordflow">return</span> (srcstate == AL_PLAYING);
+00187 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_2" doxytag="NLSOUND::CSourceAL::isStopped" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLSOUND::CSourceAL::isStopped </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Return true if playing is finished or <a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_6">stop()</a> has been called.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_3">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00193">193</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00194 {
+00195 ALint srcstate;
+00196 alGetSourcei( _SourceName, AL_SOURCE_STATE, &amp;srcstate );
+00197 <a class="code" href="a04996.html#a0">TestALError</a>();
+00198 <span class="keywordflow">return</span> (srcstate == AL_STOPPED);
+00199 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_3" doxytag="NLSOUND::CSourceAL::pause" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::pause </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Pause. Call <a class="el" href="a03427.html#NLSOUND_1_1CSourceALz1326_4">play()</a> to resume.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_4">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00160">160</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+<div class="fragment"><pre>00161 {
+00162 <span class="comment">/* TODO if ( _Buffer != NULL )</span>
+00163 <span class="comment"> {</span>
+00164 <span class="comment"> // Static playing mode</span>
+00165 <span class="comment"> alSourcePause( _SourceName );</span>
+00166 <span class="comment"> TestALError();</span>
+00167 <span class="comment"> }</span>
+00168 <span class="comment"> else</span>
+00169 <span class="comment"> {</span>
+00170 <span class="comment"> // Streaming mode</span>
+00171 <span class="comment"> nlwarning( "AM: Cannot pause null buffer; streaming not implemented" );</span>
+00172 <span class="comment"> nlstop;</span>
+00173 <span class="comment"> }</span>
+00174 <span class="comment">*/</span>
+00175 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_4" doxytag="NLSOUND::CSourceAL::play" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLSOUND::CSourceAL::play </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Play the static buffer (or stream in and play).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_5">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00116">116</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+<div class="fragment"><pre>00117 {
+00118 <span class="comment">/* TODO if ( _Buffer != NULL )</span>
+00119 <span class="comment"> {</span>
+00120 <span class="comment"> // Static playing mode</span>
+00121 <span class="comment"> alSourcePlay( _SourceName );</span>
+00122 <span class="comment"> TestALError();</span>
+00123 <span class="comment"> }</span>
+00124 <span class="comment"> else</span>
+00125 <span class="comment"> {</span>
+00126 <span class="comment"> // Streaming mode</span>
+00127 <span class="comment"> nlwarning( "AM: Cannot play null buffer; streaming not implemented" );</span>
+00128 <span class="comment"> nlstop;</span>
+00129 <span class="comment"> }</span>
+00130 <span class="comment">*/</span>
+00131 <span class="comment">// TODO : return a correct value, depending on alSourcePlay result.</span>
+00132 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00133 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1ISourcez1334_8" doxytag="NLSOUND::CSourceAL::setAlpha" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NLSOUND::ISource::setAlpha </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">double&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>a</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Testing.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03430.html#NLSOUND_1_1CSourceDSounda4">NLSOUND::CSourceDSound</a>.
+<p>
+Definition at line <a class="el" href="a06424.html#l00154">154</a> of file <a class="el" href="a06424.html">source.h</a>.
+<p>
+Referenced by <a class="el" href="a06390.html#l00126">NLSOUND::CSimpleSource::play()</a>.
+<p>
+<div class="fragment"><pre>00154 { }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_8" doxytag="NLSOUND::CSourceAL::setCone" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setCone </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname" nowrap> <em>innerAngle</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float&nbsp;</td>
+ <td class="mdname" nowrap> <em>outerAngle</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float&nbsp;</td>
+ <td class="mdname" nowrap> <em>outerGain</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the cone angles (in radian) and gain (in [0 , 1]) (default: 2PI, 2PI, 0) (3D mode only).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_9">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00387">387</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05587.html#l00178">NLMISC::radToDeg()</a>, and <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00388 {
+00389 <a class="code" href="a04199.html#a6">nlassert</a>( (outerGain &gt;= 0.0f) &amp;&amp; (outerGain &lt;= 1.0f ) );
+00390 alSourcef( _SourceName, AL_CONE_INNER_ANGLE, <a class="code" href="a05378.html#a383">radToDeg</a>(innerAngle) );
+00391 alSourcef( _SourceName, AL_CONE_OUTER_ANGLE, <a class="code" href="a05378.html#a383">radToDeg</a>(outerAngle) );
+00392 alSourcef( _SourceName, AL_CONE_OUTER_GAIN, outerGain );
+00393 <a class="code" href="a04996.html#a0">TestALError</a>();
+00394 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_9" doxytag="NLSOUND::CSourceAL::setDirection" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setDirection </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>dir</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the direction vector (3D mode only) (default: (0,0,0) as non-directional).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_10">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00269">269</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>, and <a class="el" href="a06673.html#l00051">NLMISC::CVector::z</a>.
+<p>
+<div class="fragment"><pre>00270 {
+00271 <span class="comment">// Coordsys conversion</span>
+00272 alSource3f( _SourceName, AL_DIRECTION, dir.<a class="code" href="a03128.html#NLMISC_1_1CVectoro0">x</a>, dir.<a class="code" href="a03128.html#NLMISC_1_1CVectoro2">z</a>, -dir.<a class="code" href="a03128.html#NLMISC_1_1CVectoro1">y</a> );
+00273 <a class="code" href="a04996.html#a0">TestALError</a>();
+00274 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_10" doxytag="NLSOUND::CSourceAL::setEAXProperty" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setEAXProperty </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>prop</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>void *&nbsp;</td>
+ <td class="mdname" nowrap> <em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>valuesize</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set any EAX source property if EAX available.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_11">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00415">415</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05646.html#l01132">value</a>.
+<p>
+<div class="fragment"><pre>00416 {
+00417 <span class="preprocessor">#if EAX_AVAILABLE == 1</span>
+00418 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( EAXSetProp != NULL )
+00419 {
+00420 EAXSetProp( &amp;DSPROPSETID_EAX_SourceProperties, prop, _SourceName, value, valuesize );
+00421 }
+00422 <span class="preprocessor">#endif</span>
+00423 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_11" doxytag="NLSOUND::CSourceAL::setGain" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setGain </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>gain</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the gain (volume value inside [0 , 1]) (default: 1) 0.0 -&gt; silence 0.5 -&gt; -6dB 1.0 -&gt; no attenuation values &gt; 1 (amplification) not supported by most drivers
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_12">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00296">296</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00297 {
+00298 <a class="code" href="a04199.html#a6">nlassert</a>( (gain &gt;= 0.0f) &amp;&amp; (gain &lt;= 1.0f ) );
+00299 alSourcef( _SourceName, AL_GAIN, gain );
+00300 <a class="code" href="a04996.html#a0">TestALError</a>();
+00301 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_5" doxytag="NLSOUND::CSourceAL::setLooping" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setLooping </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>l</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set looping on/off for future playbacks (default: off).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_6">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00094">94</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00095 {
+00096 alSourcei( _SourceName, AL_LOOPING, l?AL_TRUE:AL_FALSE );
+00097 <a class="code" href="a04996.html#a0">TestALError</a>();
+00098 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_12" doxytag="NLSOUND::CSourceAL::setMinMaxDistances" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setMinMaxDistances </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname" nowrap> <em>mindist</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float&nbsp;</td>
+ <td class="mdname" nowrap> <em>maxdist</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>deferred</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the min and max distances (default: 1, MAX_FLOAT) (3D mode only).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_13">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00364">364</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00365 {
+00366 <a class="code" href="a04199.html#a6">nlassert</a>( (mindist &gt;= 0.0f) &amp;&amp; (maxdist &gt;= 0.0f) );
+00367 alSourcef( _SourceName, AL_REFERENCE_DISTANCE, mindist );
+00368 alSourcef( _SourceName, AL_MAX_DISTANCE, maxdist );
+00369 <a class="code" href="a04996.html#a0">TestALError</a>();
+00370 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_13" doxytag="NLSOUND::CSourceAL::setPitch" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setPitch </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>pitch</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Shift the frequency. 1.0f equals identity, each reduction of 50% equals a pitch shift of one octave. 0 is not a legal value.
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_14">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00319">319</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00320 {
+00321 <a class="code" href="a04199.html#a6">nlassert</a>( (pitch &gt; 0) &amp;&amp; (pitch &lt;= 1.0f ) );
+00322 alSourcef( _SourceName, AL_PITCH, pitch );
+00323 <a class="code" href="a04996.html#a0">TestALError</a>();
+00324 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_14" doxytag="NLSOUND::CSourceAL::setPos" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setPos </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>pos</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>deffered</em> = true</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the position vector (default: (0,0,0)). 3D mode -&gt; 3D position st mode -&gt; x is the pan value (from left (-1) to right (1)), set y and z to 0
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_15">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00217">217</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00218 {
+00219 <a class="code" href="a03427.html#NLSOUND_1_1CSourceALr0">_Pos</a> = pos;
+00220 <span class="comment">// Coordinate system: conversion from NeL to OpenAL/GL:</span>
+00221 alSource3f( _SourceName, AL_POSITION, pos.x, pos.z, -pos.y );
+00222 <a class="code" href="a04996.html#a0">TestALError</a>();
+00223 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_15" doxytag="NLSOUND::CSourceAL::setSourceRelativeMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setSourceRelativeMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>mode</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the source relative mode. If true, positions are interpreted relative to the listener position (default: false).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_16">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00342">342</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+Referenced by <a class="el" href="a06425.html#l00065">setStaticBuffer()</a>.
+<p>
+<div class="fragment"><pre>00343 {
+00344 alSourcei( _SourceName, AL_SOURCE_RELATIVE, mode?AL_TRUE:AL_FALSE );
+00345 <a class="code" href="a04996.html#a0">TestALError</a>();
+00346 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1324_0" doxytag="NLSOUND::CSourceAL::setStaticBuffer" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setStaticBuffer </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02298.html">IBuffer</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>buffer</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the buffer that will be played (no streaming) If the buffer is stereo, the source mode becomes stereo and the source relative mode is on, otherwise the source is considered as a 3D source. Set NULL to set "no buffer"
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1330_1">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00065">65</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a05646.html#l00649">buffer</a>, <a class="el" href="a05519.html#l00088">NLSOUND::CBufferAL::bufferName()</a>, <a class="el" href="a05518.html#l00073">NLSOUND::CBufferAL::isStereo()</a>, <a class="el" href="a06425.html#l00342">setSourceRelativeMode()</a>, and <a class="el" href="a06419.html#l00074">TestALError</a>.
+<p>
+<div class="fragment"><pre>00066 {
+00067 ISource::setStaticBuffer( buffer );
+00068
+00069 <span class="comment">// Stop source</span>
+00070 alSourceStop( _SourceName );
+00071 <a class="code" href="a04996.html#a0">TestALError</a>();
+00072
+00073 <span class="comment">// Set buffer</span>
+00074 <span class="keywordflow">if</span> ( <a class="code" href="a04223.html#a589">buffer</a> == NULL )
+00075 {
+00076 alSourcei( _SourceName, AL_BUFFER, AL_NONE );
+00077 <a class="code" href="a04996.html#a0">TestALError</a>();
+00078 }
+00079 <span class="keywordflow">else</span>
+00080 {
+00081 CBufferAL *bufferAL = dynamic_cast&lt;CBufferAL*&gt;(<a class="code" href="a04223.html#a589">buffer</a>);
+00082 alSourcei( _SourceName, AL_BUFFER, bufferAL-&gt;bufferName() );
+00083 <a class="code" href="a04996.html#a0">TestALError</a>();
+00084
+00085 <span class="comment">// Set relative mode if the buffer is stereo</span>
+00086 <a class="code" href="a03427.html#NLSOUND_1_1CSourceALz1328_15">setSourceRelativeMode</a>( bufferAL-&gt;isStereo() );
+00087 }
+00088 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1ISourcez1330_2" doxytag="NLSOUND::CSourceAL::setStreamLoader" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NLSOUND::ISource::setStreamLoader </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03862.html">ILoader</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>loader</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the sound loader that will be used to stream in the data to play If the buffer is stereo, the source mode becomes stereo and the source relative mode is on, otherwise the source is considered as a 3D source.
+<p>
+Definition at line <a class="el" href="a06424.html#l00076">76</a> of file <a class="el" href="a06424.html">source.h</a>.
+<p>
+References <a class="el" href="a06424.html#l00170">NLSOUND::ISource::_Loader</a>.
+<p>
+<div class="fragment"><pre>00076 { <a class="code" href="a03428.html#NLSOUND_1_1ISourcep0">_Loader</a> = loader; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1328_16" doxytag="NLSOUND::CSourceAL::setVelocity" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::setVelocity </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03128.html">NLMISC::CVector</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>vel</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>deferred</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the velocity vector (3D mode only) (default: (0,0,0)).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1334_17">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00245">245</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+References <a class="el" href="a06419.html#l00074">TestALError</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>, and <a class="el" href="a06673.html#l00051">NLMISC::CVector::z</a>.
+<p>
+<div class="fragment"><pre>00246 {
+00247 <span class="comment">// Coordsys conversion</span>
+00248 alSource3f( _SourceName, AL_VELOCITY, vel.<a class="code" href="a03128.html#NLMISC_1_1CVectoro0">x</a>, vel.<a class="code" href="a03128.html#NLMISC_1_1CVectoro2">z</a>, -vel.<a class="code" href="a03128.html#NLMISC_1_1CVectoro1">y</a> );
+00249 <a class="code" href="a04996.html#a0">TestALError</a>();
+00250 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALa2" doxytag="NLSOUND::CSourceAL::sourceName" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> ALuint NLSOUND::CSourceAL::sourceName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Return the OpenAL source name.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06426.html#l00150">150</a> of file <a class="el" href="a06426.html">source_al.h</a>.
+<p>
+Referenced by <a class="el" href="a06418.html#l00274">NLSOUND::CSoundDriverAL::createSource()</a>, and <a class="el" href="a06418.html#l00358">NLSOUND::CSoundDriverAL::removeSource()</a>.
+<p>
+<div class="fragment"><pre>00150 { <span class="keywordflow">return</span> <a class="code" href="a03427.html#NLSOUND_1_1CSourceALr1">_SourceName</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_6" doxytag="NLSOUND::CSourceAL::stop" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLSOUND::CSourceAL::stop </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Stop playing.
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_7">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00139">139</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+<div class="fragment"><pre>00140 {
+00141 <span class="comment">/* TODO if ( _Buffer != NULL )</span>
+00142 <span class="comment"> {</span>
+00143 <span class="comment"> // Static playing mode</span>
+00144 <span class="comment"> alSourceStop( _SourceName );</span>
+00145 <span class="comment"> TestALError();</span>
+00146 <span class="comment"> }</span>
+00147 <span class="comment"> else</span>
+00148 <span class="comment"> {</span>
+00149 <span class="comment"> // Streaming mode</span>
+00150 <span class="comment"> nlwarning( "AM: Cannot stop null buffer; streaming not implemented" );</span>
+00151 <span class="comment"> //nlstop;</span>
+00152 <span class="comment"> }</span>
+00153 <span class="comment">*/</span>
+00154 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALz1326_7" doxytag="NLSOUND::CSourceAL::update" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLSOUND::CSourceAL::update </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Update the source (e.g. continue to stream the data in).
+<p>
+
+<p>
+Implements <a class="el" href="a03428.html#NLSOUND_1_1ISourcez1332_8">NLSOUND::ISource</a>.
+<p>
+Definition at line <a class="el" href="a06425.html#l00205">205</a> of file <a class="el" href="a06425.html">source_al.cpp</a>.
+<p>
+<div class="fragment"><pre>00206 {
+00207 <span class="comment">// Streaming not implemented</span>
+00208 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00209 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NLSOUND_1_1ISourcep0" doxytag="NLSOUND::CSourceAL::_Loader" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03862.html">ILoader</a>* <a class="el" href="a03428.html#NLSOUND_1_1ISourcep0">NLSOUND::ISource::_Loader</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06424.html#l00170">170</a> of file <a class="el" href="a06424.html">source.h</a>.
+<p>
+Referenced by <a class="el" href="a06424.html#l00159">NLSOUND::ISource::ISource()</a>, <a class="el" href="a06424.html#l00076">NLSOUND::ISource::setStreamLoader()</a>, and <a class="el" href="a06424.html#l00162">NLSOUND::ISource::~ISource()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALr0" doxytag="NLSOUND::CSourceAL::_Pos" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03128.html">NLMISC::CVector</a> <a class="el" href="a03427.html#NLSOUND_1_1CSourceALr0">NLSOUND::CSourceAL::_Pos</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06426.html#l00157">157</a> of file <a class="el" href="a06426.html">source_al.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLSOUND_1_1CSourceALr1" doxytag="NLSOUND::CSourceAL::_SourceName" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> ALuint <a class="el" href="a03427.html#NLSOUND_1_1CSourceALr1">NLSOUND::CSourceAL::_SourceName</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06426.html#l00155">155</a> of file <a class="el" href="a06426.html">source_al.h</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a06426.html">source_al.h</a><li><a class="el" href="a06425.html">source_al.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 14:46:21 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>