root/lang/csharp/iTunesCOMWrap/trunk/iTunesCOMWrap/Interfaces/ISources.cs @ 11175

Revision 11175, 2.8 kB (checked in by topia, 6 years ago)

* add iTunesCOMWrap.

Line 
1namespace Clovery.iTunesHelper.COMWrap.Interfaces
2{
3    /// <summary>
4    /// Represents an entry in the Source list (music library, CD, device, etc.).
5    /// </summary>
6    public interface ISource : IITObject
7    {
8        /// <summary>
9        /// Returns the kind of the source.
10        /// </summary>
11        SourceKind Kind { get; }
12
13        /// <summary>
14        /// Returns the total size of the source, if it has a fixed size.
15        /// </summary>
16        double Capacity { get; }
17
18        /// <summary>
19        /// Returns the free space on the source, if it has a fixed size.
20        /// </summary>
21        double FreeSpace { get; }
22
23        /// <summary>
24        /// Returns a collection containing the playlists in this source.
25        /// </summary>
26        /// <remarks>
27        /// The source's primary playlist is always the first playlist in the collection.
28        /// </remarks>
29        IPlaylistCollection Playlists { get; }
30
31        /// <summary>
32        /// Returns a collection containing some children of this source.
33        /// </summary>
34        IChildPlaylistCollection Children { get; }
35
36        /// <summary>
37        /// Create a folder in an existing source.
38        /// </summary>
39        /// <param name="folderName">The name of the new folder (may be NULL or empty).</param>
40        /// <returns>Returns a created folder</returns>
41        IPlaylist CreateFolder(string folderName);
42
43        /// <summary>
44        /// Create a playlist in an existing source.
45        /// </summary>
46        /// <param name="playlistName">The name of the new playlist (may be NULL or empty).</param>
47        /// <returns>Returns a created playlist</returns>
48        IPlaylist CreatePlaylist(string playlistName);
49
50        /// <summary>
51        /// Return a playlist if the playlist existing with specified name,
52        /// otherwise create playlist with specified name.
53        /// </summary>
54        /// <param name="playlistName">The name of the new playlist (may be NULL or empty).</param>
55        /// <returns>Returns a created playlist</returns>
56        IPlaylist GetOrCreatePlaylist(string playlistName);
57
58        /// <summary>
59        /// Return a folder if the folder existing with specified name,
60        /// otherwise create folder with specified name.
61        /// </summary>
62        /// <param name="folderName">The name of the new folder (may be NULL or empty).</param>
63        /// <returns>Returns a created folder</returns>
64        IPlaylist GetOrCreateFolder(string folderName);
65    }
66
67    public interface IIPodSource : ISource
68    {
69        void EjectIPod();
70        string SoftwareVersion { get; }
71        void UpdateIPod();
72    }
73
74    public interface ISourceCollection : INamedCollection<ISource> { }
75}
Note: See TracBrowser for help on using the browser.