Inherits AZ::Data::AssetLoadBus::MultiHandler.
Public Types | |
| using | DependencyList = AZStd::unordered_map< AZ::Data::AssetId, AZ::Data::Asset< AssetData > > |
Public Member Functions | |
| AZ_CLASS_ALLOCATOR (AssetContainer, SystemAllocator) | |
| AssetContainer (Asset< AssetData > asset, const AssetLoadParameters &loadParams, bool isReload=false) | |
| bool | IsReady () const |
| bool | IsLoading () const |
| bool | IsValid () const |
| Asset< AssetData > | GetRootAsset () |
| AssetId | GetContainerAssetId () |
| void | ClearRootAsset () |
| operator bool () const | |
| const DependencyList & | GetDependencies () const |
| int | GetNumWaitingDependencies () const |
| int | GetInvalidDependencies () const |
| void | ListWaitingAssets () const |
| void | ListWaitingPreloads (const AZ::Data::AssetId &assetId) const |
| const AZStd::unordered_set< AZ::Data::AssetId > & | GetUnloadedDependencies () const |
| void | OnAssetDataLoaded (AZ::Data::Asset< AZ::Data::AssetData > asset) override |
| void | OnAssetReady (Asset< AssetData > asset) override |
| void | OnAssetReloaded (Asset< AssetData > asset) override |
| void | OnAssetError (Asset< AssetData > asset) override |
| void | OnAssetReloadError (Asset< AssetData > asset) override |
Protected Attributes | |
| AssetInternal::WeakAsset< AssetData > | m_rootAsset |
| AssetId | m_containerAssetId |
| bool | m_isReload { false } |
| AZStd::recursive_mutex | m_dependencyMutex |
| DependencyList | m_dependencies |
| AZStd::recursive_mutex | m_readyMutex |
| AZStd::set< AssetId > | m_waitingAssets |
| AZStd::atomic_int | m_waitingCount {0} |
| AZStd::atomic_int | m_invalidDependencies { 0 } |
| AZStd::unordered_set< AZ::Data::AssetId > | m_unloadedDependencies |
| AZStd::atomic_bool | m_initComplete { false } |
| AZStd::atomic_bool | m_finalNotificationSent {false} |
| AZStd::recursive_mutex | m_preloadMutex |
| PreloadAssetListType | m_preloadList |
| PreloadAssetListType | m_preloadWaitList |
| AssetId AZ::Data::AssetContainer::GetContainerAssetId | ( | ) |
Get a reference to the asset id for the asset the container was originally created for. Even if the root asset has been cleared, this will still contain the originally-requested id.
Get a reference to the current root asset. This will either be the asset the container was originally created for, or invalid if the asset load has been canceled.