//+-------------------------------------------------------------------------
//
//  Microsoft Windows
//  Copyright (C) Microsoft Corporation, 1992 - 1993.
//
//  File:	multiqi.idl
//
//  Contents:	Definition of types for supporting multiple QI's at a time
//
//  History:	07-Aug-95 GregJen    Created
//
//--------------------------------------------------------------------------

[ local,
  pointer_default(unique)
]

interface MultiQiTypes
{

#ifndef DO_NO_IMPORTS
    import "iface.idl";
    import "objidl.idl";
    import "obase.idl";
#endif

typedef struct _InterfaceInfo {
        IID *          pIID;
        HRESULT         hr;

// the RAW form does not do Co{Un}Marshal calls
#ifdef RAW
        MInterfacePointer *
#else
        [iid_is(pIID)]   IUnknown *
#endif
                        pIF;
        } InterfaceInfoBlock;


typedef struct _rawInterfaceInfo {
        IID *          pIID;
        HRESULT         hr;

        MInterfacePointer * pIF;

        } RawInterfaceInfoBlock;
}
