using Unity.Collections; namespace UnityEngine.XR.ARSubsystems { /// /// Base class for subsystems that detect and track things in the physical environment. /// /// The trackable's data, often a blittable type to interop with native code. /// The subsystem descriptor for the underlying subsystem public abstract class TrackingSubsystem : XRSubsystem where TTrackable : struct, ITrackable where TSubsystemDescriptor : class, ISubsystemDescriptor { /// /// Retrieves a set of changes (additions, updates, and removals) since the last /// time was called. This is typically called /// once per frame to update the derived class's internal state. /// /// The Allocator to use when creating the NativeArrays in . /// The set of changes since the last time this method was invoked. public abstract TrackableChanges GetChanges(Allocator allocator); } }