Release 4.0.0-preview1-00172
[platform/core/csapi/tizenfx.git] / src / Tizen.Content.MediaContent / Tizen.Content.MediaContent / Columns.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 namespace Tizen.Content.MediaContent
18 {
19     /// <summary>
20     /// Provides the column names that can be used for Select and Count commands.
21     /// </summary>
22     /// <seealso cref="SelectArguments"/>
23     /// <seealso cref="CountArguments"/>
24     /// <seealso cref="QueryArguments.FilterExpression"/>
25     /// <seealso cref="SelectArguments.SortOrder"/>
26     /// <seealso cref="AlbumCommand.Count(CountArguments)"/>
27     /// <seealso cref="AlbumCommand.CountMember(int, CountArguments)"/>
28     /// <seealso cref="AlbumCommand.Select(SelectArguments)"/>
29     /// <seealso cref="AlbumCommand.SelectMember(int, SelectArguments)"/>
30     /// <seealso cref="BookmarkCommand.Count(CountArguments)"/>
31     /// <seealso cref="BookmarkCommand.Select(SelectArguments)"/>
32     /// <seealso cref="FaceInfoCommand.Select(SelectArguments)"/>
33     /// <seealso cref="FolderCommand.Count(CountArguments)"/>
34     /// <seealso cref="FolderCommand.CountMedia(string, CountArguments)"/>
35     /// <seealso cref="FolderCommand.Select(SelectArguments)"/>
36     /// <seealso cref="FolderCommand.SelectMedia(string, SelectArguments)"/>
37     /// <seealso cref="MediaInfoCommand.CountMedia(CountArguments)"/>
38     /// <seealso cref="MediaInfoCommand.SelectMedia(SelectArguments)"/>
39     /// <seealso cref="PlaylistCommand.Count(CountArguments)"/>
40     /// <seealso cref="PlaylistCommand.Select(SelectArguments)"/>
41     /// <seealso cref="PlaylistCommand.CountMember(int, CountArguments)"/>
42     /// <seealso cref="PlaylistCommand.SelectMember(int, SelectArguments)"/>
43     /// <seealso cref="TagCommand.Count(CountArguments)"/>
44     /// <seealso cref="TagCommand.CountMedia(int, CountArguments)"/>
45     /// <seealso cref="TagCommand.Select(SelectArguments)"/>
46     /// <seealso cref="TagCommand.SelectMedia(int, SelectArguments)"/>
47     public static class MediaInfoColumns
48     {
49         /// <summary>
50         /// Gets the column name for the ID of media.
51         /// </summary>
52         /// <value>The column name for the ID of media.</value>
53         /// <remarks>The value type is string.</remarks>
54         /// <seealso cref="MediaInfo.Id"/>
55         public static string Id => "MEDIA_ID";
56
57         /// <summary>
58         /// Gets the column name for the path of media.
59         /// </summary>
60         /// <value>The column name for the file path of media.</value>
61         /// <remarks>The value type is string.</remarks>
62         /// <seealso cref="MediaInfo.Path"/>
63         public static string Path => "MEDIA_PATH";
64
65         /// <summary>
66         /// Gets the column name for the display name of media.
67         /// </summary>
68         /// <value>The column name for the display name of media.</value>
69         /// <remarks>The value type is string.</remarks>
70         /// <seealso cref="MediaInfo.DisplayName"/>
71         public static string DisplayName => "MEDIA_DISPLAY_NAME";
72
73         /// <summary>
74         /// Gets the column name for the type of media.
75         /// </summary>
76         /// <value>The column name for the type of media.</value>
77         /// <remarks>
78         /// The value type is integer.
79         /// The value should be an integer that is one of the <see cref="MediaContent.MediaType"/> values.
80         /// </remarks>
81         /// <seealso cref="MediaInfo.MediaType"/>
82         public static string MediaType => "MEDIA_TYPE";
83
84         /// <summary>
85         /// Gets the column name for the mime type of media.
86         /// </summary>
87         /// <value>The column name for the mime type of media.</value>
88         /// <remarks>The value type is string.</remarks>
89         /// <seealso cref="MediaInfo.MimeType"/>
90         public static string MimeType => "MEDIA_MIME_TYPE";
91
92         /// <summary>
93         /// Gets the column name for the file size of media.
94         /// </summary>
95         /// <value>The column name for the file size of media.</value>
96         /// <remarks>The value type is integer.</remarks>
97         /// <seealso cref="MediaInfo.FileSize"/>
98         public static string FileSize => "MEDIA_SIZE";
99
100         /// <summary>
101         /// Gets the column name for the date added of media.
102         /// </summary>
103         /// <value>The column name for the date added of media.</value>
104         /// <remarks>
105         /// The value type is integer.
106         /// <see cref="System.DateTimeOffset"/> needs to be converted into the unix time.
107         /// </remarks>
108         /// <seealso cref="MediaInfo.DateAdded"/>
109         /// <seealso cref="System.DateTimeOffset.ToUnixTimeSeconds"/>
110         public static string DateAdded => "MEDIA_ADDED_TIME";
111
112         /// <summary>
113         /// Gets the column name for the date modified of media.
114         /// </summary>
115         /// <value>The column name for the date modified of media.</value>
116         /// <remarks>
117         /// The value type is integer.
118         /// <see cref="System.DateTimeOffset"/> needs to be converted into the unix time.
119         /// </remarks>
120         /// <seealso cref="MediaInfo.DateModified"/>
121         /// <seealso cref="System.DateTimeOffset.ToUnixTimeSeconds"/>
122         public static string DateModified => "MEDIA_MODIFIED_TIME";
123
124         /// <summary>
125         /// Gets the column name for the timeline of media.
126         /// </summary>
127         /// <value>The column name for the timeline of media.</value>
128         /// <remarks>
129         /// The value type is integer.
130         /// <see cref="System.DateTimeOffset"/> needs to be converted into the unix time.
131         /// </remarks>
132         /// <seealso cref="MediaInfo.Timeline"/>
133         /// <seealso cref="System.DateTimeOffset.ToUnixTimeSeconds"/>
134         public static string Timeline => "MEDIA_TIMELINE";
135
136         /// <summary>
137         /// Gets the column name for the thumbnail path of media.
138         /// </summary>
139         /// <value>The column name for the thumbnail path of media.</value>
140         /// <remarks>
141         /// The value type is string.
142         /// </remarks>
143         /// <seealso cref="MediaInfo.ThumbnailPath"/>
144         public static string ThumbnailPath => "MEDIA_THUMBNAIL_PATH";
145
146         /// <summary>
147         /// Gets the column name for the title of media.
148         /// </summary>
149         /// <value>The column name for the title of media.</value>
150         /// <remarks>
151         /// The value type is string.
152         /// </remarks>
153         /// <seealso cref="MediaInfo.ThumbnailPath"/>
154         public static string Title => "MEDIA_TITLE";
155
156         /// <summary>
157         /// Gets the column name for the album of media.
158         /// </summary>
159         /// <value>The column name for the album of media.</value>
160         /// <remarks>
161         /// The value type is string.
162         /// </remarks>
163         /// <seealso cref="AudioInfo.Album"/>
164         public static string Album => "MEDIA_ALBUM";
165
166         /// <summary>
167         /// Gets the column name for the artist of media.
168         /// </summary>
169         /// <value>The column name for the artist of media.</value>
170         /// <remarks>
171         /// The value type is string.
172         /// </remarks>
173         /// <seealso cref="AudioInfo.Artist"/>
174         /// <seealso cref="VideoInfo.Artist"/>
175         public static string Artist => "MEDIA_ARTIST";
176
177         /// <summary>
178         /// Gets the column name for the album artist of media.
179         /// </summary>
180         /// <value>The column name for the album artist of media.</value>
181         /// <remarks>
182         /// The value type is string.
183         /// </remarks>
184         /// <seealso cref="AudioInfo.AlbumArtist"/>
185         /// <seealso cref="VideoInfo.AlbumArtist"/>
186         public static string AlbumArtist => "MEDIA_ALBUM_ARTIST";
187
188         /// <summary>
189         /// Gets the column name for the genre of media.
190         /// </summary>
191         /// <value>The column name for the genre of media.</value>
192         /// <remarks>
193         /// The value type is string.
194         /// </remarks>
195         /// <seealso cref="AudioInfo.Genre"/>
196         /// <seealso cref="VideoInfo.Genre"/>
197         public static string Genre => "MEDIA_GENRE";
198
199         /// <summary>
200         /// Gets the column name for the composer of media.
201         /// </summary>
202         /// <value>The column name for the composer of media.</value>
203         /// <remarks>
204         /// The value type is string.
205         /// </remarks>
206         /// <seealso cref="AudioInfo.Composer"/>
207         /// <seealso cref="VideoInfo.Composer"/>
208         public static string Composer => "MEDIA_COMPOSER";
209
210         /// <summary>
211         /// Gets the column name for the year of media.
212         /// </summary>
213         /// <value>The column name for the year of media.</value>
214         /// <remarks>
215         /// The value type is string.
216         /// </remarks>
217         /// <seealso cref="AudioInfo.Year"/>
218         /// <seealso cref="VideoInfo.Year"/>
219         public static string Year => "MEDIA_YEAR";
220
221         /// <summary>
222         /// Gets the column name for the date recorded of media.
223         /// </summary>
224         /// <value>The column name for the date recorded of media.</value>
225         /// <remarks>
226         /// The value type is string.
227         /// </remarks>
228         /// <seealso cref="AudioInfo.DateRecorded"/>
229         /// <seealso cref="VideoInfo.DateRecorded"/>
230         public static string DateRecorded => "MEDIA_RECORDED_DATE";
231
232         /// <summary>
233         /// Gets the column name for the copyright of media.
234         /// </summary>
235         /// <value>The column name for the copyright of media.</value>
236         /// <remarks>
237         /// The value type is string.
238         /// </remarks>
239         /// <seealso cref="AudioInfo.Copyright"/>
240         /// <seealso cref="VideoInfo.Copyright"/>
241         public static string Copyright => "MEDIA_COPYRIGHT";
242
243         /// <summary>
244         /// Gets the column name for the track number of media.
245         /// </summary>
246         /// <value>The column name for the track number of media.</value>
247         /// <remarks>
248         /// The value type is string.
249         /// </remarks>
250         /// <seealso cref="AudioInfo.TrackNumber"/>
251         /// <seealso cref="VideoInfo.TrackNumber"/>
252         public static string TrackNumber => "MEDIA_TRACK_NUM";
253
254         /// <summary>
255         /// Gets the column name for the description of media.
256         /// </summary>
257         /// <value>The column name for the description of media.</value>
258         /// <remarks>
259         /// The value type is string.
260         /// </remarks>
261         /// <seealso cref="MediaInfo.Description"/>
262         public static string Description => "MEDIA_DESCRIPTION";
263
264         /// <summary>
265         /// Gets the column name for the bit rate of media.
266         /// </summary>
267         /// <value>The column name for the bit rate of media.</value>
268         /// <remarks>
269         /// The value type is integer.
270         /// </remarks>
271         /// <seealso cref="AudioInfo.BitRate"/>
272         /// <seealso cref="VideoInfo.BitRate"/>
273         public static string BitRate => "MEDIA_BITRATE";
274
275         /// <summary>
276         /// Gets the column name for the bit per sample of media.
277         /// </summary>
278         /// <value>The column name for the bit per sample of media.</value>
279         /// <remarks>
280         /// The value type is integer.
281         /// </remarks>
282         /// <seealso cref="AudioInfo.BitPerSample"/>
283         public static string BitPerSample => "MEDIA_BITPERSAMPLE";
284
285         /// <summary>
286         /// Gets the column name for the sample rate of media.
287         /// </summary>
288         /// <value>The column name for the sample rate of media.</value>
289         /// <remarks>
290         /// The value type is integer.
291         /// </remarks>
292         /// <seealso cref="AudioInfo.SampleRate"/>
293         public static string SampleRate => "MEDIA_SAMPLERATE";
294
295         /// <summary>
296         /// Gets the column name for the channels of media.
297         /// </summary>
298         /// <value>The column name for the channels of media.</value>
299         /// <remarks>
300         /// The value type is integer.
301         /// </remarks>
302         /// <seealso cref="AudioInfo.Channels"/>
303         public static string Channels => "MEDIA_CHANNEL";
304
305         /// <summary>
306         /// Gets the column name for the duration of media.
307         /// </summary>
308         /// <value>The column name for the duration of media.</value>
309         /// <remarks>
310         /// The value type is integer.
311         /// </remarks>
312         /// <seealso cref="AudioInfo.Duration"/>
313         /// <seealso cref="VideoInfo.Duration"/>
314         public static string Duration => "MEDIA_DURATION";
315
316         /// <summary>
317         /// Gets the column name for the longitude of media.
318         /// </summary>
319         /// <value>The column name for the longitude of media.</value>
320         /// <remarks>
321         /// The value type is real.
322         /// </remarks>
323         /// <seealso cref="MediaInfo.Longitude"/>
324         public static string Longitude => "MEDIA_LONGITUDE";
325
326         /// <summary>
327         /// Gets the column name for the latitude of media.
328         /// </summary>
329         /// <value>The column name for the latitude of media.</value>
330         /// <remarks>
331         /// The value type is real.
332         /// </remarks>
333         /// <seealso cref="MediaInfo.Latitude"/>
334         public static string Latitude => "MEDIA_LATITUDE";
335
336         /// <summary>
337         /// Gets the column name for the altitude of media.
338         /// </summary>
339         /// <value>The column name for the altitude of media.</value>
340         /// <remarks>
341         /// The value type is real.
342         /// </remarks>
343         /// <seealso cref="MediaInfo.Altitude"/>
344         public static string Altitude => "MEDIA_ALTITUDE";
345
346         /// <summary>
347         /// Gets the column name for the width of media.
348         /// </summary>
349         /// <value>The column name for the width of media.</value>
350         /// <remarks>
351         /// The value type is integer.
352         /// </remarks>
353         /// <seealso cref="ImageInfo.Width"/>
354         /// <seealso cref="VideoInfo.Width"/>
355         public static string Width => "MEDIA_WIDTH";
356
357         /// <summary>
358         /// Gets the column name for the height of media.
359         /// </summary>
360         /// <value>The column name for the height of media.</value>
361         /// <remarks>
362         /// The value type is integer.
363         /// </remarks>
364         /// <seealso cref="ImageInfo.Height"/>
365         /// <seealso cref="VideoInfo.Height"/>
366         public static string Height => "MEDIA_HEIGHT";
367
368         /// <summary>
369         /// Gets the column name for the date taken of media.
370         /// </summary>
371         /// <value>The column name for the date taken of media.</value>
372         /// <remarks>
373         /// The value type is integer.
374         /// </remarks>
375         /// <seealso cref="ImageInfo.DateTaken"/>
376         public static string DateTaken => "MEDIA_DATETAKEN";
377
378         /// <summary>
379         /// Gets the column name for the orientation of media.
380         /// </summary>
381         /// <value>The column name for the orientation of media.</value>
382         /// <remarks>
383         /// The value type is integer.
384         /// The value should be an integer that is one of the <see cref="MediaContent.Orientation"/> values.
385         /// </remarks>
386         /// <seealso cref="MediaContent.Orientation"/>
387         /// <seealso cref="ImageInfo.Orientation"/>
388         public static string Orientation => "MEDIA_ORIENTATION";
389
390         /// <summary>
391         /// Gets the column name for the burst ID of media.
392         /// </summary>
393         /// <value>The column name for the burst ID of media.</value>
394         /// <remarks>
395         /// The value type is string.
396         /// </remarks>
397         /// <seealso cref="ImageInfo.BurstId"/>
398         public static string BurstId => "BURST_ID";
399
400         /// <summary>
401         /// Gets the column name for the rating of media.
402         /// </summary>
403         /// <value>The column name for the rating of media.</value>
404         /// <remarks>
405         /// The value type is integer.
406         /// </remarks>
407         /// <seealso cref="MediaInfo.Rating"/>
408         public static string Rating => "MEDIA_RATING";
409
410         /// <summary>
411         /// Gets the column name for the favorite status of media.
412         /// </summary>
413         /// <value>The column name for the favorite status of media.</value>
414         /// <remarks>
415         /// The value type is integer (1 : true, 0 : false).
416         /// </remarks>
417         /// <seealso cref="MediaInfo.IsFavorite"/>
418         public static string Favorite => "MEDIA_FAVOURITE";
419
420         /// <summary>
421         /// Gets the column name for the provider of media.
422         /// </summary>
423         /// <value>The column name for the provider of media.</value>
424         /// <remarks>
425         /// The value type is string.
426         /// </remarks>
427         /// <seealso cref="MediaInfo.Provider"/>
428         public static string Provider => "MEDIA_PROVIDER";
429
430         /// <summary>
431         /// Gets the column name for the category of media.
432         /// </summary>
433         /// <value>The column name for the category of media.</value>
434         /// <remarks>
435         /// The value type is string.
436         /// </remarks>
437         /// <seealso cref="MediaInfo.Category"/>
438         public static string Category => "MEDIA_CATEGORY";
439
440
441         /// <summary>
442         /// Gets the column name for the location tag of media.
443         /// </summary>
444         /// <value>The column name for the location tag of media.</value>
445         /// <remarks>
446         /// The value type is string.
447         /// </remarks>
448         /// <seealso cref="MediaInfo.LocationTag"/>
449         public static string LocationTag => "MEDIA_LOCATION_TAG";
450
451         /// <summary>
452         /// Gets the column name for the age rating of media.
453         /// </summary>
454         /// <value>The column name for the age rating of media.</value>
455         /// <remarks>
456         /// The value type is string.
457         /// </remarks>
458         /// <seealso cref="MediaInfo.AgeRating"/>>
459         public static string AgeRating => "MEDIA_AGE_RATING";
460
461         /// <summary>
462         /// Gets the column name for the weather information of media.
463         /// </summary>
464         /// <value>The column name for the weather information of media.</value>
465         /// <remarks>
466         /// The value type is string.
467         /// </remarks>
468         /// <seealso cref="MediaInfo.Weather"/>
469         public static string Weather => "MEDIA_WEATHER";
470
471         /// <summary>
472         /// Gets the column name for the drm of media.
473         /// </summary>
474         /// <value>The column name for the drm of media.</value>
475         /// <remarks>
476         /// The value type is integer (1 : true, 0 : false).
477         /// </remarks>
478         /// <seealso cref="MediaInfo.IsDrm"/>
479         public static string IsDrm => "MEDIA_IS_DRM";
480
481         /// <summary>
482         /// Gets the column name for the storage type of media.
483         /// </summary>
484         /// <value>The column name for the storage type of media.</value>
485         /// <remarks>
486         /// The value type is integer.
487         /// The value should be an integer that is one of the <see cref="MediaContent.StorageType"/> values.
488         /// </remarks>
489         /// <seealso cref="MediaInfo.StorageType"/>
490         public static string StorageType => "MEDIA_STORAGE_TYPE";
491
492         /// <summary>
493         /// Gets the column name for the exposure time of media.
494         /// </summary>
495         /// <value>The column name for the exposure time of media.</value>
496         /// <remarks>
497         /// The value type is integer.
498         /// </remarks>
499         /// <seealso cref="ImageInfo.ExposureTime"/>
500         public static string ExposureTime => "MEDIA_EXPOSURE_TIME";
501
502         /// <summary>
503         /// Gets the column name for the FNumber of media.
504         /// </summary>
505         /// <value>The column name for the FNumber of media.</value>
506         /// <remarks>
507         /// The value type is integer.
508         /// </remarks>
509         /// <seealso cref="ImageInfo.FNumber"/>
510         public static string FNumber => "MEDIA_FNUMBER";
511
512         /// <summary>
513         /// Gets the column name for the ISO of media.
514         /// </summary>
515         /// <value>The column name for the ISO of media.</value>
516         /// <remarks>
517         /// The value type is integer.
518         /// </remarks>
519         /// <seealso cref="ImageInfo.Iso"/>
520         public static string Iso => "MEDIA_ISO";
521
522         /// <summary>
523         /// Gets the column name for the model of media.
524         /// </summary>
525         /// <value>The column name for the model of media.</value>
526         /// <remarks>
527         /// The value type is string.
528         /// </remarks>
529         /// <seealso cref="ImageInfo.Model"/>
530         public static string Model => "MEDIA_MODEL";
531     }
532
533
534     /// <summary>
535     /// Provides the folder column names that can be used for Select and Count commands.
536     /// </summary>
537     /// <seealso cref="SelectArguments"/>
538     /// <seealso cref="CountArguments"/>
539     /// <seealso cref="QueryArguments.FilterExpression"/>
540     /// <seealso cref="SelectArguments.SortOrder"/>
541     /// <seealso cref="AlbumCommand.Count(CountArguments)"/>
542     /// <seealso cref="AlbumCommand.Select(SelectArguments)"/>
543     public static class AlbumColumns
544     {
545         /// <summary>
546         /// Gets the column name for the name of album.
547         /// </summary>
548         /// <value>The column name for the name of album.</value>
549         /// <remarks>
550         /// The value type is string.
551         /// </remarks>
552         /// <seealso cref="Album.Name"/>
553         public static string Name => "MEDIA_ALBUM";
554
555         /// <summary>
556         /// Gets the column name for the artist of album.
557         /// </summary>
558         /// <value>The column name for the artist of album.</value>
559         /// <remarks>
560         /// The value type is string.
561         /// </remarks>
562         /// <seealso cref="Album.Artist"/>
563         public static string Artist => "MEDIA_ARTIST";
564     }
565
566     /// <summary>
567     /// Provides the folder column names that can be used for Select and Count commands.
568     /// </summary>
569     /// <seealso cref="SelectArguments"/>
570     /// <seealso cref="CountArguments"/>
571     /// <seealso cref="QueryArguments.FilterExpression"/>
572     /// <seealso cref="SelectArguments.SortOrder"/>
573     /// <seealso cref="FolderCommand.Count(CountArguments)"/>
574     /// <seealso cref="FolderCommand.Select(SelectArguments)"/>
575     public static class FolderColumns
576     {
577         /// <summary>
578         /// Gets the column name for the ID of folder.
579         /// </summary>
580         /// <value>The column name for the ID of folder.</value>
581         /// <remarks>
582         /// The value type is string.
583         /// </remarks>
584         /// <seealso cref="Folder.Id"/>
585         public static string Id => "FOLDER_ID";
586
587         /// <summary>
588         /// Gets the column name for the path of folder.
589         /// </summary>
590         /// <value>The column name for the path of folder.</value>
591         /// <remarks>
592         /// The value type is string.
593         /// </remarks>
594         /// <seealso cref="Folder.Path"/>
595         public static string Path => "FOLDER_PATH";
596
597         /// <summary>
598         /// Gets the column name for the name of folder.
599         /// </summary>
600         /// <value>The column name for the name of folder.</value>
601         /// <remarks>
602         /// The value type is string.
603         /// </remarks>
604         /// <seealso cref="Folder.Name"/>
605         public static string Name => "FOLDER_NAME";
606
607         /// <summary>
608         /// Gets the column name for the storage type of folder.
609         /// </summary>
610         /// <value>The column name for the storage type of folder.</value>
611         /// <remarks>
612         /// The value type is integer.
613         /// The value should be an integer that is one of the <see cref="MediaContent.StorageType"/> values.
614         /// </remarks>
615         /// <seealso cref="Folder.StorageType"/>
616         public static string StorageType => "FOLDER_STORAGE_TYPE";
617     }
618
619     /// <summary>
620     /// Provides the playlist column names that can be used for Select and Count commands.
621     /// </summary>
622     /// <seealso cref="SelectArguments"/>
623     /// <seealso cref="CountArguments"/>
624     /// <seealso cref="QueryArguments.FilterExpression"/>
625     /// <seealso cref="SelectArguments.SortOrder"/>
626     /// <seealso cref="PlaylistCommand.Count(CountArguments)"/>
627     /// <seealso cref="PlaylistCommand.Select(SelectArguments)"/>
628     public static class PlaylistColumns
629     {
630         /// <summary>
631         /// Gets the column name for the name of playlist.
632         /// </summary>
633         /// <value>The column name for the name of playlist.</value>
634         /// <remarks>
635         /// The value type is string.
636         /// </remarks>
637         /// <seealso cref="Playlist.Name"/>
638         public static string Name => "PLAYLIST_NAME";
639
640         /// <summary>
641         /// Gets the column name for the ID of playlist.
642         /// </summary>
643         /// <value>The column name for the ID of playlist.</value>
644         /// <remarks>
645         /// The value type is integer.
646         /// </remarks>
647         /// <seealso cref="Playlist.Id"/>
648         public static string Id => "PLAYLIST_ID";
649
650         /// <summary>
651         /// Gets the column name for the member order of playlist.
652         /// </summary>
653         /// <value>The column name for the member order of playlist.</value>
654         /// <remarks>
655         /// The value type is integer.
656         /// </remarks>
657         /// <seealso cref="PlaylistCommand.UpdatePlayOrder(int, PlayOrder)"/>
658         public static string MemberOrder => "PLAYLIST_MEMBER_ORDER";
659
660         /// <summary>
661         /// Gets the column name for the number of members of playlist.
662         /// </summary>
663         /// <value>The column name for the number of members of playlist.</value>
664         /// <remarks>
665         /// The value type is integer.
666         /// </remarks>
667         /// <seealso cref="PlaylistCommand.AddMember(int, string)"/>
668         /// <seealso cref="PlaylistCommand.RemoveMember(int, int)"/>
669         public static string Count => "PLAYLIST_MEDIA_COUNT";
670     }
671
672     /// <summary>
673     /// Provides the tag column names that can be used for the <see cref="SelectArguments"/>.
674     /// </summary>
675     /// <seealso cref="SelectArguments"/>
676     /// <seealso cref="CountArguments"/>
677     /// <seealso cref="QueryArguments.FilterExpression"/>
678     /// <seealso cref="SelectArguments.SortOrder"/>
679     /// <seealso cref="MediaInfoCommand.CountTag(string, CountArguments)"/>
680     /// <seealso cref="MediaInfoCommand.SelectTag(string, SelectArguments)"/>
681     /// <seealso cref="TagCommand.Count(CountArguments)"/>
682     /// <seealso cref="TagCommand.CountMedia(int, CountArguments)"/>
683     /// <seealso cref="TagCommand.Select(SelectArguments)"/>
684     /// <seealso cref="TagCommand.SelectMedia(int, SelectArguments)"/>
685     public static class TagColumns
686     {
687         /// <summary>
688         /// Gets the column name for the name of tag.
689         /// </summary>
690         /// <value>The column name for the name of tag.</value>
691         /// <remarks>
692         /// The value type is string.
693         /// </remarks>
694         /// <seealso cref="Tag.Name"/>
695         public static string Name => "TAG_NAME";
696
697         /// <summary>
698         /// Gets the column name for the number of media of tag.
699         /// </summary>
700         /// <value>The column name for the number of media of tag.</value>
701         /// <remarks>
702         /// The value type is integer.
703         /// </remarks>
704         /// <seealso cref="TagCommand.AddMedia(int, string)"/>
705         /// <seealso cref="TagCommand.RemoveMedia(int, string)"/>
706         public static string Count => "TAG_MEDIA_COUNT";
707
708         /// <summary>
709         /// Gets the column name for the ID of tag.
710         /// </summary>
711         /// <value>The column name for the ID of tag.</value>
712         /// <remarks>
713         /// The value type is integer.
714         /// </remarks>
715         /// <seealso cref="Tag.Id"/>
716         public static string Id => "TAG_ID";
717     }
718
719     /// <summary>
720     /// Provides the bookmark column names that can be used for Select and Count commands.
721     /// </summary>
722     /// <seealso cref="SelectArguments"/>
723     /// <seealso cref="CountArguments"/>
724     /// <seealso cref="QueryArguments.FilterExpression"/>
725     /// <seealso cref="SelectArguments.SortOrder"/>
726     /// <seealso cref="BookmarkCommand.Count(CountArguments)"/>
727     /// <seealso cref="BookmarkCommand.Select(SelectArguments)"/>
728     /// <seealso cref="MediaInfoCommand.CountBookmark(string, CountArguments)"/>
729     /// <seealso cref="MediaInfoCommand.SelectBookmark(string, SelectArguments)"/>
730     public static class BookmarkColumns
731     {
732         /// <summary>
733         /// Gets the column name for the offset of the bookmark.
734         /// </summary>
735         /// <value>The column name for the offset of the bookmark.</value>
736         /// <remarks>
737         /// The value type is integer.
738         /// </remarks>
739         /// <seealso cref="Bookmark.Offset"/>
740         public static string Offset => "BOOKMARK_MARKED_TIME";
741
742         /// <summary>
743         /// Gets the column name for the ID of the bookmark.
744         /// </summary>
745         /// <value>The column name for the ID of the bookmark.</value>
746         /// <remarks>
747         /// The value type is integer.
748         /// </remarks>
749         /// <seealso cref="Bookmark.Id"/>
750         public static string Id => "BOOKMARK_ID";
751
752         /// <summary>
753         /// Gets the column name for the name of the bookmark.
754         /// </summary>
755         /// <value>The column name for the name of the bookmark.</value>
756         /// <remarks>
757         /// The value type is string.
758         /// </remarks>
759         /// <seealso cref="Bookmark.Name"/>
760         public static string Name => "BOOKMARK_NAME";
761     }
762
763     /// <summary>
764     /// Provides the face info column names that can be used for Select and Count commands.
765     /// </summary>
766     /// <seealso cref="SelectArguments"/>
767     /// <seealso cref="CountArguments"/>
768     /// <seealso cref="QueryArguments.FilterExpression"/>
769     /// <seealso cref="SelectArguments.SortOrder"/>
770     /// <seealso cref="FaceInfoCommand.Select(SelectArguments)"/>
771     /// <seealso cref="MediaInfoCommand.CountFaceInfo(string, CountArguments)"/>
772     /// <seealso cref="MediaInfoCommand.SelectFaceInfo(string, SelectArguments)"/>
773     public static class FaceInfoColumns
774     {
775         /// <summary>
776         /// Gets the column name for the tag of face information.
777         /// </summary>
778         /// <value>The column name for the tag of face information.</value>
779         /// <remarks>
780         /// The value type is string.
781         /// </remarks>
782         /// <seealso cref="FaceInfo.Tag"/>
783         public static string Tag => "MEDIA_FACE_TAG";
784
785         /// <summary>
786         /// Gets the column name for the ID of face information.
787         /// </summary>
788         /// <value>The column name for the ID of face information.</value>
789         /// <remarks>
790         /// The value type is string.
791         /// </remarks>
792         /// <seealso cref="FaceInfo.Id"/>
793         public static string Id => "MEDIA_FACE_ID";
794     }
795
796     /// <summary>
797     /// Provides the storage column names that can be used for Select and Count commands.
798     /// </summary>
799     /// <seealso cref="SelectArguments"/>
800     /// <seealso cref="CountArguments"/>
801     /// <seealso cref="QueryArguments.FilterExpression"/>
802     /// <seealso cref="SelectArguments.SortOrder"/>
803     /// <seealso cref="StorageCommand.Count(CountArguments)"/>
804     /// <seealso cref="StorageCommand.Select(SelectArguments)"/>
805     public static class StorageColumns
806     {
807         /// <summary>
808         /// Gets the column name for the ID of storage.
809         /// </summary>
810         /// <value>The column name for the ID of storage.</value>
811         /// <remarks>
812         /// The value type is string.
813         /// </remarks>
814         /// <seealso cref="Storage.Id"/>
815         public static string Id => "STORAGE_ID";
816
817         /// <summary>
818         /// Gets the column name for the path of storage.
819         /// </summary>
820         /// <value>The column name for the path of storage.</value>
821         /// <remarks>
822         /// The value type is string.
823         /// </remarks>
824         /// <seealso cref="Storage.Path"/>
825         public static string Path => "STORAGE_PATH";
826
827         /// <summary>
828         /// Gets the column name for the type of storage.
829         /// </summary>
830         /// <value>The column name for the type of storage.</value>
831         /// <remarks>
832         /// The value type is integer.
833         /// The value should be an integer that is one of the <see cref="MediaContent.StorageType"/> values.
834         /// </remarks>
835         /// <seealso cref="Storage.Type"/>
836         public static string Type => "MEDIA_STORAGE_TYPE";
837     }
838 }