IPathManager.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. using MediaBrowser.Controller.Entities;
  2. namespace MediaBrowser.Controller.IO;
  3. /// <summary>
  4. /// Interface ITrickplayManager.
  5. /// </summary>
  6. public interface IPathManager
  7. {
  8. /// <summary>
  9. /// Gets the path to the trickplay image base folder.
  10. /// </summary>
  11. /// <param name="item">The item.</param>
  12. /// <param name="saveWithMedia">Whether or not the tile should be saved next to the media file.</param>
  13. /// <returns>The absolute path.</returns>
  14. public string GetTrickplayDirectory(BaseItem item, bool saveWithMedia = false);
  15. /// <summary>
  16. /// Gets the path to the subtitle file.
  17. /// </summary>
  18. /// <param name="mediaSourceId">The media source id.</param>
  19. /// <param name="streamIndex">The stream index.</param>
  20. /// <param name="extension">The subtitle file extension.</param>
  21. /// <returns>The absolute path.</returns>
  22. public string GetSubtitlePath(string mediaSourceId, int streamIndex, string extension);
  23. /// <summary>
  24. /// Gets the path to the subtitle file.
  25. /// </summary>
  26. /// <param name="mediaSourceId">The media source id.</param>
  27. /// <returns>The absolute path.</returns>
  28. public string GetSubtitleFolderPath(string mediaSourceId);
  29. /// <summary>
  30. /// Gets the path to the attachment file.
  31. /// </summary>
  32. /// <param name="mediaSourceId">The media source id.</param>
  33. /// <param name="fileName">The attachmentFileName index.</param>
  34. /// <returns>The absolute path.</returns>
  35. public string GetAttachmentPath(string mediaSourceId, string fileName);
  36. /// <summary>
  37. /// Gets the path to the attachment folder.
  38. /// </summary>
  39. /// <param name="mediaSourceId">The media source id.</param>
  40. /// <returns>The absolute path.</returns>
  41. public string GetAttachmentFolderPath(string mediaSourceId);
  42. /// <summary>
  43. /// Gets the chapter images data path.
  44. /// </summary>
  45. /// <param name="item">The base item.</param>
  46. /// <returns>The chapter images data path.</returns>
  47. public string GetChapterImageFolderPath(BaseItem item);
  48. /// <summary>
  49. /// Gets the chapter images path.
  50. /// </summary>
  51. /// <param name="item">The base item.</param>
  52. /// <param name="chapterPositionTicks">The chapter position.</param>
  53. /// <returns>The chapter images data path.</returns>
  54. public string GetChapterImagePath(BaseItem item, long chapterPositionTicks);
  55. }