589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync/*
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * Copyright (C) 2008 Louis Lenders
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * This library is free software; you can redistribute it and/or
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * modify it under the terms of the GNU Lesser General Public
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * License as published by the Free Software Foundation; either
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * version 2.1 of the License, or (at your option) any later version.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * This library is distributed in the hope that it will be useful,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * Lesser General Public License for more details.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * You should have received a copy of the GNU Lesser General Public
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * License along with this library; if not, write to the Free Software
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync */
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync/*
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * a choice of LGPL license versions is made available with the language indicating
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * of the LGPL is applied is otherwise unspecified.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync */
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncimport "wtypes.idl";
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncimport "objidl.idl";
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncimport "unknwn.idl";
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsynctypedef struct tagComCallData
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync{
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync DWORD dwDispid;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync DWORD dwReserved;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync void *pUserDefined;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync} ComCallData;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync/***************************************************************************
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * IContextCallback
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync */
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync[
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync local,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync object,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync uuid(000001da-0000-0000-c000-000000000046),
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync pointer_default(unique)
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync]
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncinterface IContextCallback : IUnknown
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync{
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync typedef HRESULT (__stdcall *PFNCONTEXTCALL)(ComCallData *pParam);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync HRESULT ContextCallback(
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync [in] PFNCONTEXTCALL pCallback,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync [in] ComCallData *pParam,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync [in] REFIID riid,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync [in] int iMethod,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync [in] IUnknown *pUnk);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync}