<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><title>Main and Miscellanious - ALURE</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class=UnframedPage onLoad="NDOnLoad()"><script language=JavaScript><!-- if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script> <!-- Generated by Natural Docs, version 1.35 --> <!-- http://www.naturaldocs.org --> <!-- saved from url=(0026)http://www.naturaldocs.org --> <table border=0 cellspacing=0 cellpadding=0 width=100%><tr><td class=MenuSection valign=top><!--START_ND_MENU--><div class=MTitle>ALURE<div class=MSubTitle>API Reference</div></div><div class=MEntry><div class=MFile id=MSelected>Main and Miscellanious</div></div><div class=MEntry><div class=MFile><a href="buffer-cpp.html">File Loading</a></div></div><div class=MEntry><div class=MFile><a href="stream-cpp.html">Streaming</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Index</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div></div></div></div><!--END_ND_MENU--></td> <td class=ContentSection valign=top><div class=CSection id=MainTopic><div class=CTopic><h1 class=CTitle><a name="Main_and_Miscellanious"></a>Main and Miscellanious</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr><td class=SEntrySize><div class=SMain><div class=SEntry><a href="#Main_and_Miscellanious" >Main and Miscellanious</a></div></div></td><td class=SDescriptionSize><div class=SMain><div class=SDescription></div></div></td></tr><tr><td><div class=SGroup><div class=SEntry><div class=SIndent1><a href="#Functions" >Functions</a></div></div></div></td><td><div class=SGroup><div class=SDescription><div class=SIndent1></div></div></div></td></tr><tr class=SMarked><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureGetVersion" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">alureGetVersion</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Stores the major and minor version of the library. </div></div></div></td></tr><tr><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureGetErrorString" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">alureGetErrorString</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Returns a string describing the last error encountered.</div></div></div></td></tr><tr class=SMarked><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureGetDeviceNames" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">alureGetDeviceNames</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Gets an array of device name strings from OpenAL. </div></div></div></td></tr><tr><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureFreeDeviceNames" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">alureFreeDeviceNames</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Frees the device name array returned from alureGetDeviceNames.</div></div></div></td></tr><tr class=SMarked><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureInitDevice" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">alureInitDevice</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Opens the named device, creates a context with the given attributes, and sets that context as current. </div></div></div></td></tr><tr><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureShutdownDevice" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">alureShutdownDevice</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Destroys the current context and closes its associated device.</div></div></div></td></tr><tr class=SMarked><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureGetSampleFormat" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">alureGetSampleFormat</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Retrieves an OpenAL format for the given sample format. </div></div></div></td></tr><tr><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureInstallDecodeCallbacks" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">alureInstallDecodeCallbacks</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Installs callbacks to enable ALURE to handle more file types. </div></div></div></td></tr><tr class=SMarked><td><div class=SFunction><div class=SEntry><div class=SIndent2><a href="#alureSleep" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">alureSleep</a></div></div></div></td><td><div class=SFunction><div class=SDescription><div class=SIndent2>Rests the calling thread for the given number of seconds.</div></div></div></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div> <div class=CGroup><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureGetVersion"></a>alureGetVersion</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API void ALURE_APIENTRY alureGetVersion(</td><td class=PType nowrap>ALuint </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>major,</td></tr><tr><td></td><td class=PType nowrap>ALuint </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>minor</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Stores the major and minor version of the library. If either major or minor are NULL, that value is not provided.</p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureGetErrorString"></a>alureGetErrorString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API const ALchar* ALURE_APIENTRY alureGetErrorString(</td><td class=PParameter nowrap>void</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Returns a string describing the last error encountered.</p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureGetDeviceNames"></a>alureGetDeviceNames</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API const ALCchar** ALURE_APIENTRY alureGetDeviceNames(</td><td class=PType nowrap>ALCboolean </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>all,</td></tr><tr><td></td><td class=PType nowrap>ALCsizei </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>count</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Gets an array of device name strings from OpenAL. This encapsulates AL_ENUMERATE_ALL_EXT (if supported and ‘all’ is true) and standard enumeration, with ‘count’ being set to the number of returned device names.</p><h4 class=CHeading>Returns</h4><p class=CParagraph>An array of device name strings, or NULL on error.</p><h4 class=CHeading>See Also</h4><p class=CParagraph><a href="#alureFreeDeviceNames" class=LFunction id=link10 onMouseOver="ShowTip(event, 'tt4', 'link10')" onMouseOut="HideTip('tt4')">alureFreeDeviceNames</a></p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureFreeDeviceNames"></a>alureFreeDeviceNames</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALvoid ALURE_APIENTRY alureFreeDeviceNames(</td><td class=PTypePrefix nowrap>const </td><td class=PType nowrap>ALCchar </td><td class=PParameterPrefix nowrap>**</td><td class=PParameter nowrap>names</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Frees the device name array returned from alureGetDeviceNames.</p><h4 class=CHeading>See Also</h4><p class=CParagraph><a href="#alureGetDeviceNames" class=LFunction id=link11 onMouseOver="ShowTip(event, 'tt3', 'link11')" onMouseOut="HideTip('tt3')">alureGetDeviceNames</a></p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureInitDevice"></a>alureInitDevice</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALboolean ALURE_APIENTRY alureInitDevice(</td><td class=PTypePrefix nowrap>const </td><td class=PType nowrap>ALCchar </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>name,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const </td><td class=PType nowrap>ALCint </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>attribs</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Opens the named device, creates a context with the given attributes, and sets that context as current. The name and attribute list would be the same as what’s passed to alcOpenDevice and alcCreateContext respectively.</p><h4 class=CHeading>Returns</h4><p class=CParagraph>AL_FALSE on error.</p><h4 class=CHeading>See Also</h4><p class=CParagraph><a href="#alureShutdownDevice" class=LFunction id=link12 onMouseOver="ShowTip(event, 'tt6', 'link12')" onMouseOut="HideTip('tt6')">alureShutdownDevice</a></p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureShutdownDevice"></a>alureShutdownDevice</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALboolean ALURE_APIENTRY alureShutdownDevice(</td><td class=PParameter nowrap>void</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Destroys the current context and closes its associated device.</p><h4 class=CHeading>Returns</h4><p class=CParagraph>AL_FALSE on error.</p><h4 class=CHeading>See Also</h4><p class=CParagraph><a href="#alureInitDevice" class=LFunction id=link13 onMouseOver="ShowTip(event, 'tt5', 'link13')" onMouseOut="HideTip('tt5')">alureInitDevice</a></p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureGetSampleFormat"></a>alureGetSampleFormat</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALenum ALURE_APIENTRY alureGetSampleFormat(</td><td class=PType nowrap>ALuint </td><td class=PParameter nowrap>channels,</td></tr><tr><td></td><td class=PType nowrap>ALuint </td><td class=PParameter nowrap>bits,</td></tr><tr><td></td><td class=PType nowrap>ALuint </td><td class=PParameter nowrap>floatbits</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Retrieves an OpenAL format for the given sample format. If bits is non-0, floatbits must be 0, and if floatbits is non-0, bits must be 0. The application should not rely on any particular format enum being returned as it is dependant on the available extensions. The returned format will be valid for the current context. Requires an active context.</p><h4 class=CHeading>Returns</h4><p class=CParagraph>An OpenAL format enum for the given sample format, or AL_NONE if one can’t be found.</p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureInstallDecodeCallbacks"></a>alureInstallDecodeCallbacks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters colspan=4>ALURE_API ALboolean ALURE_APIENTRY alureInstallDecodeCallbacks(</td></tr><tr><td> </td><td class=PType nowrap>ALint </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>index,</td></tr><tr><td> </td><td class=PType nowrap>void </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap width=100%>(*open_file)(const ALchar *filename),</td></tr><tr><td> </td><td class=PType nowrap>void </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap width=100%>(*open_memory)(const ALubyte *data, ALuint length),</td></tr><tr><td> </td><td class=PType nowrap>ALboolean </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*get_format)(void *instance, ALenum *format, ALuint *samplerate, ALuint *blocksize),</td></tr><tr><td> </td><td class=PType nowrap>ALuint </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*decode)(void *instance, ALubyte *data, ALuint bytes),</td></tr><tr><td> </td><td class=PType nowrap>ALboolean </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*rewind)(void *instance),</td></tr><tr><td> </td><td class=PType nowrap>void </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*close)(void *instance)</td></tr><tr><td class=PAfterParameters colspan=4>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Installs callbacks to enable ALURE to handle more file types. The index is the order that each given set of callbacks will be tried, starting at the most negative number (INT_MIN) and going up. Negative indices will be tried before the built-in decoders, and positive indices will be tried after. Installing callbacks onto the same index multiple times will remove the previous callbacks, and removing old callbacks won’t affect any opened files using them (they’ll continue to use the old functions until properly closed, although newly opened files will use the new ones). Passing NULL for all callbacks is a valid way to remove an installed set, otherwise certain callbacks must be specified. Callbacks that are not specified will assume failure.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>open_file</td><td class=CDLDescription>This callback is expected to open the named file and prepare it for decoding. If the callbacks cannot decode the file, NULL should be returned to indicate failure. Upon success, a non-NULL handle must be returned, which will be used as a unique identifier for the decoder instance. This callback is required if open_memory is not specified.</td></tr><tr><td class=CDLEntry>open_memory</td><td class=CDLDescription>This callback behaves the same as open_file, except it takes a memory segment for input instead of a filename. The given memory will remain valid while the instance is open. This callback is required if open_file is not specified.</td></tr><tr><td class=CDLEntry>get_format</td><td class=CDLDescription>This callback is used to retrieve the format of the decoded data for the given instance. It is the responsibility of the function to make sure the returned format is valid for the current AL context (eg. don’t return AL_FORMAT_QUAD16 if the AL_EXT_MCFORMATS extension isn’t available). Returning 0 for samplerate or blocksize, or returning AL_NONE for format, will cause a failure. Returning AL_FALSE indicates failure. This callback is required.</td></tr><tr><td class=CDLEntry>decode</td><td class=CDLDescription>This callback is called to get more decoded data. Up to the specified amount of bytes should be written to the data pointer. The number of bytes written should be a multiple of the block size, otherwise an OpenAL error may occur during buffering. The function should return the number of bytes written. This callback is required.</td></tr><tr><td class=CDLEntry>rewind</td><td class=CDLDescription>This callback is for rewinding the instance so that the next decode calls for it will get audio data from the start of the sound file. If the stream fails to rewind, AL_FALSE should be returned.</td></tr><tr><td class=CDLEntry>close</td><td class=CDLDescription>This callback is called at the end of processing for a particular instance. The handle will not be used further and any associated data may be deleted.</td></tr></table><h4 class=CHeading>Returns</h4><p class=CParagraph>AL_FALSE on error.</p></div></div></div> <div class=CFunction><div class=CTopic><h3 class=CTitle><a name="alureSleep"></a>alureSleep</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALboolean ALURE_APIENTRY alureSleep(</td><td class=PType nowrap>ALfloat </td><td class=PParameter nowrap>duration</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p class=CParagraph>Rests the calling thread for the given number of seconds.</p><h4 class=CHeading>Returns</h4><p class=CParagraph>AL_FALSE on error.</p></div></div></div> </td> </tr></table><div class=Footer><!--START_ND_FOOTER-->Generated by <a href="http://www.naturaldocs.org">Natural Docs</a><!--END_ND_FOOTER--></div> <!--START_ND_TOOLTIPS--> <div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API void ALURE_APIENTRY alureGetVersion(</td><td class=PType nowrap>ALuint </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>major,</td></tr><tr><td></td><td class=PType nowrap>ALuint </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>minor</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Stores the major and minor version of the library. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API const ALchar* ALURE_APIENTRY alureGetErrorString(</td><td class=PParameter nowrap>void</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns a string describing the last error encountered.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API const ALCchar** ALURE_APIENTRY alureGetDeviceNames(</td><td class=PType nowrap>ALCboolean </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>all,</td></tr><tr><td></td><td class=PType nowrap>ALCsizei </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>count</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets an array of device name strings from OpenAL. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALvoid ALURE_APIENTRY alureFreeDeviceNames(</td><td class=PTypePrefix nowrap>const </td><td class=PType nowrap>ALCchar </td><td class=PParameterPrefix nowrap>**</td><td class=PParameter nowrap>names</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Frees the device name array returned from alureGetDeviceNames.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALboolean ALURE_APIENTRY alureInitDevice(</td><td class=PTypePrefix nowrap>const </td><td class=PType nowrap>ALCchar </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>name,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const </td><td class=PType nowrap>ALCint </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>attribs</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Opens the named device, creates a context with the given attributes, and sets that context as current. </div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALboolean ALURE_APIENTRY alureShutdownDevice(</td><td class=PParameter nowrap>void</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Destroys the current context and closes its associated device.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALenum ALURE_APIENTRY alureGetSampleFormat(</td><td class=PType nowrap>ALuint </td><td class=PParameter nowrap>channels,</td></tr><tr><td></td><td class=PType nowrap>ALuint </td><td class=PParameter nowrap>bits,</td></tr><tr><td></td><td class=PType nowrap>ALuint </td><td class=PParameter nowrap>floatbits</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Retrieves an OpenAL format for the given sample format. </div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters colspan=4>ALURE_API ALboolean ALURE_APIENTRY alureInstallDecodeCallbacks(</td></tr><tr><td> </td><td class=PType nowrap>ALint </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>index,</td></tr><tr><td> </td><td class=PType nowrap>void </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap width=100%>(*open_file)(const ALchar *filename),</td></tr><tr><td> </td><td class=PType nowrap>void </td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap width=100%>(*open_memory)(const ALubyte *data, ALuint length),</td></tr><tr><td> </td><td class=PType nowrap>ALboolean </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*get_format)(void *instance, ALenum *format, ALuint *samplerate, ALuint *blocksize),</td></tr><tr><td> </td><td class=PType nowrap>ALuint </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*decode)(void *instance, ALubyte *data, ALuint bytes),</td></tr><tr><td> </td><td class=PType nowrap>ALboolean </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*rewind)(void *instance),</td></tr><tr><td> </td><td class=PType nowrap>void </td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap width=100%>(*close)(void *instance)</td></tr><tr><td class=PAfterParameters colspan=4>)</td></tr></table></td></tr></table></blockquote>Installs callbacks to enable ALURE to handle more file types. </div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>ALURE_API ALboolean ALURE_APIENTRY alureSleep(</td><td class=PType nowrap>ALfloat </td><td class=PParameter nowrap>duration</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Rests the calling thread for the given number of seconds.</div></div><!--END_ND_TOOLTIPS--> <script language=JavaScript><!-- if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>