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.

66 lines
1.7 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1999.
  5. //
  6. // File: F I L T D E V . H
  7. //
  8. // Contents: Implements the object that represents filter devices.
  9. //
  10. // Notes:
  11. //
  12. // Author: shaunco 15 Jan 1999
  13. //
  14. //----------------------------------------------------------------------------
  15. #pragma once
  16. #include "comp.h"
  17. class CFilterDevice
  18. {
  19. public:
  20. // The component which represents the adapter this filter device
  21. // filters.
  22. //
  23. CComponent* m_pAdapter;
  24. // The component which represents the filter service itself.
  25. //
  26. CComponent* m_pFilter;
  27. // The device info data for this filter device.
  28. // (Referencing HDEVINFO is kept external and is valid for the life of
  29. // these objects.)
  30. //
  31. SP_DEVINFO_DATA m_deid;
  32. // The instance guid of the device in string form.
  33. // Assigned by the class installer when the device is installed.
  34. // This guid is stored in the instance key of the device under
  35. // 'NetCfgInstanceId'. It is used to form the bind strings to
  36. // this device.
  37. //
  38. WCHAR m_szInstanceGuid [c_cchGuidWithTerm];
  39. private:
  40. // Declare all constructors private so that no one except
  41. // HrCreateInstance can create instances of this class.
  42. //
  43. CFilterDevice () {}
  44. public:
  45. ~CFilterDevice () {}
  46. bool
  47. operator< (
  48. const CFilterDevice& OtherPath) const;
  49. static
  50. HRESULT
  51. HrCreateInstance (
  52. IN CComponent* pAdapter,
  53. IN CComponent* pFilter,
  54. IN const SP_DEVINFO_DATA* pdeid,
  55. IN PCWSTR pszInstanceGuid,
  56. OUT CFilterDevice** ppFilterDevice);
  57. };