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