Files
UnrealEngineUWP/Engine/Source/Editor/ContentBrowser/Private/SourcesData.h
Ben Marsh 149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00

43 lines
1.3 KiB
C

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#pragma once
struct FSourcesData
{
TArray<FName> PackagePaths;
TArray<FCollectionNameType> Collections;
bool IsEmpty() const
{
return PackagePaths.Num() == 0 && Collections.Num() == 0;
}
FARFilter MakeFilter(bool bRecurse, bool bUsingFolders) const
{
FARFilter Filter;
// Package Paths
Filter.PackagePaths = PackagePaths;
Filter.bRecursivePaths = bRecurse || !bUsingFolders;
// Collections
TArray<FName> ObjectPathsFromCollections;
if ( Collections.Num() )
{
// Collection manager module should already be loaded since it may cause a hitch on the first search
FCollectionManagerModule& CollectionManagerModule = FModuleManager::GetModuleChecked<FCollectionManagerModule>(TEXT("CollectionManager"));
for ( int32 CollectionIdx = 0; CollectionIdx < Collections.Num(); ++CollectionIdx )
{
// Find the collection
const FCollectionNameType& CollectionNameType = Collections[CollectionIdx];
CollectionManagerModule.Get().GetAssetsInCollection(CollectionNameType.Name, CollectionNameType.Type, ObjectPathsFromCollections);
CollectionManagerModule.Get().GetClassesInCollection(CollectionNameType.Name, CollectionNameType.Type, ObjectPathsFromCollections);
}
}
Filter.ObjectPaths = ObjectPathsFromCollections;
return Filter;
}
};