UAssetManager::IsAssetDataBlueprintOfClassSet
#include "Engine/AssetManager.h"
Access: public
Specifiers: virtualconst
Description
Checks whether the given asset data is a Blueprint whose base class appears in ClassNameSet. This reads the parent class asset registry tag rather than loading the asset.
Caveats & Gotchas
- • Relies on the ParentClass tag written into the asset registry, so it only works for assets that have already been scanned and tagged correctly (older cooked content or manually-added assets can be missing this tag).
- • Does not walk the full inheritance chain beyond what the tag records — it checks the immediate parent class recorded for the Blueprint, not every ancestor.
- • Used internally during directory scanning to classify Blueprint assets without forcing a full load of each one, which keeps startup scans fast.
Signature
virtual bool IsAssetDataBlueprintOfClassSet(const FAssetData& AssetData, const TSet<FTopLevelAssetPath>& ClassNameSet) const Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| AssetData | const FAssetData& | Asset registry entry to test. | — |
| ClassNameSet | const TSet<FTopLevelAssetPath>& | Set of class paths to check the Blueprint's parent class against. | — |
Return Type
bool Example
Filter Blueprint assets by parent class C++
TSet<FTopLevelAssetPath> AllowedParents;
AllowedParents.Add(FTopLevelAssetPath(AItem::StaticClass()));
if (UAssetManager::Get().IsAssetDataBlueprintOfClassSet(AssetData, AllowedParents))
{
// AssetData is a Blueprint derived from AItem
} See Also
Tags
Version History
Introduced in: 4.22
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?