57 lines
1.8 KiB
C
57 lines
1.8 KiB
C
|
/****************************************************************************
|
||
|
*
|
||
|
* File: musinfo.h
|
||
|
* Project: DxDiag (DirectX Diagnostic Tool)
|
||
|
* Author: Mike Anderson (manders@microsoft.com)
|
||
|
* Purpose: Gather information about DirectMusic
|
||
|
*
|
||
|
* (C) Copyright 1998 Microsoft Corp. All rights reserved.
|
||
|
*
|
||
|
****************************************************************************/
|
||
|
|
||
|
#ifndef MUSINFO_H
|
||
|
#define MUSINFO_H
|
||
|
|
||
|
// DXD_IN_DM_VALUE is the name of a value stored under the registry key
|
||
|
// HKLM\DXD_IN_DM_KEY that indicates that DxDiag is using
|
||
|
// DirectMusic. If DxDiag starts up and this value exists, DxDiag
|
||
|
// probably crashed in DirectMusic and DxDiag should offer to run without
|
||
|
// using DirectMusic.
|
||
|
#define DXD_IN_DM_KEY TEXT("Software\\Microsoft\\DirectX Diagnostic Tool")
|
||
|
#define DXD_IN_DM_VALUE TEXT("DxDiag In DirectMusic")
|
||
|
|
||
|
struct MusicPort
|
||
|
{
|
||
|
GUID m_guid;
|
||
|
BOOL m_bSoftware;
|
||
|
BOOL m_bKernelMode;
|
||
|
BOOL m_bUsesDLS;
|
||
|
BOOL m_bExternal;
|
||
|
DWORD m_dwMaxAudioChannels;
|
||
|
DWORD m_dwMaxChannelGroups;
|
||
|
BOOL m_bDefaultPort;
|
||
|
BOOL m_bOutputPort;
|
||
|
TCHAR m_szDescription[300];
|
||
|
MusicPort* m_pMusicPortNext;
|
||
|
};
|
||
|
|
||
|
struct MusicInfo
|
||
|
{
|
||
|
BOOL m_bDMusicInstalled;
|
||
|
MusicPort* m_pMusicPortFirst;
|
||
|
TCHAR m_szGMFilePath[MAX_PATH];
|
||
|
TCHAR m_szGMFileVersion[100];
|
||
|
GUID m_guidMusicPortTest; // This holds the GUID of the music port selected for testing
|
||
|
BOOL m_bAccelerationEnabled;
|
||
|
BOOL m_bAccelerationExists;
|
||
|
RegError* m_pRegErrorFirst;
|
||
|
TestResult m_testResult; // This is filled in by testmus.cpp
|
||
|
};
|
||
|
|
||
|
HRESULT GetBasicMusicInfo(MusicInfo** ppMusicInfo);
|
||
|
HRESULT GetExtraMusicInfo(MusicInfo* pMusicInfo);
|
||
|
VOID DestroyMusicInfo(MusicInfo* pMusicInfo);
|
||
|
VOID DiagnoseMusic(SysInfo* pSysInfo, MusicInfo* pMusicInfo);
|
||
|
|
||
|
#endif // DISPINFO_H
|