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.

94 lines
2.4 KiB

  1. // ShowPerfLibDlg.h : header file
  2. //
  3. #if !defined(AFX_SHOWPERFLIBDLG_H__3FF01279_0700_11D3_B35B_00105A1469B7__INCLUDED_)
  4. #define AFX_SHOWPERFLIBDLG_H__3FF01279_0700_11D3_B35B_00105A1469B7__INCLUDED_
  5. #if _MSC_VER > 1000
  6. #pragma once
  7. #endif // _MSC_VER > 1000
  8. #include <winperf.h>
  9. #include "TitleDB.h"
  10. #include "PerfSelection.h"
  11. enum
  12. {
  13. PERF_SUCCESS,
  14. PERF_INFO,
  15. PERF_MORE_DATA,
  16. PERF_WARNING,
  17. PERF_FAILURE
  18. };
  19. /////////////////////////////////////////////////////////////////////////////
  20. // CShowPerfLibDlg dialog
  21. class CShowPerfLibDlg : public CDialog
  22. {
  23. // Construction
  24. public:
  25. CShowPerfLibDlg(CWnd* pParent = NULL); // standard constructor
  26. CShowPerfLibDlg(CString strService, BOOL bRefCheck, CWnd* pParent =NULL );
  27. virtual ~CShowPerfLibDlg();
  28. // Dialog Data
  29. //{{AFX_DATA(CShowPerfLibDlg)
  30. enum { IDD = IDD_SHOWPERFLIB_DIALOG };
  31. CButton m_wndGetCounter;
  32. CListCtrl m_wndErrorLog;
  33. CTreeCtrl m_wndPerfTree;
  34. CString m_strRequest;
  35. //}}AFX_DATA
  36. // ClassWizard generated virtual function overrides
  37. //{{AFX_VIRTUAL(CShowPerfLibDlg)
  38. protected:
  39. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  40. //}}AFX_VIRTUAL
  41. // Implementation
  42. protected:
  43. HICON m_hIcon;
  44. // Generated message map functions
  45. //{{AFX_MSG(CShowPerfLibDlg)
  46. virtual BOOL OnInitDialog();
  47. afx_msg void OnPaint();
  48. afx_msg HCURSOR OnQueryDragIcon();
  49. afx_msg void OnChangeRequest();
  50. afx_msg void OnGetCounter();
  51. //}}AFX_MSG
  52. DECLARE_MESSAGE_MAP()
  53. HINSTANCE m_hLib; // The handle to the perflib
  54. PM_OPEN_PROC* m_pfnOpenProc; // The function pointer to the perflib's open function
  55. PM_COLLECT_PROC* m_pfnCollectProc; // The function pointer to the perflib's collect function
  56. PM_CLOSE_PROC* m_pfnCloseProc; // The function pointer to the perflib's close function
  57. CTitleLibrary m_TitleLibrary;
  58. CPerfSelection m_wndPerfSelection;
  59. CString m_strPerfLib;
  60. CString m_strOpen;
  61. CString m_strCollect;
  62. CString m_strClose;
  63. CString m_strService;
  64. BOOL m_bRefCheck;
  65. BOOL InitPerfLibTree();
  66. BOOL InitService();
  67. BOOL OpenLibrary();
  68. BOOL GetData();
  69. BOOL Collect( CString strSpace );
  70. BOOL BuildSubTree( CString strSpace, BYTE* pBlob, DWORD dwNumObjects);
  71. BOOL CloseLibrary();
  72. void Log( DWORD dwState, CString strDesc );
  73. };
  74. //{{AFX_INSERT_LOCATION}}
  75. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  76. #endif // !defined(AFX_SHOWPERFLIBDLG_H__3FF01279_0700_11D3_B35B_00105A1469B7__INCLUDED_)