UNPKG

crossbrowdy

Version:

A Multimedia JavaScript framework to create real cross-platform and hybrid game engines, games, emulators, multimedia libraries and apps.

15,107 lines 402 kB
<!DOCTYPE html>

<html lang="en">
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width">
	<title>CrossBrowdy API documentation Class: CB_AudioFileCache</title>

	<!--[if lt IE 9]>
	<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
	<![endif]-->
	<link type="text/css" rel="stylesheet" href="styles/sunlight.default.css">

	<link type="text/css" rel="stylesheet" href="styles/site.cosmo.css">

</head>

<body style="min-width:800px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">

<div class="navbar navbar-default navbar-fixed-top ">
<div class="container">
	<div class="navbar-header">
		<a class="navbar-brand" href="index.html">CrossBrowdy API documentation</a>
		<button class="navbar-toggle" type="button" data-toggle="collapse" data-target="#topNavigation">
			<span class="icon-bar"></span>
			<span class="icon-bar"></span>
			<span class="icon-bar"></span>
        </button>
	</div>
	<div class="navbar-collapse collapse" id="topNavigation">
		<ul class="nav navbar-nav">
			
			<li class="dropdown">
				<a href="namespaces.list.html" class="dropdown-toggle" data-toggle="dropdown">Namespaces<b class="caret"></b></a>
				<ul class="dropdown-menu inline">
					<li><a href="CB_Arrays.html">CB_Arrays</a></li><li><a href="CB_AudioDetector.html">CB_AudioDetector</a></li><li><a href="CB_Client.html">CB_Client</a></li><li><a href="CB_Collisions.html">CB_Collisions</a></li><li><a href="CB_Configuration.html">CB_Configuration</a></li><li><a href="CB_Configuration.CrossBase.html">CB_Configuration.CrossBase</a></li><li><a href="CB_Configuration.CrossBrowdy.html">CB_Configuration.CrossBrowdy</a></li><li><a href="CB_Controllers.html">CB_Controllers</a></li><li><a href="CB_Controllers_Proprietary.html">CB_Controllers_Proprietary</a></li><li><a href="CB_Controllers_Proprietary.WII.html">CB_Controllers_Proprietary.WII</a></li><li><a href="CB_Controllers_Proprietary.WII_U.html">CB_Controllers_Proprietary.WII_U</a></li><li><a href="CB_Device.html">CB_Device</a></li><li><a href="CB_Device.AmbientLight.html">CB_Device.AmbientLight</a></li><li><a href="CB_Device.Battery.html">CB_Device.Battery</a></li><li><a href="CB_Device.Location.html">CB_Device.Location</a></li><li><a href="CB_Device.Motion.html">CB_Device.Motion</a></li><li><a href="CB_Device.Orientation.html">CB_Device.Orientation</a></li><li><a href="CB_Device.Proximity.html">CB_Device.Proximity</a></li><li><a href="CB_Device.Vibration.html">CB_Device.Vibration</a></li><li><a href="CB_Elements.html">CB_Elements</a></li><li><a href="CB_Events.html">CB_Events</a></li><li><a href="CB_Keyboard.html">CB_Keyboard</a></li><li><a href="CB_Keyboard.chars.html">CB_Keyboard.chars</a></li><li><a href="CB_Keyboard.extended.html">CB_Keyboard.extended</a></li><li><a href="CB_Keyboard.keys.html">CB_Keyboard.keys</a></li><li><a href="CB_Modules.html">CB_Modules</a></li><li><a href="CB_Mouse.html">CB_Mouse</a></li><li><a href="CB_Mouse.CursorImage.html">CB_Mouse.CursorImage</a></li><li><a href="CB_Net.html">CB_Net</a></li><li><a href="CB_Net.Fetch.html">CB_Net.Fetch</a></li><li><a href="CB_Net.REST.html">CB_Net.REST</a></li><li><a href="CB_Net.Sockets.html">CB_Net.Sockets</a></li><li><a href="CB_Net.Sockets.SockJS.html">CB_Net.Sockets.SockJS</a></li><li><a href="CB_Net.XHR.html">CB_Net.XHR</a></li><li><a href="CB_Pointer.html">CB_Pointer</a></li><li><a href="CB_Screen.html">CB_Screen</a></li><li><a href="CB_Speaker.html">CB_Speaker</a></li><li><a href="CB_Touch.html">CB_Touch</a></li><li><a href="CB_baseSymbols.html">CB_baseSymbols</a></li>
				</ul>
			</li>
			
			<li class="dropdown">
				<a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b class="caret"></b></a>
				<ul class="dropdown-menu inline">
					<li><a href="CB_AudioFile.html">CB_AudioFile</a></li><li><a href="CB_AudioFileCache.html">CB_AudioFileCache</a></li><li><a href="CB_AudioFileSprites.html">CB_AudioFileSprites</a></li><li><a href="CB_AudioFileSpritesPool.html">CB_AudioFileSpritesPool</a></li><li><a href="CB_AudioFile_API.AAPI.html">CB_AudioFile_API.AAPI</a></li><li><a href="CB_AudioFile_API.ACMP.html">CB_AudioFile_API.ACMP</a></li><li><a href="CB_AudioFile_API.SM2.html">CB_AudioFile_API.SM2</a></li><li><a href="CB_AudioFile_API.WAAPI.html">CB_AudioFile_API.WAAPI</a></li><li><a href="CB_Canvas.html">CB_Canvas</a></li><li><a href="CB_GraphicSprites.html">CB_GraphicSprites</a></li><li><a href="CB_GraphicSpritesScene.html">CB_GraphicSpritesScene</a></li>
				</ul>
			</li>
			
			<li class="dropdown">
				<a href="global.html" class="dropdown-toggle" data-toggle="dropdown">Global<b class="caret"></b></a>
				<ul class="dropdown-menu inline">
					<li><a href="global.html#CB_BASE_NAME">CB_BASE_NAME</a></li><li><a href="global.html#CB_CREDITS_DEFAULT">CB_CREDITS_DEFAULT</a></li><li><a href="global.html#CB_NAME">CB_NAME</a></li><li><a href="global.html#CB_OPTIONS">CB_OPTIONS</a></li><li><a href="global.html#CB_VERSION">CB_VERSION</a></li><li><a href="global.html#CB_addCredits">CB_addCredits</a></li><li><a href="global.html#CB_baseToBase">CB_baseToBase</a></li><li><a href="global.html#CB_baseToInt">CB_baseToInt</a></li><li><a href="global.html#CB_br2nl">CB_br2nl</a></li><li><a href="global.html#CB_brToNl">CB_brToNl</a></li><li><a href="global.html#CB_combineArraysOrObjects">CB_combineArraysOrObjects</a></li><li><a href="global.html#CB_combineAutomatically">CB_combineAutomatically</a></li><li><a href="global.html#CB_combineJSON">CB_combineJSON</a></li><li><a href="global.html#CB_combineURIParameters">CB_combineURIParameters</a></li><li><a href="global.html#CB_combineURLParameters">CB_combineURLParameters</a></li><li><a href="global.html#CB_console">CB_console</a></li><li><a href="global.html#CB_copyObject">CB_copyObject</a></li><li><a href="global.html#CB_countDecimalDigits">CB_countDecimalDigits</a></li><li><a href="global.html#CB_countDecimalPart">CB_countDecimalPart</a></li><li><a href="global.html#CB_countDecimals">CB_countDecimals</a></li><li><a href="global.html#CB_countIntegerDigits">CB_countIntegerDigits</a></li><li><a href="global.html#CB_countIntegerPart">CB_countIntegerPart</a></li><li><a href="global.html#CB_credits">CB_credits</a></li><li><a href="global.html#CB_forEach">CB_forEach</a></li><li><a href="global.html#CB_forceString">CB_forceString</a></li><li><a href="global.html#CB_getBase64StringObject">CB_getBase64StringObject</a></li><li><a href="global.html#CB_getCookie">CB_getCookie</a></li><li><a href="global.html#CB_getDatum">CB_getDatum</a></li><li><a href="global.html#CB_getJSONPropertyValue">CB_getJSONPropertyValue</a></li><li><a href="global.html#CB_getLZStringObject">CB_getLZStringObject</a></li><li><a href="global.html#CB_getValueIndex">CB_getValueIndex</a></li><li><a href="global.html#CB_getValuePath">CB_getValuePath</a></li><li><a href="global.html#CB_includeJSFile">CB_includeJSFile</a></li><li><a href="global.html#CB_indexOf">CB_indexOf</a></li><li><a href="global.html#CB_init">CB_init</a></li><li><a href="global.html#CB_intToBase">CB_intToBase</a></li><li><a href="global.html#CB_isArray">CB_isArray</a></li><li><a href="global.html#CB_isEmail">CB_isEmail</a></li><li><a href="global.html#CB_isFileLocal">CB_isFileLocal</a></li><li><a href="global.html#CB_isString">CB_isString</a></li><li><a href="global.html#CB_lastIndexOf">CB_lastIndexOf</a></li><li><a href="global.html#CB_ltrim">CB_ltrim</a></li><li><a href="global.html#CB_nl2br">CB_nl2br</a></li><li><a href="global.html#CB_nlToBr">CB_nlToBr</a></li><li><a href="global.html#CB_numberFormat">CB_numberFormat</a></li><li><a href="global.html#CB_numberOfDecimalDigits">CB_numberOfDecimalDigits</a></li><li><a href="global.html#CB_numberOfDecimals">CB_numberOfDecimals</a></li><li><a href="global.html#CB_numberOfIntegerDigits">CB_numberOfIntegerDigits</a></li><li><a href="global.html#CB_parseJSON">CB_parseJSON</a></li><li><a href="global.html#CB_parseString">CB_parseString</a></li><li><a href="global.html#CB_regularExpressionString">CB_regularExpressionString</a></li><li><a href="global.html#CB_renderString">CB_renderString</a></li><li><a href="global.html#CB_replaceAll">CB_replaceAll</a></li><li><a href="global.html#CB_rtrim">CB_rtrim</a></li><li><a href="global.html#CB_scriptPath">CB_scriptPath</a></li><li><a href="global.html#CB_scriptPathCalculate">CB_scriptPathCalculate</a></li><li><a href="global.html#CB_setCookie">CB_setCookie</a></li><li><a href="global.html#CB_setDatum">CB_setDatum</a></li><li><a href="global.html#CB_sizeOf">CB_sizeOf</a></li><li><a href="global.html#CB_sizeof">CB_sizeof</a></li><li><a href="global.html#CB_stringifyJSON">CB_stringifyJSON</a></li><li><a href="global.html#CB_symmetricCall">CB_symmetricCall</a></li><li><a href="global.html#CB_symmetricCallClear">CB_symmetricCallClear</a></li><li><a href="global.html#CB_this">CB_this</a></li><li><a href="global.html#CB_trim">CB_trim</a></li>
				</ul>
			</li>
			
		</ul>
        
            <div class="col-sm-3 col-md-3">
                <form class="navbar-form" role="search">
                    <div class="input-group">
                        <input type="text" class="form-control" placeholder="Search" name="q" id="search-input">
                        <div class="input-group-btn">
                            <button class="btn btn-default" id="search-submit"><i class="glyphicon glyphicon-search"></i></button>
                        </div>
                    </div>
                </form>
            </div>
        
	</div>

</div>
</div>


<div class="container" id="toc-content" style="width:100%;">
<div class="row" style="width:100%;">

	
	<div class="col-md-8" style="width:85%;">
	
		<div id="main">
			

	
		<h1 class="page-title">Class: CB_AudioFileCache</h1>
	
<section>

<header>
    
        <h2>
        CB_AudioFileCache
        </h2>
        
            <div class="class-description"><p>Class to manage a cache with multiple <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (they should be the same sound although they can be in different formats). This is not only useful for performance purposes but also for being able to play the same sound simultaneously and multiple times in different audio APIs and clients.</p></div>
        
    
</header>


<article>
    <div class="container-overview">
    
        
<hr>
<dt>
    <h4 class="name" id="CB_AudioFileCache"><span class="type-signature"></span>new CB_AudioFileCache<span class="signature">( [dataObject])</span><span class="type-signature"> &rarr; {<a href="CB_AudioFileCache.html">CB_AudioFileCache</a>}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>The constructor is recommended to be called through a user-driven event (as onClick, onTouch, etc.), as some clients may need this at least the first time in order to be able to play the audio.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>dataObject</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.DATA_OBJECT">CB_AudioFileCache.DATA_OBJECT</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Object with the desired data and options for the audio files cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-56">line 56</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Do not allow to create one object with an "id" which has already been used (unless the value is undefined, null...).</li>
			
			<li>Method getCopy and static method filterProperties (similar to the ones from <a href="CB_GraphicSprites.html"><code>CB_GraphicSprites</code></a> and <a href="CB_GraphicSpritesScene.html"><code>CB_GraphicSpritesScene</code></a>).</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns a new <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="CB_AudioFileCache.html">CB_AudioFileCache</a></span>



    </dd>
</dl>


        

    
</dd>

    
    </div>

    

    

    

    

    

    
        <h3 class="subsection-title">Members</h3>

        <dl>
            
