Leaked source code of windows server 2003
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.

58 lines
2.2 KiB

  1. //----------------------------------------------------------------------------
  2. //
  3. // testprov.h
  4. //
  5. // Test HAL provider class.
  6. //
  7. // Test HAL provider is an itermediate object between D3DIM and
  8. // real HAL provider. Itis used to print some data sent to a driver to a
  9. // file. After that the real HAL driver is called.
  10. // Test HAL provider is enabled by specifying non-empty string key "TestFile"
  11. // under DIRECT3D key in the registry. The specified string is the name for
  12. // a binary file to output data to. File format is described in TESTFILE.H
  13. //
  14. // Copyright (C) Microsoft Corporation, 1997.
  15. //
  16. //----------------------------------------------------------------------------
  17. #ifndef _TESTPROV_H_
  18. #define _TESTPROV_H_
  19. class CTestHalProvider : public IHalProvider
  20. {
  21. public:
  22. // IUnknown.
  23. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID* ppvObj);
  24. STDMETHOD_(ULONG, AddRef)(THIS);
  25. STDMETHOD_(ULONG, Release)(THIS);
  26. // IHalProvider.
  27. STDMETHOD(GetInterface)(THIS_
  28. LPDDRAWI_DIRECTDRAW_GBL pDdGbl,
  29. LPD3DHALPROVIDER_INTERFACEDATA pInterfaceData,
  30. DWORD dwVersion);
  31. STDMETHOD(GetCaps)(THIS_
  32. LPDDRAWI_DIRECTDRAW_GBL pDdGbl,
  33. LPD3DDEVICEDESC pHwDesc,
  34. LPD3DDEVICEDESC pHelDesc,
  35. DWORD dwVersion);
  36. };
  37. //----------------------------------------------------------------------------
  38. //
  39. // GetTestProvider
  40. //
  41. // Input:
  42. // riid and pCurrentHalProvider are equal to the currently selected provider.
  43. // GlobalData - data provided by DDraw
  44. // fileName - output file name
  45. // dwFlags - currently not used
  46. //
  47. // Returns:
  48. // the test HAL provider in ppHalProvider.
  49. // D3D_OK if success
  50. //
  51. //----------------------------------------------------------------------------
  52. STDAPI GetTestHalProvider(REFIID riid,
  53. DDRAWI_DIRECTDRAW_GBL *pGlobalData,
  54. IHalProvider **ppHalProvider,
  55. IHalProvider * pCurrentHalProvider,
  56. DWORD dwFlags);
  57. #endif