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.

47 lines
1.2 KiB

  1. //***************************************************************************
  2. //
  3. // PGDE.H
  4. //
  5. // Module: HEALTHMON SERVER AGENT
  6. //
  7. // Purpose: CPolledGetObjectDataCollector class to do WMI instance collection.
  8. //
  9. // Copyright (c)1999 Microsoft Corporation, All Rights Reserved
  10. //
  11. //***************************************************************************
  12. #if !defined( __PGDE_H )
  13. #define __PGDE_H
  14. #include "datacltr.h"
  15. class CPolledGetObjectDataCollector : public CDataCollector
  16. {
  17. public:
  18. CPolledGetObjectDataCollector();
  19. virtual ~CPolledGetObjectDataCollector();
  20. LPTSTR m_szObjectPath;
  21. //XXX IWbemRefresher* m_pRefresher;
  22. //XXX IWbemConfigureRefresher* m_pConfigureRefresher;
  23. //XXX IWbemHiPerfEnum* m_pEnum;
  24. //XXX IWbemObjectAccess* m_pObjAccess;
  25. IUnknown* m_pRefresher;
  26. IUnknown* m_pConfigureRefresher;
  27. IUnknown* m_pEnum;
  28. IUnknown* m_pObjAccess;
  29. BOOL m_bMultiInstance;
  30. IEnumWbemClassObject *m_pEnumObjs;
  31. HRESULT LoadInstanceFromMOF(IWbemClassObject* pObj, CDataGroup *pParentDG, LPTSTR pszParentGUID, BOOL bModifyPass=FALSE);
  32. private:
  33. BOOL CollectInstance(void);
  34. BOOL CollectInstanceSemiSync(void);
  35. BOOL ProcessObjects(ULONG uReturned, IWbemClassObject **apObj);
  36. BOOL CleanupSemiSync(void);
  37. BOOL EnumDone(void);
  38. };
  39. #endif // __PGDE_H