/// <summary>
 /// Start detecting planes. Plane detection is enabled on initialization, so this is only necessary after
 /// calling StopDetecting.
 /// </summary>
 public static void StartDetectingPlanes(this IUsesPlaneFinding obj)
 {
     obj.provider.StartDetectingPlanes();
 }
 /// <summary>
 /// Subscribe to the planeUpdated event, which is called when a tracked plane has new data
 /// </summary>
 /// <param name="planeUpdated">The delegate to subscribe</param>
 public static void SubscribePlaneUpdated(this IUsesPlaneFinding obj, Action <MRPlane> planeUpdated)
 {
     obj.provider.planeUpdated += planeUpdated;
 }
 /// <summary>
 /// Unsubscribe from the planeRemoved event, which is called when a tracked plane is removed (lost)
 /// </summary>
 /// <param name="planeRemoved">The delegate to unsubscribe</param>
 public static void UnsubscribePlaneRemoved(this IUsesPlaneFinding obj, Action <MRPlane> planeRemoved)
 {
     obj.provider.planeRemoved -= planeRemoved;
 }
 /// <summary>
 /// Get the currently tracked planes
 /// </summary>
 /// <param name="planes">A list of MRPlane objects to which the currently tracked planes will be added</param>
 public static void GetPlanes(this IUsesPlaneFinding obj, List <MRPlane> planes)
 {
     obj.provider.GetPlanes(planes);
 }