/// <summary> /// Performs the specified action on each <see cref="TimedEvent"/> contained in the <see cref="TrackChunk"/>. /// </summary> /// <param name="trackChunk"><see cref="TrackChunk"/> to search for events to process.</param> /// <param name="action">The action to perform on each <see cref="TimedEvent"/> contained in the /// <paramref name="trackChunk"/>.</param> /// <returns>Count of processed timed events.</returns> /// <exception cref="ArgumentNullException"> /// <para>One of the following errors occured:</para> /// <list type="bullet"> /// <item> /// <description><paramref name="trackChunk"/> is <c>null</c>.</description> /// </item> /// <item> /// <description><paramref name="action"/> is <c>null</c>.</description> /// </item> /// </list> /// </exception> public static int ProcessTimedEvents(this TrackChunk trackChunk, Action <TimedEvent> action) { ThrowIfArgument.IsNull(nameof(trackChunk), trackChunk); ThrowIfArgument.IsNull(nameof(action), action); return(trackChunk.ProcessTimedEvents(action, timedEvent => true)); }