UxrComponent<T> Class

Like UxrComponent but it allows to enumerate all components of a specific type.

Inheritance Hierarchy

System.Object
  Object
    Component
      Behaviour
        MonoBehaviour
          UltimateXR.Core.Components.UxrComponent
            UltimateXR.Core.Components.UxrComponent<T>
              More… Namespace: UltimateXR.Core.Components
Assembly: UltimateXR (in UltimateXR.dll) Version: 0.0.0.0

Syntax

C#

public abstract class UxrComponent<T> : UxrComponent
where T : UxrComponent<T>


Type Parameters

 

T
Component type
  The UxrComponent<T> type exposes the following members.

Constructors

NameDescription
Protected methodUxrComponent<T>

Properties

NameDescription
Public propertyStatic memberAllComponents Gets all the components of this specific type, enabled or not, in all open scenes.
Public propertyStatic memberEnabledComponents Gets all components of this specific type that are enabled, in all open scenes.

Methods

NameDescription
Protected methodAwake Registers itself in the static list of components. (Overrides UxrComponent.Awake().)
Public methodStatic memberDestroyAllComponents Destroys all components.
Public methodStatic memberDestroyAllGameObjects Destroys all gameObjects the components belong to.
Protected methodOnDestroy Removes itself from the static list of components. (Overrides UxrComponent.OnDestroy().)
Protected methodOnDisable Triggers disabled events. (Overrides UxrComponent.OnDisable().)
Protected methodOnEnable Triggers enabled events. (Overrides UxrComponent.OnEnable().)
Public methodStatic memberSortComponents Sorts the internal list of components. This is useful if iterating over the components requires a certain order.

Events

NameDescription
Public eventStatic memberGlobalDisabled Called when a component was disabled.
Public eventStatic memberGlobalEnabled Called when a component was enabled.
Public eventStatic memberGlobalRegistered Called when a component was registered.
Public eventStatic memberGlobalRegistering Called before registering a component.
Public eventStatic memberGlobalUnregistered Called when a component was unregistered.
Public eventStatic memberGlobalUnregistering Called before unregistering a component.

Extension Methods

NameDescription
Public Extension MethodCheckSetEnabled Enables/disabled the component if it isn’t enabled already. (Defined by MonoBehaviourExt.)
Public Extension MethodGetOrAddComponent<T> Gets the Component of a given type. If it doesn’t exist, it is added to the GameObject. (Defined by ComponentExt.)
Public Extension MethodGetPathUnderScene Gets the full path under current scene, including all parents, but scene name, for the given component. (Defined by ComponentExt.)
Public Extension MethodGetSceneUid Gets an unique identifier string for the given component. (Defined by ComponentExt.)
Public Extension MethodGetUniqueScenePath Gets an unique path in the scene for the given component. It will include scene name, sibling and component indices to make it unique. (Defined by ComponentExt.)
Public Extension MethodLoopCoroutine Creates a coroutine that simplifies executing a loop during a certain amount of time. (Defined by MonoBehaviourExt.)
Public Extension MethodSafeGetComponentInParent<T> Gets the Component of a given type in the GameObject or any of its parents. It also works on prefabs, where regular GetComponentInParent(Type, Boolean) will not work: https://issuetracker.unity3d.com/issues/getcomponentinparent-is-returning-null-when-the-gameobject-is-a-prefab (Defined by ComponentExt.)
Public Extension MethodShowInInspector(Boolean)Overloaded.
Controls whether to show the current object in the inspector. (Defined by ObjectExt.)
Public Extension MethodShowInInspector(Boolean, Boolean)Overloaded.
Controls whether to show the current object in the inspector and whether it is editable. (Defined by ObjectExt.)
Public Extension MethodThrowIfNull Throws an exception if the object is null. (Defined by ObjectExt.)

Remarks

Components get registered through their Awake() call. This means that components get registered the first time they are enabled. Disabled objects that have been enabled at some point are enumerated, but objects that have never been enabled don’t get enumerated, which means that they will not appear in AllComponents.

See Also

Reference

UltimateXR.Core.Components Namespace
UltimateXR.Core.Components.Composite.UxrAvatarComponent<T>

Inheritance HierarchySystem.Object
  Object
    Component
      Behaviour
        MonoBehaviour
          UltimateXR.Core.Components.UxrComponent
            UltimateXR.Core.Components.UxrComponent<T>
              UltimateXR.Avatar.Controllers.UxrFingerPointingVolume
              UltimateXR.Avatar.Controllers.UxrHandPoseVolume
              UltimateXR.Avatar.UxrAvatar
              UltimateXR.Core.Components.Composite.UxrAvatarComponent<T>
              UltimateXR.Core.Components.Composite.UxrGrabbableObjectComponent<T>
              UltimateXR.Core.Components.UxrComponent<TP, TC>
              UltimateXR.Locomotion.UxrTeleportSpawnCollider
              UltimateXR.Manipulation.UxrGrabbableObject
              UltimateXR.Manipulation.UxrGrabbableObjectAnchor
              UltimateXR.Mechanics.Weapons.UxrActor
              UltimateXR.Mechanics.Weapons.UxrImpactDecal
              UltimateXR.Mechanics.Weapons.UxrProjectileSource
              UltimateXR.Rendering.LOD.UxrLODGroup
              UltimateXR.UI.UnityInputModule.UxrCanvas