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.
19 namespace Tizen.Content.MediaContent
22 /// Provides the column names that can be used for Select and Count commands.
24 /// <seealso cref="SelectArguments"/>
25 /// <seealso cref="CountArguments"/>
26 /// <seealso cref="QueryArguments.FilterExpression"/>
27 /// <seealso cref="SelectArguments.SortOrder"/>
28 /// <seealso cref="AlbumCommand.Count(CountArguments)"/>
29 /// <seealso cref="AlbumCommand.CountMember(int, CountArguments)"/>
30 /// <seealso cref="AlbumCommand.Select(SelectArguments)"/>
31 /// <seealso cref="AlbumCommand.SelectMember(int, SelectArguments)"/>
32 /// <seealso cref="BookmarkCommand.Count(CountArguments)"/>
33 /// <seealso cref="BookmarkCommand.Select(SelectArguments)"/>
34 /// <seealso cref="FaceInfoCommand.Select(SelectArguments)"/>
35 /// <seealso cref="FolderCommand.Count(CountArguments)"/>
36 /// <seealso cref="FolderCommand.CountMedia(string, CountArguments)"/>
37 /// <seealso cref="FolderCommand.Select(SelectArguments)"/>
38 /// <seealso cref="FolderCommand.SelectMedia(string, SelectArguments)"/>
39 /// <seealso cref="MediaInfoCommand.CountMedia(CountArguments)"/>
40 /// <seealso cref="MediaInfoCommand.SelectMedia(SelectArguments)"/>
41 /// <seealso cref="PlaylistCommand.Count(CountArguments)"/>
42 /// <seealso cref="PlaylistCommand.Select(SelectArguments)"/>
43 /// <seealso cref="PlaylistCommand.CountMember(int, CountArguments)"/>
44 /// <seealso cref="PlaylistCommand.SelectMember(int, SelectArguments)"/>
45 /// <seealso cref="TagCommand.Count(CountArguments)"/>
46 /// <seealso cref="TagCommand.CountMedia(int, CountArguments)"/>
47 /// <seealso cref="TagCommand.Select(SelectArguments)"/>
48 /// <seealso cref="TagCommand.SelectMedia(int, SelectArguments)"/>
49 public static class MediaInfoColumns
52 /// Gets the column name for the ID of media.
54 /// <value>The column name for the ID of media.</value>
55 /// <remarks>The value type is string.</remarks>
56 /// <seealso cref="MediaInfo.Id"/>
57 public static string Id => "MEDIA_ID";
60 /// Gets the column name for the path of media.
62 /// <value>The column name for the file path of media.</value>
63 /// <remarks>The value type is string.</remarks>
64 /// <seealso cref="MediaInfo.Path"/>
65 public static string Path => "MEDIA_PATH";
68 /// Gets the column name for the display name of media.
70 /// <value>The column name for the display name of media.</value>
71 /// <remarks>The value type is string.</remarks>
72 /// <seealso cref="MediaInfo.DisplayName"/>
73 public static string DisplayName => "MEDIA_DISPLAY_NAME";
76 /// Gets the column name for the type of media.
78 /// <value>The column name for the type of media.</value>
80 /// The value type is integer.
81 /// The value should be an integer that is one of the <see cref="MediaContent.MediaType"/> values.
83 /// <seealso cref="MediaInfo.MediaType"/>
84 public static string MediaType => "MEDIA_TYPE";
87 /// Gets the column name for the mime type of media.
89 /// <value>The column name for the mime type of media.</value>
90 /// <remarks>The value type is string.</remarks>
91 /// <seealso cref="MediaInfo.MimeType"/>
92 public static string MimeType => "MEDIA_MIME_TYPE";
95 /// Gets the column name for the file size of media.
97 /// <value>The column name for the file size of media.</value>
98 /// <remarks>The value type is integer.</remarks>
99 /// <seealso cref="MediaInfo.FileSize"/>
100 public static string FileSize => "MEDIA_SIZE";
103 /// Gets the column name for the date added of media.
105 /// <value>The column name for the date added of media.</value>
107 /// The value type is integer.
108 /// <see cref="DateTimeOffset"/> needs to be converted into the unix time.
110 /// <seealso cref="MediaInfo.DateAdded"/>
111 /// <seealso cref="DateTimeOffset.ToUnixTimeSeconds"/>
112 public static string DateAdded => "MEDIA_ADDED_TIME";
115 /// Gets the column name for the date modified of media.
117 /// <value>The column name for the date modified of media.</value>
119 /// The value type is integer.
120 /// <see cref="DateTimeOffset"/> needs to be converted into the unix time.
122 /// <seealso cref="MediaInfo.DateModified"/>
123 /// <seealso cref="DateTimeOffset.ToUnixTimeSeconds"/>
124 public static string DateModified => "MEDIA_MODIFIED_TIME";
127 /// Gets the column name for the timeline of media.
129 /// <value>The column name for the timeline of media.</value>
131 /// The value type is integer.
132 /// <see cref="DateTimeOffset"/> needs to be converted into the unix time.
134 /// <seealso cref="MediaInfo.Timeline"/>
135 /// <seealso cref="DateTimeOffset.ToUnixTimeSeconds"/>
136 public static string Timeline => "MEDIA_TIMELINE";
139 /// Gets the column name for the thumbnail path of media.
141 /// <value>The column name for the thumbnail path of media.</value>
143 /// The value type is string.
145 /// <seealso cref="MediaInfo.ThumbnailPath"/>
146 public static string ThumbnailPath => "MEDIA_THUMBNAIL_PATH";
149 /// Gets the column name for the title of media.
151 /// <value>The column name for the title of media.</value>
153 /// The value type is string.
155 /// <seealso cref="MediaInfo.Title"/>
156 public static string Title => "MEDIA_TITLE";
159 /// Gets the column name for the album of media.
161 /// <value>The column name for the album of media.</value>
163 /// The value type is string.
165 /// <seealso cref="AudioInfo.Album"/>
166 public static string Album => "MEDIA_ALBUM";
169 /// Gets the column name for the artist of media.
171 /// <value>The column name for the artist of media.</value>
173 /// The value type is string.
175 /// <seealso cref="AudioInfo.Artist"/>
176 /// <seealso cref="VideoInfo.Artist"/>
177 public static string Artist => "MEDIA_ARTIST";
180 /// Gets the column name for the album artist of media.
182 /// <value>The column name for the album artist of media.</value>
184 /// The value type is string.
186 /// <seealso cref="AudioInfo.AlbumArtist"/>
187 /// <seealso cref="VideoInfo.AlbumArtist"/>
188 public static string AlbumArtist => "MEDIA_ALBUM_ARTIST";
191 /// Gets the column name for the genre of media.
193 /// <value>The column name for the genre of media.</value>
195 /// The value type is string.
197 /// <seealso cref="AudioInfo.Genre"/>
198 /// <seealso cref="VideoInfo.Genre"/>
199 public static string Genre => "MEDIA_GENRE";
202 /// Gets the column name for the composer of media.
204 /// <value>The column name for the composer of media.</value>
206 /// The value type is string.
208 /// <seealso cref="AudioInfo.Composer"/>
209 /// <seealso cref="VideoInfo.Composer"/>
210 public static string Composer => "MEDIA_COMPOSER";
213 /// Gets the column name for the year of media.
215 /// <value>The column name for the year of media.</value>
217 /// The value type is string.
219 /// <seealso cref="AudioInfo.Year"/>
220 /// <seealso cref="VideoInfo.Year"/>
221 public static string Year => "MEDIA_YEAR";
224 /// Gets the column name for the date recorded of media.
226 /// <value>The column name for the date recorded of media.</value>
228 /// The value type is string.
230 /// <seealso cref="AudioInfo.DateRecorded"/>
231 /// <seealso cref="VideoInfo.DateRecorded"/>
232 public static string DateRecorded => "MEDIA_RECORDED_DATE";
235 /// Gets the column name for the copyright of media.
237 /// <value>The column name for the copyright of media.</value>
239 /// The value type is string.
241 /// <seealso cref="AudioInfo.Copyright"/>
242 /// <seealso cref="VideoInfo.Copyright"/>
243 public static string Copyright => "MEDIA_COPYRIGHT";
246 /// Gets the column name for the track number of media.
248 /// <value>The column name for the track number of media.</value>
250 /// The value type is string.
252 /// <seealso cref="AudioInfo.TrackNumber"/>
253 /// <seealso cref="VideoInfo.TrackNumber"/>
254 public static string TrackNumber => "MEDIA_TRACK_NUM";
257 /// Gets the column name for the description of media.
259 /// <value>The column name for the description of media.</value>
261 /// The value type is string.
263 /// <seealso cref="MediaInfo.Description"/>
264 public static string Description => "MEDIA_DESCRIPTION";
267 /// Gets the column name for the bit rate of media.
269 /// <value>The column name for the bit rate of media.</value>
271 /// The value type is integer.
273 /// <seealso cref="AudioInfo.BitRate"/>
274 /// <seealso cref="VideoInfo.BitRate"/>
275 public static string BitRate => "MEDIA_BITRATE";
278 /// Gets the column name for the bit per sample of media.
280 /// <value>The column name for the bit per sample of media.</value>
282 /// The value type is integer.
284 /// <seealso cref="AudioInfo.BitPerSample"/>
285 public static string BitPerSample => "MEDIA_BITPERSAMPLE";
288 /// Gets the column name for the sample rate of media.
290 /// <value>The column name for the sample rate of media.</value>
292 /// The value type is integer.
294 /// <seealso cref="AudioInfo.SampleRate"/>
295 public static string SampleRate => "MEDIA_SAMPLERATE";
298 /// Gets the column name for the channels of media.
300 /// <value>The column name for the channels of media.</value>
302 /// The value type is integer.
304 /// <seealso cref="AudioInfo.Channels"/>
305 public static string Channels => "MEDIA_CHANNEL";
308 /// Gets the column name for the duration of media.
310 /// <value>The column name for the duration of media.</value>
312 /// The value type is integer.
314 /// <seealso cref="AudioInfo.Duration"/>
315 /// <seealso cref="VideoInfo.Duration"/>
316 public static string Duration => "MEDIA_DURATION";
319 /// Gets the column name for the longitude of media.
321 /// <value>The column name for the longitude of media.</value>
323 /// The value type is real.
325 /// <seealso cref="MediaInfo.Longitude"/>
326 public static string Longitude => "MEDIA_LONGITUDE";
329 /// Gets the column name for the latitude of media.
331 /// <value>The column name for the latitude of media.</value>
333 /// The value type is real.
335 /// <seealso cref="MediaInfo.Latitude"/>
336 public static string Latitude => "MEDIA_LATITUDE";
339 /// Gets the column name for the altitude of media.
341 /// <value>The column name for the altitude of media.</value>
343 /// The value type is real.
345 /// <seealso cref="MediaInfo.Altitude"/>
346 public static string Altitude => "MEDIA_ALTITUDE";
349 /// Gets the column name for the width of media.
351 /// <value>The column name for the width of media.</value>
353 /// The value type is integer.
355 /// <seealso cref="ImageInfo.Width"/>
356 /// <seealso cref="VideoInfo.Width"/>
357 public static string Width => "MEDIA_WIDTH";
360 /// Gets the column name for the height of media.
362 /// <value>The column name for the height of media.</value>
364 /// The value type is integer.
366 /// <seealso cref="ImageInfo.Height"/>
367 /// <seealso cref="VideoInfo.Height"/>
368 public static string Height => "MEDIA_HEIGHT";
371 /// Gets the column name for the date taken of media.
373 /// <value>The column name for the date taken of media.</value>
375 /// The value type is integer.
377 /// <seealso cref="ImageInfo.DateTaken"/>
378 public static string DateTaken => "MEDIA_DATETAKEN";
381 /// Gets the column name for the orientation of media.
383 /// <value>The column name for the orientation of media.</value>
385 /// The value type is integer.
386 /// The value should be an integer that is one of the <see cref="MediaContent.Orientation"/> values.
388 /// <seealso cref="MediaContent.Orientation"/>
389 /// <seealso cref="ImageInfo.Orientation"/>
390 public static string Orientation => "MEDIA_ORIENTATION";
393 /// Gets the column name for the rating of media.
395 /// <value>The column name for the rating of media.</value>
397 /// The value type is integer.
399 /// <seealso cref="MediaInfo.Rating"/>
400 public static string Rating => "MEDIA_RATING";
403 /// Gets the column name for the favorite status of media.
405 /// <value>The column name for the favorite status of media.</value>
407 /// The value type is integer (1 : true, 0 : false).
409 /// <seealso cref="MediaInfo.IsFavorite"/>
410 public static string Favorite => "MEDIA_FAVOURITE";
413 /// Gets the column name for the drm of media.
415 /// <value>The column name for the drm of media.</value>
417 /// The value type is integer (1 : true, 0 : false).
419 /// <seealso cref="MediaInfo.IsDrm"/>
420 public static string IsDrm => "MEDIA_IS_DRM";
423 /// Gets the column name for the storage type of media.
425 /// <value>The column name for the storage type of media.</value>
427 /// The value type is integer.
428 /// The value should be an integer that is one of the <see cref="MediaContent.StorageType"/> values.
430 /// <seealso cref="MediaInfo.StorageType"/>
431 public static string StorageType => "MEDIA_STORAGE_TYPE";
434 /// Gets the column name for the exposure time of media.
436 /// <value>The column name for the exposure time of media.</value>
438 /// The value type is integer.
440 /// <seealso cref="ImageInfo.ExposureTime"/>
441 public static string ExposureTime => "MEDIA_EXPOSURE_TIME";
444 /// Gets the column name for the FNumber of media.
446 /// <value>The column name for the FNumber of media.</value>
448 /// The value type is integer.
450 /// <seealso cref="ImageInfo.FNumber"/>
451 public static string FNumber => "MEDIA_FNUMBER";
454 /// Gets the column name for the ISO of media.
456 /// <value>The column name for the ISO of media.</value>
458 /// The value type is integer.
460 /// <seealso cref="ImageInfo.Iso"/>
461 public static string Iso => "MEDIA_ISO";
464 /// Gets the column name for the model of media.
466 /// <value>The column name for the model of media.</value>
468 /// The value type is string.
470 /// <seealso cref="ImageInfo.Model"/>
471 public static string Model => "MEDIA_MODEL";
475 /// Provides the folder column names that can be used for Select and Count commands.
477 /// <seealso cref="SelectArguments"/>
478 /// <seealso cref="CountArguments"/>
479 /// <seealso cref="QueryArguments.FilterExpression"/>
480 /// <seealso cref="SelectArguments.SortOrder"/>
481 /// <seealso cref="AlbumCommand.Count(CountArguments)"/>
482 /// <seealso cref="AlbumCommand.Select(SelectArguments)"/>
483 public static class AlbumColumns
486 /// Gets the column name for the name of album.
488 /// <value>The column name for the name of album.</value>
490 /// The value type is string.
492 /// <seealso cref="Album.Name"/>
493 public static string Name => "MEDIA_ALBUM";
496 /// Gets the column name for the artist of album.
498 /// <value>The column name for the artist of album.</value>
500 /// The value type is string.
502 /// <seealso cref="Album.Artist"/>
503 public static string Artist => "MEDIA_ARTIST";
507 /// Provides the folder column names that can be used for Select and Count commands.
509 /// <seealso cref="SelectArguments"/>
510 /// <seealso cref="CountArguments"/>
511 /// <seealso cref="QueryArguments.FilterExpression"/>
512 /// <seealso cref="SelectArguments.SortOrder"/>
513 /// <seealso cref="FolderCommand.Count(CountArguments)"/>
514 /// <seealso cref="FolderCommand.Select(SelectArguments)"/>
515 public static class FolderColumns
518 /// Gets the column name for the ID of folder.
520 /// <value>The column name for the ID of folder.</value>
522 /// The value type is string.
524 /// <seealso cref="Folder.Id"/>
525 public static string Id => "FOLDER_ID";
528 /// Gets the column name for the path of folder.
530 /// <value>The column name for the path of folder.</value>
532 /// The value type is string.
534 /// <seealso cref="Folder.Path"/>
535 public static string Path => "FOLDER_PATH";
538 /// Gets the column name for the name of folder.
540 /// <value>The column name for the name of folder.</value>
542 /// The value type is string.
544 /// <seealso cref="Folder.Name"/>
545 public static string Name => "FOLDER_NAME";
548 /// Gets the column name for the storage type of folder.
550 /// <value>The column name for the storage type of folder.</value>
552 /// The value type is integer.
553 /// The value should be an integer that is one of the <see cref="MediaContent.StorageType"/> values.
555 /// <seealso cref="Folder.StorageType"/>
556 public static string StorageType => "FOLDER_STORAGE_TYPE";
560 /// Provides the playlist column names that can be used for Select and Count commands.
562 /// <seealso cref="SelectArguments"/>
563 /// <seealso cref="CountArguments"/>
564 /// <seealso cref="QueryArguments.FilterExpression"/>
565 /// <seealso cref="SelectArguments.SortOrder"/>
566 /// <seealso cref="PlaylistCommand.Count(CountArguments)"/>
567 /// <seealso cref="PlaylistCommand.Select(SelectArguments)"/>
568 public static class PlaylistColumns
571 /// Gets the column name for the name of playlist.
573 /// <value>The column name for the name of playlist.</value>
575 /// The value type is string.
577 /// <seealso cref="Playlist.Name"/>
578 public static string Name => "PLAYLIST_NAME";
581 /// Gets the column name for the ID of playlist.
583 /// <value>The column name for the ID of playlist.</value>
585 /// The value type is integer.
587 /// <seealso cref="Playlist.Id"/>
588 public static string Id => "PLAYLIST_ID";
591 /// Gets the column name for the member order of playlist.
593 /// <value>The column name for the member order of playlist.</value>
595 /// The value type is integer.
597 /// <seealso cref="PlaylistCommand.UpdatePlayOrder(int, PlayOrder)"/>
598 public static string MemberOrder => "PLAYLIST_MEMBER_ORDER";
601 /// Gets the column name for the number of members of playlist.
603 /// <value>The column name for the number of members of playlist.</value>
605 /// The value type is integer.
607 /// <seealso cref="PlaylistCommand.AddMember(int, string)"/>
608 /// <seealso cref="PlaylistCommand.RemoveMember(int, int)"/>
609 public static string Count => "PLAYLIST_MEDIA_COUNT";
613 /// Provides the tag column names that can be used for the <see cref="SelectArguments"/>.
615 /// <seealso cref="SelectArguments"/>
616 /// <seealso cref="CountArguments"/>
617 /// <seealso cref="QueryArguments.FilterExpression"/>
618 /// <seealso cref="SelectArguments.SortOrder"/>
619 /// <seealso cref="MediaInfoCommand.CountTag(string, CountArguments)"/>
620 /// <seealso cref="MediaInfoCommand.SelectTag(string, SelectArguments)"/>
621 /// <seealso cref="TagCommand.Count(CountArguments)"/>
622 /// <seealso cref="TagCommand.CountMedia(int, CountArguments)"/>
623 /// <seealso cref="TagCommand.Select(SelectArguments)"/>
624 /// <seealso cref="TagCommand.SelectMedia(int, SelectArguments)"/>
625 public static class TagColumns
628 /// Gets the column name for the name of tag.
630 /// <value>The column name for the name of tag.</value>
632 /// The value type is string.
634 /// <seealso cref="Tag.Name"/>
635 public static string Name => "TAG_NAME";
638 /// Gets the column name for the number of media of tag.
640 /// <value>The column name for the number of media of tag.</value>
642 /// The value type is integer.
644 /// <seealso cref="TagCommand.AddMedia(int, string)"/>
645 /// <seealso cref="TagCommand.RemoveMedia(int, string)"/>
646 public static string Count => "TAG_MEDIA_COUNT";
649 /// Gets the column name for the ID of tag.
651 /// <value>The column name for the ID of tag.</value>
653 /// The value type is integer.
655 /// <seealso cref="Tag.Id"/>
656 public static string Id => "TAG_ID";
660 /// Provides the bookmark column names that can be used for Select and Count commands.
662 /// <seealso cref="SelectArguments"/>
663 /// <seealso cref="CountArguments"/>
664 /// <seealso cref="QueryArguments.FilterExpression"/>
665 /// <seealso cref="SelectArguments.SortOrder"/>
666 /// <seealso cref="BookmarkCommand.Count(CountArguments)"/>
667 /// <seealso cref="BookmarkCommand.Select(SelectArguments)"/>
668 /// <seealso cref="MediaInfoCommand.CountBookmark(string, CountArguments)"/>
669 /// <seealso cref="MediaInfoCommand.SelectBookmark(string, SelectArguments)"/>
670 public static class BookmarkColumns
673 /// Gets the column name for the offset of the bookmark.
675 /// <value>The column name for the offset of the bookmark.</value>
677 /// The value type is integer.
679 /// <seealso cref="Bookmark.Offset"/>
680 public static string Offset => "BOOKMARK_MARKED_TIME";
683 /// Gets the column name for the ID of the bookmark.
685 /// <value>The column name for the ID of the bookmark.</value>
687 /// The value type is integer.
689 /// <seealso cref="Bookmark.Id"/>
690 public static string Id => "BOOKMARK_ID";
693 /// Gets the column name for the name of the bookmark.
695 /// <value>The column name for the name of the bookmark.</value>
697 /// The value type is string.
699 /// <seealso cref="Bookmark.Name"/>
700 public static string Name => "BOOKMARK_NAME";
704 /// Provides the face info column names that can be used for Select and Count commands.
706 /// <seealso cref="SelectArguments"/>
707 /// <seealso cref="CountArguments"/>
708 /// <seealso cref="QueryArguments.FilterExpression"/>
709 /// <seealso cref="SelectArguments.SortOrder"/>
710 /// <seealso cref="FaceInfoCommand.Select(SelectArguments)"/>
711 /// <seealso cref="MediaInfoCommand.CountFaceInfo(string, CountArguments)"/>
712 /// <seealso cref="MediaInfoCommand.SelectFaceInfo(string, SelectArguments)"/>
713 public static class FaceInfoColumns
716 /// Gets the column name for the tag of face information.
718 /// <value>The column name for the tag of face information.</value>
720 /// The value type is string.
722 /// <seealso cref="FaceInfo.Tag"/>
723 public static string Tag => "MEDIA_FACE_TAG";
726 /// Gets the column name for the ID of face information.
728 /// <value>The column name for the ID of face information.</value>
730 /// The value type is string.
732 /// <seealso cref="FaceInfo.Id"/>
733 public static string Id => "MEDIA_FACE_ID";
737 /// Provides the storage column names that can be used for Select and Count commands.
739 /// <seealso cref="SelectArguments"/>
740 /// <seealso cref="CountArguments"/>
741 /// <seealso cref="QueryArguments.FilterExpression"/>
742 /// <seealso cref="SelectArguments.SortOrder"/>
743 /// <seealso cref="StorageCommand.Count(CountArguments)"/>
744 /// <seealso cref="StorageCommand.Select(SelectArguments)"/>
745 public static class StorageColumns
748 /// Gets the column name for the ID of storage.
750 /// <value>The column name for the ID of storage.</value>
752 /// The value type is string.
754 /// <seealso cref="Storage.Id"/>
755 public static string Id => "STORAGE_ID";
758 /// Gets the column name for the path of storage.
760 /// <value>The column name for the path of storage.</value>
762 /// The value type is string.
764 /// <seealso cref="Storage.Path"/>
765 public static string Path => "STORAGE_PATH";
768 /// Gets the column name for the type of storage.
770 /// <value>The column name for the type of storage.</value>
772 /// The value type is integer.
773 /// The value should be an integer that is one of the <see cref="MediaContent.StorageType"/> values.
775 /// <seealso cref="Storage.Type"/>
776 public static string Type => "MEDIA_STORAGE_TYPE";