<hr>
<dt class="name" id="DEFAULT_VOLUME">
    <h4 id="DEFAULT_VOLUME"><span class="type-signature">&lt;constant> </span>DEFAULT_VOLUME<span class="type-signature"> :number</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Keeps the default volume. If the <a href="CB_Configuration.CrossBase.html#.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_DEFAULT"><code>CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_DEFAULT</code></a> property is true, this will keep the result of calling the <a href="CB_Speaker.html#.getVolume"><code>CB_Speaker.getVolume</code></a> function. Otherwise, it will use the value of the <a href="CB_Configuration.CrossBase.html#.CB_Speaker_DEFAULT_VOLUME"><code>CB_Configuration.CrossBase.CB_Speaker_DEFAULT_VOLUME</code></a> variable.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">number</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_DEFAULT ? CB_Speaker.getVolume() : CB_Configuration.CrossBase.CB_Speaker_DEFAULT_VOLUME</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-68">line 68</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="URIs">
    <h4 id="URIs"><span class="type-signature">&lt;readonly> </span>URIs<span class="type-signature"> :<a href="CB_AudioFileCache.html#.URIS_OBJECT">CB_AudioFileCache.URIS_OBJECT</a></span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Object whose property names audio formats and their value is an array of strings with the URIs (audio file paths or audio data URIs) of the audio files in order of preference. The more audio formats and URIs provided the better, as it will help to maximize the compatibility with as many clients as possible (as some audio APIs and client just support some formats, or use absolute paths instead of relative ones, etc.). Even with different formats, all provided URIs should belong to the same audio (this means same sound or same music, with same length, etc.). NOTE: Only some clients with some audio APIs will support data URIs. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type"><a href="CB_AudioFileCache.html#.URIS_OBJECT">CB_AudioFileCache.URIS_OBJECT</a></span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-113">line 113</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="audioFiles">
    <h4 id="audioFiles"><span class="type-signature">&lt;readonly> </span>audioFiles<span class="type-signature"> :array</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Numeric array containing all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects created internally. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">array</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>[]</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-221">line 221</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="audioFilesCreated">
    <h4 id="audioFilesCreated"><span class="type-signature">&lt;readonly> </span>audioFilesCreated<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Total number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects created internally (optimization purposes, to avoid using <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>.length). Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-230">line 230</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="audioFilesFree">
    <h4 id="audioFilesFree"><span class="type-signature">&lt;readonly> </span>audioFilesFree<span class="type-signature"> :array</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Stack that stores the indexes (belonged to the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> array) of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">array</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>[]</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-239">line 239</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="audioFilesFreePointer">
    <h4 id="audioFilesFreePointer"><span class="type-signature">&lt;readonly> </span>audioFilesFreePointer<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Pointer for the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> stack (for optimization purposes). Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-248">line 248</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="checkManually">
    <h4 id="checkManually"><span class="type-signature">&lt;readonly> </span>checkManually<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually). Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.checkManually_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-167">line 167</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="checkManuallyOnCheckingFailed">
    <h4 id="checkManuallyOnCheckingFailed"><span class="type-signature">&lt;readonly> </span>checkManuallyOnCheckingFailed<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) when checking one has failed and tries to reload it. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.checkManuallyOnCheckingFailed_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-194">line 194</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="checkManuallyOnNeededCreated">
    <h4 id="checkManuallyOnNeededCreated"><span class="type-signature">&lt;readonly> </span>checkManuallyOnNeededCreated<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) when creates a new <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object needed. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.checkManuallyOnNeededCreated_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-176">line 176</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="checkManuallyOnPlayingFailed">
    <h4 id="checkManuallyOnPlayingFailed"><span class="type-signature">&lt;readonly> </span>checkManuallyOnPlayingFailed<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) when playing one has failed and tries to reload it. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.checkManuallyOnPlayingFailed_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-185">line 185</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="duration">
    <h4 id="duration"><span class="type-signature">&lt;readonly> </span>duration<span class="type-signature"> :number</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Stores the minimum duration found among all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">number</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>0</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-266">line 266</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="durationMaximum">
    <h4 id="durationMaximum"><span class="type-signature">&lt;readonly> </span>durationMaximum<span class="type-signature"> :number</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Stores the maximum duration found among all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">number</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>0</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-275">line 275</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="id">
    <h4 id="id"><span class="type-signature">&lt;readonly> </span>id<span class="type-signature"> :string</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Stores the identifier for the audio files cache.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">string</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-87">line 87</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="maximumAudioFiles">
    <h4 id="maximumAudioFiles"><span class="type-signature">&lt;readonly> </span>maximumAudioFiles<span class="type-signature"> :integer|null</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Maximum <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that are to be created internally. If it is set to null, there will not be a maximum (it will be unlimited). If an integer is provided, it must be the same number or greater than the value set in the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> property, allowing 1 minimum. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>
|

