Navigation
API > API/Editor > API/Editor/Kismet
Singleton manager for handling all Blueprint searches, helps to manage the going progress of Blueprints, and is thread-safe.
| Name | FFindInBlueprintSearchManager |
| Type | class |
| Header File | /Engine/Source/Editor/Kismet/Public/FindInBlueprintManager.h |
| Include Path | #include "FindInBlueprintManager.h" |
Syntax
class FFindInBlueprintSearchManager : public FTickableEditorObject
Inheritance Hierarchy
- FTickableObjectBase → FTickableEditorObject → FFindInBlueprintSearchManager
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FFindInBlueprintSearchManager() |
FindInBlueprintManager.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FFindInBlueprintSearchManager() |
FindInBlueprintManager.h |
Structs
| Name | Remarks |
|---|---|
| FActiveSearchQuery | Contains info about an active search query |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FActiveSearchQueryPtr | TSharedPtr< FActiveSearchQuery, ESPMode::ThreadSafe > | FindInBlueprintManager.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| Instance | FFindInBlueprintSearchManager * | FindInBlueprintManager.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActiveSearchCounter | FThreadSafeCounter | Counter of active searches | FindInBlueprintManager.h | |
| ActiveSearchQueries | TMap< const class FStreamSearch *, FActiveSearchQueryPtr > | A mapping of active search queries and where they are currently at in the search data | FindInBlueprintManager.h | |
| AssetRegistryModule | FAssetRegistryModule * | Because we are unable to query for the module on another thread, cache it for use later | FindInBlueprintManager.h | |
| AssetsToIndexOnFirstSearch | TSet< FSoftObjectPath > | List of paths that require a full index pass during the first global search | FindInBlueprintManager.h | |
| AsyncTaskBatchSize | int32 | Size of a single async indexing task batch; zero or negative means that a caching operation will consist of a single batch | FindInBlueprintManager.h | |
| bDisableDeferredIndexing | bool | If true, search metadata will be regenerated for loaded assets on the main thread immediately at discovery or load time. | FindInBlueprintManager.h | |
| bDisableImmediateAssetDiscovery | bool | Defers the cost to extract metadata for each discovered asset during the initial asset registry scan into a single pass over the full asset registry once the scan is complete. | FindInBlueprintManager.h | |
| bDisableSearchResultTemplates | bool | Disable the use of search result templates. | FindInBlueprintManager.h | |
| bDisableThreadedIndexing | bool | If true, and if deferred indexing is not disabled, search metadata will be regenerated for loaded assets on the main thread at a rate of one asset per tick. | FindInBlueprintManager.h | |
| bEnableCSVStatsProfiling | bool | Whether CSV profiling has been enabled (default=false) | FindInBlueprintManager.h | |
| bEnableDeveloperMenuTools | bool | Whether to enable Blueprint editor developer menu tools | FindInBlueprintManager.h | |
| bEnableGatheringData | bool | Tells if gathering data is currently allowed | FindInBlueprintManager.h | |
| bHasFirstSearchOccurred | TAtomic< bool > | Currently used to delay the full indexing pass until the first search in order to control memory usage | FindInBlueprintManager.h | |
| bIsPausing | TAtomic< bool > | TRUE when the the FiB manager wants to pause all searches, helps manage the pausing procedure | FindInBlueprintManager.h | |
| CachedAssetClasses | TMap< FTopLevelAssetPath, TWeakObjectPtr< const UClass > > | Mapping between a class name and its UClass instance - used for faster look up in FFindInBlueprintSearchManager::OnAssetAdded | FindInBlueprintManager.h | |
| CachingObject | TUniquePtr< class FCacheAllBlueprintsTickableObject > | Tickable object that does the caching of uncached Blueprints at a rate of once per tick | FindInBlueprintManager.h | |
| CurrentCacheOpType | EFiBCacheOpType | Stores the type of caching operation that's currently in progress | FindInBlueprintManager.h | |
| FailedToCachePaths | TSet< FSoftObjectPath > | List of paths for Blueprints that failed to cache | FindInBlueprintManager.h | |
| GlobalFindResults | TArray< TWeakPtr< SFindInBlueprints > > | Array of open global find results widgets | FindInBlueprintManager.h | |
| GlobalFindResultsMenuItem | TSharedPtr< class FWorkspaceItem > | Global Find Results workspace menu item | FindInBlueprintManager.h | |
| GlobalFindResultsTabIDs | FName | The tab identifier/instance name for global find results | FindInBlueprintManager.h | |
| PauseThreadsCriticalSection | FCriticalSection | Critical section to lock threads during the pausing procedure | FindInBlueprintManager.h | |
| PendingAssets | TSet< FSoftObjectPath > | Asset paths that were discovered, loaded or modified and now require indexing (or re-indexing) | FindInBlueprintManager.h | |
| SafeModifyCacheCriticalSection | FCriticalSection | Critical section to safely modify cached data | FindInBlueprintManager.h | |
| SafeQueryModifyCriticalSection | FCriticalSection | Critical section to safely add, remove, and find data in ActiveSearchQueries | FindInBlueprintManager.h | |
| SearchArray | TArray< FSearchData > | Stores the Blueprint search data and is used to iterate over in small chunks | FindInBlueprintManager.h | |
| SearchMap | TMap< FSoftObjectPath, int32 > | Maps the Blueprint paths to their index in the SearchArray | FindInBlueprintManager.h | |
| SourceCachingWidget | TWeakPtr< SFindInBlueprints > | FindInBlueprints widget that started the cache process | FindInBlueprintManager.h | |
| UnindexedAssets | TSet< FSoftObjectPath > | Asset paths that have not been cached for searching due to lack of FiB data, this means that they are either older Blueprints, or the DDC cannot find the data | FindInBlueprintManager.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddOrUpdateBlueprintSearchMetadata
(
UBlueprint* InBlueprint, |
Gathers the Blueprint's search metadata and adds or updates it in the cache | FindInBlueprintManager.h | |
void ApplySearchDataToDatabase
(
FSearchData InSearchData, |
Applies the given search data to a matching entry in the database. | FindInBlueprintManager.h | |
void BeginSearchQuery
(
const FStreamSearch* InSearchOriginator |
Starts a search query, the FiB manager handles where the thread is at in the search query at all times so that post-save of the cache to disk it can correct the index | FindInBlueprintManager.h | |
void CacheAllAssets
(
TWeakPtr< class SFindInBlueprints > InSourceWidget, |
Starts a task to cache Blueprints at a rate of 1 per tick | FindInBlueprintManager.h | |
void CancelCacheAll
(
SFindInBlueprints* InFindInBlueprintWidget |
Stops the caching process where it currently is at, the rest can be continued later | FindInBlueprintManager.h | |
void CloseOrphanedGlobalFindResultsTabs
(
TSharedPtr< class FTabManager > TabManager |
Close any orphaned global find results tabs for a particular tab manager | FindInBlueprintManager.h | |
bool ContinueSearchQuery
(
const FStreamSearch* InSearchOriginator, |
Continues a search query, returning a single piece of search data | FindInBlueprintManager.h | |
void DoRandomIndexCacheRebuild() |
Randomly initiates a partial rebuild of the index cache (for debugging purposes) | FindInBlueprintManager.h | |
void DumpCache
(
FArchive& Ar |
Dumps the full index cache to the given stream (for debugging purposes) | FindInBlueprintManager.h | |
void EnableGatheringData
(
bool bInEnableGatheringData |
FindInBlueprintManager.h | ||
void EnableGlobalFindResults
(
bool bEnable |
Enable or disable the global find results tab feature | FindInBlueprintManager.h | |
void EnsureSearchQueryEnds
(
const FStreamSearch* InSearchOriginator |
This function ensures that the passed in search query ends in a safe manner. | FindInBlueprintManager.h | |
void ExportOutdatedAssetList() |
Exports a list of all unindexed assets to Saved/FindInBlueprints_OutdatedAssetList.txt | FindInBlueprintManager.h | |
void FinishedCachingBlueprints
(
EFiBCacheOpType InCacheOpType, |
Callback to note that Blueprint caching is complete | FindInBlueprintManager.h | |
float GetCacheProgress() |
Returns the progress complete on the caching | FindInBlueprintManager.h | |
FSoftObjectPath GetCurrentCacheBlueprintPath() |
Returns the path of the current Blueprint being cached | FindInBlueprintManager.h | |
int32 GetCurrentCacheIndex() |
Returns the current index in the caching | FindInBlueprintManager.h | |
int32 GetFailedToCacheCount() |
Returns the number of Blueprints that failed to cache | FindInBlueprintManager.h | |
TSet< FSoftObjectPath > GetFailedToCachePathList() |
Returns the list of Blueprint paths that failed to cache | FindInBlueprintManager.h | |
TSharedPtr< SFindInBlueprints > GetGlobalFindResults() |
Find or create the global find results widget | FindInBlueprintManager.h | |
int32 GetNumberUncachedAssets() |
Returns the number of uncached assets during an active indexing operation | FindInBlueprintManager.h | |
int32 GetNumberUnindexedAssets() |
Returns the number of unindexed Blueprints, either due to not having been indexed before, or AR data being out-of-date | FindInBlueprintManager.h | |
float GetPercentComplete
(
const FStreamSearch* InSearchOriginator |
Query how far along a search thread is | FindInBlueprintManager.h | |
FSearchData GetSearchDataForAssetPath
(
const FSoftObjectPath& InAssetPath |
Given an asset path, locate and return a copy of its matching search data in the index cache. | FindInBlueprintManager.h | |
TWeakPtr< SFindInBlueprints > GetSourceCachingWidget() |
Returns a weak reference to the widget that initiated the current caching operation | FindInBlueprintManager.h | |
virtual TStatId GetStatId() |
FindInBlueprintManager.h | ||
void GlobalFindResultsClosed
(
const TSharedRef< SFindInBlueprints >& FindResults |
FindInBlueprintManager.h | ||
bool HasCachingFailed() |
Returns TRUE if caching failed | FindInBlueprintManager.h | |
bool IsAssetDiscoveryInProgress() |
Returns TRUE if we're still inside the initial asset discovery and registration stage | FindInBlueprintManager.h | |
bool IsAsyncSearchQueryInProgress() |
Returns TRUE if there are one or more active asynchronous search queries | FindInBlueprintManager.h | |
bool IsCacheInProgress() |
Returns TRUE if Blueprints are being cached. | FindInBlueprintManager.h | |
bool IsGatheringDataEnabled() |
FindInBlueprintManager.h | ||
bool IsGlobalFindResultsOpen() |
Returns true if a global find results tab is currently open | FindInBlueprintManager.h | |
virtual bool IsTickable() |
FindInBlueprintManager.h | ||
bool IsUnindexedCacheInProgress() |
Returns TRUE if unindexed Blueprints are being cached (since this can block the UI) | FindInBlueprintManager.h | |
void OnCacheAllUnindexedAssets
(
bool bInSourceControlActive, |
Starts the actual caching process | FindInBlueprintManager.h | |
bool ProcessEncodedValueForUnloadedBlueprint
(
FSearchData& SearchData |
Processes the encoded string value in the SearchData into the intermediate format, return true if string and version were valid | FindInBlueprintManager.h | |
FSearchData QuerySingleBlueprint
(
UBlueprint* InBlueprint, |
Query for a single, specific Blueprint's search data. | FindInBlueprintManager.h | |
bool ShouldEnableDeveloperMenuTools() |
If TRUE, the developer menu tool commands will be shown in the 'Developer' section of the Blueprint Editor's menu bar | FindInBlueprintManager.h | |
| If TRUE, search result meta will be gathered once and stored in a template. | FindInBlueprintManager.h | ||
void StartedCachingBlueprints
(
EFiBCacheOpType InCacheOpType, |
Callback to note that Blueprint caching is started | FindInBlueprintManager.h | |
virtual void Tick
(
float DeltaTime |
FindInBlueprintManager.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BlockSearchQueryIfPaused() |
If searches are paused, blocks the calling thread until searching is resumed | FindInBlueprintManager.h | |
FActiveSearchQueryPtr FindSearchQuery
(
const FStreamSearch* InSearchOriginator |
Thread-safe access to the active search query that's mapped to the given stream search | FindInBlueprintManager.h | |
FSearchData GetNextSearchDataForQuery
(
const FStreamSearch* InSearchOriginator, |
Returns the next pending search data for the given query and advances the index to the next entry | FindInBlueprintManager.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FString ConvertFTextToHexString
(
FText InValue |
Serializes an FText to memory and converts the memory into a string of hex characters | FindInBlueprintManager.h | |
static FText ConvertHexStringToFText
(
FString InHexString |
Converts a string of hex characters, previously converted by ConvertFTextToHexString, to an FText. | FindInBlueprintManager.h | |
static TSharedPtr< class FJsonObject > ConvertJsonStringToObject
(
FSearchDataVersionInfo InVersionInfo, |
Given a fully constructed Find-in-Blueprint FString of searchable data, will parse and construct a JsonObject | FindInBlueprintManager.h | |
static FString GenerateSearchIndexForDebugging
(
UBlueprint* InBlueprint |
Generates a human-readable search index for the given Blueprint (for debugging purposes) | FindInBlueprintManager.h | |
static FFindInBlueprintSearchManager & Get() |
FindInBlueprintManager.h |