IMusicManager.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using MediaBrowser.Controller.Entities;
  2. using MediaBrowser.Controller.Entities.Audio;
  3. using MediaBrowser.Controller.Playlists;
  4. using System.Collections.Generic;
  5. namespace MediaBrowser.Controller.Library
  6. {
  7. public interface IMusicManager
  8. {
  9. /// <summary>
  10. /// Gets the instant mix from song.
  11. /// </summary>
  12. /// <param name="item">The item.</param>
  13. /// <param name="user">The user.</param>
  14. /// <returns>IEnumerable{Audio}.</returns>
  15. IEnumerable<Audio> GetInstantMixFromSong(Audio item, User user);
  16. /// <summary>
  17. /// Gets the instant mix from artist.
  18. /// </summary>
  19. /// <param name="name">The name.</param>
  20. /// <param name="user">The user.</param>
  21. /// <returns>IEnumerable{Audio}.</returns>
  22. IEnumerable<Audio> GetInstantMixFromArtist(string name, User user);
  23. /// <summary>
  24. /// Gets the instant mix from album.
  25. /// </summary>
  26. /// <param name="item">The item.</param>
  27. /// <param name="user">The user.</param>
  28. /// <returns>IEnumerable{Audio}.</returns>
  29. IEnumerable<Audio> GetInstantMixFromAlbum(MusicAlbum item, User user);
  30. /// <summary>
  31. /// Gets the instant mix from playlist.
  32. /// </summary>
  33. /// <param name="item">The item.</param>
  34. /// <param name="user">The user.</param>
  35. /// <returns>IEnumerable&lt;Audio&gt;.</returns>
  36. IEnumerable<Audio> GetInstantMixFromPlaylist(Playlist item, User user);
  37. /// <summary>
  38. /// Gets the instant mix from genre.
  39. /// </summary>
  40. /// <param name="genres">The genres.</param>
  41. /// <param name="user">The user.</param>
  42. /// <returns>IEnumerable{Audio}.</returns>
  43. IEnumerable<Audio> GetInstantMixFromGenres(IEnumerable<string> genres, User user);
  44. }
  45. }