<span class="param-type">null</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.maximumAudioFiles_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-131">line 131</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="minimumAudioFiles">
    <h4 id="minimumAudioFiles"><span class="type-signature">&lt;readonly> </span>minimumAudioFiles<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Minimum <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects to create internally. It must be an integer being 1 the minimum. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.minimumAudioFiles_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-122">line 122</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="minimumAudioFilesFree">
    <h4 id="minimumAudioFilesFree"><span class="type-signature">&lt;readonly> </span>minimumAudioFilesFree<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>New <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects will be created internally when the number of free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects reaches this limit. It must be an integer being 0 (zero) the minimum. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>parseInt(<a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> * 0.25 + 0.5)</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-140">line 140</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="newAudioFilesWhenNeeded">
    <h4 id="newAudioFilesWhenNeeded"><span class="type-signature">&lt;readonly> </span>newAudioFilesWhenNeeded<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Number of new <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects to create internally when the minimum limit of free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (<a href="CB_AudioFileCache.html#minimumAudioFilesFree"><code>CB_AudioFileCache#minimumAudioFilesFree</code></a>) is reached. It must be an integer being 0 (zero) the minimum. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>Math.min(parseInt(<a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> * 0.1 + 0.5), 1)</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-149">line 149</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="onError">
    <h4 id="onError"><span class="type-signature">&lt;readonly> </span>onError<span class="type-signature"> :function</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Desired function to be called when any kind of error happens. The first and unique parameter will be a string with the error description (if it could be determined), being &quot;this&quot; the current <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">function</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-212">line 212</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="onLoad">
    <h4 id="onLoad"><span class="type-signature">&lt;readonly> </span>onLoad<span class="type-signature"> :function</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Desired function to be called once the cache has been loaded. The first and unique parameter will be an integer with the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that still need to be checked, if any, being &quot;this&quot; the current <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">function</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-203">line 203</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="preferredAPIs">
    <h4 id="preferredAPIs"><span class="type-signature">&lt;readonly> </span>preferredAPIs<span class="type-signature"> :array</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Stores an array of strings with the preferred audio API or audio APIs, in order of preference. Possible audio APIs are &quot;WAAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API">HTML5 Web Audio API</a>), &quot;SM2&quot; (<a href="http://schillmania.com/projects/soundmanager2/">SoundManager 2</a>), &quot;ACMP&quot; (<a href="https://github.com/apache/cordova-plugin-media">Apache Cordova Media Plugin</a>) or &quot;AAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio">HTML5 Audio API</a>). Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">array</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_Configuration.CrossBase.CB_AudioFileCache_PREFERRED_AUDIO_APIS</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-96">line 96</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="preferredFormats">
    <h4 id="preferredFormats"><span class="type-signature">&lt;readonly> </span>preferredFormats<span class="type-signature"> :array</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Stores an array of strings with the preferred audio format or audio formats (they can include just the format as 'audio/ogg' or also the codec as for example 'audio/ogg; codecs=&quot;vorbis&quot;'), in order of preference. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">array</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_Configuration.CrossBase.CB_AudioFileCache_PREFERRED_AUDIO_FORMATS</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-105">line 105</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="retries">
    <h4 id="retries"><span class="type-signature">&lt;readonly> </span>retries<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Number of retries to try to load a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object internally before trying to load the next possible one internally (if any). It must be an integer being 0 the minimum. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>CB_AudioFileCache.retries_DEFAULT</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-158">line 158</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="soundInstancesQueued">
    <h4 id="soundInstancesQueued"><span class="type-signature">&lt;readonly> </span>soundInstancesQueued<span class="type-signature"> :Object</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Object with sound instance identifiers (integers created by the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method) which are going to play (this way we can cancel the sound before it starts playing). Each property name is the identifier of the sound instance and the value will be an object with &quot;cancelled&quot; (boolean, to know whether the sound instance was cancelled or not) and &quot;object&quot; (containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object used) properties. Internal usage only recommended.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">Object</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>{}</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-257">line 257</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id="status">
    <h4 id="status"><span class="type-signature">&lt;readonly> </span>status<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Tells whether the cache is unloaded (<a href="CB_AudioFileCache.html#.UNLOADED"><code>CB_AudioFileCache.UNLOADED</code></a>), loading (<a href="CB_AudioFileCache.html#.LOADING"><code>CB_AudioFileCache.LOADING</code></a>), unchecked (<a href="CB_AudioFileCache.html#.UNCHECKED"><code>CB_AudioFileCache.UNCHECKED</code></a>), checking (<a href="CB_AudioFileCache.html#.CHECKING"><code>CB_AudioFileCache.CHECKING</code></a>), loaded (<a href="CB_AudioFileCache.html#.LOADED"><code>CB_AudioFileCache.LOADED</code></a>), failed (<a href="CB_AudioFileCache.html#.FAILED"><code>CB_AudioFileCache.FAILED</code></a>) or aborted (<a href="CB_AudioFileCache.html#.ABORTED"><code>CB_AudioFileCache.ABORTED</code></a>).</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li><a href="CB_AudioFileCache.html#.UNLOADED"><code>CB_AudioFileCache.UNLOADED</code></a></li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-71">line 71</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".ABORTED">
    <h4 id=".ABORTED"><span class="type-signature">&lt;static, constant> </span>ABORTED<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for an audio file cache which has been aborted. This will happen when the audio file cache has been destroyed with the <a href="CB_AudioFileCache.html#destructor"><code>CB_AudioFileCache#destructor</code></a> method. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>6</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-355">line 355</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".CHECKING">
    <h4 id=".CHECKING"><span class="type-signature">&lt;static, constant> </span>CHECKING<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for an audio file cache which is being checked currently. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>3</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-331">line 331</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".FAILED">
    <h4 id=".FAILED"><span class="type-signature">&lt;static, constant> </span>FAILED<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for an audio file cache which failed to be loaded or failed for any other reason. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>5</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-347">line 347</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".LOADED">
    <h4 id=".LOADED"><span class="type-signature">&lt;static, constant> </span>LOADED<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for an audio file cache which has been loaded. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>4</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-339">line 339</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".LOADING">
    <h4 id=".LOADING"><span class="type-signature">&lt;static, constant> </span>LOADING<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for an audio file cache which is loading. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>1</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-315">line 315</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".UNCHECKED">
    <h4 id=".UNCHECKED"><span class="type-signature">&lt;static, constant> </span>UNCHECKED<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for an audio file cache which has not been checked yet. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>2</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-323">line 323</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".UNLOADED">
    <h4 id=".UNLOADED"><span class="type-signature">&lt;static, constant> </span>UNLOADED<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Status value for audio file cache which is unloaded. Can be used to compare the value returned by the <a href="CB_AudioFileCache.html#getStatus"><code>CB_AudioFileCache#getStatus</code></a> method. Recommended for internal usage only.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>0</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-307">line 307</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".checkManuallyOnCheckingFailed_DEFAULT">
    <h4 id=".checkManuallyOnCheckingFailed_DEFAULT"><span class="type-signature">&lt;static, constant> </span>checkManuallyOnCheckingFailed_DEFAULT<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#checkManuallyOnCheckingFailed"><code>CB_AudioFileCache#checkManuallyOnCheckingFailed</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>false</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-411">line 411</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".checkManuallyOnNeededCreated_DEFAULT">
    <h4 id=".checkManuallyOnNeededCreated_DEFAULT"><span class="type-signature">&lt;static, constant> </span>checkManuallyOnNeededCreated_DEFAULT<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#checkManuallyOnNeededCreated"><code>CB_AudioFileCache#checkManuallyOnNeededCreated</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>false</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-395">line 395</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".checkManuallyOnPlayingFailed_DEFAULT">
    <h4 id=".checkManuallyOnPlayingFailed_DEFAULT"><span class="type-signature">&lt;static, constant> </span>checkManuallyOnPlayingFailed_DEFAULT<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#checkManuallyOnPlayingFailed"><code>CB_AudioFileCache#checkManuallyOnPlayingFailed</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>false</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-403">line 403</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".checkManually_DEFAULT">
    <h4 id=".checkManually_DEFAULT"><span class="type-signature">&lt;static, constant> </span>checkManually_DEFAULT<span class="type-signature"> :boolean</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#checkManually"><code>CB_AudioFileCache#checkManually</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">boolean</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>false</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-387">line 387</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".maximumAudioFiles_DEFAULT">
    <h4 id=".maximumAudioFiles_DEFAULT"><span class="type-signature">&lt;static, constant> </span>maximumAudioFiles_DEFAULT<span class="type-signature"> :integer|null</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#maximumAudioFiles"><code>CB_AudioFileCache#maximumAudioFiles</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>
|

<span class="param-type">null</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>null</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-371">line 371</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".minimumAudioFiles_DEFAULT">
    <h4 id=".minimumAudioFiles_DEFAULT"><span class="type-signature">&lt;static, constant> </span>minimumAudioFiles_DEFAULT<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>2</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-363">line 363</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        
            
<hr>
<dt class="name" id=".retries_DEFAULT">
    <h4 id=".retries_DEFAULT"><span class="type-signature">&lt;static, constant> </span>retries_DEFAULT<span class="type-signature"> :integer</span></h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Default value for the <a href="CB_AudioFileCache.html#retries"><code>CB_AudioFileCache#retries</code></a> property.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">integer</span>



            </li>
        </ul>
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	
	<dt class="tag-default method-doc-label method-doc-details-label">Default Value:</dt>
	<dd class="tag-default">
		<ul class="dummy">
			<li>1</li>
		</ul>
	</dd>
	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-379">line 379</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

        </dl>
    

    
        <h3 class="subsection-title">Methods</h3>

        <dl>
            
<hr>
<dt>
    <h4 class="name" id="cancelSoundInstance"><span class="type-signature"></span>cancelSoundInstance<span class="signature">(soundInstanceId [, cancel] [, affectWithObjectAssociated])</span><span class="type-signature"> &rarr; {boolean}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Cancels (to prevent it starts playing) or enables a sound instance (created by the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method), by its identifier.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>soundInstanceId</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The identifier (integer) of the sound instance we want to affect.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>cancel</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Defines whether we want to cancel it or enable it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>affectWithObjectAssociated</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will also affect the sound instance even it has a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object associated.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1643">line 1643</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns true if the sound instance has been modified or false otherwise.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">boolean</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="cancelSoundInstances"><span class="type-signature"></span>cancelSoundInstances<span class="signature">( [cancel] [, affectWithObjectAssociated])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Cancels (to prevent they start playing) or enables all sound instances (created by the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method).</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>cancel</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Defines whether we want to cancel them or enable them.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>affectWithObjectAssociated</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will also affect the sound instances which have a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object associated.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1624">line 1624</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of sound instances modified.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="checkPlayingAll"><span class="type-signature"></span>checkPlayingAll<span class="signature">( [callbackOk] [, callbackError] [, ignoreQueue])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Checks whether each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object whose <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method returns the &quot;unchecked&quot; value (which belongs to the value of the <code>CB_AudioFile#UNCHECKED</code> property) can be played or not. After checking, if the audio can be played, the status of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object will get the value of <a href="CB_AudioFile.html#.LOADED"><code>CB_AudioFile.LOADED</code></a>. Otherwise, if it cannot be played, the status of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object will get the value of <a href="CB_AudioFile.html#.FAILED"><code>CB_AudioFile.FAILED</code></a>. If a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object cannot be played and it is determined necessary, it will try to reload it internally (by calling the <a href="CB_AudioFileCache.html#removeAudioFile"><code>CB_AudioFileCache#removeAudioFile</code></a> method). It will call the <a href="CB_AudioFileCache.html#clearAudioFiles"><code>CB_AudioFileCache#clearAudioFiles</code></a> method internally after finishing. Recommended to be called through a user-driven event (as onClick, onTouch, etc.).</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackOk</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.checkPlayingAll_CALLBACK_OK">CB_AudioFileCache.checkPlayingAll_CALLBACK_OK</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A function which will be called if all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method returned the &quot;unchecked&quot; value (which belongs to the value of the <code>CB_AudioFile#UNCHECKED</code> property) could finally be checked successfully and all can be played, being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object itself.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackError</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.checkPlayingAll_CALLBACK_ERROR">CB_AudioFileCache.checkPlayingAll_CALLBACK_ERROR</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A function which will be called if not all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method returned the &quot;unchecked&quot; value (which belongs to the value of the <code>CB_AudioFile#UNCHECKED</code> property) could finally be checked successfully and any cannot be played, being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object itself. This function will be called immediately if the method was previously called and it is still running currently.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>ignoreQueue</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;ignoreQueue&quot; parameter when calling the <a href="CB_AudioFile.html#checkPlaying"><code>CB_AudioFile#checkPlaying</code></a> method of each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1990">line 1990</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Think about implementing an "audioFiles" parameter.</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose status belonged to the &quot;unchecked&quot; value (the value of the <code>CB_AudioFile#UNCHECKED</code> property) before the execution of this method. It will return 0 (zero) if the method is tried to be executed while there is another previous call of it still running. It will also return 0 (zero) if the status of the audio file cache is not loaded (the <a href="CB_AudioFileCache.html#status"><code>CB_AudioFileCache#status</code></a> property does not belong to the value set in the <a href="CB_AudioFileCache.html#.LOADED"><code>CB_AudioFileCache.LOADED</code></a> property) nor unchecked (the <a href="CB_AudioFileCache.html#status"><code>CB_AudioFileCache#status</code></a> property does not belong to the value set in the <a href="CB_AudioFileCache.html#.UNCHECKED"><code>CB_AudioFileCache.UNCHECKED</code></a> property).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="clearAudioFiles"><span class="type-signature"></span>clearAudioFiles<span class="signature">( [avoidCallingCheckCacheLoaded])</span><span class="type-signature"> &rarr; {array}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Cleans the array of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (taking off the undefined or null ones) which is in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property, just keeping the valid ones and clearing (destroying and removing) the others. For performance purposes. Internal usage only recommended.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>avoidCallingCheckCacheLoaded</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to false and neither the <a href="CB_AudioFileCache.html#checkPlayingAll"><code>CB_AudioFileCache#checkPlayingAll</code></a> nor the <a href="CB_AudioFileCache.html#setAudioAPIAll"><code>CB_AudioFileCache#setAudioAPIAll</code></a> methods are being executed, it will call the <code>CB_AudioFileCache#_checkCacheLoaded</code> internal method which will call the &quot;onLoad&quot; function defined in the <a href="CB_AudioFileCache.html#onLoad"><code>CB_AudioFileCache#onLoad</code></a> property if the number of needed <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects has been reached (after performing the cleaning process). Internal usage only recommended.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1038">line 1038</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the value of the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">array</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="clearSoundInstances"><span class="type-signature"></span>clearSoundInstances<span class="signature">( [clearWithObjectAssociated])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Clears the sound instances (created by the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method) which have been cancelled.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>clearWithObjectAssociated</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will also clear the sound instances which have a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object associated.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1592">line 1592</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of cleared sound instances.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="createAudioFile"><span class="type-signature"></span>createAudioFile<span class="signature">( [URIs] [, preferredAPIs] [, preferredFormats] [, audioObject] [, callbackOk] [, callbackError] [, storeURIsList] [, checkAutomatically])</span><span class="type-signature"> &rarr; {<a href="CB_AudioFile.html">CB_AudioFile</a>|null}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Creates one internal <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (inside the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property). This method is already called by the <a href="CB_AudioFileCache.html#createAudioFiles"><code>CB_AudioFileCache#createAudioFiles</code></a> method and other methods automatically. Recommended to be called through a user-driven event (as onClick, onTouch, etc.), as some clients may need this at least the first time in order to be able to play the audio. Internal usage only recommended.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>URIs</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.URIS_OBJECT">CB_AudioFileCache.URIS_OBJECT</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#URIs"><code>CB_AudioFileCache#URIs</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Object whose property names audio formats and their value is an array of strings with the URIs (audio file paths or audio data URIs) of the audio files in order of preference. It will try to calculate and use the best audio format for the current client and use the first working URI (audio file path or data URI). The more audio formats and URIs provided the better, as it will help to maximize the compatibility with as many clients as possible (as some audio APIs and client just support some formats, or use absolute paths instead of relative ones, etc.). Even with different formats, all provided URIs should belong to the same audio (this means same sound or same music, with same length, etc.). NOTE: Only some clients with some audio APIs will support data URIs.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>preferredAPIs</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#preferredAPIs"><code>CB_AudioFileCache#preferredAPIs</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Array of strings with the preferred audio API or audio APIs, in order of preference. Possible audio APIs are &quot;WAAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API">HTML5 Web Audio API</a>), &quot;SM2&quot; (<a href="http://schillmania.com/projects/soundmanager2/">SoundManager 2</a>), &quot;ACMP&quot; (<a href="https://github.com/apache/cordova-plugin-media">Apache Cordova Media Plugin</a>) or &quot;AAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio">HTML5 Audio API</a>). It will try to calculate and use the best one for the current client.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>preferredFormats</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#preferredFormats"><code>CB_AudioFileCache#preferredFormats</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Array of strings with the preferred audio format or audio formats (they can include just the format as 'audio/ogg' or also the codec as for example 'audio/ogg; codecs=&quot;vorbis&quot;'), in order of preference. It will try to calculate and use the best one for the current client.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioObject</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object that we want to reuse instead of creating a new one (for performance purposes).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackOk</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function with no parameters that will be called once the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is created and loaded successfully (or after it has been checked successfully, depending on the desired option), being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object itself.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackError</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function called when any error is produced during creation, loading or checking process, etc. The unique parameter will be a string describing the error (if it was possible to be determined), being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object itself.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>storeURIsList</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will store internally the valid supported &quot;URIs&quot; from the given ones (needed by the <a href="CB_AudioFileCache.html#setAudioAPIAll"><code>CB_AudioFileCache#setAudioAPIAll</code></a> method, for example). Internal usage only recommended.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>checkAutomatically</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true (not recommended), it will call the <a href="CB_AudioFile.html#checkPlaying"><code>CB_AudioFile#checkPlaying</code></a> method automatically. Otherwise, it will perform according to the value set at the <a href="CB_AudioFileCache.html#checkManually"><code>CB_AudioFileCache#checkManually</code></a> property. Internal usage only recommended.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-665">line 665</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>If it fails, it returns null. Otherwise, returns the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> that has been created or reused.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>
|

<span class="param-type">null</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="createAudioFiles"><span class="type-signature"></span>createAudioFiles<span class="signature">(minimumAudioFiles [, setAsLoaded])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Creates the desired number of internal <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (inside the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property). This method is already called by the <a href="CB_AudioFileCache.html#load"><code>CB_AudioFileCache#load</code></a> method automatically (unless the &quot;disableAutoLoad&quot; property has been set to true in the &quot;dataObject&quot; given). Recommended to be called through a user-driven event (as onClick, onTouch, etc.), as some clients may need this at least the first time in order to be able to play the audio.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>minimumAudioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Minimum <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects to create internally. It must be an integer being 1 the minimum. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>setAsLoaded</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects already created internally (before calling this method) does not reach the number given in the &quot;minimumAudioFiles&quot;, this parameter will be ignored. Otherwise, if set to true, it will set the <code>CB_AudioFileCache.status</code> property as &quot;LOADED&quot; (the value of the <code>CB_AudioFileCache#LOADED</code> property) after reaching the desired number. If set to false, the <code>CB_AudioFileCache.status</code> property will be set as &quot;LOADED&quot; <code>CB_AudioFileCache#LOADED</code> property) if the <a href="CB_AudioFileCache.html#checkManually"><code>CB_AudioFileCache#checkManually</code></a> property is set to true or set as &quot;UNCHECKED&quot; if the <a href="CB_AudioFileCache.html#checkManually"><code>CB_AudioFileCache#checkManually</code></a> property is set to false. Internal usage only recommended.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-583">line 583</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are intended to be created (they could fail).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="destroyAll"><span class="type-signature"></span>destroyAll<span class="signature">( [stopSounds])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Destroys all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects and frees memory, by calling <a href="CB_AudioFile.html#destructor"><code>CB_AudioFile#destructor</code></a>(stopSounds, false, true).</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>stopSounds</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;stopSound&quot; parameter when calling the <a href="CB_AudioFile.html#destructor"><code>CB_AudioFile#destructor</code></a> method of each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1951">line 1951</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Think about implementing an "audioFiles" parameter.</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#destructor"><code>CB_AudioFile#destructor</code></a> has been called.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="destructor"><span class="type-signature"></span>destructor<span class="signature">( [stopSounds] [, preventAbortedStatus])</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Destroys the audio file cache object, including all the internal <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects, and frees memory. By default, unless the &quot;preventAbortedStatus&quot; is set to true, sets the current status of the audio file cache object as ABORTED (<a href="CB_AudioFileCache.html#.ABORTED"><code>CB_AudioFileCache.ABORTED</code></a> value).</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>stopSounds</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used as the &quot;stopSound&quot; parameter when calling internally the <a href="CB_AudioFile.html#destructor"><code>CB_AudioFile#destructor</code></a> method for all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>preventAbortedStatus</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true (not recommended), it will not assign the status of &quot;ABORTED&quot; (it will not assign the value of <a href="CB_AudioFileCache.html#.ABORTED"><code>CB_AudioFileCache.ABORTED</code></a> to the <a href="CB_AudioFileCache.html#status"><code>CB_AudioFileCache#status</code></a> property).</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-457">line 457</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="errorFunction"><span class="type-signature"></span>errorFunction<span class="signature">( [message] [, avoidFailing])</span><span class="type-signature"> &rarr; {boolean}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Calls the error function which should be set in the <a href="CB_AudioFileCache.html#onError"><code>CB_AudioFileCache#onError</code></a> property (if any), being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object itself. Internal usage only recommended.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>message</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">string</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The message describing the error that will be sent to the set <a href="CB_AudioFileCache.html#onError"><code>CB_AudioFileCache#onError</code></a> function (if any) as the first and unique parameter.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>avoidFailing</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will not set the <a href="CB_AudioFileCache.html#status"><code>CB_AudioFileCache#status</code></a> property to &quot;FAILED&quot; (the value of the <code>CB_AudioFile#FAILED</code> property).</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2855">line 2855</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns true if the <a href="CB_AudioFileCache.html#onError"><code>CB_AudioFileCache#onError</code></a> function could be called or false otherwise.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">boolean</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="executeAll"><span class="type-signature"></span>executeAll<span class="signature">()</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Alias for <a href="CB_AudioFileCache.html#executeFunctionAll"><code>CB_AudioFileCache#executeFunctionAll</code></a>.</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1870">line 1870</a>
			</li>
		</ul>
	</dd>
	

	

	
	<dt class="tag-see method-doc-label method-doc-details-label">See:</dt>
	<dd class="tag-see">
		<ul>
			<li><a href="CB_AudioFileCache.html#executeFunctionAll"><code>CB_AudioFileCache#executeFunctionAll</code></a></li>
			</ul>
	</dd>
	

	
</dl>


    

    

    

    

    

    

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="executeFunctionAll"><span class="type-signature"></span>executeFunctionAll<span class="signature">(functionEach [, delayBetweenEach] [, audioFiles] [, returnSetTimeoutsArray] [, delayBetweenEachAffectsFirst] [, functionFinish])</span><span class="type-signature"> &rarr; {integer|array}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Performs a desired action, using the provided function, on all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or on the desired ones (if provided). Calls the <a href="CB_Arrays.html#.executeFunctionAll"><code>CB_Arrays.executeFunctionAll</code></a> function internally and returns its returning value.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>functionEach</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_Arrays.html#.executeFunctionAll_ON_LOOP_CALLBACK">CB_Arrays.executeFunctionAll_ON_LOOP_CALLBACK</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function that will be called for each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object. As the first parameter it receives the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object of the &quot;audioFiles&quot; being looped, as the second parameter the position of this <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object in the &quot;audioFiles&quot; array provided (or, if not provided, in the array of the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property), the third parameter is the array being looped and the fourth parameter will be the &quot;delayBetweenEach&quot; being used, being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object itself.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>delayBetweenEach</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>
|

<span class="param-type"><a href="CB_Arrays.html#.executeFunctionAll_ON_LOOP_CALLBACK">CB_Arrays.executeFunctionAll_ON_LOOP_CALLBACK</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    0
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If a value greater than zero is used, it will be used as the delay desired between each call to the &quot;functionEach&quot; function (calling them using the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> function internally). If not provided or the value is 0 (zero) or lower, each call to the &quot;functionEach&quot; function will be performed immediately one after the other. If a function is provided, it will be called with the same parameters as the &quot;functionEach&quot; function and its returning value will be used as the delay (executed every loop for each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to loop. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>returnSetTimeoutsArray</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Defines whether we want the method to return an integer or a numeric array with information of each <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> call. Returning an array with information of each <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> call is only useful when the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> function is called internally, which happens when the &quot;delayBetweenEach&quot; parameter is greater than 0 (zero).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>delayBetweenEachAffectsFirst</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, the desired delay (if any) will also affect the first call to the &quot;functionEach&quot; function.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>functionFinish</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_Arrays.html#.executeFunctionAll_ON_FINISH_CALLBACK">CB_Arrays.executeFunctionAll_ON_FINISH_CALLBACK</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function that will be called for when it has finished looping all the items. The first parameter will be the array which was looped, the second parameter will be the number of times that the &quot;functionEach&quot; callback was called (the most likely, matches the number of elements unless they are undefined or null), and the third parameter will be the maximum &quot;delay&quot; used, being &quot;this&quot; the array itself.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1892">line 1892</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Think about only allowing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (in the "audioFiles" parameter) which are already in the cache (identify them by their ID), to avoid problems.</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>If the &quot;returnSetTimeoutsArray&quot; parameter is set to false, it will return the number of calls to the &quot;functionEach&quot; function that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects given in the &quot;audioFiles&quot; parameter). Otherwise, if the &quot;returnSetTimeoutsArray&quot; is set to true, it will return a numeric array with a <a href="CB_AudioFileCache.html#.executeFunctionAll_OBJECT"><code>CB_AudioFileCache.executeFunctionAll_OBJECT</code></a> object for each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> given. The length of this array will also be the number of calls to the &quot;functionEach&quot; function that were performed. Note that if a value greater than 0 (zero) for the &quot;delayBetweenEach&quot; parameter has been provided, perhaps not all calls of the &quot;functionEach&quot; function will have been performed yet when exiting this method because of the asynchronous nature of the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> function.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>
|

<span class="param-type">array</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="forEach"><span class="type-signature"></span>forEach<span class="signature">()</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Alias for <a href="CB_AudioFileCache.html#executeFunctionAll"><code>CB_AudioFileCache#executeFunctionAll</code></a>.</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1875">line 1875</a>
			</li>
		</ul>
	</dd>
	

	

	
	<dt class="tag-see method-doc-label method-doc-details-label">See:</dt>
	<dd class="tag-see">
		<ul>
			<li><a href="CB_AudioFileCache.html#executeFunctionAll"><code>CB_AudioFileCache#executeFunctionAll</code></a></li>
			</ul>
	</dd>
	

	
</dl>


    

    

    

    

    

    

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFileBySoundInstanceId"><span class="type-signature"></span>getAudioFileBySoundInstanceId<span class="signature">(soundInstanceId [, avoidCancelled])</span><span class="type-signature"> &rarr; {<a href="CB_AudioFile.html">CB_AudioFile</a>|null}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Gets the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object associated to a given sound instance ID (created by the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method), if any, or null otherwise.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>soundInstanceId</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The identifier (integer) of the sound instance we want to get.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>avoidCancelled</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will not return the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object if its sound instance has been cancelled.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1666">line 1666</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object associated to a given sound instance ID, if any, or null otherwise.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>
|

<span class="param-type">null</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFilePosition"><span class="type-signature"></span>getAudioFilePosition<span class="signature">(id)</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells the position of a desired <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (by its identifier) in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property or -1 otherwise.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>id</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The identifier of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (belongs to its <a href="CB_AudioFile.html#id"><code>CB_AudioFile#id</code></a> property) whose position we want to find. Note that the identifier is not case sensitive and it should be unique for each object.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1448">line 1448</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the position of a desired <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (by its identifier) in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property or -1 otherwise.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFiles"><span class="type-signature"></span>getAudioFiles<span class="signature">( [copy])</span><span class="type-signature"> &rarr; {array}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Gets an array with all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>copy</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, instead of returning the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property directly, it will return a new copy of it.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2678">line 2678</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns an array with all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">array</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFilesBusy"><span class="type-signature"></span>getAudioFilesBusy<span class="signature">()</span><span class="type-signature"> &rarr; {array}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Gets an array with the busy <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (the objects which are not available and ready to use).</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2724">line 2724</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns an array with the busy <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (the objects which are not available and ready to use).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">array</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFilesFree"><span class="type-signature"></span>getAudioFilesFree<span class="signature">()</span><span class="type-signature"> &rarr; {array}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Gets an array with the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (the objects which are available and ready to use).</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2703">line 2703</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns an array with the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (the objects which are available and ready to use).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">array</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFilesFreeNumber"><span class="type-signature"></span>getAudioFilesFreeNumber<span class="signature">()</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells the current number of free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (the number of objects which are available and ready to use).</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2666">line 2666</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the current number of free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (the number of objects which are available and ready to use).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getAudioFilesNumber"><span class="type-signature"></span>getAudioFilesNumber<span class="signature">( [real])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects created.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>real</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, instead of returning the value of the <a href="CB_AudioFileCache.html#audioFilesCreated"><code>CB_AudioFileCache#audioFilesCreated</code></a> property, it will return the value of the &quot;length&quot; property of the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> array which are the real number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects used. If all went well, the returning value should be always the same regardless of this parameter.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2746">line 2746</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects created.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getDuration"><span class="type-signature"></span>getDuration<span class="signature">( [maximum])</span><span class="type-signature"> &rarr; {number}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells the duration (minimum or maximum) of the sound stored (in milliseconds). Although the audio file cache should always be used to cache the same sound only, the duration might not always be the same due the usage of different formats, file paths, etc. So this method returns either the minimum or the maximum duration found among all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>maximum</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, instead of returning the value of the <a href="CB_AudioFileCache.html#duration"><code>CB_AudioFileCache#duration</code></a> property (which belongs to the minimum duration found among all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects), it will return the value of <a href="CB_AudioFileCache.html#durationMaximum"><code>CB_AudioFileCache#durationMaximum</code></a> property (which belongs to the maximum duration found among all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects).</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2759">line 2759</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the duration (minimum or maximum) of the sound stored (in milliseconds). Although the audio file cache should always be used to cache the same sound only, the duration might not always be the same due the usage of different formats, file paths, etc. So this method returns either the minimum or the maximum duration found among all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">number</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getFreeAudioFile"><span class="type-signature"></span>getFreeAudioFile<span class="signature">( [popIt])</span><span class="type-signature"> &rarr; {<a href="CB_AudioFileCache.html#.getFreeAudioFile_OBJECT">CB_AudioFileCache.getFreeAudioFile_OBJECT</a>}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Returns a free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object, if any (from the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property). Note that this will call the internal <code>CB_AudioFileCache#_createNewAudioFilesIfNeeded</code> method that could end creating a new <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object if needed.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>popIt</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object will also be &quot;popped&quot; (removed) from the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1407">line 1407</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns a <a href="CB_AudioFileCache.html#.getFreeAudioFile_OBJECT"><code>CB_AudioFileCache.getFreeAudioFile_OBJECT</code></a> object.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="CB_AudioFileCache.html#.getFreeAudioFile_OBJECT">CB_AudioFileCache.getFreeAudioFile_OBJECT</a></span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getProgress"><span class="type-signature"></span>getProgress<span class="signature">( [countLoadedObjects] [, alsoUncheckedAndCheckingObjects])</span><span class="type-signature"> &rarr; {number}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Returns a number representing the percentage of the loading progress for the audio file cache (from 0 to 100, being 100 a complete loading progress). The way to calculate it internally may differ from one audio API to another and it is not totally reliable.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>countLoadedObjects</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will count the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method returns &quot;LOADED&quot; (the value of the <code>CB_AudioFile#LOADED</code> property), instead of just using the array's &quot;length&quot; of the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>alsoUncheckedAndCheckingObjects</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true and the &quot;countLoadedObjects&quot; parameter is also true, it will also count the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method returns &quot;UNCHECKED&quot; (the value of the <code>CB_AudioFile#UNCHECKED</code> property) or &quot;CHECKING&quot; (the value of the <code>CB_AudioFile#CHECKING</code> property). If the &quot;countLoadedObjects&quot; parameter is false, this parameter will be ignored.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2774">line 2774</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Although it would be more accurate, it does not use the <a href="CB_AudioFile.html#getProgress"><code>CB_AudioFile#getProgress</code></a> method internally because the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects are not added to the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property until they are loaded. It would be nice to code a way to be able to use it (perhaps a property where the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects loading are kept temporarily).</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns a number representing the percentage of the loading progress for the audio file cache (from 0 to 100, being 100 a complete loading progress). The way to calculate it internally may differ from one audio API to another and it is not totally reliable.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">number</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getStatus"><span class="type-signature"></span>getStatus<span class="signature">()</span><span class="type-signature"> &rarr; {number}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Gets the current status of the audio file cache.</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2828">line 2828</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the current status of the audio file cache. It is a number, which should match the value of the <a href="CB_AudioFileCache.html#.UNLOADED"><code>CB_AudioFileCache.UNLOADED</code></a> (still unloaded), <a href="CB_AudioFileCache.html#.LOADING"><code>CB_AudioFileCache.LOADING</code></a> (loading), <a href="CB_AudioFileCache.html#.UNCHECKED"><code>CB_AudioFileCache.UNCHECKED</code></a> (not checked by calling the <a href="CB_AudioFileCache.html#checkPlayingAll"><code>CB_AudioFileCache#checkPlayingAll</code></a> method yet), <a href="CB_AudioFileCache.html#.CHECKING"><code>CB_AudioFileCache.CHECKING</code></a> (being checked by the <a href="CB_AudioFileCache.html#checkPlayingAll"><code>CB_AudioFileCache#checkPlayingAll</code></a> method), <a href="CB_AudioFileCache.html#.LOADED"><code>CB_AudioFileCache.LOADED</code></a> (loaded), <a href="CB_AudioFileCache.html#.FAILED"><code>CB_AudioFileCache.FAILED</code></a> (failed loading or failed to play or by any other reason) or <a href="CB_AudioFileCache.html#.ABORTED"><code>CB_AudioFileCache.ABORTED</code></a> (aborted because it was destroyed with the &quot;destructor&quot; method) property.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">number</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="getStatusString"><span class="type-signature"></span>getStatusString<span class="signature">()</span><span class="type-signature"> &rarr; {string}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Gets the current status of the audio file cache, as a string.</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2839">line 2839</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the current status of the audio file cache, as a string. Possible return values are &quot;UNLOADED&quot;, &quot;LOADING&quot;, &quot;UNCHECKED&quot;, &quot;CHECKING&quot;, &quot;LOADED&quot;, &quot;FAILED&quot;, &quot;ABORTED&quot; or &quot;UNKNOWN (UNKNOWN_STATUS)&quot; (where &quot;UNKNOWN_STATUS&quot; will be a value from the <a href="CB_AudioFileCache.html#status"><code>CB_AudioFileCache#status</code></a> property not recognized as any possible status).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">string</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="isAudioFileFree"><span class="type-signature"></span>isAudioFileFree<span class="signature">(id)</span><span class="type-signature"> &rarr; {boolean}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells whether a desired <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is free (it is in the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property) or not, by its identifier. A free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is an object which is not being used and it is available to be used.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>id</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The identifier of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (belongs to its <a href="CB_AudioFile.html#id"><code>CB_AudioFile#id</code></a> property) that we want to check. Note that the identifier is not case sensitive and it should be unique for each object.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1479">line 1479</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns whether a desired <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is free (it is in the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property) or not, by its identifier. A free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is an object which is not being used and it is available to be used.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">boolean</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="isAudioFileFreeByPosition"><span class="type-signature"></span>isAudioFileFreeByPosition<span class="signature">(position)</span><span class="type-signature"> &rarr; {boolean}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells whether a given numeric position of a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property is stored in the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property or not (this means that the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object in that position of the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property is free). A free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is an object which is not being used and it is available to be used.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>position</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Position of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property that we want to check whether it is in the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property or not.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1493">line 1493</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns whether the given numeric position of a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property is stored in the <a href="CB_AudioFileCache.html#audioFilesFree"><code>CB_AudioFileCache#audioFilesFree</code></a> property or not (this means that the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object in that position of the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property is free). A free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is an object which is not being used and it is available to be used.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">boolean</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="isPlaying"><span class="type-signature"></span>isPlaying<span class="signature">()</span><span class="type-signature"> &rarr; {boolean}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tells whether any of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects is playing or not. It uses the <a href="CB_AudioFile.html#isPlaying"><code>CB_AudioFile#isPlaying</code></a> method internally.</p>
    </div>
    

    

    

    
    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2647">line 2647</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns whether any of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects is playing or not.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">boolean</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="load"><span class="type-signature"></span>load<span class="signature">(dataObject)</span><span class="type-signature"> &rarr; {<a href="CB_AudioFileCache.html">CB_AudioFileCache</a>|null}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Loads the audio file cache with the desired data given. This method is called by the constructor automatically. Recommended to be called through a user-driven event (as onClick, onTouch, etc.), as some clients may need this at least the first time in order to be able to play the audio.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>dataObject</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.DATA_OBJECT">CB_AudioFileCache.DATA_OBJECT</a></span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Object with the desired data and options for the audio files cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-504">line 504</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>If a &quot;dataObject&quot; is given, it returns the current <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object. Otherwise, it returns null.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="CB_AudioFileCache.html">CB_AudioFileCache</a></span>
|

<span class="param-type">null</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="muteAll"><span class="type-signature"></span>muteAll<span class="signature">( [onMute] [, audioFiles])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Mutes all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided). It uses the <a href="CB_AudioFile.html#mute"><code>CB_AudioFile#mute</code></a> method internally.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onMute</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Callback function which will be called for each audio file if it has been possible to mute it (or at least it was possible to try it), being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object. Used internally as the &quot;onMute&quot; parameter to call the <a href="CB_AudioFile.html#mute"><code>CB_AudioFile#mute</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2304">line 2304</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of calls to the <a href="CB_AudioFile.html#mute"><code>CB_AudioFile#mute</code></a> method that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects in the &quot;audioFiles&quot; parameter).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="pauseAll"><span class="type-signature"></span>pauseAll<span class="signature">( [onPause] [, audioFiles])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tries to pause all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided), which are being played, by calling their <a href="CB_AudioFile.html#pause"><code>CB_AudioFile#pause</code></a> method internally.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onPause</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function without parameters to be called when the audio is paused successfully, being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object. Used internally as the &quot;onPause&quot; parameter to call the <a href="CB_AudioFile.html#pause"><code>CB_AudioFile#pause</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2235">line 2235</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of calls to the <a href="CB_AudioFile.html#pause"><code>CB_AudioFile#pause</code></a> method that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects in the &quot;audioFiles&quot; parameter).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="play"><span class="type-signature"></span>play<span class="signature">( [startAt] [, stopAt] [, loop] [, volume] [, allowedRecursiveDelay] [, allowedRecursiveDelaySkipping] [, onPlayStart] [, onStop] [, startPlayingTime] [, startAtOriginal] [, soundInstanceId] [, _callRecursivelyIfNotTooLateCalledObject])</span><span class="type-signature"> &rarr; {integer|null}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Plays a sound of the cache (if there is any free). If a sound cannot be played, this method can call itself internally again and again (with most of the given parameters being the same, depending on the circumstances) to try to play the sound until a desired time limit is reached. If a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object cannot be played and it is determined necessary, it will try to reload it internally (by calling the <a href="CB_AudioFileCache.html#removeAudioFile"><code>CB_AudioFileCache#removeAudioFile</code></a> method).</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>startAt</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    0 | <a href="CB_AudioFile_API.WAAPI.html#lastStartAt"><code>CB_AudioFile_API.WAAPI#lastStartAt</code></a> | <a href="CB_AudioFile_API.SM2.html#lastStartAt"><code>CB_AudioFile_API.SM2#lastStartAt</code></a> | <a href="CB_AudioFile_API.ACMP.html#lastStartAt"><code>CB_AudioFile_API.ACMP#lastStartAt</code></a> | <a href="CB_AudioFile_API.AAPI.html#lastStartAt"><code>CB_AudioFile_API.AAPI#lastStartAt</code></a> | stopAt
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Time in milliseconds where we want the audio to start at. If not provided or it is not a valid number, it will use zero (0) as default which belongs to the beginning of the audio. If the value provided is greater than the &quot;stopAt&quot; provided, it will use the value set in the &quot;lastStartAt&quot; property of the used audio API object (which belongs to the &quot;startAt&quot; value the last time that the &quot;play&quot; method was called). If, even using the &quot;lastStartAt&quot; value is still greater than the &quot;stopAt&quot; provided, it will use the same value as the &quot;stopAt&quot; which means it will not play and will stop immediately. Used internally as the &quot;startAt&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>stopAt</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFile_API.WAAPI.html#getDuration"><code>CB_AudioFile_API.WAAPI#getDuration</code></a>() | <a href="CB_AudioFile_API.SM2.html#getDuration"><code>CB_AudioFile_API.SM2#getDuration</code></a>() | <a href="CB_AudioFile_API.ACMP.html#getDuration"><code>CB_AudioFile_API.ACMP#getDuration</code></a>() | <a href="CB_AudioFile_API.AAPI.html#getDuration"><code>CB_AudioFile_API.AAPI#getDuration</code></a>()
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Time in milliseconds where we want the audio to stop at. If not provided or it is not a valid number, it will use the returning value of the &quot;getDuration&quot; method of the used audio API object (which should belong to the total duration of the audio, if it was calculated correctly). Used internally as the &quot;stopAt&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>loop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFile.html#loop"><code>CB_AudioFile#loop</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Sets whether we want to play the audio looping (starting again and again) or just play it once. Used internally as the &quot;loop&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>volume</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_DEFAULT ? CB_Speaker.getVolume() : CB_Configuration.CrossBase.CB_Speaker_DEFAULT_VOLUME
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Desired volume to play the audio. Used internally as the &quot;volume&quot; parameter to call the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any), before playing it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>allowedRecursiveDelay</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_Configuration.CrossBase.html#.CB_AudioFile_AudioFileCache_ALLOWED_RECURSIVE_DELAY_DEFAULT"><code>CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_ALLOWED_RECURSIVE_DELAY_DEFAULT</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The maximum amount of time (in milliseconds) of delay that we accept before start playing the audio. If the amount of time is overcome, the audio will not play at all. Used only when the audio is not able to play immediately.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>allowedRecursiveDelaySkipping</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    stopAt-startAt
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If provided (uses milliseconds) and the time expired trying to start playing the sound without success is still inside this amount of time provided, it will try to play the sound but skipping the part of the audio which should have already been played already. In other words, it will try to start playing the sound as if the previous non-played part (which should have been playing during the time which already expired) was already being playing silently. Only used when the time set in the &quot;allowedRecursiveDelay&quot; parameter has been reached and the audio did not start playing yet. The default value is the duration of the sound that we want to play (having in mind the real value of the &quot;startAt&quot; and &quot;stopAt&quot; parameters which are calculated internally and can be different from the provided ones in the case that they had any error).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onPlayStart</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function to be called when the audio starts playing successfully. The function will be called with the following parameters (in order): &quot;soundInstanceId&quot; (the identifier of the sound instance used), &quot;startAt&quot;, &quot;stopAt&quot;, &quot;startAtNextLoop&quot;, &quot;loop&quot;, &quot;avoidDelayedPlay&quot;, &quot;allowedRecursiveDelay&quot; and &quot;startPlayingTime&quot;, being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object used (if any). Used internally as the &quot;onPlayStart&quot; parameter (wrapped in another function) to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onStop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function to call when the sound stops playing, with an unique parameter which belongs to the &quot;soundInstanceId&quot; (the identifier of the sound instance used), being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any). Used internally as the &quot;callbackFunction&quot; parameter (wrapped in a function) to call the <a href="CB_AudioFile.html#onStop"><code>CB_AudioFile#onStop</code></a> method of the free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object (if any), before playing it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>startPlayingTime</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    CB_Device.getTiming()
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally to calculate the amount of time (in milliseconds) expired without playing the sound. Internal usage only recommended.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>startAtOriginal</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    startAt
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally to start playing the sound accurately and skipping the part which could not be played before, if the time expired without being played is still inside the amount of time provided in the &quot;allowedRecursiveDelaySkipping&quot; parameter. Internal usage only recommended.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>soundInstanceId</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    CB_AudioFileCache._soundInstanceIdUnique++
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The identifier of the sound instance that will be played. Used internally when the function is called recursively in the case that the sound could not be played immediately. Internal usage only recommended.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>_callRecursivelyIfNotTooLateCalledObject</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">Object</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Object with just the &quot;called&quot; property (boolean). Used internally to know whether the current execution thread called already the <code>_callRecursivelyIfNotTooLate</code> internal method for the same sound instance or not. Internal usage only recommended.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1754">line 1754</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the sound instance ID used if there was one free or null otherwise. To get a sound instance returned does not mean necessarily that the sound started playing so it is necessary to use a callback function as the &quot;onPlayStart&quot; parameter for checking this. The sound instance created (if any), will be cancelled automatically once the sound is stopped.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>
|

