mirror of https://github.com/tongzx/nt5src
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.
61 lines
1.2 KiB
61 lines
1.2 KiB
//+---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 2000.
|
|
//
|
|
// File: P R O V I D E R . H
|
|
//
|
|
// Contents: Registrar abstraction for a provider.
|
|
//
|
|
// Notes:
|
|
//
|
|
// Author: mbend 14 Sep 2000
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
|
|
#pragma once
|
|
#include "uhres.h" // main symbols
|
|
|
|
#include "upnphost.h"
|
|
#include "hostp.h"
|
|
#include "UString.h"
|
|
#include "ComUtility.h"
|
|
#include "Table.h"
|
|
#include "RegDef.h"
|
|
|
|
// Typedefs
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CProvider
|
|
class CProvider
|
|
{
|
|
public:
|
|
CProvider();
|
|
~CProvider();
|
|
|
|
HRESULT HrInitialize(
|
|
const wchar_t * szProgIDProviderClass,
|
|
const wchar_t * szInitString,
|
|
const wchar_t * szContainerId);
|
|
|
|
void Transfer(CProvider & ref);
|
|
void Clear();
|
|
private:
|
|
CProvider(const CProvider &);
|
|
CProvider & operator=(const CProvider &);
|
|
|
|
CUString m_strContainerId;
|
|
IUPnPDeviceProviderPtr m_pDeviceProvider;
|
|
};
|
|
|
|
inline void TypeTransfer(CProvider & dst, CProvider & src)
|
|
{
|
|
dst.Transfer(src);
|
|
}
|
|
|
|
inline void TypeClear(CProvider & type)
|
|
{
|
|
type.Clear();
|
|
}
|
|
|