2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using System.Diagnostics;
19 using Native = Interop.MediaControllerClient;
21 namespace Tizen.Multimedia.Remoting
24 /// Represents metadata for media control.
26 public class MediaControlMetadata
29 /// Initializes a new instance of the <see cref="MediaControlMetadata"/> class.
31 public MediaControlMetadata()
35 internal MediaControlMetadata(IntPtr handle)
37 Debug.Assert(handle != IntPtr.Zero);
39 Title = Native.GetMetadata(handle, MediaControllerAttribute.Title);
40 Artist = Native.GetMetadata(handle, MediaControllerAttribute.Artist);
41 Album = Native.GetMetadata(handle, MediaControllerAttribute.Album);
42 Author = Native.GetMetadata(handle, MediaControllerAttribute.Author);
43 Genre = Native.GetMetadata(handle, MediaControllerAttribute.Genre);
44 Duration = Native.GetMetadata(handle, MediaControllerAttribute.Duration);
45 Date = Native.GetMetadata(handle, MediaControllerAttribute.Date);
46 Copyright = Native.GetMetadata(handle, MediaControllerAttribute.Copyright);
47 Description = Native.GetMetadata(handle, MediaControllerAttribute.Description);
48 TrackNumber = Native.GetMetadata(handle, MediaControllerAttribute.TrackNumber);
49 AlbumArtPath = Native.GetMetadata(handle, MediaControllerAttribute.Picture);
53 /// Gets or sets the title.
55 public string Title { get; set; }
58 /// Gets or sets the artist.
60 public string Artist { get; set; }
63 /// Gets or sets the album.
65 public string Album { get; set; }
68 /// Gets or sets the author.
70 public string Author { get; set; }
73 /// Gets or sets the genre.
75 public string Genre { get; set; }
78 /// Gets or sets the duration.
80 public string Duration { get; set; }
83 /// Gets or sets the date.
85 public string Date { get; set; }
88 /// Gets or sets the copyright.
90 public string Copyright { get; set; }
93 /// Gets or sets the description.
95 public string Description { get; set; }
98 /// Gets or sets the track number.
100 public string TrackNumber { get; set; }
103 /// Gets or sets the path of the album art.
105 public string AlbumArtPath { get; set; }