61 lines
1.7 KiB
C++
61 lines
1.7 KiB
C++
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright (c) 1999-2001 Microsoft Corporation
|
|
//
|
|
// Module Name:
|
|
// TaskGetDomains.h
|
|
//
|
|
// Description:
|
|
// CTaskGetDomains implementation.
|
|
//
|
|
// Maintained By:
|
|
// Galen Barbee (GalenB) 22-NOV-1999
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
#pragma once
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
// Class Declarations
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
// CTaskGetDomains
|
|
class CTaskGetDomains
|
|
: public ITaskGetDomains
|
|
{
|
|
private:
|
|
// IUnknown
|
|
LONG m_cRef;
|
|
|
|
// ITaskGetDomains
|
|
IStream * m_pStream; // Interface marshalling stream
|
|
ITaskGetDomainsCallback * m_ptgdcb; // Marshalled interface
|
|
CRITICAL_SECTION m_csCallback; // Protects access to m_ptgdcb
|
|
|
|
CTaskGetDomains( void );
|
|
~CTaskGetDomains( void );
|
|
|
|
STDMETHOD( Init )(void);
|
|
|
|
HRESULT HrReleaseCurrentCallback( void );
|
|
HRESULT HrUnMarshallCallback( void );
|
|
|
|
STDMETHOD( ReceiveDomainResult )( HRESULT hrIn );
|
|
STDMETHOD( ReceiveDomainName )( BSTR bstrDomainNameIn );
|
|
|
|
public: // Methods
|
|
static HRESULT S_HrCreateInstance( IUnknown ** ppunkOut );
|
|
|
|
// IUnknown
|
|
STDMETHOD( QueryInterface )( REFIID riid, LPVOID *ppv );
|
|
STDMETHOD_( ULONG, AddRef )( void );
|
|
STDMETHOD_( ULONG, Release )( void );
|
|
|
|
// IDoTask / ITaskGetDomains
|
|
STDMETHOD( BeginTask )( void );
|
|
STDMETHOD( StopTask )( void );
|
|
STDMETHOD( SetCallback )( ITaskGetDomainsCallback * punkIn );
|
|
|
|
}; // class CTaskGetDomains
|