102 lines
3.7 KiB
C++
102 lines
3.7 KiB
C++
/*==========================================================================
|
|
*
|
|
* 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
|
|
}
|
|
|