ret = legacy_camera_attr_set_hdr_mode(muse_camera->camera_handle, \
(camera_attr_hdr_mode_e)job->value);
break;
+ case MUSE_CAMERA_API_SET_PREVIEW_CB:
+ ret = legacy_camera_set_preview_cb(muse_camera->camera_handle, \
+ (camera_preview_cb)_camera_dispatcher_preview_cb,
+ (void *)muse_camera->module);
+
+ if (ret == CAMERA_ERROR_NONE)
+ SET_PREVIEW_CB_TYPE(muse_camera, PREVIEW_CB_TYPE_USER);
+ break;
+ case MUSE_CAMERA_API_UNSET_PREVIEW_CB:
+ UNSET_PREVIEW_CB_TYPE(muse_camera, PREVIEW_CB_TYPE_USER);
+ if (CHECK_PREVIEW_CB(muse_camera, PREVIEW_CB_TYPE_EVAS))
+ LOGW("Preview callback for evas surface is remained.");
+ else
+ ret = legacy_camera_unset_preview_cb(muse_camera->camera_handle);
+ break;
+ case MUSE_CAMERA_API_SET_MEDIA_PACKET_PREVIEW_CB:
+ ret = legacy_camera_set_media_packet_preview_cb(muse_camera->camera_handle,
+ (camera_preview_cb)_camera_dispatcher_preview_cb,
+ (void *)muse_camera->module);
+ break;
+ case MUSE_CAMERA_API_UNSET_MEDIA_PACKET_PREVIEW_CB:
+ ret = legacy_camera_unset_media_packet_preview_cb(muse_camera->camera_handle);
+ break;
default:
LOGE("unhandled task - api %d", job->api);
goto _PROCESS_DONE;
int camera_dispatcher_set_preview_cb(muse_module_h module)
{
- int ret = CAMERA_ERROR_NONE;
muse_camera_handle_s *muse_camera = NULL;
- muse_camera_api_e api = MUSE_CAMERA_API_SET_PREVIEW_CB;
- muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
muse_camera = (muse_camera_handle_s *)muse_server_ipc_get_handle(module);
LOGD("handle : %p", muse_camera);
- ret = legacy_camera_set_preview_cb(muse_camera->camera_handle,
- (camera_preview_cb)_camera_dispatcher_preview_cb,
- (void *)module);
-
- if (ret == CAMERA_ERROR_NONE)
- SET_PREVIEW_CB_TYPE(muse_camera, PREVIEW_CB_TYPE_USER);
-
- LOGD("ret : 0x%x", ret);
-
- muse_camera_msg_return(api, class, ret, module);
+ _camera_task_add_job(muse_camera, MUSE_CAMERA_API_SET_PREVIEW_CB,
+ MUSE_CAMERA_API_CLASS_IMMEDIATE, 0);
return MUSE_CAMERA_ERROR_NONE;
}
int camera_dispatcher_unset_preview_cb(muse_module_h module)
{
- int ret = CAMERA_ERROR_NONE;
muse_camera_handle_s *muse_camera = NULL;
- muse_camera_api_e api = MUSE_CAMERA_API_UNSET_PREVIEW_CB;
- muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
muse_camera = (muse_camera_handle_s *)muse_server_ipc_get_handle(module);
LOGD("handle : %p", muse_camera);
- UNSET_PREVIEW_CB_TYPE(muse_camera, PREVIEW_CB_TYPE_USER);
- if (CHECK_PREVIEW_CB(muse_camera, PREVIEW_CB_TYPE_EVAS))
- LOGD("Preview callback for evas surface is remained.");
- else
- ret = legacy_camera_unset_preview_cb(muse_camera->camera_handle);
-
- LOGD("ret : 0x%x", ret);
-
- muse_camera_msg_return(api, class, ret, module);
+ _camera_task_add_job(muse_camera, MUSE_CAMERA_API_UNSET_PREVIEW_CB,
+ MUSE_CAMERA_API_CLASS_IMMEDIATE, 0);
return MUSE_CAMERA_ERROR_NONE;
}
int camera_dispatcher_set_media_packet_preview_cb(muse_module_h module)
{
- int ret = CAMERA_ERROR_NONE;
muse_camera_handle_s *muse_camera = NULL;
- muse_camera_api_e api = MUSE_CAMERA_API_SET_MEDIA_PACKET_PREVIEW_CB;
- muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
muse_camera = (muse_camera_handle_s *)muse_server_ipc_get_handle(module);
LOGD("handle : %p", muse_camera);
- ret = legacy_camera_set_media_packet_preview_cb(muse_camera->camera_handle,
- (camera_preview_cb)_camera_dispatcher_preview_cb,
- (void *)module);
-
- LOGD("ret : 0x%x", ret);
-
- muse_camera_msg_return(api, class, ret, module);
+ _camera_task_add_job(muse_camera, MUSE_CAMERA_API_SET_MEDIA_PACKET_PREVIEW_CB,
+ MUSE_CAMERA_API_CLASS_IMMEDIATE, 0);
return MUSE_CAMERA_ERROR_NONE;
}
int camera_dispatcher_unset_media_packet_preview_cb(muse_module_h module)
{
- int ret = CAMERA_ERROR_NONE;
muse_camera_handle_s *muse_camera = NULL;
- muse_camera_api_e api = MUSE_CAMERA_API_UNSET_MEDIA_PACKET_PREVIEW_CB;
- muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
muse_camera = (muse_camera_handle_s *)muse_server_ipc_get_handle(module);
LOGD("handle : %p", muse_camera);
- ret = legacy_camera_unset_media_packet_preview_cb(muse_camera->camera_handle);
-
- LOGD("ret : 0x%x", ret);
-
- muse_camera_msg_return(api, class, ret, module);
+ _camera_task_add_job(muse_camera, MUSE_CAMERA_API_UNSET_MEDIA_PACKET_PREVIEW_CB,
+ MUSE_CAMERA_API_CLASS_IMMEDIATE, 0);
return MUSE_CAMERA_ERROR_NONE;
}