<span class="param-type">null</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="playAll"><span class="type-signature"></span>playAll<span class="signature">( [startAt] [, stopAt] [, loop] [, volume] [, avoidDelayedPlay] [, allowedRecursiveDelay] [, onPlayStart] [, onStop] [, includingPlaying])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tries to play all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects by calling their <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method internally. If a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object cannot be played and it is determined necessary, it will try to reload it internally (by calling the <a href="CB_AudioFileCache.html#removeAudioFile"><code>CB_AudioFileCache#removeAudioFile</code></a> method). It does not create sound instances.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>startAt</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    0 | <a href="CB_AudioFile_API.WAAPI.html#lastStartAt"><code>CB_AudioFile_API.WAAPI#lastStartAt</code></a> | <a href="CB_AudioFile_API.SM2.html#lastStartAt"><code>CB_AudioFile_API.SM2#lastStartAt</code></a> | <a href="CB_AudioFile_API.ACMP.html#lastStartAt"><code>CB_AudioFile_API.ACMP#lastStartAt</code></a> | <a href="CB_AudioFile_API.AAPI.html#lastStartAt"><code>CB_AudioFile_API.AAPI#lastStartAt</code></a> | stopAt
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Time in milliseconds where we want the audio to start at. If not provided or it is not a valid number, it will use zero (0) as default which belongs to the beginning of the audio. If the value provided is greater than the &quot;stopAt&quot; provided, it will use the value set in the &quot;lastStartAt&quot; property of the used audio API object (which belongs to the &quot;startAt&quot; value the last time that the &quot;play&quot; method was called). If, even using the &quot;lastStartAt&quot; value is still greater than the &quot;stopAt&quot; provided, it will use the same value as the &quot;stopAt&quot; which means it will not play and will stop immediately. Used internally as the &quot;startAt&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>stopAt</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFile_API.WAAPI.html#getDuration"><code>CB_AudioFile_API.WAAPI#getDuration</code></a>() | <a href="CB_AudioFile_API.SM2.html#getDuration"><code>CB_AudioFile_API.SM2#getDuration</code></a>() | <a href="CB_AudioFile_API.ACMP.html#getDuration"><code>CB_AudioFile_API.ACMP#getDuration</code></a>() | <a href="CB_AudioFile_API.AAPI.html#getDuration"><code>CB_AudioFile_API.AAPI#getDuration</code></a>()
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Time in milliseconds where we want the audio to stop at. If not provided or it is not a valid number, it will use the returning value of the &quot;getDuration&quot; method of the used audio API object (which should belong to the total duration of the audio, if it was calculated correctly). Used internally as the &quot;stopAt&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>loop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFile.html#loop"><code>CB_AudioFile#loop</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Sets whether we want to play the audio looping (starting again and again) or just play it once. Note that at the end of each loop the &quot;onStop&quot; function defined will not be called. Used internally as the &quot;loop&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>volume</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_DEFAULT ? CB_Speaker.getVolume() : CB_Configuration.CrossBase.CB_Speaker_DEFAULT_VOLUME
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Desired volume to play the audio. Used internally as the &quot;volume&quot; parameter to call the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object, before playing it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>avoidDelayedPlay</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to false (recommended) and the audio failed previously or was aborted (destroyed), it will try to load it correctly again automatically and play it after that if possible (this can take some time so the audio could start playing after a delay). Otherwise, if set to true and the audio failed or was aborted (destroyed), the audio will not play at all and the &quot;stop&quot; method of the audio file object will be called immediately. Used internally as the &quot;avoidDelayedPlay&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>allowedRecursiveDelay</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_Configuration.CrossBase.html#.CB_AudioFile_AudioFileCache_ALLOWED_RECURSIVE_DELAY_DEFAULT"><code>CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_ALLOWED_RECURSIVE_DELAY_DEFAULT</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The maximum amount of time (in milliseconds) of delay that we accept before start playing the audio. If the amount of time is overcome, the audio will not play at all and the &quot;stop&quot; method will be called immediately. Used only when the &quot;avoidDelayedPlay&quot; parameter is set to false and the audio needs to be loaded because it failed previously or was aborted (destroyed). Used internally as the &quot;allowedRecursiveDelay&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onPlayStart</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function to be called when the audio starts playing successfully. The function will be called with the following parameters (in order): &quot;startAt&quot;, &quot;stopAt&quot;, &quot;startAtNextLoop&quot;, &quot;loop&quot;, &quot;avoidDelayedPlay&quot;, &quot;allowedRecursiveDelay&quot; and &quot;startPlayingTime&quot;, being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object. Used internally as the &quot;onPlayStart&quot; parameter to call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onStop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function that will be called each time that a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object stops playing. Used internally as the &quot;callbackFunction&quot; parameter to call the <a href="CB_AudioFile.html#onStop"><code>CB_AudioFile#onStop</code></a> method of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object, before playing it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>includingPlaying</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method even for those <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are currently playing.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2145">line 2145</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Think about implementing an "audioFiles" parameter.</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method did not return the value of &quot;-1&quot; (this does not mean necessarily that they could be played successfully).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="playAndStopAll"><span class="type-signature"></span>playAndStopAll<span class="signature">( [includingPlaying] [, delayBeforeStop])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Plays silently and stops all <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects after a desired time. It can be useful for some clients which need the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method to be called through a user-driven event (as onClick, onTouch, etc.). Internally, it calls <a href="CB_AudioFileCache.html#playAll"><code>CB_AudioFileCache#playAll</code></a>(0, null, false, 0, true, null, null, null, includingPlaying) and, after a desired delay, calls the <a href="CB_AudioFileCache.html#stopAll"><code>CB_AudioFileCache#stopAll</code></a> method.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>includingPlaying</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will call the <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method even for those <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are currently playing.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>delayBeforeStop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    100
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Delay (in milliseconds) before stopping the audio, that will be used as the second parameter of the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> function when calling the <a href="CB_AudioFileCache.html#stopAll"><code>CB_AudioFileCache#stopAll</code></a> method.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2218">line 2218</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Think about implementing an "audioFiles" parameter.</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#play"><code>CB_AudioFile#play</code></a> method did not return the value of &quot;-1&quot; (this does not mean necessarily that they could be played successfully).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="purge"><span class="type-signature"></span>purge<span class="signature">(desiredNumber [, setAsMinimumAudioFiles] [, includePlaying] [, stopSounds] [, statuses])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tries to purge the audio file cache until it reaches a desired number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects internally (set in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property), by removing and destroying some of the current <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects. For performance purposes.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>desiredNumber</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The desired number of internal <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to keep in the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property. It mus be 1 or greater.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>setAsMinimumAudioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true, it will set the value of the &quot;desiredNumber&quot; parameter to the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> property (only when there is a maximum defined in <a href="CB_AudioFileCache.html#maximumAudioFiles"><code>CB_AudioFileCache#maximumAudioFiles</code></a>).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>includePlaying</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If it is set to true and removing non-playing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects was not enough to reach the desired number (defined in the &quot;desiredNumber&quot; parameter), it will also try to remove objects which are being playing currently.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>stopSounds</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used as the &quot;stopSound&quot; parameter when calling the <a href="CB_AudioFile.html#destructor"><code>CB_AudioFile#destructor</code></a> method of each <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object removed.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>statuses</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    Array(<a href="CB_AudioFile.html#.LOADING"><code>CB_AudioFile.LOADING</code></a>, <a href="CB_AudioFile.html#.UNCHECKED"><code>CB_AudioFile.UNCHECKED</code></a>, <a href="CB_AudioFile.html#.CHECKING"><code>CB_AudioFile.CHECKING</code></a>, <a href="CB_AudioFile.html#.LOADED"><code>CB_AudioFile.LOADED</code></a>)
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Numeric array containing the statuses of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want this method to authorize to remove. This means that if the returning value of the <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method of a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is not in this list, it will not be tried to be removed (unless they end removed by the <a href="CB_AudioFileCache.html#clearAudioFiles"><code>CB_AudioFileCache#clearAudioFiles</code></a> method called internally). Have in mind that this method will call the <a href="CB_AudioFileCache.html#clearAudioFiles"><code>CB_AudioFileCache#clearAudioFiles</code></a> method internally, which destroys the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects whose <a href="CB_AudioFile.html#getStatus"><code>CB_AudioFile#getStatus</code></a> method returns <a href="CB_AudioFile.html#.ABORTED"><code>CB_AudioFile.ABORTED</code></a> and <a href="CB_AudioFile.html#.FAILED"><code>CB_AudioFile.FAILED</code></a>, so these two statuses need not be indicated. It will respect the order given. Possible values for this array are: <a href="CB_AudioFile.html#.UNLOADED"><code>CB_AudioFile.UNLOADED</code></a>, <a href="CB_AudioFile.html#.LOADING"><code>CB_AudioFile.LOADING</code></a>, <a href="CB_AudioFile.html#.UNCHECKED"><code>CB_AudioFile.UNCHECKED</code></a>, <a href="CB_AudioFile.html#.CHECKING"><code>CB_AudioFile.CHECKING</code></a>, <a href="CB_AudioFile.html#.LOADED"><code>CB_AudioFile.LOADED</code></a>, <a href="CB_AudioFile.html#.FAILED"><code>CB_AudioFile.FAILED</code></a> and <a href="CB_AudioFile.html#.ABORTED"><code>CB_AudioFile.ABORTED</code></a>.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1295">line 1295</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects removed.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="removeAudioFile"><span class="type-signature"></span>removeAudioFile<span class="signature">(audioObjectOrId [, reload] [, checkManually])</span><span class="type-signature"> &rarr; {boolean|<a href="CB_AudioFile.html">CB_AudioFile</a>|null}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>If found, takes a given <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object off the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property (and reloads it if we want to). NOTE: It does neither destroy nor remove the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object so it can be used for other purposes (and if a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is given, it will be tried to be reused by the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method internally if it is called). Internal usage only recommended.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioObjectOrId</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>
|

<span class="param-type">string</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object or a string with its identifier (not case sensitive) that we want to remove from the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property. If a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is given, its <a href="CB_AudioFile.html#id"><code>CB_AudioFile#id</code></a> property (which should be unique always) must be set as it is used to identify the object. NOTE: It does neither destroy nor remove the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object so it can be used for other purposes (and if a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object is given, it will be tried to be reused by the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method internally if it is called).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>reload</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If it is set to true, the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method will be called automatically at the end of the process. If a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object has been given (through the &quot;audioObjectOrId&quot; parameter) or found by its identifier, it will be tried to be reused by the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method (as its &quot;audioObject&quot; parameter).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>checkManually</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Only used when the &quot;reload&quot; parameter is set to true, to calculate the &quot;checkAutomatically&quot; parameter when calling the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method internally.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1149">line 1149</a>
			</li>
		</ul>
	</dd>
	

	

	

	
	<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
	<dd class="tag-todo">
		<ul>
			<li>Think about calling the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method internally (when the "reload" parameter is set to true) only when the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object has been found and removed from the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property.</li>
			</ul>
	</dd>
	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns null if the given &quot;audioObjectOrId&quot; parameter is not a valid <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object or its <a href="CB_AudioFile.html#id"><code>CB_AudioFile#id</code></a> property is not set or when the &quot;audioObjectOrId&quot; parameter is an empty string. Returns a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object, the given one through the &quot;audioObjectOrId&quot; parameter of the first one removed (it should be the first and unique one removed as the ID must be unique), if the <a href="CB_AudioFileCache.html#createAudioFile"><code>CB_AudioFileCache#createAudioFile</code></a> method is called internally (it will reuse this <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object). Otherwise, returns true if the number of internal <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (inside the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property) has decreased or false otherwise.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">boolean</span>
|

<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>
|

<span class="param-type">null</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="resumeAll"><span class="type-signature"></span>resumeAll<span class="signature">( [loop] [, allowedRecursiveDelay] [, allowedRecursiveDelaySkipping] [, onPlayStart] [, onStop] [, audioFiles])</span><span class="type-signature"> &rarr; {array}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Resumes all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided), which are paused (and not stopped). It uses the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method internally.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>loop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFile.html#loop"><code>CB_AudioFile#loop</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;loop&quot; parameter to call the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>allowedRecursiveDelay</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_Configuration.CrossBase.html#.CB_AudioFile_AudioFileCache_ALLOWED_RECURSIVE_DELAY_DEFAULT"><code>CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_ALLOWED_RECURSIVE_DELAY_DEFAULT</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;allowedRecursiveDelay&quot; parameter to call the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>allowedRecursiveDelaySkipping</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    CB_AudioFile#lastStopAt-CB_AudioFile#lastStartAt
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;allowedRecursiveDelaySkipping&quot; parameter to call the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onPlayStart</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;onPlayStart&quot; parameter to call the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onStop</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;onStop&quot; parameter to call the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2252">line 2252</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns a numeric array containing all the return values of each internal call to the <a href="CB_AudioFileCache.html#play"><code>CB_AudioFileCache#play</code></a> method.</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">array</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="setAudioAPIAll"><span class="type-signature"></span>setAudioAPIAll<span class="signature">(preferredAPIs [, callbackOk] [, callbackError] [, mandatory] [, forceReload] [, audioFiles])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tries to change the audio API for all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided). Uses the <a href="CB_AudioFile.html#setAudioAPI"><code>CB_AudioFile#setAudioAPI</code></a> method internally. This method is not allowed to be called if a previous call to it did not finish yet. The function defined in the &quot;callbackError&quot; parameter, if any, will be called immediately if the method was previously called and it is still running currently.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>preferredAPIs</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>
|

<span class="param-type">string</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Array of strings with the preferred audio API or audio APIs, in order of preference. It also accepts a string with only one audio API. If more than one audio API is provided and setting an audio API fails for a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object, it will try setting the next one and so on (this means that some of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects could end with a different audio API). Possible audio APIs are &quot;WAAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API">HTML5 Web Audio API</a>), &quot;SM2&quot; (<a href="http://schillmania.com/projects/soundmanager2/">SoundManager 2</a>), &quot;ACMP&quot; (<a href="https://github.com/apache/cordova-plugin-media">Apache Cordova Media Plugin</a>) or &quot;AAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio">HTML5 Audio API</a>).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackOk</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.setAudioAPIAll_CALLBACK_OK">CB_AudioFileCache.setAudioAPIAll_CALLBACK_OK</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function that will be called when all the process was performed successfully, being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackError</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.setAudioAPIAll_CALLBACK_ERROR">CB_AudioFileCache.setAudioAPIAll_CALLBACK_ERROR</a></span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Function that will be called when any error happened, being &quot;this&quot; the <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object. This function will be called immediately if the method was previously called and it is still running currently.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>mandatory</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true and any <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object could not perform successfully any call to its <a href="CB_AudioFile.html#setAudioAPI"><code>CB_AudioFile#setAudioAPI</code></a> method for all desired audio APIs provided in the &quot;preferredAPIs&quot; parameter (this means that, internally, all the <a href="CB_AudioFile.html#setAudioAPI"><code>CB_AudioFile#setAudioAPI</code></a> calls, one per desired audio API, have fired an error by calling the function defined in its &quot;callbackError&quot; parameter), the audio file cache will be set as &quot;FAILED&quot; (the <a href="CB_AudioFileCache.html#status"><code>CB_AudioFileCache#status</code></a> property will be set to the value of <a href="CB_AudioFileCache.html#.FAILED"><code>CB_AudioFileCache.FAILED</code></a>).</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>forceReload</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">string</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Used internally as the &quot;forceReload&quot; parameter when calling the <a href="CB_AudioFile.html#setAudioAPI"><code>CB_AudioFile#setAudioAPI</code></a> method internally.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2369">line 2369</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of calls to the <a href="CB_AudioFile.html#setAudioAPI"><code>CB_AudioFile#setAudioAPI</code></a> method that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects in the &quot;audioFiles&quot; parameter).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="setVolumeAll"><span class="type-signature"></span>setVolumeAll<span class="signature">( [volume] [, forceSetVolumeProperty] [, onSetVolume] [, audioFiles])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Sets the same volume for all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided). It uses the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method internally.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>volume</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">number</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <code>CB_Speaker.getVolume()</code> | <a href="CB_Configuration.CrossBase.html#.CB_Speaker_DEFAULT_VOLUME"><code>CB_Configuration.CrossBase.CB_Speaker_DEFAULT_VOLUME</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Desired volume (from 0 to the maximum value, where the maximum value will be the returning value of calling the <a href="CB_Speaker.html#.getVolume"><code>CB_Speaker.getVolume</code></a> function if the <a href="CB_Configuration.CrossBase.html#.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_MAXIMUM"><code>CB_Configuration.CrossBase.CB_AudioFile_AudioFileCache_USE_SPEAKER_VOLUME_AS_MAXIMUM</code></a> property is set to true or it will be 100 otherwise). Used internally as the &quot;volume&quot; parameter to call the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>forceSetVolumeProperty</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    false
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>If set to true (not recommended), it will change the &quot;volume&quot; property of the used audio API object even when the volume was failed to be changed. Used internally as the &quot;forceSetVolumeProperty&quot; parameter to call the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onSetVolume</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Callback function which will be called if it has been possible to set the volume (or at least it was possible to try it), being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object. Used internally as the &quot;onSetVolume&quot; parameter to call the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2332">line 2332</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of calls to the <a href="CB_AudioFile.html#setVolume"><code>CB_AudioFile#setVolume</code></a> method that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects in the &quot;audioFiles&quot; parameter).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="stopAll"><span class="type-signature"></span>stopAll<span class="signature">( [audioFiles])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Tries to stops all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided), which are being played, by calling their <a href="CB_AudioFile.html#stop"><code>CB_AudioFile#stop</code></a> method internally.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2204">line 2204</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of calls to the <a href="CB_AudioFile.html#stop"><code>CB_AudioFile#stop</code></a> method that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects in the &quot;audioFiles&quot; parameter).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        
            
<hr>
<dt>
    <h4 class="name" id="unmuteAll"><span class="type-signature"></span>unmuteAll<span class="signature">( [onUnmute] [, audioFiles])</span><span class="type-signature"> &rarr; {integer}</span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Unmutes all the existing <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects or the desired ones (if provided). It uses the <a href="CB_AudioFile.html#unmute"><code>CB_AudioFile#unmute</code></a> method internally.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        
        <th style="width:12%; min-width:110px;">Argument</th>
        

        
        <th style="width:12%; min-width:110px;">Default</th>
        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>onUnmute</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Callback function which will be called for each audio file if it has been possible to unmute it (or at least it was possible to try it), being &quot;this&quot; the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object. Used internally as the &quot;onUnmute&quot; parameter to call the <a href="CB_AudioFile.html#unmute"><code>CB_AudioFile#unmute</code></a> method.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>audioFiles</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
                
                    <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a>
                
                </td>
            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A numeric array containing the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that we want to affect. It should contain only <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects which are already in the current audio file cache. If not provided, it will use all the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects contained in the cache.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2317">line 2317</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    
    <h5>Returns:</h5>
    
            
<div class="param-desc">
    <p>Returns the number of calls to the <a href="CB_AudioFile.html#unmute"><code>CB_AudioFile#unmute</code></a> method that were performed (which should be the same number as the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects in the &quot;audioFiles&quot; parameter).</p>
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">integer</span>



    </dd>
</dl>


        

    
</dd>

        </dl>
    

    
        <h3 class="subsection-title">Type Definitions</h3>

        <dl>
                
<hr>
<dt class="name" id=".DATA_OBJECT">
    <h4 id=".DATA_OBJECT">DATA_OBJECT</h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Object with the desired data and options for the audio files cache.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">Object</span>



            </li>
        </ul>
    

    
<dl class="details">
    

    <h5 class="subsection-title">Properties:</h5>

    <dl>

<table class="props table table-striped">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Argument</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>URIs</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="CB_AudioFileCache.html#.URIS_OBJECT">CB_AudioFileCache.URIS_OBJECT</a></span>



            
            </td>

            
                <td class="attributes">
                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last"><p>Object whose property names audio formats and their value is an array of strings with the URIs (audio file paths or audio data URIs) of the audio files in order of preference. The best audio format for the current client will be tried to be calculated and it will use the first working URI (audio file path or data URI). The more audio formats and URIs provided the better, as it will help to maximize the compatibility with as many clients as possible (as some audio APIs and client just support some formats, or use absolute paths instead of relative ones, etc.). Even with different formats, all provided URIs should belong to the same audio (this means same sound or same music, with same length, etc.). NOTE: Only some clients with some audio APIs will support data URIs. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#URIs"><code>CB_AudioFileCache#URIs</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>id</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    ""
                
                </td>
            

            <td class="description last"><p>Desired identifier for the audio files cache. Internal usage only recommended. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#id"><code>CB_AudioFileCache#id</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>preferredAPIs</code></td>
            

            <td class="type">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_Configuration.CrossBase.html#.CB_AudioFileCache_PREFERRED_AUDIO_APIS"><code>CB_Configuration.CrossBase.CB_AudioFileCache_PREFERRED_AUDIO_APIS</code></a>
                
                </td>
            

            <td class="description last"><p>Array of strings with the preferred audio API or audio APIs, in order of preference. Possible audio APIs are &quot;WAAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API">HTML5 Web Audio API</a>), &quot;SM2&quot; (<a href="http://schillmania.com/projects/soundmanager2/">SoundManager 2</a>), &quot;ACMP&quot; (<a href="https://github.com/apache/cordova-plugin-media">Apache Cordova Media Plugin</a>) or &quot;AAPI&quot; (<a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio">HTML5 Audio API</a>). It will try to calculate and use the best one for the current client. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#preferredAPIs"><code>CB_AudioFileCache#preferredAPIs</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>preferredFormats</code></td>
            

            <td class="type">
            
                
<span class="param-type">array</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_Configuration.CrossBase.html#.CB_AudioFileCache_PREFERRED_AUDIO_FORMATS"><code>CB_Configuration.CrossBase.CB_AudioFileCache_PREFERRED_AUDIO_FORMATS</code></a>
                
                </td>
            

            <td class="description last"><p>Array of strings with the preferred audio format or audio formats (they can include just the format as 'audio/ogg' or also the codec as for example 'audio/ogg; codecs=&quot;vorbis&quot;'), in order of preference. It will try to calculate and use the best one for the current client. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#preferredFormats"><code>CB_AudioFileCache#preferredFormats</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>minimumAudioFiles</code></td>
            

            <td class="type">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.minimumAudioFiles_DEFAULT"><code>CB_AudioFileCache.minimumAudioFiles_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Minimum <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects to create internally. It must be an integer being 1 the minimum. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>maximumAudioFiles</code></td>
            

            <td class="type">
            
                
<span class="param-type">integer</span>
|

<span class="param-type">null</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.maximumAudioFiles_DEFAULT"><code>CB_AudioFileCache.maximumAudioFiles_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Maximum <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that are allowed to be created internally. If it is set to null, there will not be a maximum (it will be unlimited). If an integer is provided, it must be the same number or greater than the value set in the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> property (also provided by the &quot;minimumAudioFiles&quot; of this object), allowing 1 minimum. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#maximumAudioFiles"><code>CB_AudioFileCache#maximumAudioFiles</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>minimumAudioFilesFree</code></td>
            

            <td class="type">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    parseInt(<a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> * 0.25 + 0.5)
                
                </td>
            

            <td class="description last"><p>New <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects will be created internally when the number of free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects reaches this limit. If provided, it must be an integer being 0 (zero) the minimum. It will end using a 25% of the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> by default, rounded to ceil, allowing 0 (zero) minimum. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#minimumAudioFilesFree"><code>CB_AudioFileCache#minimumAudioFilesFree</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>newAudioFilesWhenNeeded</code></td>
            

            <td class="type">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    Math.min(parseInt(<a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> * 0.1 + 0.5), 1)
                
                </td>
            

            <td class="description last"><p>Number of new <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects to create internally when the minimum limit of free <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects (<a href="CB_AudioFileCache.html#minimumAudioFilesFree"><code>CB_AudioFileCache#minimumAudioFilesFree</code></a>) is reached. If provided, it must be an integer being 0 (zero) the minimum. It will end using a 10% of the <a href="CB_AudioFileCache.html#minimumAudioFiles"><code>CB_AudioFileCache#minimumAudioFiles</code></a> by default, rounded to ceil, allowing 1 minimum. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#newAudioFilesWhenNeeded"><code>CB_AudioFileCache#newAudioFilesWhenNeeded</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>retries</code></td>
            

            <td class="type">
            
                
<span class="param-type">integer</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.retries_DEFAULT"><code>CB_AudioFileCache.retries_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Number of retries to try to load a <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object internally before trying to load the next possible one (if any). It must be an integer being 0 the minimum. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#retries"><code>CB_AudioFileCache#retries</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>checkManually</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.checkManually_DEFAULT"><code>CB_AudioFileCache.checkManually_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) by default. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#checkManually"><code>CB_AudioFileCache#checkManually</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>checkManuallyOnNeededCreated</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.checkManuallyOnNeededCreated_DEFAULT"><code>CB_AudioFileCache.checkManuallyOnNeededCreated_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) when creates a new <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object needed. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#checkManuallyOnNeededCreated"><code>CB_AudioFileCache#checkManuallyOnNeededCreated</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>checkManuallyOnPlayingFailed</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.checkManuallyOnPlayingFailed_DEFAULT"><code>CB_AudioFileCache.checkManuallyOnPlayingFailed_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) when playing one has failed and tries to reload it. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#checkManuallyOnPlayingFailed"><code>CB_AudioFileCache#checkManuallyOnPlayingFailed</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>checkManuallyOnCheckingFailed</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    <a href="CB_AudioFileCache.html#.checkManuallyOnCheckingFailed_DEFAULT"><code>CB_AudioFileCache.checkManuallyOnCheckingFailed_DEFAULT</code></a>
                
                </td>
            

            <td class="description last"><p>Tells whether the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects must be checked automatically or not (manually) when checking one has failed and tries to reload it. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#checkManuallyOnCheckingFailed"><code>CB_AudioFileCache#checkManuallyOnCheckingFailed</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>onLoad</code></td>
            

            <td class="type">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last"><p>Desired function to be called once the cache has been loaded. The first and unique parameter will be an integer with the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that still need to be checked, if any, being &quot;this&quot; the current <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#onLoad"><code>CB_AudioFileCache#onLoad</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>onError</code></td>
            

            <td class="type">
            
                
<span class="param-type">function</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last"><p>Desired function to be called when any kind of error happens. The first and unique parameter will be a string with the error description (if it could be determined), being &quot;this&quot; the current <a href="CB_AudioFileCache.html"><code>CB_AudioFileCache</code></a> object. If a valid value is given, this will be added to the <a href="CB_AudioFileCache.html#onError"><code>CB_AudioFileCache#onError</code></a> property.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>disableAutoLoad</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last"><p>If set to true, it will not create automatically the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects by calling the <a href="CB_AudioFileCache.html#createAudioFiles"><code>CB_AudioFileCache#createAudioFiles</code></a> method internally. Internal usage only recommended.</p></td>
        </tr>

    
    </tbody>
</table>
</dl>

    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-24">line 24</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

            
                
<hr>
<dt class="name" id=".URIS_OBJECT">
    <h4 id=".URIS_OBJECT">URIS_OBJECT</h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Object whose property names are audio formats (they can include just the format as 'audio/ogg' or also the codec as for example 'audio/ogg; codecs=&quot;vorbis&quot;') and their value is an array of strings with the URIs (audio file paths or audio data URIs) of the audio files in order of preference. The best audio format for the current client will be tried to be calculated and it will use the first working URI (audio file path or data URI). The more audio formats and URIs provided the better, as it will help to maximize the compatibility with as many clients as possible (as some audio APIs and client just support some formats, or use absolute paths instead of relative ones, etc.). Even with different formats, all provided URIs should belong to the same audio (this means same sound or same music, with same length, etc.). NOTE: Only some clients with some audio APIs will support data URIs.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">Object</span>



            </li>
        </ul>
    

    
<dl class="details">
    

    <h5 class="subsection-title">Properties:</h5>

    <dl>

<table class="props table table-striped">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>filePaths</code></td>
            

            <td class="type">
            
                
<span class="param-type">array</span>



            
            </td>

            

            

            <td class="description last"><p>Being the name of each property the audio format (it can include just the format as 'audio/ogg' or also the codec as for example 'audio/ogg; codecs=&quot;vorbis&quot;'), the value will always be a numeric array of strings with the URIs (audio file paths or audio data URIs) of the audio files in order of preference. The best audio format for the current client will be tried to be calculated and it will use the first working URI (audio file path or data URI). The more audio formats and URIs provided the better, as it will help to maximize the compatibility with as many clients as possible (as some audio APIs and client just support some formats, or use absolute paths instead of relative ones, etc.). Even with different formats, all provided URIs should belong to the same audio (this means same sound or same music, with same length, etc.). NOTE: Only some clients with some audio APIs will support data URIs.</p></td>
        </tr>

    
    </tbody>
</table>
</dl>

    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-8">line 8</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
        <h5>Example</h5>
        
    <pre class="sunlight-highlight-javascript">{
	&quot;audio/mp4&quot; : [ &quot;first/path/sound.m4a&quot;, &quot;alternative/path/sound.m4a&quot;, &quot;alternative/path/2/sound.mp4&quot;, ... ],
	&quot;audio/ogg&quot; : [ &quot;first/path/sound.opus&quot;, &quot;alternative/path/sound.ogg&quot;, &quot;alternative/path/2/sound.ogg&quot;, ... ],
	&quot;audio/mpeg&quot; : [ &quot;first/path/sound.mp3&quot;, &quot;alternative/path/sound.mp3&quot;, &quot;alternative/path/2/sound.mp3&quot;, ... ],
	&quot;audio/wav&quot; : [ &quot;first/path/sound.wav&quot;, &quot;alternative/path/sound.wav&quot;, &quot;alternative/path/2/sound.wav&quot;, ... ],
	...
}
 </pre>


    
</dd>

            
                
<hr>
<dt>
    <h4 class="name" id=".checkPlayingAll_CALLBACK_ERROR"><span class="type-signature"></span>checkPlayingAll_CALLBACK_ERROR<span class="signature">(errorMessage, performedActions, uncheckedObjects)</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Callback function used by the <a href="CB_AudioFileCache.html#checkPlayingAll"><code>CB_AudioFileCache#checkPlayingAll</code></a> method that will be called when not all was performed successfully.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>errorMessage</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A string describing the error, if it could be determined.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>performedActions</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that can be played.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>uncheckedObjects</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>
|

<span class="param-type">undefined</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that needed to be checked before calling this method (it will be undefined if it could not be determined).</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1972">line 1972</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    

    
</dd>

            
                
<hr>
<dt>
    <h4 class="name" id=".checkPlayingAll_CALLBACK_OK"><span class="type-signature"></span>checkPlayingAll_CALLBACK_OK<span class="signature">(performedActions, uncheckedObjects)</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Callback function used by the <a href="CB_AudioFileCache.html#checkPlayingAll"><code>CB_AudioFileCache#checkPlayingAll</code></a> method that will be called when all the process was performed successfully.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>performedActions</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that can be played.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>uncheckedObjects</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that needed to be checked before calling this method.</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1964">line 1964</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    

    
</dd>

            
                
<hr>
<dt class="name" id=".executeFunctionAll_OBJECT">
    <h4 id=".executeFunctionAll_OBJECT">executeFunctionAll_OBJECT</h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Object used by the <a href="CB_AudioFileCache.html#executeFunctionAll"><code>CB_AudioFileCache#executeFunctionAll</code></a> method when the &quot;returnSetTimeoutsArray&quot; parameter is set to true.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">Object</span>



            </li>
        </ul>
    

    
<dl class="details">
    

    <h5 class="subsection-title">Properties:</h5>

    <dl>

<table class="props table table-striped">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>item</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>



            
            </td>

            

            

            <td class="description last"><p>The <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> affected.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>setTimeoutReturningValue</code></td>
            

            <td class="type">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last"><p>The returning value of calling the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> internally or null if it was not called, depending on the &quot;delayBetweenEach&quot; parameter.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>setTimeoutDelay</code></td>
            

            <td class="type">
            
                
<span class="param-type">number</span>



            
            </td>

            

            

            <td class="description last"><p>The value used as the second parameter when calling the <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">setTimeout</a> internally or zero if it was not called, depending on the &quot;delayBetweenEach&quot; parameter.</p></td>
        </tr>

    
    </tbody>
</table>
</dl>

    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1861">line 1861</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

            
                
<hr>
<dt class="name" id=".getFreeAudioFile_OBJECT">
    <h4 id=".getFreeAudioFile_OBJECT">getFreeAudioFile_OBJECT</h4>

    
</dt>
<dd>
    
    <div class="description">
        <p>Object returned by the <a href="CB_AudioFileCache.html#getFreeAudioFile"><code>CB_AudioFileCache#getFreeAudioFile</code></a> method.</p>
    </div>
    

    
        <h5>Type:</h5>
        <ul>
            <li>
                
<span class="param-type">Object</span>



            </li>
        </ul>
    

    
<dl class="details">
    

    <h5 class="subsection-title">Properties:</h5>

    <dl>

<table class="props table table-striped">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>object</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="CB_AudioFile.html">CB_AudioFile</a></span>
|

<span class="param-type">null</span>



            
            </td>

            

            

            <td class="description last"><p>Contains the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object if found or null otherwise.</p></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>index</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>
|

<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last"><p>Contains the position of the <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> object inside the <a href="CB_AudioFileCache.html#audioFiles"><code>CB_AudioFileCache#audioFiles</code></a> property if found or &quot;-1&quot; otherwise.</p></td>
        </tr>

    
    </tbody>
</table>
</dl>

    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-1393">line 1393</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    
</dd>

            
                
<hr>
<dt>
    <h4 class="name" id=".setAudioAPIAll_CALLBACK_ERROR"><span class="type-signature"></span>setAudioAPIAll_CALLBACK_ERROR<span class="signature">(error, errorsHappened, objectsChangedAPI, performedActions, actionsNeeded)</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Callback function used by the <a href="CB_AudioFileCache.html#setAudioAPIAll"><code>CB_AudioFileCache#setAudioAPIAll</code></a> method that will be called when any error happened.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>error</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>A string describing the error, if it was possible to be determined.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>errorsHappened</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of errors that happened, which could be greater than 1 if more than one internal call to the <a href="CB_AudioFile.html#setAudioAPI"><code>CB_AudioFile#setAudioAPI</code></a> method failed.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>objectsChangedAPI</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that actually changed its audio API.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>performedActions</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that ended with a desired audio API, including those ones which were already using it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>actionsNeeded</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The total number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects  that were considered to perform the action (it will be undefined if it could not be determined).</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2347">line 2347</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    

    
</dd>

            
                
<hr>
<dt>
    <h4 class="name" id=".setAudioAPIAll_CALLBACK_OK"><span class="type-signature"></span>setAudioAPIAll_CALLBACK_OK<span class="signature">(objectsChangedAPI, performedActions, actionsNeeded)</span><span class="type-signature"></span></h4>
    
    
</dt>
<dd>

    
    <div class="description">
        <p>Callback function used by the <a href="CB_AudioFileCache.html#setAudioAPIAll"><code>CB_AudioFileCache#setAudioAPIAll</code></a> method that will be called when all the process was performed successfully.</p>
    </div>
    

    

    

    
    
        <h5>Parameters:</h5>
        

<table class="params table table-striped">
    <thead>
    <tr>
        
        <th style="width:12%; min-width:110px;">Name</th>
        

        <th style="width:12%; min-width:110px;">Type</th>

        

        

        <th class="last" style="min-width:310px;">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>objectsChangedAPI</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that actually changed its audio API.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>performedActions</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects that ended with a desired audio API, including those ones which were already using it.</p></td>
        </tr>

    

        <tr>
            
                <td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>actionsNeeded</code></td>
            

            <td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
            
                
<span class="param-type">integer</span>



            
            </td>

            

            

            <td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The total number of <a href="CB_AudioFile.html"><code>CB_AudioFile</code></a> objects  that were considered to perform the action (it will be undefined if it could not be determined).</p></td>
        </tr>

    
    </tbody>
</table>

    

    
<dl class="details">
    

	

	

	

    

    

    

    

	

	

	

	

	



	
	<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
	<dd class="tag-source">
		<ul class="dummy">
			<li>
				<a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html">CrossBase/audiovisual/audio/CB_AudioFileCache.js</a>,
				 <a href="CrossBase_audiovisual_audio_CB_AudioFileCache.js.html#sunlight-1-line-2338">line 2338</a>
			</li>
		</ul>
	</dd>
	

	

	

	
</dl>


    

    

    

    

    

    

    
</dd>

            </dl>
    

    
</article>

</section>




		</div>
	</div>

	<div class="clearfix"></div>

	
		<div class="col-md-3">
			<div id="toc" class="col-md-3 hidden-xs hidden-sm hidden-md"></div>
		</div>
	

</div>
</div>


    <div class="modal fade" id="searchResults">
      <div class="modal-dialog">
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
            <h4 class="modal-title">Search results</h4>
          </div>
          <div class="modal-body"></div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
          </div>
        </div><!-- /.modal-content -->
      </div><!-- /.modal-dialog -->
    </div>


<footer>


	<span class="copyright">
	<a href="printable/" target="_blank">See a more printer-friendly version</a><hr /><span style="color:#000000">© <address style="display:inline; font-style:normal;"><a href="https://crossbrowdy.com/" target="_blank">CrossBrowdy</a> API documentation</address> by <a href="https://joanalbamaldonado.com/" target="_blank">Joan Alba Maldonado</a> - <a href="https://creativecommons.org/licenses/by/4.0/" target="_blank">Creative Commons Attribution 4.0 International</a><br />DocStrap Copyright © 2012-2015 The contributors to the JSDoc3 and DocStrap projects.</span>
	</span>

<span class="jsdoc-message">
	Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.2</a>
	
		on Wed Mar 22nd 2023
	
	using the <a href="https://github.com/docstrap/docstrap">DocStrap template</a>.
</span>
</footer>

<script src="scripts/docstrap.lib.js"></script>
<script src="scripts/toc.js"></script>

    <script type="text/javascript" src="scripts/fulltext-search-ui.js"></script>


<script>
$( function () {
	$( "[id*='$']" ).each( function () {
		var $this = $( this );

		$this.attr( "id", $this.attr( "id" ).replace( "$", "__" ) );
	} );

	$( ".tutorial-section pre, .readme-section pre, pre.prettyprint.source" ).each( function () {
		var $this = $( this );

		var example = $this.find( "code" );
		exampleText = example.html();
		var lang = /{@lang (.*?)}/.exec( exampleText );
		if ( lang && lang[1] ) {
			exampleText = exampleText.replace( lang[0], "" );
			example.html( exampleText );
			lang = lang[1];
		} else {
			var langClassMatch = example.parent()[0].className.match(/lang\-(\S+)/);
			lang = langClassMatch ? langClassMatch[1] : "javascript";
		}

		if ( lang ) {

			$this
			.addClass( "sunlight-highlight-" + lang )
			.addClass( "linenums" )
			.html( example.html() );

		}
	} );

	Sunlight.highlightAll( {
		lineNumbers : true,
		showMenu : true,
		enableDoclinks : true
	} );

	$.catchAnchorLinks( {
        navbarOffset: 10
	} );
	$( "#toc" ).toc( {
		anchorName  : function ( i, heading, prefix ) {
			return $( heading ).attr( "id" ) || ( prefix + i );
		},
		selectors   : "#toc-content h1,#toc-content h2,#toc-content h3,#toc-content h4",
		showAndHide : false,
		smoothScrolling: true
	} );

	$( "#main span[id^='toc']" ).addClass( "toc-shim" );
	$( '.dropdown-toggle' ).dropdown();

    $( "table" ).each( function () {
      var $this = $( this );
      $this.addClass('table');
    } );

} );
</script>



<!--Navigation and Symbol Display-->

<script>
	$( function () {
		$( '#main' ).localScroll( {
			offset : { top : 60 } //offset by the height of your header (give or take a few px, see what works for you)
		} );
		$( "dt.name" ).each( function () {
			var $this = $( this ).find("h4");
			var icon = $( "<i/>" ).addClass( "icon-plus-sign" ).addClass( "pull-right" ).addClass( "icon-white" );
			var dt = $(this);
			var children = dt.next( "dd" );

			dt.prepend( icon ).css( {cursor : "pointer"} );
			dt.addClass( "member-collapsed" ).addClass( "member" );


			children.hide();

			dt.children().on( "click", function () {
				children = dt.next( "dd" );
				children.slideToggle( "fast", function () {

					if ( children.is( ":visible" ) ) {
						icon.addClass( "icon-minus-sign" ).removeClass( "icon-plus-sign" ).removeClass( "icon-white" );
						dt.addClass( "member-open" ).animate( "member-collapsed" );
					} else {
						icon.addClass( "icon-plus-sign" ).removeClass( "icon-minus-sign" ).addClass( "icon-white" );
						dt.addClass( "member-collapsed" ).removeClass( "member-open" );
					}
				} );
			} );

		} );
	} );
</script>


<!--Google Analytics-->



    <script type="text/javascript">
        $(document).ready(function() {
            SearcherDisplay.init();
        });
    </script>


</body>
</html>