Remove 3.0 deprecated API implementation
[platform/core/api/audio-io.git] / src / cpp / cpp_audio_io.cpp
index b3d12b7..309e73d 100644 (file)
@@ -18,7 +18,6 @@
 #include <new>
 
 #include "cpp_audio_io.h"
-#include <sound_manager_internal.h>
 #include "audio_io.h"
 #include "CAudioIODef.h"
 
 using namespace std;
 using namespace tizen_media_audio;
 
-
-/**
- * Defines Structures
- * type : struct
- * Name : audio_io_interrupted_cb_s
- * Declaration : Keeps user callback pointer and user data for delivering an interrupt event
- */
-typedef struct audio_io_interrupted_cb_s {
-    void* user_data;
-    audio_io_interrupted_cb onInterrupt;
-
-    audio_io_interrupted_cb_s() : user_data(NULL), onInterrupt(NULL)
-    {/* Empty Body */}
-}   audio_io_interrupted_cb_s;
-
 /**
  * Defines Structures
  * type : struct
@@ -83,7 +67,6 @@ typedef struct audio_io_state_changed_cb_s {
  */
 typedef struct audio_io_s {
     CAudioIO* audioIoHandle;
-    audio_io_interrupted_cb_s interrupt_callback;
     audio_io_stream_cb_s stream_callback;
     audio_io_state_changed_cb_s state_changed_callback;
 
@@ -328,17 +311,6 @@ static CAudioInfo __generate_audio_input_info(int sampleRate, audio_channel_e ch
     return CAudioInfo(sampleRate, dstChannel, dstSampleType, dstAudioType, -1);
 }
 
-static CAudioInfo __generate_audio_input_loopback_info(int sampleRate, audio_channel_e channel, audio_sample_type_e sample_type) {
-    CAudioInfo::EChannel dstChannel;
-    CAudioInfo::ESampleType dstSampleType;
-    CAudioInfo::EAudioType dstAudioType = CAudioInfo::EAudioType::AUDIO_IN_TYPE_LOOPBACK;
-
-    __convert_channel_2_audio_info_channel(channel, dstChannel);
-    __convert_sample_type_2_audio_info_sample_type(sample_type, dstSampleType);
-
-    return CAudioInfo(sampleRate, dstChannel, dstSampleType, dstAudioType, -1);
-}
-
 static CAudioInfo __generate_audio_output_info(int sampleRate, audio_channel_e channel, audio_sample_type_e sample_type, sound_type_e sound_type) {
     CAudioInfo::EChannel dstChannel;
     CAudioInfo::ESampleType dstSampleType;
@@ -351,29 +323,6 @@ static CAudioInfo __generate_audio_output_info(int sampleRate, audio_channel_e c
     return CAudioInfo(sampleRate, dstChannel, dstSampleType, dstAudioType, -1);
 }
 
-static audio_io_interrupted_code_e __convert_interrupted_code(IAudioSessionEventListener::EInterruptCode code) {
-    switch (code) {
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_COMPLETED:
-        return AUDIO_IO_INTERRUPTED_COMPLETED;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_CALL:
-        return AUDIO_IO_INTERRUPTED_BY_CALL;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_EARJACK_UNPLUG:
-        return AUDIO_IO_INTERRUPTED_BY_EARJACK_UNPLUG;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_RESOURCE_CONFLICT:
-        return AUDIO_IO_INTERRUPTED_BY_RESOURCE_CONFLICT;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_ALARM:
-        return AUDIO_IO_INTERRUPTED_BY_ALARM;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_EMERGENCY:
-        return AUDIO_IO_INTERRUPTED_BY_EMERGENCY;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_NOTIFICATION:
-        return AUDIO_IO_INTERRUPTED_BY_NOTIFICATION;
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_BY_MEDIA:
-    case IAudioSessionEventListener::EInterruptCode::INTERRUPT_MAX:
-    default:
-        return AUDIO_IO_INTERRUPTED_BY_MEDIA;
-    }
-}
-
 static void __handle_safe_free(audio_io_s* handle, void *obj, bool is_output) {
     VALID_POINTER_START(handle)
         SAFE_FINALIZE(handle->audioIoHandle);
@@ -436,32 +385,7 @@ int cpp_audio_in_create(int sample_rate, audio_channel_e channel, audio_sample_t
 }
 
 int cpp_audio_in_create_loopback(int sample_rate, audio_channel_e channel, audio_sample_type_e type , audio_in_h* input) {
-    audio_io_s* handle = NULL;
-    try {
-        if (input == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                  "Parameters are NULL input:%p", input);
-
-        __check_audio_param(sample_rate, channel, type);
-        CAudioInfo audioInfo = __generate_audio_input_loopback_info(sample_rate, channel, type);
-
-        handle = new audio_io_s;
-        handle->audioIoHandle = new CAudioInput(audioInfo);
-        handle->audioIoHandle->initialize();
-
-        *input = handle;
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        __handle_safe_free(handle, (void *)input, false);
-        return __convert_CAudioError(e);
-    } catch (const std::bad_alloc&) {
-        CAudioError e = CAudioError::EError::ERROR_OUT_OF_MEMORY;
-        AUDIO_IO_LOGE("Failed to allocate handle");
-        __handle_safe_free(handle, (void *)input, false);
-        return __convert_CAudioError(e);
-    }
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_in_destroy(audio_in_h input) {
@@ -749,96 +673,16 @@ int cpp_audio_in_get_sample_type(audio_in_h input, audio_sample_type_e *type) {
     return AUDIO_IO_ERROR_NONE;
 }
 
-static void __interrupt_cb_internal(IAudioSessionEventListener::EInterruptCode _code, void* user_data) {
-    audio_io_s* handle = static_cast<audio_io_s*>(user_data);
-    audio_io_interrupted_code_e code = __convert_interrupted_code(_code);
-
-    assert(handle);
-
-    AUDIO_IO_LOGD("Calling interrupted callback for handle:[%p] code:[%d]", handle, code);
-
-    if (handle->interrupt_callback.onInterrupt)
-        handle->interrupt_callback.onInterrupt(code, handle->interrupt_callback.user_data);
-}
-
 int cpp_audio_in_set_interrupted_cb(audio_in_h input, audio_io_interrupted_cb callback, void *user_data) {
-    audio_io_s* handle = static_cast<audio_io_s*>(input);
-
-    try {
-        if (handle == NULL || callback == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL input:%p, callback:%p", input, callback);
-        assert(handle->audioIoHandle);
-        AUDIO_IO_LOGD("[%p], callback:[%p], user_data:[%p]", handle, callback, user_data);
-
-        handle->interrupt_callback.onInterrupt = callback;
-        handle->interrupt_callback.user_data = user_data;
-
-        CAudioIO::SInterruptCallback cb = handle->audioIoHandle->getInterruptCallback();
-        cb.mUserData = static_cast<void*>(handle);
-        cb.onInterrupt = __interrupt_cb_internal;
-
-        handle->audioIoHandle->setInterruptCallback(cb);
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        return __convert_CAudioError(e);
-    }
-
-    AUDIO_IO_LOGD("[%p] done", handle);
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_in_unset_interrupted_cb(audio_in_h input) {
-    audio_io_s* handle = static_cast<audio_io_s*>(input);
-
-    try {
-        if (handle == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL input:%p", input);
-        assert(handle->audioIoHandle);
-        AUDIO_IO_LOGD("[%p]", handle);
-
-        handle->interrupt_callback.onInterrupt = NULL;
-        handle->interrupt_callback.user_data    = NULL;
-
-        CAudioIO::SInterruptCallback cb = handle->audioIoHandle->getInterruptCallback();
-        cb.mUserData = NULL;
-        cb.onInterrupt = NULL;
-
-        handle->audioIoHandle->setInterruptCallback(cb);
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        return __convert_CAudioError(e);
-    }
-
-    AUDIO_IO_LOGD("[%p] done", handle);
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_in_ignore_session(audio_in_h input) {
-    audio_io_s* handle = static_cast<audio_io_s*>(input);
-
-    try {
-        if (handle == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL input:%p", input);
-        if (handle->stream_callback.onStream)
-            THROW_ERROR_MSG(CAudioError::EError::ERROR_INVALID_OPERATION,
-                            "Not support ignore session in async mode");
-        assert(handle->audioIoHandle);
-        AUDIO_IO_LOGD("[%p]", handle);
-
-        handle->audioIoHandle->ignoreSession();
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        return __convert_CAudioError(e);
-    }
-
-    AUDIO_IO_LOGD("[%p] done", handle);
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 static void __stream_cb_internal(size_t nbytes, void *user_data) {
@@ -1024,35 +868,7 @@ int cpp_audio_in_unset_state_changed_cb(audio_in_h input) {
  * Audio Out
  */
 int cpp_audio_out_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, sound_type_e sound_type, audio_out_h *output) {
-    audio_io_s* handle = NULL;
-    try {
-        if (output == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL output:%p", output);
-
-        __check_audio_param(sample_rate, channel, type, sound_type);
-
-        AUDIO_IO_LOGD("samplerate:[%d] channel:[0x%x] sample_type:[0x%x] sound_type:[%d]", sample_rate, channel, type, sound_type);
-        CAudioInfo audioInfo = __generate_audio_output_info(sample_rate, channel, type, sound_type);
-
-        handle = new audio_io_s;
-        handle->audioIoHandle = new CAudioOutput(audioInfo);
-        handle->audioIoHandle->initialize();
-
-        AUDIO_IO_LOGD("[%p] created", handle);
-        *output = handle;
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        __handle_safe_free(handle, (void *)output, true);
-        return __convert_CAudioError(e);
-    } catch (const std::bad_alloc&) {
-        CAudioError e = CAudioError::EError::ERROR_OUT_OF_MEMORY;
-        AUDIO_IO_LOGE("Failed to allocate handle");
-        __handle_safe_free(handle, (void *)output, true);
-        return __convert_CAudioError(e);
-    }
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_out_create_new(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_out_h *output) {
@@ -1394,83 +1210,15 @@ int cpp_audio_out_get_sound_type(audio_out_h output, sound_type_e *type) {
 }
 
 int cpp_audio_out_set_interrupted_cb(audio_out_h output, audio_io_interrupted_cb callback, void *user_data) {
-    audio_io_s* handle = static_cast<audio_io_s*>(output);
-
-    try {
-        if (handle == NULL || callback == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL output:%p, callback:%p", output, callback);
-        assert(handle->audioIoHandle);
-        AUDIO_IO_LOGD("[%p], callback:[%p], user_data:[%p]", handle, callback, user_data);
-
-        handle->interrupt_callback.onInterrupt = callback;
-        handle->interrupt_callback.user_data    = user_data;
-
-        CAudioIO::SInterruptCallback cb = handle->audioIoHandle->getInterruptCallback();
-        cb.mUserData = static_cast<void*>(handle);
-        cb.onInterrupt = __interrupt_cb_internal;
-
-        handle->audioIoHandle->setInterruptCallback(cb);
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        return __convert_CAudioError(e);
-    }
-
-    AUDIO_IO_LOGD("[%p] done", handle);
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_out_unset_interrupted_cb(audio_out_h output) {
-    audio_io_s* handle = static_cast<audio_io_s*>(output);
-
-    try {
-        if (handle == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL output:%p", output);
-        assert(handle->audioIoHandle);
-        AUDIO_IO_LOGD("[%p]", handle);
-
-        handle->interrupt_callback.onInterrupt = NULL;
-        handle->interrupt_callback.user_data = NULL;
-
-        CAudioIO::SInterruptCallback cb = handle->audioIoHandle->getInterruptCallback();
-        cb.mUserData = NULL;
-        cb.onInterrupt = NULL;
-
-        handle->audioIoHandle->setInterruptCallback(cb);
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        return __convert_CAudioError(e);
-    }
-
-    AUDIO_IO_LOGD("[%p] done", handle);
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_out_ignore_session(audio_out_h output) {
-    audio_io_s* handle = static_cast<audio_io_s*>(output);
-
-    try {
-        if (handle == NULL)
-            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT,
-                                   "Parameters are NULL output:%p", output);
-        if (handle->stream_callback.onStream)
-            THROW_ERROR_MSG(CAudioError::EError::ERROR_INVALID_OPERATION,
-                            "Not support ignore session in async mode");
-        assert(handle->audioIoHandle);
-        AUDIO_IO_LOGD("[%p]", handle);
-
-        handle->audioIoHandle->ignoreSession();
-    } catch (CAudioError& e) {
-        AUDIO_IO_LOGE("%s", e.getErrorMsg());
-        return __convert_CAudioError(e);
-    }
-
-    AUDIO_IO_LOGD("[%p] done", handle);
-
-    return AUDIO_IO_ERROR_NONE;
+    return AUDIO_IO_ERROR_NOT_SUPPORTED;
 }
 
 int cpp_audio_out_set_stream_cb(audio_out_h output, audio_out_stream_cb callback, void* user_data) {