docs.unity3d.com
    Show / Hide Table of Contents

    Class Configurator

    The configurator is the top-level layer of the architecture, containing references to runtime components (ConfigurationManager, Switcher), the Product data core model, settings for choosing providers and staging settings shared by multiple products.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    Configurator
    Inherited Members
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(String, Single)
    MonoBehaviour.InvokeRepeating(String, Single, Single)
    MonoBehaviour.CancelInvoke(String)
    MonoBehaviour.IsInvoking(String)
    MonoBehaviour.StartCoroutine(String)
    MonoBehaviour.StartCoroutine(String, Object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, Component)
    Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(Boolean)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(Boolean)
    Component.GetComponentsInChildren<T>(Boolean, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(Boolean)
    Component.GetComponentsInParent<T>(Boolean, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(String)
    Component.SendMessageUpwards(String, Object, SendMessageOptions)
    Component.SendMessageUpwards(String, Object)
    Component.SendMessageUpwards(String)
    Component.SendMessageUpwards(String, SendMessageOptions)
    Component.SendMessage(String, Object)
    Component.SendMessage(String)
    Component.SendMessage(String, Object, SendMessageOptions)
    Component.SendMessage(String, SendMessageOptions)
    Component.BroadcastMessage(String, Object, SendMessageOptions)
    Component.BroadcastMessage(String, Object)
    Component.BroadcastMessage(String)
    Component.BroadcastMessage(String, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Component.rigidbody
    Component.rigidbody2D
    Component.camera
    Component.light
    Component.animation
    Component.constantForce
    Component.renderer
    Component.audio
    Component.networkView
    Component.collider
    Component.collider2D
    Component.hingeJoint
    Component.particleSystem
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(Object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, Boolean)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, Single)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    UnityEngine.Object.FindObjectsOfType<T>(System.Boolean)
    Object.FindObjectOfType<T>()
    UnityEngine.Object.FindObjectOfType<T>(System.Boolean)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindObjectOfType(Type, Boolean)
    Object.ToString()
    Object.name
    Object.hideFlags
    Namespace: UnityEngine.Industrial.Configuring.ConfiguratorRuntime
    Syntax
    [ExecuteInEditMode]
    public class Configurator : MonoBehaviour

    Fields

    ProductSpawnPointObjectName

    The product spawn point object name

    Declaration
    public const string ProductSpawnPointObjectName = "Product Spawn Point"
    Field Value
    Type Description
    String

    s_ConfiguratorInstance

    The s configurator instance

    Declaration
    public static Configurator s_ConfiguratorInstance
    Field Value
    Type Description
    Configurator

    splashscreen

    The splashscreen

    Declaration
    [HideInInspector]
    public Splashscreen splashscreen
    Field Value
    Type Description
    Splashscreen

    Properties

    ActiveProfile

    Gets the active profile.

    Declaration
    public ConfiguratorProfile ActiveProfile { get; }
    Property Value
    Type Description
    ConfiguratorProfile

    The active profile.

    analyticsEngine

    Gets the analytics engine.

    Declaration
    public IAnalyticsEngine analyticsEngine { get; }
    Property Value
    Type Description
    IAnalyticsEngine

    The analytics engine.

    configurationManager

    Reference to the configuration manager.

    Declaration
    public ConfigurationManager configurationManager { get; }
    Property Value
    Type Description
    ConfigurationManager

    The configuration manager.

    currentContext

    Current context.

    Declaration
    public Context currentContext { get; }
    Property Value
    Type Description
    Context

    The current context.

    CurrentLoadableProductPrefab

    Gets the current loadable product prefab.

    Declaration
    public AssetProductReference CurrentLoadableProductPrefab { get; }
    Property Value
    Type Description
    AssetProductReference

    The current loadable product prefab.

    CurrentProduct

    Gets the current product.

    Declaration
    public Product CurrentProduct { get; }
    Property Value
    Type Description
    Product

    The current product.

    CurrentProductIndex

    Gets the index of the current product.

    Declaration
    public int CurrentProductIndex { get; }
    Property Value
    Type Description
    Int32

    The index of the current product.

    CurrentScene

    Gets the current scene.

    Declaration
    public StagingElement CurrentScene { get; }
    Property Value
    Type Description
    StagingElement

    The current scene.

    ExportProfiles

    Gets the export profiles.

    Declaration
    public List<BuildProfile> ExportProfiles { get; }
    Property Value
    Type Description
    List<BuildProfile>

    The export profiles.

    firstContext

    Gets the first context.

    Declaration
    public Context firstContext { get; }
    Property Value
    Type Description
    Context

    The first context.

    globalStagingSettings

    Reference to the global StagingSettings

    Declaration
    public StagingSettings globalStagingSettings { get; }
    Property Value
    Type Description
    StagingSettings

    The global staging settings.

    infoEngine

    Gets the information engine.

    Declaration
    public IInfoEngine infoEngine { get; }
    Property Value
    Type Description
    IInfoEngine

    The information engine.

    pricingEngine

    Gets the pricing engine.

    Declaration
    public IPricingEngine pricingEngine { get; }
    Property Value
    Type Description
    IPricingEngine

    The pricing engine.

    Products

    Gets the products.

    Declaration
    public IEnumerable<AssetProductReference> Products { get; }
    Property Value
    Type Description
    IEnumerable<AssetProductReference>

    The products.

    ProfileDefinition

    Gets the profile definition.

    Declaration
    public ProfileDefinition ProfileDefinition { get; }
    Property Value
    Type Description
    ProfileDefinition

    The profile definition.

    ruleEngine

    Reference to the rule engine (internal reference).

    Declaration
    public IRuleEngine ruleEngine { get; }
    Property Value
    Type Description
    IRuleEngine

    The rule engine.

    runtimeUI

    Runtime UI component if, enabled from configurator settings

    Declaration
    public ProductRuntimeUI runtimeUI { get; }
    Property Value
    Type Description
    ProductRuntimeUI

    The runtime UI.

    settings

    Settings of this configurator.

    Declaration
    public ConfiguratorSettings settings { get; set; }
    Property Value
    Type Description
    ConfiguratorSettings

    The settings.

    SpawnPoint

    Gets the spawn point.

    Declaration
    public GameObject SpawnPoint { get; }
    Property Value
    Type Description
    GameObject

    The spawn point.

    stagingManager

    Reference to the Staging Manager

    Declaration
    public StagingManager stagingManager { get; }
    Property Value
    Type Description
    StagingManager

    The staging manager.

    stateConductor

    Gets the state conductor.

    Declaration
    public StateConductor stateConductor { get; }
    Property Value
    Type Description
    StateConductor

    The state conductor.

    switcher

    Reference switcher that carries out the actual switching on the model.

    Declaration
    public Switcher switcher { get; }
    Property Value
    Type Description
    Switcher

    The switcher.

    Methods

    CreateProductSpawnPoint()

    Create a Product Spawn Point as a child of the Spawn Point. NOTE: ResetConfigurator() should have previously destroyed it

    Declaration
    public GameObject CreateProductSpawnPoint()
    Returns
    Type Description
    GameObject

    Game object

    CreateSplashScreen()

    Creates the splash screen.

    Declaration
    public void CreateSplashScreen()

    GetProductSpawnPoint()

    Gets the product spawn point.

    Declaration
    public GameObject GetProductSpawnPoint()
    Returns
    Type Description
    GameObject

    GameObject.

    InitConfigurator()

    Initializes the configurator.

    Declaration
    public Coroutine InitConfigurator()
    Returns
    Type Description
    Coroutine

    Coroutine.

    InstantiateProviders()

    Instantiates the providers.

    Declaration
    public void InstantiateProviders()

    IsSplashscreenDefined()

    Determines whether [is splashscreen defined].

    Declaration
    public bool IsSplashscreenDefined()
    Returns
    Type Description
    Boolean

    true if [is splashscreen defined]; otherwise, false.

    PostInit(Action)

    Posts the initialize.

    Declaration
    public void PostInit(Action action)
    Parameters
    Type Name Description
    Action action

    The action.

    ReloadProviders()

    Reloads the providers.

    Declaration
    public void ReloadProviders()

    RemoveProduct(Int32, Boolean)

    Removes the product.

    Declaration
    public void RemoveProduct(int productIndex, bool unloadProduct = true)
    Parameters
    Type Name Description
    Int32 productIndex

    Index of the product.

    Boolean unloadProduct

    if set to true [unload product].

    ResetConfigurator()

    Resets the configurator.

    Declaration
    public void ResetConfigurator()

    ResetProductPosition()

    Resets the product position.

    Declaration
    public void ResetProductPosition()

    ResetProductSpawnPointLocation()

    Resets the Transform of the Product Spawn Point to that of the default Transform.

    Declaration
    public void ResetProductSpawnPointLocation()

    ResetSpawnPoint()

    Resets the spawn point.

    Declaration
    [ContextMenu("Reset Spawn Point")]
    public void ResetSpawnPoint()

    SetContext(Context)

    Sets the current context.

    Declaration
    public void SetContext(Context context)
    Parameters
    Type Name Description
    Context context

    The context.

    Remarks

    The context must not be

    null
    and must be part of the context collection of the current product (which must be set).

    Exceptions
    Type Condition
    ArgumentNullException

    The context must not be null.

    InvalidOperationException

    There is no current product: cannot set context.

    ArgumentException

    The current product does not contain the context.

    TryUnloadCurrentProduct()

    Tries the unload current product.

    Declaration
    public void TryUnloadCurrentProduct()

    UnloadContext()

    Unloads the context.

    Declaration
    public void UnloadContext()

    UnloadCurrentProduct()

    Unloads the current product.

    Declaration
    public void UnloadCurrentProduct()

    ValidateStaging()

    Validates the staging.

    Declaration
    [ContextMenu("Validate Staging")]
    public void ValidateStaging()

    Events

    anyConfiguratorChanged

    Occurs when [any configurator changed].

    Declaration
    public static event Action<ConfiguratorChangeArgs> anyConfiguratorChanged
    Event Type
    Type Description
    Action<ConfiguratorChangeArgs>

    contextChanged

    Raised when the context of the product has been changed.

    Declaration
    public event ContextChangedHandler contextChanged
    Event Type
    Type Description
    ContextChangedHandler

    settingsChanged

    Occurs when [settings changed].

    Declaration
    public event SettingsChanged settingsChanged
    Event Type
    Type Description
    SettingsChanged

    Extension Methods

    Async.StartThrowingCoroutine(MonoBehaviour, IEnumerator, Action<Exception>)
    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023