50 lines
1.3 KiB
C
50 lines
1.3 KiB
C
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
// Copyright (C) Microsoft Corporation, 2000.
|
||
|
//
|
||
|
// File: I N T E R F A C E H E L P E R . H
|
||
|
//
|
||
|
// Contents: Manages dealing with multiple interfaces and interface changes
|
||
|
//
|
||
|
// Notes:
|
||
|
//
|
||
|
// Author: mbend 6 Feb 2001
|
||
|
//
|
||
|
//----------------------------------------------------------------------------
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "upsync.h"
|
||
|
#include "ulist.h"
|
||
|
#include "InterfaceList.h"
|
||
|
|
||
|
class CInterfaceHelper : public CUPnPInterfaceChange
|
||
|
{
|
||
|
public:
|
||
|
~CInterfaceHelper();
|
||
|
|
||
|
static CInterfaceHelper & Instance();
|
||
|
|
||
|
void OnInterfaceChange(const InterfaceMappingList & interfaceMappingList);
|
||
|
|
||
|
HRESULT HrInitialize();
|
||
|
HRESULT HrShutdown();
|
||
|
|
||
|
HRESULT HrResolveAddress(DWORD dwIpAddress, GUID & guidInterface);
|
||
|
private:
|
||
|
CInterfaceHelper();
|
||
|
CInterfaceHelper(const CInterfaceHelper &);
|
||
|
CInterfaceHelper & operator=(const CInterfaceHelper &);
|
||
|
|
||
|
static CInterfaceHelper s_instance;
|
||
|
|
||
|
HRESULT HrGenerateDirtyGuidList(
|
||
|
const InterfaceMappingList & interfaceMappingListOld,
|
||
|
const InterfaceMappingList & interfaceMappingListNew,
|
||
|
InterfaceList & interfaceList);
|
||
|
|
||
|
CUCriticalSection m_critSec;
|
||
|
InterfaceMappingList m_interfaceMappingList;
|
||
|
};
|