2025-11-28 00:35:46 +09:00

56 lines
1.6 KiB
C++

////////////////////////////////////////////////////////////////////////////////
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
// PARTICULAR PURPOSE.
//
// Copyright (c) Microsoft Corporation. All rights reserved.
////////////////////////////////////////////////////////////////////////////////
#pragma once
// Public Headers
#include <FunctionDiscoveryProvider.h>
//------------------------------------------------------------------------------
// CSimpleThermostatServiceProvider
// This class is used by Function Discovery (FD) to create the correct
// proxy object when a client asks for CLSID_SimpleThermostatProxy from an
// FD Function Instance supporting ISimpleThermostat.
//------------------------------------------------------------------------------
class CSimpleThermostatServiceProvider :
public IFunctionDiscoveryServiceProvider
{
private:
~CSimpleThermostatServiceProvider();
public:
CSimpleThermostatServiceProvider();
//
// IFunctionDiscoveryServiceProvider Implementation
//
STDMETHODIMP Initialize(
__in IFunctionInstance *pIFunctionInstance,
__in REFIID riid,
__deref_out_opt void **ppvObject
);
//
// IUnknown Implementation
//
STDMETHODIMP QueryInterface(
__in REFIID riid,
__deref_out_opt void** ppvObject
);
STDMETHODIMP_(ULONG) AddRef();
STDMETHODIMP_(ULONG) Release();
private:
LONG m_cRef;
};// CSimpleThermostatServiceProvider