Inherits AssetManagerBus::Handler.
|
| AZ_CLASS_ALLOCATOR (AssetManager, SystemAllocator) |
|
void | RegisterHandler (AssetHandler *handler, const AssetType &assetType) |
|
void | UnregisterHandler (AssetHandler *handler) |
|
void | RegisterCatalog (AssetCatalog *catalog, const AssetType &assetType) |
|
void | UnregisterCatalog (AssetCatalog *catalog) |
| Unregister catalog from the asset system.
|
|
void | GetHandledAssetTypes (AssetCatalog *catalog, AZStd::vector< AZ::Data::AssetType > &assetTypes) |
|
void | SuspendAssetRelease () |
| Prevents assets from being released when no longer referenced.
|
|
void | ResumeAssetRelease () |
| Resumes releasing assets that are no longer referenced. Any currently un-referenced assets will be released upon calling this.
|
|
AssetData::AssetStatus | BlockUntilLoadComplete (const Asset< AssetData > &asset) |
|
template<class AssetClass > |
Asset< AssetClass > | GetAsset (const AssetId &assetId, AssetLoadBehavior assetReferenceLoadBehavior, const AssetLoadParameters &loadParams=AssetLoadParameters{}) |
|
Asset< AssetData > | GetAsset (const AssetId &assetId, const AssetType &assetType, AssetLoadBehavior assetReferenceLoadBehavior, const AssetLoadParameters &loadParams=AssetLoadParameters{}) |
|
template<class AssetClass > |
Asset< AssetClass > | FindOrCreateAsset (const AssetId &assetId, AssetLoadBehavior assetReferenceLoadBehavior) |
|
Asset< AssetData > | FindOrCreateAsset (const AssetId &assetId, const AssetType &assetType, AssetLoadBehavior assetReferenceLoadBehavior) |
|
template<class AssetClass > |
Asset< AssetClass > | FindAsset (const AssetId &assetId, AssetLoadBehavior assetReferenceLoadBehavior) |
|
Asset< AssetData > | FindAsset (const AssetId &assetId, AssetLoadBehavior assetReferenceLoadBehavior) |
|
template<class AssetClass > |
Asset< AssetClass > | CreateAsset (const AssetId &assetId, AssetLoadBehavior assetReferenceLoadBehavior=AssetLoadBehavior::Default) |
|
Asset< AssetData > | CreateAsset (const AssetId &assetId, const AssetType &assetType, AssetLoadBehavior assetReferenceLoadBehavior=AssetLoadBehavior::Default) |
|
void | SaveAsset (const Asset< AssetData > &asset) |
|
void | ReloadAsset (const AssetId &assetId, AssetLoadBehavior assetReferenceLoadBehavior, bool isAutoReload=false) |
|
void | ReloadAssetFromData (const Asset< AssetData > &asset) |
|
void | AssignAssetData (const Asset< AssetData > &asset) |
|
AssetHandler * | GetHandler (const AssetType &assetType) |
|
AssetStreamInfo | GetLoadStreamInfoForAsset (const AssetId &assetId, const AssetType &assetType) |
|
AssetStreamInfo | GetSaveStreamInfoForAsset (const AssetId &assetId, const AssetType &assetType) |
|
void | DispatchEvents () |
|
void | SetAssetInfoUpgradingEnabled (bool enable) |
|
bool | GetAssetInfoUpgradingEnabled () const |
|
bool | ShouldCancelAllActiveJobs () const |
|
void | SetParallelDependentLoadingEnabled (bool enable) |
|
bool | GetParallelDependentLoadingEnabled () const |
|
void | PrepareShutDown () |
|
bool | HasActiveJobsOrStreamerRequests () |
|
void | DumpLoadedAssetsInfo () |
|
|
| AssetManager (const Descriptor &desc) |
|
void | WaitForActiveJobsAndStreamerRequestsToFinish () |
|
void | NotifyAssetReady (Asset< AssetData > asset) |
|
void | NotifyAssetPreReload (Asset< AssetData > asset) |
|
void | NotifyAssetReloaded (Asset< AssetData > asset) |
|
void | NotifyAssetReloadError (Asset< AssetData > asset) |
|
void | NotifyAssetError (Asset< AssetData > asset) |
|
void | NotifyAssetCanceled (AssetId assetId) |
|
void | NotifyAssetContainerReady (Asset< AssetData > asset) |
|
void | ReleaseAsset (AssetData *asset, AssetId assetId, AssetType assetType, bool removeAssetFromHash, int creationToken) |
|
void | OnAssetUnused (AssetData *asset) |
|
void | AddJob (AssetDatabaseJob *job) |
|
void | RemoveJob (AssetDatabaseJob *job) |
|
void | AddActiveStreamerRequest (AssetId assetId, AZStd::shared_ptr< AssetDataStream > readRequest) |
|
void | RescheduleStreamerRequest (AssetId assetId, AZ::IO::IStreamerTypes::Deadline newDeadline, AZ::IO::IStreamerTypes::Priority newPriority) |
|
void | RemoveActiveStreamerRequest (AssetId assetId) |
|
void | AddBlockingRequest (AssetId assetId, WaitForAsset *blockingRequest) |
|
void | RemoveBlockingRequest (AssetId assetId, WaitForAsset *blockingRequest) |
|
void | ValidateAndPostLoad (AZ::Data::Asset< AZ::Data::AssetData > &asset, bool loadSucceeded, bool isReload, AZ::Data::AssetHandler *assetHandler=nullptr) |
|
void | PostLoad (AZ::Data::Asset< AZ::Data::AssetData > &asset, bool loadSucceeded, bool isReload, AZ::Data::AssetHandler *assetHandler=nullptr) |
|
void | QueueAssetReload (AZ::Data::Asset< AZ::Data::AssetData > asset, bool signalLoaded) |
|
void | UpdateDebugStatus (const AZ::Data::Asset< AZ::Data::AssetData > &asset) |
|
AZStd::shared_ptr< AssetContainer > | GetAssetContainer (Asset< AssetData > asset, const AssetLoadParameters &loadParams=AssetLoadParameters{}, bool isReload=false) |
|
virtual AZStd::shared_ptr< AssetContainer > | CreateAssetContainer (Asset< AssetData > asset, const AssetLoadParameters &loadParams=AssetLoadParameters{}, bool isReload=false) const |
|
void | ReleaseAssetContainersForAsset (AssetData *asset) |
|
void | ReleaseOwnedAssetContainer (AssetContainer *assetContainer) |
|
void | OnAssetReady (const Asset< AssetData > &asset) override |
|
void | OnAssetReloaded (const Asset< AssetData > &asset) override |
|
void | OnAssetReloadError (const Asset< AssetData > &asset) override |
|
void | OnAssetError (const Asset< AssetData > &asset) override |
|
void | OnAssetCanceled (AssetId asset) override |
|
void | OnAssetContainerReady (AssetContainer *container) override |
|
void | OnAssetContainerCanceled (AssetContainer *container) override |
|
AssetStreamInfo | GetModifiedLoadStreamInfoForAsset (const Asset< AssetData > &asset, AssetHandler *handler) |
| Get the load stream info for an asset, including missing-asset substitution and custom AssetHandler overrides.
|
|
void | QueueAsyncStreamLoad (Asset< AssetData > asset, AZStd::shared_ptr< AssetDataStream > dataStream, const AZ::Data::AssetStreamInfo &streamInfo, bool isReload, AssetHandler *handler, const AssetLoadParameters &loadParameters, bool signalLoaded) |
| Queue an async file load with the AssetDataStream as the first step in an asset load.
|
|
void | RegisterAssetLoading (const Asset< AssetData > &asset) |
|
bool | ValidateAndRegisterAssetLoading (const Asset< AssetData > &asset) |
|
void | UnregisterAssetLoading (const Asset< AssetData > &asset) |
|
AssetDatabase handles the creation, refcounting and automatic destruction of assets.
In general for any events while loading/saving/etc. create an AssetEventHandler and pass it to AssetDatabase::GetAsset(). You can also connect to AssetBus if you want to listen for events without holding an asset. If an asset is ready at the time you connect to AssetBus or GetAsset() is called, your handler will be notified immediately, otherwise all events are dispatched asynchronously.