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.

46 lines
1.1 KiB

  1. //***************************************************************************
  2. //
  3. // PMDE.H
  4. //
  5. // Module: HEALTHMON SERVER AGENT
  6. //
  7. // Purpose: CPolledMethodDataCollector class to do WMI instance collection.
  8. //
  9. // Copyright (c)1999 Microsoft Corporation, All Rights Reserved
  10. //
  11. //***************************************************************************
  12. #if !defined( __PMDE_H )
  13. #define __PMDE_H
  14. #include "datacltr.h"
  15. typedef struct _tag_PARStruct
  16. {
  17. LPTSTR szName; // Name of Parameter
  18. long lType; // The value type
  19. LPTSTR szValue; // The actual value
  20. } PARSTRUCT, *PPARSTRUCT;
  21. typedef std::vector<PARSTRUCT, std::allocator<PARSTRUCT> > PARLIST;
  22. class CPolledMethodDataCollector : public CDataCollector
  23. {
  24. public:
  25. CPolledMethodDataCollector();
  26. virtual ~CPolledMethodDataCollector();
  27. LPTSTR m_szObjectPath;
  28. LPTSTR m_szMethodName;
  29. PARLIST m_parameterList;
  30. HRESULT LoadInstanceFromMOF(IWbemClassObject* pObj, CDataGroup *pParentDG, LPTSTR pszParentGUID, BOOL bModifyPass=FALSE);
  31. private:
  32. BOOL CollectInstance(void);
  33. BOOL CollectInstanceSemiSync(void);
  34. BOOL CleanupSemiSync(void);
  35. BOOL EnumDone(void);
  36. };
  37. #endif // __PMDE_H