starling-framework
Version:
A fast, productive library for 2D cross-platform development.
463 lines • 24.6 kB
HTML
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>DataLoader | starling-framework</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.js" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">starling-framework</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-externals" checked />
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
<input type="checkbox" id="tsd-filter-only-exported" />
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">starling</a>
</li>
<li>
<a href="../modules/starling.assets.html">assets</a>
</li>
<li>
<a href="starling.assets.dataloader.html">DataLoader</a>
</li>
</ul>
<h1>Class DataLoader</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Loads binary data from a local or remote URL with a very simple callback system.</p>
</div>
<p>The DataLoader is used by the AssetManager to load any local or remote data.
Its single purpose is to get the binary data that's stored at a specific URL.</p>
<p>You can use this class for your own purposes (as an easier to use 'URLLoader'
alternative), or you can extend the class to modify the AssetManager's behavior.
E.g. you could extend this class to add a caching mechanism for remote assets.
Assign an instance of your extended class to the AssetManager's <code>dataLoader</code>
property.</p>
</div>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">DataLoader</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>Index</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section tsd-is-external">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-external"><a href="starling.assets.dataloader.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section tsd-is-external">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-external"><a href="starling.assets.dataloader.html#close" class="tsd-kind-icon">close</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-external"><a href="starling.assets.dataloader.html#load" class="tsd-kind-icon">load</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group tsd-is-external">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-is-external">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-is-external">
<li class="tsd-signature tsd-kind-icon">new <wbr>Data<wbr>Loader<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="starling.assets.dataloader.html" class="tsd-signature-type">DataLoader</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/openfl/starling/blob/bce2af2/lib/starling/assets/DataLoader.d.ts#L27">lib/starling/assets/DataLoader.d.ts:27</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Creates a new DataLoader instance.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <a href="starling.assets.dataloader.html" class="tsd-signature-type">DataLoader</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group tsd-is-external">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-external">
<a name="close" class="tsd-anchor"></a>
<h3>close</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-external">
<li class="tsd-signature tsd-kind-icon">close<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/openfl/starling/blob/bce2af2/lib/starling/assets/DataLoader.d.ts#L52">lib/starling/assets/DataLoader.d.ts:52</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Aborts all current load operations. The loader can still be used, though.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-external">
<a name="load" class="tsd-anchor"></a>
<h3>load</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-external">
<li class="tsd-signature tsd-kind-icon">load<span class="tsd-signature-symbol">(</span>url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, onComplete<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span>, onError<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span>, onProgress<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/openfl/starling/blob/bce2af2/lib/starling/assets/DataLoader.d.ts#L48">lib/starling/assets/DataLoader.d.ts:48</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Loads the binary data from a specific URL. Always supply both 'onComplete' and
'onError' parameters; in case of an error, only the latter will be called.</p>
</div>
<p>The 'onComplete' callback may have up to four parameters, all of them being optional.
If you pass a callback that just takes zero or one, it will work just as well. The
additional parameters may be used to describe the name and type of the downloaded
data. They are not provided by the base class, but the AssetManager will check
if they are available.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>url: <span class="tsd-signature-type">string</span></h5>
<div class="tsd-comment tsd-typography">
<p>a String containing an URL.</p>
</div>
</li>
<li>
<h5>onComplete: <span class="tsd-signature-type">function</span></h5>
<div class="tsd-comment tsd-typography">
<p>will be called when the data has been loaded.
<code>function(data:ByteArray, mimeType:string, name:string, extension:string):void</code></p>
</div>
<ul class="tsd-parameters">
<li class="tsd-parameter-siganture">
<ul class="tsd-signatures tsd-kind-type-literal">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">ByteArray</span>, mimeType<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span>, name<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span>, extension<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> data: <span class="tsd-signature-type">ByteArray</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> mimeType: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> name: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> extension: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</li>
</ul>
</li>
<li>
<h5>onError: <span class="tsd-signature-type">function</span></h5>
<div class="tsd-comment tsd-typography">
<p>will be called in case of an error. The 2nd parameter is optional.
<code>function(error:string, httpStatus:number):void</code></p>
</div>
<ul class="tsd-parameters">
<li class="tsd-parameter-siganture">
<ul class="tsd-signatures tsd-kind-type-literal">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>string<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>string: <span class="tsd-signature-type">any</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</li>
</ul>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> onProgress: <span class="tsd-signature-type">function</span></h5>
<div class="tsd-comment tsd-typography">
<p>will be called multiple times with the current load ratio (0-1).
<code>function(ratio:Number):void</code></p>
</div>
<ul class="tsd-parameters">
<li class="tsd-parameter-siganture">
<ul class="tsd-signatures tsd-kind-type-literal">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>number<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>number: <span class="tsd-signature-type">any</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class="label tsd-is-external">
<span>Externals</span>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.animation.html">starling.animation</a>
</li>
<li class="current tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.assets.html">starling.assets</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.core.html">starling.core</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.display.html">starling.display</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.errors.html">starling.errors</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.events.html">starling.events</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.extensions.html">starling.extensions</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.filters.html">starling.filters</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.geom.html">starling.geom</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.rendering.html">starling.rendering</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.styles.html">starling.styles</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.text.html">starling.text</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.textures.html">starling.textures</a>
</li>
<li class=" tsd-kind-module tsd-parent-kind-module tsd-is-external">
<a href="../modules/starling.utils.html">starling.utils</a>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.assetfactory.html" class="tsd-kind-icon">Asset<wbr>Factory</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.assetfactoryhelper.html" class="tsd-kind-icon">Asset<wbr>Factory<wbr>Helper</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.assetmanager.html" class="tsd-kind-icon">Asset<wbr>Manager</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.assetpostprocessor.html" class="tsd-kind-icon">Asset<wbr>Post<wbr>Processor</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.assetreference.html" class="tsd-kind-icon">Asset<wbr>Reference</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.assettype.html" class="tsd-kind-icon">Asset<wbr>Type</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.atftexturefactory.html" class="tsd-kind-icon">Atf<wbr>Texture<wbr>Factory</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.bitmaptexturefactory.html" class="tsd-kind-icon">Bitmap<wbr>Texture<wbr>Factory</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.bytearrayfactory.html" class="tsd-kind-icon">Byte<wbr>Array<wbr>Factory</a>
</li>
</ul>
<ul class="current">
<li class="current tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.dataloader.html" class="tsd-kind-icon">Data<wbr>Loader</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class tsd-is-external">
<a href="starling.assets.dataloader.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-external">
<a href="starling.assets.dataloader.html#close" class="tsd-kind-icon">close</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-external">
<a href="starling.assets.dataloader.html#load" class="tsd-kind-icon">load</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.jsonfactory.html" class="tsd-kind-icon">Json<wbr>Factory</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.soundfactory.html" class="tsd-kind-icon">Sound<wbr>Factory</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module tsd-is-external">
<a href="starling.assets.xmlfactory.html" class="tsd-kind-icon">Xml<wbr>Factory</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>Legend</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
<li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
<li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
<li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
<li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
<li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
<li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="../assets/js/search.js"><' + '/script>');</script>
</body>
</html>