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.

126 lines
2.8 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. /*++
  3. Copyright (C) Microsoft Corporation, 1997 - 1999
  4. Module Name:
  5. LocalFileLoggingNode.h
  6. Abstract:
  7. Header file for the CLocalFileLoggingNode subnode
  8. See LocalFileLoggingNode.cpp for implementation.
  9. Author:
  10. Michael A. Maguire 12/15/97
  11. Revision History:
  12. mmaguire 12/15/97 - created
  13. --*/
  14. //////////////////////////////////////////////////////////////////////////////
  15. #if !defined(_IAS_LOCAL_FILE_LOGGING_NODE_H_)
  16. #define _IAS_LOCAL_FILE_LOGGING_NODE_H_
  17. //////////////////////////////////////////////////////////////////////////////
  18. // BEGIN INCLUDES
  19. //
  20. // where we can find what this class derives from:
  21. //
  22. #include "SnapinNode.h"
  23. //
  24. //
  25. // where we can find what this class has or uses:
  26. //
  27. //
  28. // END INCLUDES
  29. //////////////////////////////////////////////////////////////////////////////
  30. class CLocalFileLoggingPage1;
  31. class CLocalFileLoggingPage2;
  32. class CLoggingMachineNode;
  33. class CLoggingComponentData;
  34. class CLoggingComponent;
  35. class CLocalFileLoggingNode : public CSnapinNode< CLocalFileLoggingNode, CLoggingComponentData, CLoggingComponent >
  36. {
  37. public:
  38. SNAPINMENUID(IDM_LOCAL_FILE_LOGGING_NODE)
  39. BEGIN_SNAPINTOOLBARID_MAP(CLocalFileLoggingNode)
  40. // SNAPINTOOLBARID_ENTRY(IDR_CLIENT1_TOOLBAR)
  41. // SNAPINTOOLBARID_ENTRY(IDR_CLIENT2_TOOLBAR)
  42. END_SNAPINTOOLBARID_MAP()
  43. // Constructor/Destructor.
  44. CLocalFileLoggingNode( CSnapInItem * pParentNode );
  45. ~CLocalFileLoggingNode();
  46. // Used to get access to snapin-global data.
  47. CLoggingComponentData * GetComponentData( void );
  48. // Used to get access to server-global data.
  49. CLoggingMachineNode * GetServerRoot( void );
  50. HRESULT DataRefresh(ISdo* pSdo);
  51. // SDO management.
  52. HRESULT InitSdoPointers( ISdo *pSdoServer );
  53. HRESULT LoadCachedInfoFromSdo( void );
  54. // Some overrides for standard MMC functionality.
  55. STDMETHOD(CreatePropertyPages)(
  56. LPPROPERTYSHEETCALLBACK pPropertySheetCallback
  57. , LONG_PTR handle
  58. , IUnknown* pUnk
  59. , DATA_OBJECT_TYPES type
  60. );
  61. STDMETHOD(QueryPagesFor)( DATA_OBJECT_TYPES type );
  62. virtual HRESULT OnPropertyChange(
  63. LPARAM arg
  64. , LPARAM param
  65. , IComponentData * pComponentData
  66. , IComponent * pComponent
  67. , DATA_OBJECT_TYPES type
  68. );
  69. OLECHAR* GetResultPaneColInfo(int nCol);
  70. virtual HRESULT SetVerbs( IConsoleVerb * pConsoleVerb );
  71. private:
  72. // This string contains a cache of the info from the SDO
  73. // which will show up in the description column for this node.
  74. // In the case of the local file logging node,
  75. // this is the log file directory.
  76. CComBSTR m_bstrDescription;
  77. // Pointer to our Accounting Server Data Object;
  78. CComPtr<ISdo> m_spSdoAccounting;
  79. // Smart pointer to interface for telling service to reload data.
  80. CComPtr<ISdoServiceControl> m_spSdoServiceControl;
  81. };
  82. #endif // _IAS_LOCAL_FILE_LOGGING_NODE_H_