private void trigger(TrackMarker marker, TrackMarkerHandler_MarkerState state) { if (current.compareAndSet(marker, null)) { marker.handler.handle(state); } }
/// <summary> /// Trigger and remove the marker with the specified state. </summary> /// <param name="state"> The state of the marker to pass to the handler. </param> public virtual void trigger(TrackMarkerHandler_MarkerState state) { TrackMarker marker = current.getAndSet(null); if (marker != null) { marker.handler.handle(state); } }