namespace AmiReel.Services; /// /// Locates sequential WinUAE-style recordings: output.avi, output_1.avi, output_2.avi, ... /// Stopping at the first missing name. /// public static class SourceRecordingFinder { public const string BaseFileName = "output"; public const string FileExtension = ".avi"; public const int MaximumFiles = 500; /// /// Returns existing sequential recordings in , or an empty /// list when the folder is missing or output.avi is not present. /// public static IReadOnlyList FindSequentialOutputs(string? folder) { if (string.IsNullOrWhiteSpace(folder) || !Directory.Exists(folder)) return []; string directory = Path.GetFullPath(folder); List found = []; string first = Path.Combine(directory, BaseFileName + FileExtension); if (!File.Exists(first)) return found; found.Add(first); for (int index = 1; index < MaximumFiles; index++) { string next = Path.Combine(directory, $"{BaseFileName}_{index}{FileExtension}"); if (!File.Exists(next)) break; found.Add(next); } return found; } }