windows-nt/Source/XPSP1/NT/admin/hmonitor/snapin/action.h
2020-09-26 16:20:57 +08:00

83 lines
2.1 KiB
C++

// Action.h: interface for the CAction class.
//
// Copyright (c) 2000 Microsoft Corporation
//
// 03/18/00 v-marfin : bug 59492 : Changed CActionStatusListener from protected to public
// for access in CActionPolicy::CreateNewChildAction(). See comments there.
//
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_ACTION_H__10AC036A_5D70_11D3_939D_00A0CC406605__INCLUDED_)
#define AFX_ACTION_H__10AC036A_5D70_11D3_939D_00A0CC406605__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "HMObject.h"
#include "ActionScopeItem.h"
#include "ActionStatusListener.h"
class CAction : public CHMObject
{
DECLARE_DYNCREATE(CAction)
// construction/destruction
public:
CAction();
virtual ~CAction();
// WMI Operations
public:
CString GetObjectPath();
CString GetConsumerClassName() { return m_sConsumerClassName; }
CWbemClassObject* GetConsumerClassObject();
CWbemClassObject* GetAssociatedConfigObjects();
CWbemClassObject* GetAssociationObjects();
CWbemClassObject* GetA2CAssociation(const CString& sConfigGuid);
CString GetConditionString(const CString& sConfigGuid);
bool CreateStatusListener();
void DestroyStatusListener();
// v-marfin 59492 : Added this function to get the state at load time
CString GetStatusObjectPath();
// v-marfin : bug 59492 : Changed CActionStatusListener from protected to public
// for access in CActionPolicy::CreateNewChildAction(). See comments there.
CActionStatusListener* m_pActionStatusListener;
protected:
CString m_sConsumerClassName;
// Clipboard Operations
public:
virtual bool Cut();
virtual bool Copy();
virtual bool Paste();
// Operations
public:
virtual bool Refresh();
// Scope Item Members
public:
virtual CScopePaneItem* CreateScopeItem();
// Action Type Info
public:
CString GetTypeGuid();
void SetTypeGuid(const CString& sGuid);
int GetType();
void SetType(int iType);
CString GetUITypeName();
protected:
int m_iType;
CString m_sTypeGuid;
};
#include "Action.inl"
#endif // !defined(AFX_ACTION_H__10AC036A_5D70_11D3_939D_00A0CC406605__INCLUDED_)