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.

58 lines
1.3 KiB

  1. #pragma once
  2. #include "InternetGatewayDevice.h"
  3. #include "netconp.h"
  4. class ATL_NO_VTABLE CLANStatisticsProvider :
  5. public CComObjectRootEx<CComMultiThreadModel>,
  6. public IStatisticsProvider
  7. {
  8. public:
  9. CLANStatisticsProvider();
  10. DECLARE_PROTECT_FINAL_CONSTRUCT()
  11. BEGIN_COM_MAP(CLANStatisticsProvider)
  12. COM_INTERFACE_ENTRY(IStatisticsProvider)
  13. END_COM_MAP()
  14. public:
  15. HRESULT Initialize(GUID* pGuid);
  16. HRESULT FinalRelease(void);
  17. STDMETHODIMP GetStatistics(ULONG* pulBytesSent, ULONG* pulBytesReceived, ULONG* pulPacketsSent, ULONG* pulPacketsReceived, ULONG* pulSpeedbps, ULONG* pulUptime);
  18. private:
  19. WCHAR m_pszDeviceString[64];
  20. UNICODE_STRING m_Device;
  21. };
  22. class ATL_NO_VTABLE CRASStatisticsProvider :
  23. public CComObjectRootEx<CComMultiThreadModel>,
  24. public IStatisticsProvider
  25. {
  26. public:
  27. CRASStatisticsProvider();
  28. DECLARE_PROTECT_FINAL_CONSTRUCT()
  29. BEGIN_COM_MAP(CLANStatisticsProvider)
  30. COM_INTERFACE_ENTRY(IStatisticsProvider)
  31. END_COM_MAP()
  32. public:
  33. HRESULT Initialize(INetConnection* pNetConnection);
  34. HRESULT FinalRelease(void);
  35. STDMETHODIMP GetStatistics(ULONG* pulBytesSent, ULONG* pulBytesReceived, ULONG* pulPacketsSent, ULONG* pulPacketsReceived, ULONG* pulSpeedbps, ULONG* pulUptime);
  36. private:
  37. INetRasConnection* m_pNetRasConnection;
  38. };