X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcpp%2FCAudioInput.cpp;h=8b6633f7c925be89a3f4062d0743b1f27f7d6ef6;hb=refs%2Ftags%2Fsubmit%2Ftizen%2F20191107.103618;hp=d930137edd3fb9594256680ea48b2d3c606196d4;hpb=a871d32040c7cae645c8e79f511f2131e8bebfc5;p=platform%2Fcore%2Fapi%2Faudio-io.git diff --git a/src/cpp/CAudioInput.cpp b/src/cpp/CAudioInput.cpp index d930137..8b6633f 100644 --- a/src/cpp/CAudioInput.cpp +++ b/src/cpp/CAudioInput.cpp @@ -83,8 +83,10 @@ void CAudioInput::initialize() { CAudioIO::initialize(); __setInit(true); } catch (const CAudioError& e) { +//LCOV_EXCL_START finalize(); throw; +//LCOV_EXCL_STOP } CAudioIO::onStateChanged(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_IDLE); @@ -92,8 +94,10 @@ void CAudioInput::initialize() { void CAudioInput::finalize() { if (!__IsInit()) { +//LCOV_EXCL_START AUDIO_IO_LOGD("Did not initialize"); return; +//LCOV_EXCL_STOP } CAudioIO::finalize(); @@ -103,7 +107,7 @@ void CAudioInput::finalize() { void CAudioInput::prepare() { if (!__IsInit()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, "Did not initialize CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, "Did not initialize CAudioInput"); //LCOV_EXCL_LINE if (__IsReady()) { AUDIO_IO_LOGD("Already prepared CAudioInput"); @@ -139,10 +143,12 @@ void CAudioInput::prepare() { CAudioIO::prepare(); } catch (const CAudioError& e) { +//LCOV_EXCL_START SAFE_FINALIZE(mpPulseAudioClient); SAFE_DELETE(mpPulseAudioClient); internalUnlock(); throw; +//LCOV_EXCL_STOP } catch (const std::bad_alloc&) { //LCOV_EXCL_START internalUnlock(); @@ -153,8 +159,8 @@ void CAudioInput::prepare() { void CAudioInput::unprepare() { if (!__IsInit()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize CAudioInput"); //LCOV_EXCL_LINE if (!__IsReady()) { AUDIO_IO_LOGD("Already unprepared"); @@ -171,8 +177,10 @@ void CAudioInput::unprepare() { SAFE_DELETE(mpPulseAudioClient); internalUnlock(); } catch (const CAudioError& e) { +//LCOV_EXCL_START internalUnlock(); throw; +//LCOV_EXCL_STOP } CAudioIO::onStateChanged(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_IDLE); @@ -180,15 +188,15 @@ void CAudioInput::unprepare() { void CAudioInput::pause() { if (!__IsInit() || !__IsReady()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize or prepare CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize or prepare CAudioInput"); //LCOV_EXCL_LINE if (CAudioIO::getState() != CAudioInfo::EAudioIOState::AUDIO_IO_STATE_RUNNING) THROW_ERROR_MSG(CAudioError::EError::ERROR_INVALID_STATE, "Can't pause if not in Running state"); if (mpPulseAudioClient->isInThread()) - THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't pause in thread"); + THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't pause in thread"); //LCOV_EXCL_LINE CAudioIO::pause(); CAudioIO::onStateChanged(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_PAUSED); @@ -196,15 +204,15 @@ void CAudioInput::pause() { void CAudioInput::resume() { if (!__IsInit() || !__IsReady()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize or prepare CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize or prepare CAudioInput"); //LCOV_EXCL_LINE if (CAudioIO::getState() != CAudioInfo::EAudioIOState::AUDIO_IO_STATE_PAUSED) THROW_ERROR_MSG(CAudioError::EError::ERROR_INVALID_STATE, "Can't resume if not in Paused state"); if (mpPulseAudioClient->isInThread()) - THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't resume in thread"); + THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't resume in thread"); //LCOV_EXCL_LINE CAudioIO::resume(); CAudioIO::onStateChanged(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_RUNNING); @@ -212,15 +220,15 @@ void CAudioInput::resume() { void CAudioInput::flush() { if (!__IsInit() || !__IsReady()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize or prepare CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize or prepare CAudioInput"); //LCOV_EXCL_LINE CAudioIO::flush(); } int CAudioInput::getBufferSize() { if (!__IsInit()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, "Did not initialize CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, "Did not initialize CAudioInput"); //LCOV_EXCL_LINE /* FIXME : return calculated size here to satisfy backward compatibility */ return (mAudioInfo.getSampleRate() * DEFAULT_PERIOD_SIZE) / 1000 * mAudioInfo.getSampleSize(); @@ -228,7 +236,7 @@ int CAudioInput::getBufferSize() { void CAudioInput::setStreamCallback(SStreamCallback callback) { if (!__IsInit()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, "Did not initialize CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, "Did not initialize CAudioInput"); //LCOV_EXCL_LINE __mIsUsedSyncRead = (callback.onStream == nullptr); @@ -239,8 +247,8 @@ void CAudioInput::setStreamCallback(SStreamCallback callback) { size_t CAudioInput::read(void* buffer, size_t length) { if (!__IsInit() || !__IsReady()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize or prepare CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize or prepare CAudioInput"); //LCOV_EXCL_LINE if (!buffer) THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT, @@ -262,8 +270,8 @@ size_t CAudioInput::read(void* buffer, size_t length) { // If another thread did call unprepare, do not read if (!mpPulseAudioClient) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize CPulseAudioClient"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize CPulseAudioClient"); //LCOV_EXCL_LINE // Block until read done ret = mpPulseAudioClient->read(buffer, length); @@ -271,8 +279,10 @@ size_t CAudioInput::read(void* buffer, size_t length) { sched_yield(); } catch (const CAudioError& e) { +//LCOV_EXCL_START internalUnlock(); throw; +//LCOV_EXCL_STOP } return ret; @@ -280,12 +290,12 @@ size_t CAudioInput::read(void* buffer, size_t length) { int CAudioInput::peek(const void** buffer, size_t* length) { if (!__IsInit() || !__IsReady()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize or prepare CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize or prepare CAudioInput"); //LCOV_EXCL_LINE if (buffer == nullptr || length == nullptr) - THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT, - "Parameters are NULL buffer:%p, length:%p", buffer, length); + THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_ARGUMENT, //LCOV_EXCL_LINE + "Parameters are NULL buffer:%p, length:%p", buffer, length); //LCOV_EXCL_LINE /* Checks synchronous flag */ if (__mIsUsedSyncRead) @@ -297,8 +307,8 @@ int CAudioInput::peek(const void** buffer, size_t* length) { int CAudioInput::drop() { if (!__IsInit() || !__IsReady()) - THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, - "Did not initialize or prepare CAudioInput"); + THROW_ERROR_MSG(CAudioError::EError::ERROR_NOT_INITIALIZED, //LCOV_EXCL_LINE + "Did not initialize or prepare CAudioInput"); //LCOV_EXCL_LINE /* Checks synchronous flag */ if (__mIsUsedSyncRead)