/*========================================================================== * * Copyright (C) 1999 Microsoft Corporation. All Rights Reserved. * * File: dsutils.cpp * Content: * This module contains the implementation of the DirectSoundException class * * History: * Date By Reason * ==== == ====== * 07/16/99 rodtoll Created * 09/21/99 rodtoll Updated to remove string translation in release build * 10/05/99 rodtoll Added DPF_MODNAMEs * ***************************************************************************/ #include "dxvutilspch.h" #undef DPF_MODNAME #define DPF_MODNAME "DirectSoundException::MapResultToString" // MapResultToString // // This function is used by the DirectSoundException class to map from // HRESULT's returned from DirectSound to the string equivalent which // is placed into the m_szErrorString member variable. To retrieve // this string, call DirectSoundException::what(). // // Parameters: // N/A // // Returns: // N/A // void DirectSoundException::MapResultToString() { #ifdef _DEBUG switch( m_result ) { case DS_OK: _tcscpy( m_szErrorString, _T( "The request completed successfully." ) ); break; case DSERR_ALLOCATED: _tcscpy( m_szErrorString, _T( "The request failed because resources, are already in use. " ) ); break; case DSERR_ALREADYINITIALIZED: _tcscpy( m_szErrorString, _T( "The object is already initialized." ) ); break; case DSERR_BADFORMAT: _tcscpy( m_szErrorString, _T( "The specified wave format is not supported." ) ); break; case DSERR_BUFFERLOST: _tcscpy( m_szErrorString, _T( "The buffer memory has been lost and must be restored." ) ); break; case DSERR_CONTROLUNAVAIL: _tcscpy( m_szErrorString, _T( "The control (volume, pan, and so forth) reqested not available" ) ); break; case DSERR_GENERIC: _tcscpy( m_szErrorString, _T( "An undetermined error occurred inside the DirectSound subsystem." ) ); break; case DSERR_INVALIDCALL: _tcscpy( m_szErrorString, _T( "This function is not valid for the current state of this object." ) ); break; case DSERR_INVALIDPARAM: _tcscpy( m_szErrorString, _T( "An invalid parameter was passed to the returning function." ) ); break; case DSERR_NOAGGREGATION: _tcscpy( m_szErrorString, _T( "The object does not support aggregation." ) ); break; case DSERR_NODRIVER: _tcscpy( m_szErrorString, _T( "No sound driver is available for use." ) ); break; case DSERR_NOINTERFACE: _tcscpy( m_szErrorString, _T( "The requested COM interface is not available." ) ); break; case DSERR_OTHERAPPHASPRIO: _tcscpy( m_szErrorString, _T( "Another application has a higher priority level, preventing this call from succeeding" ) ); break; case DSERR_OUTOFMEMORY: _tcscpy( m_szErrorString, _T( "The DirectSound subsystem could not allocate sufficient memory to complete the caller's request." ) ); break; case DSERR_PRIOLEVELNEEDED: _tcscpy( m_szErrorString, _T( "The caller does not have the priority level required for the function to succeed." ) ); break; case DSERR_UNINITIALIZED: _tcscpy( m_szErrorString, _T( "The IDirectSound::Initialize method has not been called or has not been called successfully before other methods were called." ) ); break; case DSERR_UNSUPPORTED: _tcscpy( m_szErrorString, _T( "The function called is not supported at this time." ) ); break; default: _tcscpy( m_szErrorString, _T( "Unknown error" ) ); break; } #else _tcscpy( m_szErrorString, _T("") ); #endif }