Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


SearchEngineScope

An enumeration that contains the available search engine scopes.
Read time 1 minuteLast updated 13 days ago

Definition

public enum SearchEngineScope

Remarks

A search engine scope identifies where a search comes from. This is useful when implementing a single entry point for the base engine functions:

Examples

using System;using System.Collections.Generic;using UnityEditor;using UnityEditor.SearchService;class BaseEngine : ISearchEngineBase{ public virtual void BeginSession(ISearchContext context) { if (context.engineScope == ObjectSelectorSearch.EngineScope || context.engineScope == ProjectSearch.EngineScope) { // Cache Assets. } if (context.engineScope == ObjectSelectorSearch.EngineScope || context.engineScope == SceneSearch.EngineScope) { // Cache Scene objects. } } public virtual void EndSession(ISearchContext context) { // Flush any cached data. } public virtual void BeginSearch(ISearchContext context, string query) { } public virtual void EndSearch(ISearchContext context) { } public string name => "My Engine Service";}[SceneSearchEngine]class SampleSceneFilterEngine : BaseEngine, ISceneSearchEngineV2{ public bool Filter(ISearchContext context, string query, HierarchyIterator objectToFilter) { // Use cached Scene objects. // ... return true; }}[ProjectSearchEngine]class SampleProjectSearchEngine : BaseEngine, IProjectSearchEngine{ public IEnumerable<string> Search(ISearchContext context, string query, Action<IEnumerable<string>> asyncItemsReceived) { // Use cached Assets. // ... return new List<string>(); }}[ObjectSelectorEngine]class SampleObjectSelectorEngine : BaseEngine, IObjectSelectorEngine{ public bool SelectObject(ISearchContext context, Action<UnityEngine.Object, bool> onObjectSelectorClosed, Action<UnityEngine.Object> onObjectSelectedUpdated) { // Use cached Assets and Scene objects. return true; } public void SetSearchFilter(ISearchContext context, string searchFilter) {}}

Fields

Value

Description

ObjectSelectorIdentifies a search for ObjectSelector engines.
ProjectIdentifies a search for SearchEngineScope.Project engines.
SceneIdentifies a search for SearchEngineScope.Scene engines.