Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes | Properties | List of all members
PackedManifest Class Reference

Detailed Description

Optimized version of UnityManifest that includes bundle sizes

Inheritance diagram for PackedManifest:
IBundleManifest

Classes

class   Loader
 

Public Member Functions

bool  IsReady (BundleManager manager)
 
bool  AmountToDownload (BundleManager manager, string sanitizedLabel, out uint totalSize, out uint alreadyDownloaded)
 
IEnumerator  StartBundle (BundleManager manager, string sanitizedLabel)
 
bool  TryLookupBundle (BundleManager manager, string sanitizedLabel, out string outUrl, out Hash128 outHash, out string outCrc)
 
string  GetStreamingAssetsName (BundleManager manager, string sanitizedLabel, string url)
 
bool  TryGetDependencies (BundleManager manager, string sanitizedLabel, out IEnumerable< string > outRequiredSanitizedLabelList)
 
Exception  Init (AssetBundleManifest manifest, bool bundleNamesHaveHash, string searchFolder)
 

Static Public Member Functions

static PackedManifest  Alloc ()
 

Static Public Attributes

const string  DirectoryAssetName = "BundleDirectory"
 
const string  DirectoryBundleName = "directory-packed-manifest"
 

Properties

string[]  ActiveVariants [get, set]
 

Member Function Documentation

◆ AmountToDownload()

bool AmountToDownload ( BundleManager  manager,
string  sanitizedLabel,
out uint  totalSize,
out uint  alreadyDownloaded 
)
inline

How much is needed to download this?

Parameters
manager Target manager
sanitizedLabel Requested bundle
totalSize How big the bundle is, regardless of how much has been downloaded
alreadyDownloaded How much still needs to be downloaded.
Returns
Was bundle found?

This will be called before StartBundle!

Return only this bundle's size. Caller will handle dependencies. This does require determining specific bundle to download, and if it's cached.

Implements IBundleManifest.

◆ GetStreamingAssetsName()

string GetStreamingAssetsName ( BundleManager  manager,
string  sanitizedLabel,
string  url 
)
inline

Figure out what name to check for in StreamingAssets data for a given URL.

In most cases this will remove the baseURL from the url this object calculated.

Parameters
manager Target manager
sanitizedLabel Requested bundle
url from TryLookupBundle.outUrl
Returns
filename

Implements IBundleManifest.

◆ IsReady()

bool IsReady ( BundleManager  manager )
inline

Ready for requests?

Once ready, presumed always ready. Please remember to wait for UnityEngine.Caching.ready before making network requests.

Implements IBundleManifest.

◆ StartBundle()

IEnumerator StartBundle ( BundleManager  manager,
string  sanitizedLabel 
)
inline

Do any pre-load tasks for a bundle that might take time.

Parameters
manager Target manager
sanitizedLabel Requested bundle
Returns
Coroutine source

Implements IBundleManifest.

◆ TryGetDependencies()

bool TryGetDependencies ( BundleManager  manager,
string  sanitizedLabel,
out IEnumerable< string >  outRequiredSanitizedLabelList 
)
inline

What does this bundle depend on?

Parameters
manager Target manager
sanitizedLabel Requested bundle
outRequiredSanitizedLabelList List of sanitized bundle names that will be needed.
Returns
was bundle found?

Implements IBundleManifest.

◆ TryLookupBundle()

bool TryLookupBundle ( BundleManager  manager,
string  sanitizedLabel,
out string  outUrl,
out Hash128  outHash,
out string  outCrc 
)
inline

Gather load-time info about bundle.

Parameters
manager Target manager
sanitizedLabel Requested bundle
outUrl Pass to WWW for download
outHash Pass to WWW for download
outCrc Pass to WWW for download
Returns
was bundle found?

Implements IBundleManifest.

Property Documentation

◆ ActiveVariants

string [] ActiveVariants
getset

The list of bundle variants we should try to load

In highest to lowest priority order. Ignored for any bundle without a variant. Changes only affect bundles loaded in the future, not already loaded ones. Setting to null is an optimization to avoid needing to lookup variants.