SNDEX_ResetIgnoreHWVolume

構文

#include <twl/snd.h>
SNDEXResult SNDEX_ResetIgnoreHWVolume( void );

引数

なし。

返り値

SNDEX_RESULT_SUCCESS 一連の処理が正常に完了した場合に返ります。
SNDEX_RESULT_ILLEGAL_STATE NITROプラットフォーム上で当関数を呼び出した場合、 例外ハンドラ内から当関数を呼び出した場合に返ります。
SNDEX_RESULT_BEFORE_INIT サウンド拡張機能をSNDEX_Init()により初期化していない場合に返ります。
SNDEX_RESULT_EXCLUSIVE 他のサウンド拡張機能に関する処理を実行中の場合に返ります。サウンド拡張機能に関する各処理は排他制御により同時には行えませんのでご注意下さい。
また、ARM7内での排他制御エラーが発生した場合にも返ります。この場合はARM7内での処理進捗状況に依存したエラーですので、リトライすると状況が改善する可能性があります。
SNDEX ライブラリの概要にある通り、シャッター音再生処理中もこのエラーを返します。
SNDEX_RESULT_PXI_SEND_ERROR ARM7へのPXIコマンド発行に失敗した場合に返ります。 ARM7へのPXI送信キューが飽和した場合や、ハードウェアがエラーを検知した場合に発生するエラーですので、リトライすると状況が改善する可能性があります。
SNDEX_RESULT_DEVICE_ERROR ARM7内で外部デバイスに対するスピーカー音量変更操作に失敗した場合に返ります。 リトライすると状況が改善する可能性がありますが、数回リトライして失敗が続く場合には外部デバイスの暴走等の原因が考えられますので、 成功が返った場合と同様に扱って構いません。
SNDEX_RESULT_FATAL_ERROR 通常起こり得ないエラーです。 ライブラリの状態管理を無視して直接不正なPXIコマンドを発行した場合、 ARM7コンポーネントとサウンド拡張機能ライブラリのバージョンが異なる場合、 メモリ破壊等によりライブラリの状態管理が異常な状態に陥った場合等に発生する可能性があります。 ランタイムに復旧する手段はありません。

説明

SNDEX_SetIgnoreHWVolume() で保存されていたスピーカー音量へ同期的に変更します。
ただし、変更の反映は即時とは限りません。詳しくは「注意」をご覧下さい。

内部でSNDEX_SetVolume()を呼び出し、処理が完了するまで当関数を呼び出したスレッドを停止します。 スレッドからの呼び出しを前提としていますので、例外ハンドラ内からの呼び出しは失敗します。 また、処理の完了はPXI受信割込みにより検知しますので、PXI受信割込みを禁止していると当関数内部でブロックし続けることに注意して下さい。

注意

音量の変更方法については、必ずプログラミングガイドラインでの規定に従って下さい。

一度も SNDEX_SetIgnoreHWVolume() を呼び出していない状態で本関数を実行した場合、変更されるスピーカー音量は 0 です。

スピーカー音量は変更する毎に専用不揮発メモリに保存されます。このため、変更可能な回数が無制限ではありません。 プログラムから頻繁にスピーカー音量を変更するような使い方は避けて下さい。
詳細は、SNDEX_SetVolume() の「注意」をご覧下さい。

参照

SNDEX_SetVolume, SNDEX_SetIgnoreHWVolume

履歴

2009/02/02 初版