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.

114 lines
2.7 KiB

  1. #if !defined(AFX_SYSTEM_H__D9BF4FA1_F673_11D2_BDC4_0000F87A3912__INCLUDED_)
  2. #define AFX_SYSTEM_H__D9BF4FA1_F673_11D2_BDC4_0000F87A3912__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. // System.h : header file
  7. //
  8. #include "HMObject.h"
  9. #include "DataGroup.h"
  10. #include "HMDataGroupConfiguration.h"
  11. #include "SystemScopeItem.h"
  12. #include "SystemStatusListener.h"
  13. #include "DataGroupConfigListener.h"
  14. #include "ConfigCreationListener.h"
  15. #include "ConfigDeletionListener.h"
  16. #include "SystemConfigListener.h"
  17. #include "HMSystemStatus.h"
  18. /////////////////////////////////////////////////////////////////////////////
  19. // CSystem command target
  20. #define FAILED_STRING CString(_T(":FAILED"))
  21. class CSystem : public CHMObject
  22. {
  23. DECLARE_SERIAL(CSystem)
  24. // Construction/Destruction
  25. public:
  26. CSystem();
  27. virtual ~CSystem();
  28. // WMI Operations
  29. public:
  30. HRESULT Connect();
  31. HRESULT EnumerateChildren();
  32. CString GetObjectPath();
  33. CString GetStatusObjectPath();
  34. CHMEvent* GetStatusClassObject();
  35. void GetWMIVersion(CString& sVersion);
  36. void GetHMAgentVersion(CString& sVersion);
  37. BOOL GetComputerSystemInfo(CString& sDomain, CString& sProcessor); // v-marfin 62501
  38. void GetOperatingSystemInfo(CString& sOSInfo);
  39. long m_lTotalActiveSinkCount;
  40. protected:
  41. CDataGroupConfigListener* m_pDGListener;
  42. CSystemConfigListener* m_pSListener;
  43. CConfigCreationListener* m_pCreationListener;
  44. CConfigDeletionListener* m_pDeletionListener;
  45. // Clipboard Operations
  46. public:
  47. virtual bool Cut();
  48. virtual bool Copy();
  49. virtual bool Paste();
  50. // Operations
  51. public:
  52. void Serialize(CArchive& ar); // v-marfin 62501
  53. // Scope Item Members
  54. public:
  55. virtual CScopePaneItem* CreateScopeItem();
  56. // New Child Creation Members
  57. public:
  58. void CreateNewChildDataGroup();
  59. // State Members
  60. public:
  61. virtual void UpdateStatus();
  62. // Attributes
  63. public:
  64. // Operations
  65. public:
  66. // Overrides
  67. // ClassWizard generated virtual function overrides
  68. //{{AFX_VIRTUAL(CSystem)
  69. public:
  70. virtual void OnFinalRelease();
  71. //}}AFX_VIRTUAL
  72. // Implementation
  73. protected:
  74. // Generated message map functions
  75. //{{AFX_MSG(CSystem)
  76. // NOTE - the ClassWizard will add and remove member functions here.
  77. //}}AFX_MSG
  78. DECLARE_MESSAGE_MAP()
  79. DECLARE_OLECREATE_EX(CSystem)
  80. // Generated OLE dispatch map functions
  81. //{{AFX_DISPATCH(CSystem)
  82. // NOTE - the ClassWizard will add and remove member functions here.
  83. //}}AFX_DISPATCH
  84. DECLARE_DISPATCH_MAP()
  85. DECLARE_INTERFACE_MAP()
  86. };
  87. /////////////////////////////////////////////////////////////////////////////
  88. #include "System.inl"
  89. //{{AFX_INSERT_LOCATION}}
  90. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  91. #endif // !defined(AFX_SYSTEM_H__D9BF4FA1_F673_11D2_BDC4_0000F87A3912__INCLUDED_)