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.
86 lines
2.9 KiB
86 lines
2.9 KiB
/*++
|
|
|
|
Copyright (C) 1998-1999 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
smrootnd.h
|
|
|
|
Abstract:
|
|
|
|
This object is used to represent the Performance Logs and Alerts root node
|
|
|
|
--*/
|
|
|
|
#ifndef _CLASS_SMROOTNODE_
|
|
#define _CLASS_SMROOTNODE_
|
|
|
|
#include "smnode.h"
|
|
#include "smctrsv.h"
|
|
#include "smtracsv.h"
|
|
#include "smalrtsv.h"
|
|
|
|
|
|
class CSmRootNode : public CSmNode
|
|
{
|
|
// constructor/destructor
|
|
public:
|
|
CSmRootNode ();
|
|
virtual ~CSmRootNode();
|
|
|
|
// public methods
|
|
public:
|
|
|
|
virtual CSmRootNode* CastToRootNode( void ) { return this; };
|
|
void Destroy( void );
|
|
|
|
HSCOPEITEM GetScopeItemHandle ( void ) { return m_hRootNode; };
|
|
void SetScopeItemHandle ( HSCOPEITEM hRootNode )
|
|
{ m_hRootNode = hRootNode; };
|
|
|
|
HSCOPEITEM GetParentScopeItemHandle ( void ) { return m_hParentNode; };
|
|
void SetParentScopeItemHandle ( HSCOPEITEM hParentNode )
|
|
{ m_hParentNode = hParentNode; };
|
|
|
|
BOOL IsExpanded(){ return m_bIsExpanded; };
|
|
void SetExpanded( BOOL bExp){ m_bIsExpanded = bExp; };
|
|
|
|
BOOL IsExtension(){ return m_bIsExtension; };
|
|
void SetExtension( BOOL bExtension){ m_bIsExtension = bExtension; };
|
|
|
|
BOOL IsLogService ( MMC_COOKIE mmcCookie );
|
|
BOOL IsAlertService ( MMC_COOKIE mmcCookie );
|
|
|
|
BOOL IsLogQuery ( MMC_COOKIE mmcCookie );
|
|
|
|
CSmCounterLogService* GetCounterLogService ( void )
|
|
{ return &m_CounterLogService; };
|
|
CSmTraceLogService* GetTraceLogService ( void )
|
|
{ return &m_TraceLogService; };
|
|
CSmAlertService* GetAlertService ( void )
|
|
{ return &m_AlertService; };
|
|
|
|
DWORD UpdateServiceConfig();
|
|
|
|
private:
|
|
|
|
enum ePrivateValue {
|
|
eResetDelaySeconds = 60,
|
|
eRestartDelayMilliseconds = 0
|
|
};
|
|
|
|
HSCOPEITEM m_hRootNode; // Root node handle
|
|
HSCOPEITEM m_hParentNode; // Parent node is NULL for standalone
|
|
BOOL m_bIsExpanded;
|
|
BOOL m_bIsExtension;
|
|
|
|
CSmCounterLogService m_CounterLogService; // service object: 1 per component per node type
|
|
CSmTraceLogService m_TraceLogService; // service object: 1 per component per node type
|
|
CSmAlertService m_AlertService; // service object: 1 per component per node type
|
|
};
|
|
|
|
typedef CSmRootNode SLROOT;
|
|
typedef CSmRootNode* PSROOT;
|
|
|
|
|
|
#endif //_CLASS_SMROOTNODE_
|