Fix description error
[platform/core/api/media-content.git] / include / media_content_type.h
1 /*
2 * Copyright (c) 2011 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
18 #ifndef __TIZEN_MEDIA_CONTENT_TYPE_H__
19 #define __TIZEN_MEDIA_CONTENT_TYPE_H__
20
21 #include <time.h>
22 #include <tizen.h>
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif /* __cplusplus */
27
28 /**
29  * @file media_content_type.h
30  * @brief This file contains API related to media-content enumerations for media data types, groups, orientations, \n
31  *        classes of errors and definitions of media-data. \n
32  *        Listed APIs are called when iterating over lists of album, group, bookmark and other media,  \n
33  *        when media items and burst shot are inserted completely and when notification of media DB change is subscribed.
34  */
35
36 /**
37 * @addtogroup CAPI_MEDIA_CONTENT_MODULE
38  * @{
39  */
40
41 /**
42  * @ingroup CAPI_MEDIA_CONTENT_MODULE
43  * @brief Enumeration for the media file format.
44  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
45  */
46 typedef enum {
47         MEDIA_CONTENT_TYPE_IMAGE                = 0,    /**<The type of an image */
48         MEDIA_CONTENT_TYPE_VIDEO                = 1,    /**<The type of a video */
49         MEDIA_CONTENT_TYPE_SOUND        = 2,    /**<The type of sound */
50         MEDIA_CONTENT_TYPE_MUSIC                = 3,    /**<The type of music */
51         MEDIA_CONTENT_TYPE_OTHERS       = 4,    /**<The type of other */
52 } media_content_type_e;
53
54 /**
55  * @ingroup CAPI_CONTENT_MEDIA_CONTENT_MODULE
56  * @brief Enumeration for the storage type.
57  * @details This information is used to establish where the folder is.
58  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
59  */
60 typedef enum {
61         MEDIA_CONTENT_STORAGE_INTERNAL  = 0,    /**< The device's internal storage */
62         MEDIA_CONTENT_STORAGE_EXTERNAL  = 1,    /**< The device's external storage like sd card*/
63         MEDIA_CONTENT_STORAGE_EXTERNAL_USB = 2, /**< The external USB storage (Since @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif) */
64         MEDIA_CONTENT_STORAGE_CLOUD     = 100,  /**< The Cloud storage (Since @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif, Deprecated since 4.0) */
65 } media_content_storage_e;
66
67 /**
68  * @ingroup CAPI_MEDIA_CONTENT_MODULE
69  * @brief Enumeration for media content DB update items.
70  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
71  */
72 typedef enum {
73         MEDIA_ITEM_FILE         = 0,            /**< File type, an item updated to DB */
74         MEDIA_ITEM_DIRECTORY    = 1,            /**< Directory type, an item updated to DB */
75 } media_content_db_update_item_type_e;
76
77 /**
78  * @ingroup CAPI_MEDIA_CONTENT_MODULE
79  * @brief Enumeration for media content DB update types.
80  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
81  */
82 typedef enum {
83         MEDIA_CONTENT_INSERT            = 0,            /**< Insert, the type of DB update */
84         MEDIA_CONTENT_DELETE            = 1,            /**< Delete, The type of DB update */
85         MEDIA_CONTENT_UPDATE    = 2,            /**< Update, The type of DB update */
86 } media_content_db_update_type_e;
87
88 /**
89  * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
90  * @brief Enumeration for orientation types.
91  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
92  */
93 typedef enum {
94         MEDIA_CONTENT_ORIENTATION_NOT_AVAILABLE  = 0,       /**< Not available*/
95         MEDIA_CONTENT_ORIENTATION_NORMAL         = 1,       /**< Normal*/
96         MEDIA_CONTENT_ORIENTATION_HFLIP          = 2,       /**< Flip horizontal*/
97         MEDIA_CONTENT_ORIENTATION_ROT_180        = 3,       /**< Rotate 180 degrees*/
98         MEDIA_CONTENT_ORIENTATION_VFLIP          = 4,       /**< Flip vertical*/
99         MEDIA_CONTENT_ORIENTATION_TRANSPOSE      = 5,       /**< Transpose*/
100         MEDIA_CONTENT_ORIENTATION_ROT_90         = 6,       /**< Rotate 90 degrees*/
101         MEDIA_CONTENT_ORIENTATION_TRANSVERSE     = 7,       /**< Transverse*/
102         MEDIA_CONTENT_ORIENTATION_ROT_270        = 8,       /**< Rotate 270 degrees*/
103 } media_content_orientation_e;
104
105 /**
106  * @ingroup CAPI_MEDIA_CONTENT_MODULE
107  * @brief Enumeration for ordering.
108  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
109  */
110 typedef enum {
111         MEDIA_CONTENT_ORDER_ASC   = 0,      /**< Ascending order*/
112         MEDIA_CONTENT_ORDER_DESC  = 1,      /**< Descending order*/
113         MEDIA_CONTENT_ORDER_OTHER = 2,          /** order by order key**/
114 } media_content_order_e;
115
116 /**
117  * @ingroup CAPI_MEDIA_CONTENT_MODULE
118  * @brief Enumeration for collations.
119  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
120  */
121 typedef enum {
122         MEDIA_CONTENT_COLLATE_DEFAULT   = 0,        /**< Default collation BINARY */
123         MEDIA_CONTENT_COLLATE_NOCASE    = 1,        /**< Collation NOCASE, not case sensitive */
124         MEDIA_CONTENT_COLLATE_RTRIM     = 2,        /**< Collation RTRIM, trailing space characters are ignored */
125         MEDIA_CONTENT_COLLATE_LOCALIZED = 3,        /**< Collation LOCALIZATION, NOCASE also applied */
126 } media_content_collation_e;
127
128 #define MEDIA_CONTENT_ERROR_CLASS                               TIZEN_ERROR_MEDIA_CONTENT
129
130 /**
131  * @ingroup CAPI_MEDIA_CONTENT_MODULE
132  * @brief Enumeration for a media content error.
133  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
134  */
135 typedef enum {
136         MEDIA_CONTENT_ERROR_NONE                    = TIZEN_ERROR_NONE,                    /**< Successful */
137         MEDIA_CONTENT_ERROR_INVALID_PARAMETER       = TIZEN_ERROR_INVALID_PARAMETER,       /**< Invalid parameter */
138         MEDIA_CONTENT_ERROR_OUT_OF_MEMORY           = TIZEN_ERROR_OUT_OF_MEMORY,           /**< Out of memory */
139         MEDIA_CONTENT_ERROR_INVALID_OPERATION       = TIZEN_ERROR_INVALID_OPERATION,       /**< Invalid Operation */
140         MEDIA_CONTENT_FILE_NO_SPACE_ON_DEVICE       = TIZEN_ERROR_FILE_NO_SPACE_ON_DEVICE, /**< No space left on device */
141         MEDIA_CONTENT_ERROR_PERMISSION_DENIED             = TIZEN_ERROR_PERMISSION_DENIED,                /**< Permission denied */
142         MEDIA_CONTENT_ERROR_DB_FAILED               = MEDIA_CONTENT_ERROR_CLASS | 0x01,    /**< DB operation failed */
143         MEDIA_CONTENT_ERROR_DB_BUSY                 = MEDIA_CONTENT_ERROR_CLASS | 0x02,    /**< DB operation BUSY */
144         MEDIA_CONTENT_ERROR_NETWORK                 = MEDIA_CONTENT_ERROR_CLASS | 0x03,    /**< Network Fail */
145         MEDIA_CONTENT_ERROR_UNSUPPORTED_CONTENT     = MEDIA_CONTENT_ERROR_CLASS | 0x04,    /**< Unsupported Content */
146         MEDIA_CONTENT_ERROR_NOT_SUPPORTED           = TIZEN_ERROR_NOT_SUPPORTED,           /**< Not supported */
147 } media_content_error_e;
148
149 /**
150  * @ingroup CAPI_MEDIA_CONTENT_MODULE
151  * @brief Enumeration for a media group.
152  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
153  */
154 typedef enum {
155         MEDIA_CONTENT_GROUP_DISPLAY_NAME = 0,    /**< Media group ID for display name */
156         MEDIA_CONTENT_GROUP_TYPE,                /**< Media group ID for a media type */
157         MEDIA_CONTENT_GROUP_MIME_TYPE,           /**< Media group ID for a mime type */
158         MEDIA_CONTENT_GROUP_SIZE,                /**< Media group ID for content size */
159         MEDIA_CONTENT_GROUP_ADDED_TIME,          /**< Media group ID for the added time */
160         MEDIA_CONTENT_GROUP_MODIFIED_TIME,       /**< Media group ID for the modified time */
161         MEDIA_CONTENT_GROUP_TITLE,               /**< Media group ID for a content title */
162         MEDIA_CONTENT_GROUP_ARTIST,              /**< Media group ID for an artist*/
163         MEDIA_CONTENT_GROUP_ALBUM_ARTIST,        /**< Media group ID for an album artist */
164         MEDIA_CONTENT_GROUP_GENRE,               /**< Media group ID for a genre*/
165         MEDIA_CONTENT_GROUP_COMPOSER,            /**< Media group ID for a composer*/
166         MEDIA_CONTENT_GROUP_YEAR,                /**< Media group ID for a year*/
167         MEDIA_CONTENT_GROUP_RECORDED_DATE,       /**< Media group ID for the recorded date*/
168         MEDIA_CONTENT_GROUP_COPYRIGHT,           /**< Media group ID for the copyright*/
169         MEDIA_CONTENT_GROUP_TRACK_NUM,           /**< Media group ID for a track number*/
170         MEDIA_CONTENT_GROUP_DESCRIPTION,         /**< Media group ID for a description */
171         MEDIA_CONTENT_GROUP_LONGITUDE,           /**< Media group ID for the longitude*/
172         MEDIA_CONTENT_GROUP_LATITUDE,            /**< Media group ID for the latitude*/
173         MEDIA_CONTENT_GROUP_ALTITUDE,            /**< Media group ID for the altitude*/
174         MEDIA_CONTENT_GROUP_BURST_IMAGE,         /**< Media group ID for the burst shot (Deprecated since 4.0)*/
175         MEDIA_CONTENT_GROUP_RATING,              /**< Media group ID for a rating*/
176         MEDIA_CONTENT_GROUP_AUTHOR,              /**< Media group ID for an author (Deprecated since 4.0)*/
177         MEDIA_CONTENT_GROUP_PROVIDER,            /**< Media group ID for a provider (Deprecated since 4.0)*/
178         MEDIA_CONTENT_GROUP_CONTENT_NAME,        /**< Media group ID for the content name (Deprecated since 4.0)*/
179         MEDIA_CONTENT_GROUP_CATEGORY,            /**< Media group ID for a category (Deprecated since 4.0)*/
180         MEDIA_CONTENT_GROUP_LOCATION_TAG,        /**< Media group ID for a location tag (Deprecated since 4.0)*/
181         MEDIA_CONTENT_GROUP_AGE_RATING,          /**< Media group ID for an age rating (Deprecated since 4.0)*/
182         MEDIA_CONTENT_GROUP_KEYWORD,             /**< Media group ID for a keyword (Deprecated since 4.0)*/
183         MEDIA_CONTENT_GROUP_WEATHER,             /**< Media group ID for the weather (Deprecated since 4.0)*/
184         MEDIA_CONTENT_GROUP_MAX                  /**< Invalid media group ID*/
185 } media_group_e;
186
187 /**
188  * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
189  * @brief The structure type for the Media info handle.
190  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
191  */
192 typedef struct media_info_s *media_info_h;
193
194 /**
195  * @ingroup CAPI_CONTENT_MEDIA_FOLDER_MODULE
196  * @brief The structure type for the Media folder handle.
197  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
198  */
199 typedef struct media_folder_s *media_folder_h;
200
201 /**
202  * @ingroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
203  * @brief The structure type for the Media playlist handle.
204  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
205  */
206 typedef struct media_playlist_s *media_playlist_h;
207
208 /**
209  * @ingroup CAPI_CONTENT_MEDIA_TAG_MODULE
210  * @brief The structure type for the Media tag handle.
211  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
212  */
213 typedef struct media_tag_s *media_tag_h;
214
215 /**
216  * @ingroup CAPI_CONTENT_MEDIA_BOOKMARK_MODULE
217  * @brief The structure type for the Media bookmark handle.
218  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
219  */
220 typedef struct media_bookmark_s *media_bookmark_h;
221
222 /**
223  * @ingroup CAPI_CONTENT_MEDIA_ALBUM_MODULE
224  * @brief The structure type for the Media album handle.
225  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
226  */
227 typedef struct media_album_s *media_album_h;
228
229 /**
230  * @ingroup CAPI_CONTENT_MEDIA_IMAGE_MODULE
231  * @brief The structure type for the Image metadata handle.
232  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
233  */
234 typedef struct image_meta_s *image_meta_h;
235
236 /**
237  * @ingroup CAPI_CONTENT_MEDIA_VIDEO_META_MODULE
238  * @brief The structure type for the Video metadata handle.
239  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
240  */
241 typedef struct video_meta_s *video_meta_h;
242
243 /**
244  * @ingroup CAPI_CONTENT_MEDIA_AUDIO_META_MODULE
245  * @brief The structure type for the Audio metadata handle.
246  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
247  */
248 typedef struct audio_meta_s *audio_meta_h;
249
250 /**
251  * @ingroup CAPI_CONTENT_MEDIA_FILTER_MODULE
252  * @brief The structure type for the Media filter handle.
253  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
254  */
255 typedef struct filter_s *filter_h;
256
257 /**
258  * @ingroup CAPI_CONTENT_MEDIA_STORAGE_MODULE
259  * @brief The structure type for the Media storage handle.
260  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
261  */
262 typedef void *media_storage_h;
263
264 /**
265  * @ingroup CAPI_CONTENT_MEDIA_FACE_MODULE
266  * @brief The structure type for the Media face handle.
267  * @since_tizen 3.0
268  */
269 typedef void *media_face_h;
270
271 /**
272  * @ingroup CAPI_CONTENT_MEDIA_CONTENT_MODULE
273  * @brief The structure type for the Media content noti handle.
274  * @since_tizen 3.0
275  */
276 typedef void *media_content_noti_h;
277
278 /**
279  * @ingroup CAPI_MEDIA_CONTENT_MODULE
280  * @brief Called when the media scanning is finished.
281  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
282  * @remarks The callback is called in a separate thread(not in the main loop).
283  *
284  * @param[in] error     The error code
285  * @param[in] user_data The user data passed from the foreach function
286  *
287  * @pre media_content_scan_folder().
288  * @see media_content_scan_folder()
289  */
290 typedef void (*media_scan_completed_cb)(media_content_error_e error, void * user_data);
291
292 /**
293  * @ingroup CAPI_MEDIA_CONTENT_MODULE
294  * @brief Called when the notification of the media DB change is subscribed.
295  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
296  *
297  * @remarks The callback is called in a separate thread(not in the main loop).
298  *
299  * @param[in] error       The error code
300  * @param[in] pid         The PID which publishes notification
301  * @param[in] update_item The update item of notification
302  * @param[in] update_type The update type of notification
303  * @param[in] media_type  The type of the media content (#media_content_type_e)
304  * @param[in] uuid        The UUID of media or directory, which is updated
305  * @param[in] path        The path of the media or directory
306  * @param[in] mime_type   The mime type of the media info
307  * @param[in] user_data   The user data passed from the foreach function
308  *
309  * @pre media_content_db_update_subscribe().
310  * @see media_content_db_update_subscribe()
311  */
312 typedef void (*media_content_db_update_cb)(
313                                 media_content_error_e error,
314                                 int pid,
315                                 media_content_db_update_item_type_e update_item,
316                                 media_content_db_update_type_e update_type,
317                                 media_content_type_e media_type,
318                                 char *uuid,
319                                 char *path,
320                                 char *mime_type,
321                                 void *user_data);
322
323
324 /**
325  * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
326  * @brief Called for every available media info.
327  * @details Iterates over a list of media info.
328  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
329  *
330  * @remarks To use the @a media outside this function, copy the handle with media_info_clone() function. \n
331  *                  The callback is called in the main loop.
332  *
333  * @param[in] media     The handle to the media info
334  * @param[in] user_data The user data passed from the foreach function
335  *
336  * @return @c true to continue with the next iteration of the loop,
337  *         otherwise @c false to break out of the loop
338  *
339  * @pre media_tag_foreach_media_from_db(), media_playlist_foreach_media_from_db(), media_genre_foreach_media_from_db(),
340  *      media_info_foreach_media_from_db(), media_folder_foreach_media_from_db() will invoke this function.
341  *
342  * @see media_info_clone()
343  * @see media_album_foreach_media_from_db()
344  * @see media_playlist_foreach_media_from_db()
345  * @see media_tag_foreach_media_from_db()
346  * @see media_info_foreach_media_from_db()
347  * @see media_folder_foreach_media_from_db()
348  */
349 typedef bool (*media_info_cb)(media_info_h media, void *user_data);
350
351
352 /**
353  * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
354  * @brief Called when media items are inserted completely.
355  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
356  *
357  * @remarks The callback is called in a separate thread(not in the main loop).
358  *
359  * @param[in] media     The handle to the media info
360  * @param[in] user_data The user data passed from the foreach function
361  *
362  * @pre media_info_insert_batch_to_db()
363  * @see media_info_insert_batch_to_db()
364  */
365 typedef void (*media_insert_completed_cb)(media_content_error_e error, void * user_data);
366
367
368 /**
369  * @deprecated Deprecated since 4.0.
370  * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
371  * @brief Called when the burst shot is inserted completely.
372  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
373  *
374  * @remarks The callback is called in a separate thread(not in the main loop).
375  *
376  * @param[in] media     The handle to the media info
377  * @param[in] user_data The user data passed from the foreach function
378  *
379  * @pre media_info_insert_burst_shot_to_db()
380  * @see media_info_insert_burst_shot_to_db()
381  *
382  */
383 typedef void (*media_insert_burst_shot_completed_cb)(media_content_error_e error, void * user_data);
384
385
386 /**
387  * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
388  * @brief Called when creating a thumbnail image.
389  * @details This callback is called for completion of generating the thumbnail image.
390  *         The following error codes can be delivered. \n
391  *         #MEDIA_CONTENT_ERROR_NONE, \n
392  *         #MEDIA_CONTENT_ERROR_INVALID_PARAMETER, \n
393  *         #MEDIA_CONTENT_ERROR_INVALID_OPERATION, \n
394  *         #MEDIA_CONTENT_ERROR_PERMISSION_DENIED, \n
395  *         #MEDIA_CONTENT_ERROR_DB_FAILED, \n
396  *         #MEDIA_CONTENT_ERROR_UNSUPPORTED_CONTENT
397  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
398  *
399  * @remarks The callback is called in a separate thread(not in the main loop).
400  *
401  * @param[in] error     The error code
402  * @param[in] path      The path of the thumbnail which is generated
403  * @param[in] user_data The user data passed from the foreach function
404  *
405  * @pre media_info_create_thumbnail()
406  * @see media_info_create_thumbnail()
407  */
408 typedef void (*media_thumbnail_completed_cb)(media_content_error_e error, const char *path, void *user_data);
409
410 /**
411  * @ingroup CAPI_CONTENT_MEDIA_FACE_DETECTION_MODULE
412  * @brief Called when face detection on the image is completed.
413  *
414  * @details The following error codes can be delivered. \n
415  *         #MEDIA_CONTENT_ERROR_NONE, \n
416  *         #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, \n
417  *         #MEDIA_CONTENT_ERROR_INVALID_OPERATION, \n
418  *         #MEDIA_CONTENT_ERROR_DB_FAILED, \n
419  *         #MEDIA_CONTENT_ERROR_DB_BUSY, \n
420  *         #MEDIA_CONTENT_ERROR_UNSUPPORTED_CONTENT
421  *
422  * @since_tizen 3.0
423  *
424  * @remarks The callback is called in a separate thread(not in the main loop).
425  *
426  * @param[in] error     The error code
427  * @param[in] face_count      The number of all detected faces
428  * @param[in] user_data The user data passed from the foreach function
429  *
430  * @pre media_info_start_face_detection()
431  * @see media_info_start_face_detection()
432  */
433 typedef void (*media_face_detection_completed_cb)(media_content_error_e error, const int face_count, void *user_data);
434
435
436 /**
437  * @ingroup CAPI_CONTENT_MEDIA_FOLDER_MODULE
438  * @brief Called for every available media folder.
439  * @details Iterates over a list of folders.
440  *
441  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
442  *
443  * @remarks To use the @a folder outside this function, copy the handle with the media_folder_clone() function. \n
444  *                  The callback is called in the main loop.
445  *
446  * @param[in] folder    The handle to the media folder
447  * @param[in] user_data The user data passed from the foreach function
448  *
449  * @return @c true to continue with the next iteration of the loop,
450  *         otherwise @c false to break out of the loop
451  *
452  * @pre media_folder_foreach_folder_from_db() will invoke this function.
453  * @see media_folder_clone()
454  * @see media_folder_foreach_folder_from_db()
455  */
456 typedef bool (*media_folder_cb)(media_folder_h folder, void *user_data);
457
458 /**
459  * @ingroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
460  * @brief Called for every playlist in the obtained list of playlists.
461  * @details Iterates over a playlist list.
462  *
463  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
464  *
465  * @remarks To use the @a playlist outside this function, copy the handle with the media_playlist_clone() function. \n
466  *                  The callback is called in the main loop.
467  *
468  * @param[in] playlist  The handle to the media playlist
469  * @param[in] user_data The user data passed from the foreach function
470  *
471  * @return @c true to continue with the next iteration of the loop,
472  *         otherwise @c false to break out of the loop
473  *
474  * @pre media_playlist_foreach_playlist_from_db() will invoke this function.
475  *
476  * @see media_playlist_clone()
477  * @see media_playlist_foreach_playlist_from_db()
478  */
479 typedef bool (*media_playlist_cb)(media_playlist_h playlist, void *user_data);
480
481 /**
482  * @ingroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
483  * @brief Called for every media info with playlist member ID in the obtained list of media info.
484  * @details Iterates over playlist members.
485  *
486  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
487  *
488  * @remarks To use the @a media outside this function, copy the handle with the media_info_clone() function. \n
489  *                  The callback is called in the main loop.
490  *
491  * @param[in] playlist_member_id The ID to member of the playlist
492  * @param[in] media              The handle to the media info
493  * @param[in] user_data          The user data passed from the foreach function
494  *
495  * @return @c true to continue with the next iteration of the loop,
496  *         otherwise @c false to break out of the loop
497  *
498  * @pre media_playlist_foreach_media_from_db() will invoke this function.
499  *
500  * @see media_info_clone()
501  * @see media_playlist_foreach_media_from_db()
502  */
503 typedef bool (*playlist_member_cb)(int playlist_member_id, media_info_h media, void *user_data);
504
505 /**
506  * @ingroup CAPI_CONTENT_MEDIA_TAG_MODULE
507  * @brief Called for every tag in the obtained list of tags.
508  * @details Iterates over a list of tags.
509  *
510  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
511  *
512  * @remarks To use the @a tag outside this function, copy the handle with the media_tag_clone() function. \n
513  *                  The callback is called in the main loop.
514  *
515  * @param[in] tag       The handle to the media tag
516  * @param[in] user_data The user data passed from the foreach function
517  *
518  * @return @c true to continue with the next iteration of the loop,
519  *         otherwise @c false to break out of the loop
520  *
521  * @pre media_tag_foreach_tag_from_db(), media_info_foreach_tag_from_db() will invoke this function.
522  *
523  * @see media_tag_clone()
524  * @see media_tag_foreach_tag_from_db()
525  * @see media_info_foreach_tag_from_db()
526  */
527 typedef bool (*media_tag_cb)(media_tag_h tag, void *user_data);
528
529 /**
530  * @ingroup CAPI_CONTENT_MEDIA_BOOKMARK_MODULE
531  * @brief Called for every bookmark in the obtained list of bookmarks.
532  * @details Iterates over a bookmark list.
533  *
534  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
535  *
536  * @remarks To use the @a bookmark outside this function, copy the handle with the media_bookmark_clone() function. \n
537  *                  The callback is called in the main loop.
538  *
539  * @param[in] bookmark  The handle to the video bookmark
540  * @param[in] user_data The user data passed from the foreach function
541  *
542  * @return @c true to continue with the next iteration of the loop,
543  *         otherwise @c false to break out of the loop
544  *
545  * @pre media_info_foreach_bookmark_from_db() will invoke this function.
546  * @see media_info_foreach_bookmark_from_db()
547  */
548 typedef bool (*media_bookmark_cb)(media_bookmark_h bookmark, void *user_data);
549
550 /**
551  * @ingroup CAPI_CONTENT_MEDIA_ALBUM_MODULE
552  * @brief Called for every album in the obtained list of groups.
553  * @details Iterates over an album list.
554  *
555  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
556  *
557  * @remarks To use the @a album outside this function, copy the handle with the media_album_clone() function. \n
558  *                  The callback is called in the main loop.
559  *
560  * @param[in] album     The handle to the media album
561  * @param[in] user_data The user data passed from the foreach function
562  *
563  * @return @c true to continue with the next iteration of the loop,
564  *         otherwise @c false to break out of the loop
565  *
566  * @pre media_album_foreach_album_from_db() will invoke this function.
567  *
568  * @see media_album_clone()
569  * @see media_album_foreach_album_from_db()
570  */
571 typedef bool (*media_album_cb)(media_album_h album, void *user_data);
572
573 /**
574  * @ingroup CAPI_CONTENT_MEDIA_GROUP_MODULE
575  * @brief Called for every group in the obtained list of groups.
576  * @details Iterates over a media group list.
577  *
578  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
579  *
580  * @remarks You should not free @a group_name returned by this function. \n
581  *                  The callback is called in the main loop.
582  *
583  * @param[in] group_name The name of the media group
584  * @param[in] user_data  The user data passed from the foreach function
585  *
586  * @return @c true to continue with the next iteration of the loop,
587  *         otherwise @c false to break out of the loop
588  *
589  * @pre media_group_foreach_group_from_db() will invoke this function.
590  * @see media_group_foreach_group_from_db()
591  */
592 typedef bool (*media_group_cb)(const char *group_name, void *user_data);
593
594 /**
595  * @ingroup CAPI_CONTENT_MEDIA_STORAGE_MODULE
596  * @brief Called for every storage in the obtained list of storages.
597  * @details Iterates over a media storage list.
598  *
599  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
600  *
601  * @remarks You should not destroy @a storage returned by this function. \n
602  *                  The callback is called in the main loop.
603  *
604  * @param[in] storage     The handle of the media storage
605  * @param[in] user_data  The user data passed from the foreach function
606  *
607  * @return @c true to continue with the next iteration of the loop,
608  *         otherwise @c false to break out of the loop
609  *
610  * @pre media_storage_foreach_storage_from_db() will invoke this function.
611  * @see media_storage_foreach_storage_from_db()
612  */
613 typedef bool (*media_storage_cb)(media_storage_h storage, void *user_data);
614
615 /**
616  * @ingroup CAPI_CONTENT_MEDIA_FACE_MODULE
617  * @brief Called for every face in the obtained list of face.
618  * @details Iterates over a media face list.
619  *
620  * @since_tizen 3.0
621  *
622  * @remarks You should not destroy @a face returned by this function. \n
623  *                  The callback is called in the main loop.
624  *
625  * @param[in] face     The handle of the media face
626  * @param[in] user_data  The user data passed from the foreach function
627  *
628  * @return @c true to continue with the next iteration of the loop,
629  *         otherwise @c false to break out of the loop
630  *
631  * @pre media_info_foreach_face_from_db() will invoke this function.
632  * @see media_info_foreach_face_from_db()
633  */
634 typedef bool (*media_face_cb)(media_face_h face, void *user_data);
635
636 /**
637  * @}
638  */
639
640 /**
641  * @addtogroup CAPI_CONTENT_MEDIA_FILTER_MODULE
642  * @{
643  */
644
645  /**
646  * @brief Media ID
647  * @details You can use above define to set the condition of media filter and order keyword.
648  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
649  *
650  */
651 #define MEDIA_ID "MEDIA_ID"
652
653 /**
654  * @brief Media full path
655  * @details You can use above define to set the condition of media filter and order keyword.
656  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
657  *
658  */
659 #define MEDIA_PATH "MEDIA_PATH"
660
661 /**
662  * @brief The file name including the extension
663  * @details You can use above define to set the condition of media filter and order keyword.
664  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
665  *
666  */
667 #define MEDIA_DISPLAY_NAME "MEDIA_DISPLAY_NAME"
668
669 /**
670  * @brief Media type
671  * @details There are 5 media types:\n
672  *               0-image, 1-video, 2-sound, 3-music, 4-other\n
673  *               You can use above define to set the condition of media filter and order keyword.
674  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
675  *
676  */
677 #define MEDIA_TYPE "MEDIA_TYPE"
678
679 /**
680  * @brief Media MIME type
681  * @details You can use above define to set the condition of media filter and order keyword.
682  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
683  *
684  */
685 #define MEDIA_MIME_TYPE "MEDIA_MIME_TYPE"
686
687
688 /**
689  * @brief Media file size
690  * @details You can use above define to set the condition of media filter and order keyword.
691  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
692  *
693  */
694 #define MEDIA_SIZE "MEDIA_SIZE"
695
696 /**
697  * @brief The time that content file was first added to media database
698  * @details You can use above define to set the condition of media filter and order keyword.
699  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
700  *
701  */
702 #define MEDIA_ADDED_TIME "MEDIA_ADDED_TIME"
703
704 /**
705  * @brief The last modification time provided by the file system
706  * @details You can use above define to set the condition of media filter and order keyword.
707  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
708  *
709  */
710 #define MEDIA_MODIFIED_TIME "MEDIA_MODIFIED_TIME"
711
712 /**
713  * @brief  Media created time
714  * @details You can use above define to set the condition of media filter and order keyword.
715  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
716  *
717  */
718 #define MEDIA_TIMELINE "MEDIA_TIMELINE"
719
720 /**
721  * @brief Media thumbnail path
722  * @details You can use above define to set the condition of media filter and order keyword.
723  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
724  *
725  */
726 #define MEDIA_THUMBNAIL_PATH "MEDIA_THUMBNAIL_PATH"
727
728 /**
729  * @brief Media title get from tag or file name
730  * @details You can use above define to set the condition of media filter and order keyword.
731  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
732  *
733  */
734 #define MEDIA_TITLE "MEDIA_TITLE"
735
736 /**
737  * @brief Media album name
738  * @details You can use above define to set the condition of media filter and order keyword.
739  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
740  *
741  */
742 #define MEDIA_ALBUM "MEDIA_ALBUM"
743
744 /**
745  * @brief Media artist
746  * @details You can use above define to set the condition of media filter and order keyword.
747  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
748  *
749  */
750 #define MEDIA_ARTIST "MEDIA_ARTIST"
751
752 /**
753  * @brief Media album artist
754  * @details You can use above define to set the condition of media filter and order keyword.
755  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
756  *
757  */
758 #define MEDIA_ALBUM_ARTIST "MEDIA_ALBUM_ARTIST"
759
760 /**
761  * @brief Media genre
762  * @details You can use above define to set the condition of media filter and order keyword.
763  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
764  *
765  */
766 #define MEDIA_GENRE "MEDIA_GENRE"
767
768 /**
769  * @brief Media composer
770  * @details You can use above define to set the condition of media filter and order keyword.
771  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
772  *
773  */
774 #define MEDIA_COMPOSER "MEDIA_COMPOSER"
775
776 /**
777  * @brief Media year
778  * @details You can use above define to set the condition of media filter and order keyword.
779  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
780  *
781  */
782 #define MEDIA_YEAR "MEDIA_YEAR"
783
784 /**
785  * @brief Media recorded date
786  * @details You can use above define to set the condition of media filter and order keyword.
787  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
788  *
789  */
790 #define MEDIA_RECORDED_DATE "MEDIA_RECORDED_DATE"
791
792 /**
793  * @brief Media copyright
794  * @details You can use above define to set the condition of media filter and order keyword.
795  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
796  *
797  */
798 #define MEDIA_COPYRIGHT "MEDIA_COPYRIGHT"
799
800 /**
801  * @brief Media track number
802  * @details You can use above define to set the condition of media filter and order keyword.
803  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
804  *
805  */
806 #define MEDIA_TRACK_NUM "MEDIA_TRACK_NUM"
807
808 /**
809  * @brief Media description
810  * @details You can use above define to set the condition of media filter and order keyword.
811  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
812  *
813  */
814 #define MEDIA_DESCRIPTION "MEDIA_DESCRIPTION"
815
816 /**
817  * @brief Media bitrate
818  * @details You can use above define to set the condition of media filter and order keyword.
819  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
820  *
821  */
822 #define MEDIA_BITRATE "MEDIA_BITRATE"
823
824 /**
825  * @brief Media bit per sample
826  * @details You can use above define to set the condition of media filter and order keyword.
827  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
828  *
829  */
830 #define MEDIA_BITPERSAMPLE "MEDIA_BITPERSAMPLE"
831
832 /**
833  * @brief Media sample rate
834  * @details You can use above define to set the condition of media filter and order keyword.
835  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
836  *
837  */
838 #define MEDIA_SAMPLERATE "MEDIA_SAMPLERATE"
839
840 /**
841  * @brief Media channel
842  * @details You can use above define to set the condition of media filter and order keyword.
843  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
844  *
845  */
846 #define MEDIA_CHANNEL "MEDIA_CHANNEL"
847
848 /**
849  * @brief Media duration
850  * @details You can use above define to set the condition of media filter and order keyword.
851  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
852  *
853  */
854 #define MEDIA_DURATION "MEDIA_DURATION"
855
856 /**
857  * @brief Media longitude
858  * @details You can use above define to set the condition of media filter and order keyword.
859  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
860  *
861  */
862 #define MEDIA_LONGITUDE "MEDIA_LONGITUDE"
863
864 /**
865  * @brief Media latitude
866  * @details You can use above define to set the condition of media filter and order keyword.
867  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
868  *
869  */
870 #define MEDIA_LATITUDE "MEDIA_LATITUDE"
871
872 /**
873  * @brief Media altitude
874  * @details You can use above define to set the condition of media filter and order keyword.
875  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
876  *
877  */
878 #define MEDIA_ALTITUDE "MEDIA_ALTITUDE"
879
880 /**
881  * @brief Media width
882  * @details You can use above define to set the condition of media filter and order keyword.
883  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
884  *
885  */
886 #define MEDIA_WIDTH "MEDIA_WIDTH"
887
888 /**
889  * @brief Media height
890  * @details You can use above define to set the condition of media filter and order keyword.
891  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
892  *
893  */
894 #define MEDIA_HEIGHT "MEDIA_HEIGHT"
895
896 /**
897  * @brief Media datetaken
898  * @details You can use above define to set the condition of media filter and order keyword.
899  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
900  *
901  */
902 #define MEDIA_DATETAKEN "MEDIA_DATETAKEN"
903
904 /**
905  * @brief Media orientation
906  * @details You can use above define to set the condition of media filter and order keyword.
907  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
908  *
909  */
910 #define MEDIA_ORIENTATION "MEDIA_ORIENTATION"
911
912 /**
913  * @deprecated Deprecated since 4.0.
914  * @brief Media burst ID
915  * @details You can use above define to set the condition of media filter and order keyword.
916  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
917  *
918  */
919 #define MEDIA_BURST_ID "BURST_ID"
920
921 /**
922  * @deprecated Deprecated since 4.0.
923  * @brief Media playedcount
924  * @details You can use above define to set the condition of media filter and order keyword.
925  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
926  *
927  */
928 #define MEDIA_PLAYED_COUNT "MEDIA_PLAYED_COUNT"
929
930 /**
931  * @deprecated Deprecated since 4.0.
932  * @brief Media last played time
933  * @details You can use above define to set the condition of media filter and order keyword.
934  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
935  *
936  */
937 #define MEDIA_LAST_PLAYED_TIME "MEDIA_LAST_PLAYED_TIME"
938
939 /**
940  * @deprecated Deprecated since 4.0.
941  * @brief Media last played position of file
942  * @details You can use above define to set the condition of media filter and order keyword.
943  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
944  *
945  */
946 #define MEDIA_LAST_PLAYED_POSITION "MEDIA_LAST_PLAYED_POSITION"
947
948 /**
949  * @brief Media rating
950  * @details You can use above define to set the condition of media filter and order keyword.
951  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
952  *
953  */
954 #define MEDIA_RATING "MEDIA_RATING"
955
956 /**
957  * @brief The time to register favourite
958  * @details You can use above define to set the condition of media filter and order keyword.
959  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
960  *
961  */
962 #define MEDIA_FAVOURITE "MEDIA_FAVOURITE"
963
964 /**
965  * @deprecated Deprecated since 4.0.
966  * @brief Media author
967  * @details You can use above define to set the condition of media filter and order keyword.
968  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
969  *
970  */
971 #define MEDIA_AUTHOR "MEDIA_AUTHOR"
972
973 /**
974  * @deprecated Deprecated since 4.0.
975  * @brief Media provider
976  * @details You can use above define to set the condition of media filter and order keyword.
977  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
978  *
979  */
980 #define MEDIA_PROVIDER "MEDIA_PROVIDER"
981
982 /**
983  * @deprecated Deprecated since 4.0.
984  * @brief Media content name
985  * @details You can use above define to set the condition of media filter and order keyword.
986  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
987  *
988  */
989 #define MEDIA_CONTENT_NAME "MEDIA_CONTENT_NAME"
990
991 /**
992  * @deprecated Deprecated since 4.0.
993  * @brief Media category
994  * @details You can use above define to set the condition of media filter and order keyword.
995  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
996  *
997  */
998 #define MEDIA_CATEGORY "MEDIA_CATEGORY"
999
1000 /**
1001  * @deprecated Deprecated since 4.0.
1002  * @brief Media location tag
1003  * @details You can use above define to set the condition of media filter and order keyword.
1004  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1005  *
1006  */
1007 #define MEDIA_LOCATION_TAG "MEDIA_LOCATION_TAG"
1008
1009 /**
1010  * @deprecated Deprecated since 4.0.
1011  * @brief Media age rating
1012  * @details You can use above define to set the condition of media filter and order keyword.
1013  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1014  *
1015  */
1016 #define MEDIA_AGE_RATING "MEDIA_AGE_RATING"
1017
1018 /**
1019  * @deprecated Deprecated since 4.0.
1020  * @brief Media keyword
1021  * @details You can use above define to set the condition of media filter and order keyword.
1022  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1023  *
1024  */
1025 #define MEDIA_KEYWORD "MEDIA_KEYWORD"
1026
1027 /**
1028  * @deprecated Deprecated since 4.0.
1029  * @brief Media weather
1030  * @details You can use above define to set the condition of media filter and order keyword.
1031  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1032  *
1033  */
1034 #define MEDIA_WEATHER "MEDIA_WEATHER"
1035
1036 /**
1037  * @brief Is DRM
1038  * @details There are 2 types:\n
1039  *               0-not drm, 1-drm\n
1040  *               You can use above define to set the condition of media filter and order keyword.
1041  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1042  *
1043  */
1044 #define MEDIA_IS_DRM "MEDIA_IS_DRM"
1045
1046 /**
1047  * @brief Media storage
1048  * @details There are 2 types:\n
1049  *               0-internal storage, 1-external storage\n
1050  *               You can use above define to set the condition of media filter and order keyword.
1051  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1052  *
1053  */
1054 #define MEDIA_STORAGE_TYPE "MEDIA_STORAGE_TYPE"
1055
1056 /**
1057  * @brief Media exposure time
1058  * @details You can use above define to set the condition of media filter and order keyword.
1059  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1060  *
1061  */
1062 #define MEDIA_EXPOSURE_TIME "MEDIA_EXPOSURE_TIME"
1063
1064 /**
1065  * @brief Media fnumber
1066  * @details You can use above define to set the condition of media filter and order keyword.
1067  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1068  *
1069  */
1070 #define MEDIA_FNUMBER "MEDIA_FNUMBER"
1071
1072 /**
1073  * @brief Media ISO
1074  * @details You can use above define to set the condition of media filter and order keyword.
1075  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1076  *
1077  */
1078 #define MEDIA_ISO "MEDIA_ISO"
1079
1080 /**
1081  * @brief Media model
1082  * @details You can use above define to set the condition of media filter and order keyword.
1083  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1084  *
1085  */
1086 #define MEDIA_MODEL "MEDIA_MODEL"
1087
1088 /**
1089  * @brief Media file name pinyin
1090  * @details You can use above define to set the condition of media filter and order keyword.
1091  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1092  *
1093  */
1094 #define MEDIA_FILE_NAME_PINYIN "MEDIA_FILE_NAME_PINYIN"
1095
1096 /**
1097  * @brief Media title pinyin
1098  * @details You can use above define to set the condition of media filter and order keyword.
1099  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1100  *
1101  */
1102 #define MEDIA_TITLE_PINYIN "MEDIA_TITLE_PINYIN"
1103
1104 /**
1105  * @brief Media album pinyin
1106  * @details You can use above define to set the condition of media filter and order keyword.
1107  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1108  *
1109  */
1110 #define MEDIA_ALBUM_PINYIN "MEDIA_ALBUM_PINYIN"
1111
1112 /**
1113  * @brief Media artist pinyin
1114  * @details You can use above define to set the condition of media filter and order keyword.
1115  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1116  *
1117  */
1118 #define MEDIA_ARTIST_PINYIN "MEDIA_ARTIST_PINYIN"
1119
1120 /**
1121  * @brief Media album artist pinyin
1122  * @details You can use above define to set the condition of media filter and order keyword.
1123  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1124  *
1125  */
1126 #define MEDIA_ALBUM_ARTIST_PINYIN "MEDIA_ALBUM_ARTIST_PINYIN"
1127
1128 /**
1129  * @brief Media genre pinyin
1130  * @details You can use above define to set the condition of media filter and order keyword.
1131  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1132  *
1133  */
1134 #define MEDIA_GENRE_PINYIN "MEDIA_GENRE_PINYIN"
1135
1136 /**
1137  * @brief Media composer pinyin
1138  * @details You can use above define to set the condition of media filter and order keyword.
1139  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1140  *
1141  */
1142 #define MEDIA_COMPOSER_PINYIN "MEDIA_COMPOSER_PINYIN"
1143
1144 /**
1145  * @brief Media copyright pinyin
1146  * @details You can use above define to set the condition of media filter and order keyword.
1147  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1148  *
1149  */
1150 #define MEDIA_COPYRIGHT_PINYIN "MEDIA_COPYRIGHT_PINYIN"
1151
1152 /**
1153  * @brief Media description pinyin
1154  * @details You can use above define to set the condition of media filter and order keyword.
1155  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1156  *
1157  */
1158 #define MEDIA_DESCRIPTION_PINYIN "MEDIA_DESCRIPTION_PINYIN"
1159
1160 /**
1161  * @deprecated Deprecated since 4.0.
1162  * @brief Media author pinyin
1163  * @details You can use above define to set the condition of media filter and order keyword.
1164  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1165  *
1166  */
1167 #define MEDIA_AUTHOR_PINYIN "MEDIA_AUTHOR_PINYIN"
1168
1169 /**
1170  * @deprecated Deprecated since 4.0.
1171  * @brief Media provider pinyin
1172  * @details You can use above define to set the condition of media filter and order keyword.
1173  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1174  *
1175  */
1176 #define MEDIA_PROVIDER_PINYIN "MEDIA_PROVIDER_PINYIN"
1177
1178 /**
1179  * @deprecated Deprecated since 4.0.
1180  * @brief Media content name pinyin
1181  * @details You can use above define to set the condition of media filter and order keyword.
1182  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1183  *
1184  */
1185 #define MEDIA_CONTENT_NAME_PINYIN "MEDIA_CONTENT_NAME_PINYIN"
1186
1187 /**
1188  * @deprecated Deprecated since 4.0.
1189  * @brief Media category pinyin
1190  * @details You can use above define to set the condition of media filter and order keyword.
1191  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1192  *
1193  */
1194 #define MEDIA_CATEGORY_PINYIN "MEDIA_CATEGORY_PINYIN"
1195
1196 /**
1197  * @deprecated Deprecated since 4.0.
1198  * @brief Media location tag pinyin
1199  * @details You can use above define to set the condition of media filter and order keyword.
1200  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1201  *
1202  */
1203 #define MEDIA_LOCATION_TAG_PINYIN "MEDIA_LOCATION_TAG_PINYIN"
1204
1205 /**
1206  * @deprecated Deprecated since 4.0.
1207  * @brief Media age rating pinyin
1208  * @details You can use above define to set the condition of media filter and order keyword.
1209  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1210  *
1211  */
1212 #define MEDIA_AGE_RATING_PINYIN "MEDIA_AGE_RATING_PINYIN"
1213
1214 /**
1215  * @deprecated Deprecated since 4.0.
1216  * @brief Media keyword pinyin
1217  * @details You can use above define to set the condition of media filter and order keyword.
1218  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1219  *
1220  */
1221 #define MEDIA_KEYWORD_PINYIN "MEDIA_KEYWORD_PINYIN"
1222
1223 /**
1224  * @brief Virtual Reality content
1225  * @details You can use above define to set the condition of media filter and order keyword.
1226  * @since_tizen 3.0
1227  *
1228  */
1229 #define MEDIA_360 "MEDIA_360"
1230
1231  /**
1232  * @brief Folder ID
1233  * @details You can use above define to set the condition of folder filter and order keyword.
1234  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1235  */
1236 #define FOLDER_ID "FOLDER_ID"
1237
1238 /**
1239  * @brief Folder full path
1240  * @details You can use above define to set the condition of folder filter and order keyword.
1241  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1242  */
1243 #define FOLDER_PATH "FOLDER_PATH"
1244
1245 /**
1246  * @brief Folder base name
1247  * @details You can use above define to set the condition of folder filter and order keyword.
1248  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1249  */
1250 #define FOLDER_NAME "FOLDER_NAME"
1251
1252 /**
1253  * @deprecated Deprecated since 4.0.
1254  * @brief Folder modified time
1255  * @details You can use above define to set the condition of folder filter and order keyword.
1256  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1257  */
1258 #define FOLDER_MODIFIED_TIME "FOLDER_MODIFIED_TIME"
1259
1260 /**
1261  * @brief Folder storage
1262  * @details There are 2 types:\n
1263  *               0-internal storage, 1-external storage\n
1264  *               You can use above define to set the condition of folder filter and order keyword.
1265  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1266  */
1267 #define FOLDER_STORAGE_TYPE "FOLDER_STORAGE_TYPE"
1268
1269 /**
1270  * @brief Folder base name pinyin
1271  * @details You can use above define to set the condition of folder filter and order keyword.
1272  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1273  */
1274 #define FOLDER_NAME_PINYIN "FOLDER_NAME_PINYIN"
1275
1276 /**
1277  * @deprecated Deprecated since 4.0.
1278  * @brief Folder order info
1279  * @details You can use above define to set the condition of folder filter and order keyword.
1280  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1281  */
1282 #define FOLDER_ORDER "FOLDER_ORDER"
1283
1284 /**
1285  * @deprecated Deprecated since 4.0.
1286  * @brief Parent folder id
1287  * @details You can use above define to set the condition of folder filter and order keyword.
1288  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1289  */
1290 #define FOLDER_PARENT_FOLDER_ID "FOLDER_PARENT_FOLDER_ID"
1291
1292 /**
1293  * @brief Playlist name
1294  * @details You can use above define to set the condition of playlist filter and order keyword.
1295  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1296  */
1297 #define PLAYLIST_NAME "PLAYLIST_NAME"
1298
1299 /**
1300  * @brief Playlist id
1301  * @details You can use above define to set the condition of playlist filter and order keyword.
1302  * @since_tizen 4.0
1303  */
1304 #define MEDIA_PLAYLIST_ID "PLAYLIST_ID"
1305
1306 /**
1307  * @brief Playlist name
1308  * @details You can use above define to set the condition of playlist filter and order keyword.
1309  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1310  */
1311 #define PLAYLIST_MEMBER_ORDER "PLAYLIST_MEMBER_ORDER"
1312
1313 /**
1314  * @brief Media count in playlist
1315  * @details You can use above define to set the condition of playlist filter and order keyword.
1316  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1317  */
1318 #define PLAYLIST_MEDIA_COUNT "PLAYLIST_MEDIA_COUNT"
1319
1320 /**
1321  * @brief Tag name
1322  * @details You can use above define to set the condition of tag filter and order keyword.
1323  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1324  */
1325 #define TAG_NAME "TAG_NAME"
1326
1327 /**
1328  * @brief Tag id
1329  * @details You can use above define to set the condition of tag filter and order keyword.
1330  * @since_tizen 4.0
1331  */
1332 #define MEDIA_TAG_ID "TAG_ID"
1333
1334 /**
1335  * @brief Media count in tag
1336  * @details You can use above define to set the condition of tag filter and order keyword.
1337  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1338  */
1339 #define TAG_MEDIA_COUNT "TAG_MEDIA_COUNT"
1340
1341 /**
1342  * @brief Bookmark marked time
1343  * @details You can use above define to set the condition of bookmark filter and order keyword.
1344  * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1345  */
1346 #define BOOKMARK_MARKED_TIME "BOOKMARK_MARKED_TIME"
1347
1348 /**
1349  * @brief Bookmark id
1350  * @details You can use above define to set the condition of bookmark filter and order keyword.
1351  * @since_tizen 4.0
1352  */
1353 #define MEDIA_BOOKMARK_ID "BOOKMARK_ID"
1354
1355 /**
1356  * @brief Bookmark name
1357  * @details You can use above define to set the condition of bookmark filter and order keyword.
1358  * @since_tizen 4.0
1359  */
1360 #define BOOKMARK_NAME "BOOKMARK_NAME"
1361
1362 /**
1363  * @brief Storage ID
1364  * @details You can use above define to set the condition of storage filter and order keyword.
1365  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1366  */
1367 #define MEDIA_STORAGE_ID                                        "STORAGE_ID"
1368
1369 /**
1370  * @brief Storage path
1371  * @details You can use above define to set the condition of storage filter and order keyword.
1372  * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
1373  */
1374 #define MEDIA_STORAGE_PATH                              "STORAGE_PATH"
1375
1376 /**
1377  * @brief Face tag
1378  * @details You can use above define to set the condition of face filter and order keyword.
1379  * @since_tizen 3.0
1380  */
1381 #define MEDIA_FACE_TAG  "MEDIA_FACE_TAG"
1382
1383 /**
1384  * @brief Face id
1385  * @details You can use above define to set the condition of face filter and order keyword.
1386  * @since_tizen 4.0
1387  */
1388 #define MEDIA_FACE_ID   "MEDIA_FACE_ID"
1389
1390 /**
1391  * @}
1392  */
1393
1394
1395 #ifdef __cplusplus
1396 }
1397 #endif /* __cplusplus */
1398
1399
1400 #endif /*__TIZEN_MEDIA_CONTENT_TYPE_H__*/