Iterate all Blueprints derived from a class

Hi,
I hope this can help you (tested with UE 4.3):
You can get all blueprint assets from specific location and check there parentclass.
in this case i get all Assets from “/Game/Blueprints/RoomModel” and check for "ARoomConnection"s.

FAssetRegistryModule* AssetRegistryModule = &FModuleManager::LoadModuleChecked<FAssetRegistryModule>(TEXT("AssetRegistry"));

TArray<FAssetData> AssetData;
FARFilter Filter;
Filter.ClassNames.Add( UBlueprint::StaticClass()->GetFName() ); //get blueprints
Filter.PackagePaths.Add("/Game/Blueprints/RoomModel"); //from location
AssetRegistryModule->Get().GetAssets(Filter, AssetData);
//AssetRegistryModule->Get().GetAssetsByClass(Class->GetFName(), AssetData);

for (TArray<FAssetData>::TConstIterator PkgIter = AssetData.CreateConstIterator(); PkgIter; ++PkgIter)
{
	FAssetData Asset = *PkgIter;
	UBlueprint* BlueAsset = Cast<UBlueprint>(Asset.GetAsset());
	if (BlueAsset->ParentClass == ARoomConnection::StaticClass()){
		GEngine->AddOnScreenDebugMessage(-1, 10.f, FColor::Red, Asset.AssetName.GetPlainNameString());
	}
}