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.

57 lines
1.7 KiB

  1. //----------------------------------------------------------------------------
  2. //
  3. // swprov.hpp
  4. //
  5. // Base software HAL provider class.
  6. //
  7. // Copyright (C) Microsoft Corporation, 1997.
  8. //
  9. //----------------------------------------------------------------------------
  10. #ifndef _SWPROV_HPP_
  11. #define _SWPROV_HPP_
  12. //----------------------------------------------------------------------------
  13. //
  14. // SwHalProvider
  15. //
  16. // Implements the base HAL provider for the software rasterizers.
  17. //
  18. //----------------------------------------------------------------------------
  19. class SwHalProvider : 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. };
  27. //----------------------------------------------------------------------------
  28. //
  29. // OptRastHalProvider
  30. //
  31. // Specific provider for the optimized software rasterizer.
  32. //
  33. //----------------------------------------------------------------------------
  34. class OptRastHalProvider : public SwHalProvider
  35. {
  36. private:
  37. DWORD m_BeadSet;
  38. public:
  39. OptRastHalProvider(THIS_
  40. DWORD);
  41. STDMETHOD(GetInterface)(THIS_
  42. LPDDRAWI_DIRECTDRAW_GBL pDdGbl,
  43. LPD3DHALPROVIDER_INTERFACEDATA pInterfaceData,
  44. DWORD dwVersion);
  45. STDMETHOD(GetCaps)(THIS_
  46. LPDDRAWI_DIRECTDRAW_GBL pDdGbl,
  47. LPD3DDEVICEDESC7 pHwDesc,
  48. LPD3DDEVICEDESC7 pHelDesc,
  49. DWORD dwVersion);
  50. };
  51. #endif // #ifndef _SWPROV_HPP_