///////////////////////////////////////////////////////////////////////////////
// PMCDeviceCtrl.h

#ifndef __PMCDEVICECTRL_H__
#define __PMCDEVICECTRL_H__

#include <atlbase.h>
#include <atlcom.h>


#include "resource.h"       // main symbols
#include "PMCDeviceW32.h"
#include "TcBase.h"
#include "PMCDeviceClassFactory.h"
#include "TcOCFCtrlImpl.h"

class CPMCDeviceCtrl 
	: public CComObjectRootEx<CComMultiThreadModel>
	, public CComCoClass<CPMCDeviceCtrl, &CLSID_PMCDeviceCtrl>
	, public IPMCDeviceCtrl
	, public ITcOCFCtrlImpl<CPMCDeviceCtrl, CPMCDeviceClassFactory>
{
public:
	CPMCDeviceCtrl();
	virtual ~CPMCDeviceCtrl();

DECLARE_REGISTRY_RESOURCEID(IDR_PMCDEVICECTRL)
DECLARE_NOT_AGGREGATABLE(CPMCDeviceCtrl)

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CPMCDeviceCtrl)
	COM_INTERFACE_ENTRY(IPMCDeviceCtrl)
	COM_INTERFACE_ENTRY(ITcCtrl)
	COM_INTERFACE_ENTRY(ITcCtrl2)
END_COM_MAP()

};

#endif // #ifndef __PMCDEVICECTRL_H__
