//-----------------------------------------------------------------------------
// File:			mulres.idl
//
// Copyright:		Copyright (c) Microsoft Corporation          
//
// Contents: 		OLE DB interface definition
//
// Comments: 		
//
//-----------------------------------------------------------------------------

#include "idlmulti.h"
//

    REMOTED_INTERFACE(0c733a90-2a1c-11ce-ade5-00aa0044773d)


interface IMultipleResults : IUnknown {

typedef DB_LRESERVE DBRESULTFLAG;

enum DBRESULTFLAGENUM
    {
    DBRESULTFLAG_DEFAULT   = 0,
    DBRESULTFLAG_ROWSET    = 1,
    DBRESULTFLAG_ROW       = 2,
    };

	[local]
	HRESULT GetResult(
		[in, annotation("__in_opt")] IUnknown * pUnkOuter,
		[in] DBRESULTFLAG lResultFlag,
		[in, annotation("__in")] REFIID riid,
		[out, annotation("__out_opt")] DBROWCOUNT * pcRowsAffected,
		[out, iid_is(riid), annotation("__deref_opt_out_opt")] IUnknown ** ppRowset
	);

	[call_as(GetResult)]
	HRESULT RemoteGetResult(
		[in] IUnknown * pUnkOuter,
		[in] DBRESULTFLAG lResultFlag,
		[in] REFIID riid,
		[in, out, unique] DBROWCOUNT * pcRowsAffected,
		[in, out, unique, iid_is(riid)] IUnknown ** ppRowset,
		[out] IErrorInfo ** ppErrorInfoRem
	);

}

