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

#include "idlmulti.h"
//

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


interface IConvertType : IUnknown {

typedef DWORD DBCONVERTFLAGS;

enum DBCONVERTFLAGSENUM {
	DBCONVERTFLAGS_COLUMN = 0x000,
	DBCONVERTFLAGS_PARAMETER = 0x001,
};

// VERSION 2.0
cpp_quote("//@@@+ V2.0")
cpp_quote("#if( OLEDBVER >= 0x0200 )")
enum DBCONVERTFLAGSENUM20 {	
	DBCONVERTFLAGS_ISLONG  = 0x002,
	DBCONVERTFLAGS_ISFIXEDLENGTH  = 0x004,
	DBCONVERTFLAGS_FROMVARIANT	= 0x008,
};
cpp_quote("#endif // OLEDBVER >= 0x0200")
cpp_quote("//@@@- V2.0")

	[local]
	HRESULT CanConvert(
		[in] DBTYPE wFromType,
		[in] DBTYPE wToType,
		[in] DBCONVERTFLAGS dwConvertFlags
	);

	[call_as(CanConvert)]
	HRESULT RemoteCanConvert(
		[in] DBTYPE wFromType,
		[in] DBTYPE wToType,
		[in] DBCONVERTFLAGS dwConvertFlags,
		[out] IErrorInfo ** ppErrorInfoRem
	);

}

