X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmedia_image.c;h=592a2a33a599efd2455c6d58d69c64831e03c5ac;hb=9d15701e2caada225fd93cd0b4b14fee53a9263d;hp=839a350a7fe518c36cdea29bdf88575940df2112;hpb=59f39a442bf46158273f0704511844e6716eef9a;p=platform%2Fcore%2Fapi%2Fmedia-content.git diff --git a/src/media_image.c b/src/media_image.c index 839a350..592a2a3 100755 --- a/src/media_image.c +++ b/src/media_image.c @@ -15,314 +15,155 @@ */ -#include -#include #include -#include - int image_meta_destroy(image_meta_h image) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_image = (image_meta_s*)image; - if(_image) - { - SAFE_FREE(_image->media_id); - SAFE_FREE(_image->date_taken); - SAFE_FREE(_image->burst_id); - SAFE_FREE(_image); - - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + + g_free(_image->media_id); + g_free(_image->date_taken); + g_free(_image->exposure_time); + g_free(_image->model); + g_free(_image); + + return MEDIA_CONTENT_ERROR_NONE; } int image_meta_clone(image_meta_h *dst, image_meta_h src) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_src = (image_meta_s*)src; - if(_src != NULL) - { - image_meta_s *_dst = (image_meta_s*)calloc(1, sizeof(image_meta_s)); - if(NULL == _dst) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - - if(STRING_VALID(_src->media_id)) - { - _dst->media_id = strdup(_src->media_id); - if(_dst->media_id == NULL) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - image_meta_destroy((image_meta_h)_dst); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - } - - if(STRING_VALID(_src->date_taken)) - { - _dst->date_taken = strdup(_src->date_taken); - if(_dst->date_taken == NULL) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - image_meta_destroy((image_meta_h)_dst); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - } - - if(STRING_VALID(_src->burst_id)) - { - _dst->burst_id = strdup(_src->burst_id); - if(_dst->burst_id == NULL) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - image_meta_destroy((image_meta_h)_dst); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - } - - _dst->width = _src->width; - _dst->height = _src->height; - _dst->orientation = _src->orientation; - - *dst = (image_meta_h)_dst; - - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(dst); + content_retip_if_fail(src); + + image_meta_s *_dst = g_new0(image_meta_s, 1); + + _dst->media_id = g_strdup(_src->media_id); + _dst->date_taken = g_strdup(_src->date_taken); + _dst->exposure_time = g_strdup(_src->exposure_time); + _dst->model = g_strdup(_src->model); + _dst->fnumber = _src->fnumber; + _dst->iso = _src->iso; + _dst->width = _src->width; + _dst->height = _src->height; + _dst->orientation = _src->orientation; + + *dst = (image_meta_h)_dst; + + return MEDIA_CONTENT_ERROR_NONE; } int image_meta_get_media_id(image_meta_h image, char **media_id) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_image = (image_meta_s*)image; - if(_image && media_id) - { - if(STRING_VALID(_image->media_id)) - { - char *new_string = strdup(_image->media_id); - if(NULL == new_string) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - *media_id = new_string; - } - else - { - *media_id = NULL; - } - ret = MEDIA_CONTENT_ERROR_NONE; - - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + content_retip_if_fail(media_id); + *media_id = g_strdup(_image->media_id); + + return MEDIA_CONTENT_ERROR_NONE; } int image_meta_get_width(image_meta_h image, int *width) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_image = (image_meta_s*)image; - if(_image && width) - { - *width = _image->width; - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + content_retip_if_fail(width); + + *width = _image->width; + + return MEDIA_CONTENT_ERROR_NONE; } int image_meta_get_height(image_meta_h image, int *height) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_image = (image_meta_s*)image; - if(_image && height) - { - *height = _image->height; - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + content_retip_if_fail(height); + + *height = _image->height; + + return MEDIA_CONTENT_ERROR_NONE; } int image_meta_get_orientation(image_meta_h image, media_content_orientation_e* orientation) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_image = (image_meta_s*)image; - if(_image && orientation) - { - *orientation = _image->orientation; - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + content_retip_if_fail(orientation); + + *orientation = _image->orientation; + + return MEDIA_CONTENT_ERROR_NONE; } int image_meta_get_date_taken(image_meta_h image, char **date_taken) { - int ret = MEDIA_CONTENT_ERROR_NONE; image_meta_s *_image = (image_meta_s*)image; - if(_image && date_taken) - { - if(STRING_VALID(_image->date_taken)) - { - char *new_string = strdup(_image->date_taken); - if(NULL == new_string) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - *date_taken = new_string; - } - else - { - *date_taken = NULL; - } - - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; -} + content_retip_if_fail(image); + content_retip_if_fail(date_taken); + + *date_taken = g_strdup(_image->date_taken); -int image_meta_get_burst_id(image_meta_h image, char **burst_id) + return MEDIA_CONTENT_ERROR_NONE; +} +// LCOV_EXCL_START +int image_meta_get_exposure_time(image_meta_h image, char **exposure_time) { - int ret = MEDIA_CONTENT_ERROR_NONE; + content_warn("DEPRECATION WARNING: image_meta_get_exposure_time() is deprecated and will be removed from next release."); image_meta_s *_image = (image_meta_s*)image; - if(_image && burst_id) - { - if(STRING_VALID(_image->burst_id)) - { - *burst_id = strdup(_image->burst_id); - if(*burst_id == NULL) - { - media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY); - return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY; - } - } - else - { - *burst_id = NULL; - } - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + content_retip_if_fail(exposure_time); + + *exposure_time = g_strdup(_image->exposure_time); + + return MEDIA_CONTENT_ERROR_NONE; } -int image_meta_is_burst_shot(image_meta_h image, bool *is_burst_shot) +int image_meta_get_fnumber(image_meta_h image, double *fnumber) { - int ret = MEDIA_CONTENT_ERROR_NONE; + content_warn("DEPRECATION WARNING: image_meta_get_fnumber() is deprecated and will be removed from next release."); image_meta_s *_image = (image_meta_s*)image; - if(_image && is_burst_shot) - { - if(STRING_VALID(_image->burst_id)) - *is_burst_shot = true; - else - *is_burst_shot = false; - - ret = MEDIA_CONTENT_ERROR_NONE; - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; + content_retip_if_fail(image); + content_retip_if_fail(fnumber); + + *fnumber = _image->fnumber; + + return MEDIA_CONTENT_ERROR_NONE; } -int image_meta_set_orientation(image_meta_h image, media_content_orientation_e orientation) + +int image_meta_get_iso(image_meta_h image, int *iso) { - int ret = MEDIA_CONTENT_ERROR_NONE; + content_warn("DEPRECATION WARNING: image_meta_get_iso() is deprecated and will be removed from next release."); image_meta_s *_image = (image_meta_s*)image; - if(_image == NULL) - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - return MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - if((orientation < MEDIA_CONTENT_ORIENTATION_NOT_AVAILABLE) || (orientation > MEDIA_CONTENT_ORIENTATION_ROT_270)) - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - return MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } + content_retip_if_fail(image); + content_retip_if_fail(iso); - _image->orientation = orientation; + *iso = _image->iso; - return ret; + return MEDIA_CONTENT_ERROR_NONE; } -int image_meta_update_to_db(image_meta_h image) +int image_meta_get_model(image_meta_h image, char **model) { - int ret = MEDIA_CONTENT_ERROR_NONE; + content_warn("DEPRECATION WARNING: image_meta_get_model() is deprecated and will be removed from next release."); image_meta_s *_image = (image_meta_s*)image; - char *sql = NULL; - - if(_image != NULL && STRING_VALID(_image->media_id)) - { - sql = sqlite3_mprintf(UPDATE_IMAGE_META_FROM_MEDIA, _image->orientation, _image->media_id); - ret = _content_query_sql(sql); - sqlite3_free(sql); - } - else - { - media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); - ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; - } - - return ret; -} \ No newline at end of file + + content_retip_if_fail(image); + content_retip_if_fail(model); + + *model = g_strdup(_image->model); + + return MEDIA_CONTENT_ERROR_NONE; +} +// LCOV_EXCL_STOP \ No newline at end of file