Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*==========================================================================
* * Copyright (C) 1999 Microsoft Corporation. All Rights Reserved. * * File: dsutils.h * Content: declares general DirectSound utils, particularly error stuff * * History: * Date By Reason * ==== == ====== * 07/16/99 rodtoll Created * ***************************************************************************/
#ifndef __DIRECTSOUNDUTILS_H
#define __DIRECTSOUNDUTILS_H
// DirectXException
//
// This class is the exception class for handling exceptions from
// errors from DirectSound. It is used by the DSCHECK macro to
// check return codes from DirectSound calls.
//
// It provides an implementation of the DirectXException and
// provides mapping from HRESULTs to string descriptions of
// directsound errors.
//
class DirectSoundException: public DirectXException { public: DirectSoundException( const TCHAR *funcName, HRESULT result, const unsigned int moduleID = 0, unsigned int lineNumber = 0 ): DirectXException( funcName, result, moduleID, lineNumber ) { MapResultToString(); }; protected: void MapResultToString(); };
// DSCHECK MACRO
//
// This macro is used to check the return codes from DirectSound calls. If
// the directsound call does not return a DS_OK, a DirectSoundException exception
// is created and thrown.
//
#define DSCHECK(x) if( x != DS_OK ) { throw DirectSoundException( "", x, 0, __LINE__ ); }
#endif
|