summaryrefslogtreecommitdiff
path: root/Shutdown/ShutdownSite.h
blob: 599ebb25290a7973807f02d76f196a50e5c44c6e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
// ShutdownSite.h: interface for the CShutdownSite class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SHUTDOWNSITE_H__F3AF1F43_93A1_11D3_BFC3_0020182B97FC__INCLUDED_)
#define AFX_SHUTDOWNSITE_H__F3AF1F43_93A1_11D3_BFC3_0020182B97FC__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "shutdown.h"
#include "../common/interfaces.h"

#include "logdlg.h"
#include "ItemDlg.h"
#include "ShutdownCP.h"

class ATL_NO_VTABLE CShutdownSite :
	public CComObjectRootEx<CComMultiThreadModel>,
	public IDispatchImpl<INightSecSiteInfo, &IID_INightSecSiteInfo, &LIBID_SHUTDOWNLib>,
	public INightSecErrorLog,
	public CProxyDShutdownEvents<CShutdownSite>,
	public IConnectionPointContainerImpl<CShutdownSite>
{
public:
	CShutdownSite();
	virtual ~CShutdownSite();

	void SetSite();
	void ClearSite();

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CShutdownSite)
	COM_INTERFACE_ENTRY(IDispatch)
	COM_INTERFACE_ENTRY(INightSecSiteInfo)
	COM_INTERFACE_ENTRY(INightSecErrorLog)
	COM_INTERFACE_ENTRY_IMPL(IConnectionPointContainer)
END_COM_MAP()

BEGIN_CONNECTION_POINT_MAP(CShutdownSite)
	CONNECTION_POINT_ENTRY(DIID_DShutdownEvents)
END_CONNECTION_POINT_MAP()


// INightSecSiteInfo
	STDMETHOD(get_Info)(/*[in]*/ NightSecSiteInfo nsItem, /*[out, retval]*/ VARIANT* pvVal)
	{
		::VariantClear(pvVal);
		return S_FALSE;
	}

// INightSecErrorLog
	STDMETHOD(AddError)(/*[in]*/ IUnknown* pUnk);
	STDMETHOD(HasErrors)(/*[out, retval]*/ BOOL* pbRet);

// Data
public:
	CLogDlg m_log;
	CItemDlg m_dlgItems;
};

#endif // !defined(AFX_SHUTDOWNSITE_H__F3AF1F43_93A1_11D3_BFC3_0020182B97FC__INCLUDED_)