SNDEX_ResetIgnoreHWVolume

Syntax

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

Arguments

None.

Return Values

SNDEX_RESULT_SUCCESS The whole series of operations completed successfully.
SNDEX_RESULT_ILLEGAL_STATE This function has been called on the NITRO platform or from an exception handler.
SNDEX_RESULT_BEFORE_INIT Extended sound features have not been initialized by the SNDEX_Init function.
SNDEX_RESULT_EXCLUSIVE Processing for other extended sound features is running. Note that mutexes are used for each of the extended sound features, so they cannot be used simultaneously.
This is also returned when a mutex error occurred in the ARM7. When this is the case, the situation may improve on a retry because the error is dependent on the progress of processing in ARM7.
As mentioned in the SNDEX Library Overview, the error also returns during processing of shutter sound playback.
SNDEX_RESULT_PXI_SEND_ERROR A PXI command failed to be sent to the ARM7. This error occurs when the PXI send queue for the ARM7 has filled up or when the hardware has detected an error. As a result, the state may improve when a retry is made.
SNDEX_RESULT_DEVICE_ERROR The ARM7 failed to change the speaker volume for an external device. Conditions may improve on a retry, but continued failures after multiple retries could indicate that the external device is not responding, so you may handle this as if it were a return value indicating success.
SNDEX_RESULT_FATAL_ERROR This error should not ordinarily occur. This may occur when an illegal PXI command was sent directly, ignoring library state management; when the ARM7 component and the extended sound feature library have different versions; when library state management has fallen into an abnormal state due to memory corruption; or when other such conditions arise. There is no way to recover from this at run time.

Description

Synchronously changes the speaker volume to the value stored by the SNDEX_SetIgnoreHWVolume function. The change is not necessarily applied immediately. For more information, see Note, below.

This function calls the SNDEX_SetVolume function internally and stops its own calling thread until the processing has completed. This function expects to be called from a thread, so it fails if it is called from an exception handler. Note that this function continues to block internally if PXI receive interrupts are prohibited, because PXI receive interrupts are used to detect the processing's completion.

Note

Be sure that your method for changing the volume adheres to the Programming Guidelines.

If the SNDEX_SetIgnoreHWVolume function has never been called when this function executes, the speaker volume is changed to 0.

The speaker volume is saved in dedicated nonvolatile memory each time it is changed. It consequently cannot be modified an infinite number of times. Avoid frequent changes to the speaker volume from the program.
For more information, see the Note section for the SNDEX_SetVolume function.

See Also

SNDEX_SetVolume
SNDEX_SetIgnoreHWVolume

Revision History

2009/02/02 Initial version.


CONFIDENTIAL