From 8dcc0f2a60b31274133c030f79809def8bab76dc Mon Sep 17 00:00:00 2001 From: Jaechul Lee Date: Wed, 4 Dec 2024 17:13:33 +0900 Subject: [PATCH] Add hal documentation [Version] 0.0.22 [Issue Type] Update Change-Id: I40f46befd11c71df6173295a0003bdb559387b94 Signed-off-by: Jaechul Lee --- doc/hal_audio_doc.h | 107 ++++++++++++++++++ doc/images/hal_audio_state_diagram.png | Bin 0 -> 55619 bytes include/hal-audio-interface-1.h | 147 +++++++++++++++---------- include/hal-audio.h | 75 ++++++++----- packaging/hal-api-audio.spec | 2 +- testcase/audio_haltests.cpp | 62 +++++------ 6 files changed, 274 insertions(+), 119 deletions(-) create mode 100644 doc/hal_audio_doc.h create mode 100644 doc/images/hal_audio_state_diagram.png diff --git a/doc/hal_audio_doc.h b/doc/hal_audio_doc.h new file mode 100644 index 0000000..b87b3e5 --- /dev/null +++ b/doc/hal_audio_doc.h @@ -0,0 +1,107 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __TIZEN_HAL_AUDIO_DOC_H__ +#define __TIZEN_HAL_AUDIO_DOC_H__ + +/** + * @file hal_audio_doc.h + * @brief This file contains high level documentation of the HAL Audio. + */ + +/** + * @defgroup HALAPI_HAL_AUDIO_MODULE Audio + * @brief The @ref HALAPI_HAL_AUDIO_MODULE provides functions for audio devices. + * + * @section HALAPI_HAL_AUDIO_MODULE_HEADER Required Header + * \#include + * + * @section HALAPI_HAL_AUDIO_MODULE_OVERVIEW Overview + * The Audio module in the HAL provides functions to manage audio playback and capture. + * + * Key functionalities include: + * - Initializing and deinitializing the audio hardware. + * - Opening and configuring PCM audio streams. + * - Starting and stopping audio operations. + * - Recovering from audio errors. + * - Closing audio streams to free resources. + * + * @subsection HALAPI_HAL_AUDIO_MODULE_STATE_DIAGRAM State Diagram + * @image html hal_audio_state_diagram.png + * + * @subsection HALAPI_HAL_AUDIO_MODULE_STATE_TRANSITIONS State Transitions + *
+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
FUNCTIONPRE-STATEPOST-STATESYNC TYPE
hal_audio_init() N/A CLOSE SYNC
hal_audio_deinit() CLOSE N/A SYNC
hal_audio_pcm_open() CLOSE OPEN SYNC
hal_audio_pcm_set_params() OPEN SETUP SYNC
hal_audio_pcm_start() SETUP RUNNING SYNC
hal_audio_pcm_stop() RUNNING STOP SYNC
hal_audio_pcm_close() STOP CLOSE SYNC
hal_audio_pcm_recover() XRUN RUNNING SYNC
+ * + * For more information on the Audio features and the macros, see HAL Audio programming guides and tutorials. + */ + +#endif /* __TIZEN_HAL_AUDIO_DOC_H__ */ + diff --git a/doc/images/hal_audio_state_diagram.png b/doc/images/hal_audio_state_diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..6625200e402f706d7db5c2bcf527bb55be3562e6 GIT binary patch literal 55619 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 i=HZQsL`5=S{bql