RealDocs

UAssetManager::IsAssetDataBlueprintOfClassSet

function Engine Since 4.22
#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
}

Version History

Introduced in: 4.22

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.