From 4f6c58dcd8b7981312ed6e6df3db785b366df153 Mon Sep 17 00:00:00 2001 From: Huw Davies Date: Wed, 28 Oct 2009 13:44:06 +0000 Subject: [PATCH] include: Add row.idl. --- include/Makefile.in | 1 + include/oledb.idl | 1 + include/row.idl | 42 ++++++++++++++++++++++++++++++++++++++++++ tools/make_makefiles | 1 + 4 files changed, 45 insertions(+) create mode 100644 include/row.idl diff --git a/include/Makefile.in b/include/Makefile.in index f8fbfc9f544..c32137f4dd9 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -395,6 +395,7 @@ SRCDIR_INCLUDES = \ regstr.h \ richedit.h \ rmxfguid.h \ + row.idl \ rpc.h \ rpcasync.h \ rpcdce.h \ diff --git a/include/oledb.idl b/include/oledb.idl index 3f524eb7dc3..1aeacd73780 100644 --- a/include/oledb.idl +++ b/include/oledb.idl @@ -56,6 +56,7 @@ typedef DWORD DBHASHVALUE; #include "dbdsad.idl" #include "sesprp.idl" #include "opnrst.idl" +#include "row.idl" #include "binres.idl" #include "crtrow.idl" diff --git a/include/row.idl b/include/row.idl new file mode 100644 index 00000000000..f56eade5de1 --- /dev/null +++ b/include/row.idl @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2009 Huw Davies + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +[ + local, + object, + uuid(0c733ab4-2a1c-11ce-ade5-00aa0044773d), + pointer_default(unique) +] +interface IRow : IUnknown +{ + [local] + HRESULT GetColumns([in] DBORDINAL cColumns, + [in, out, size_is(cColumns), annotation("__inout_ecount(cColumns)")] DBCOLUMNACCESS rgColumns[]); + + + HRESULT GetSourceRowset([in, annotation("__in")] REFIID riid, + [out, iid_is(riid), annotation("__deref_opt_out_opt")] IUnknown **ppRowset, + [out, annotation("__out_opt")] HROW *phRow); + + HRESULT Open([in, unique, annotation("__in_opt")] IUnknown *pUnkOuter, + [in, annotation("__in")] DBID *pColumnID, + [in, annotation("__in")] REFGUID rguidColumnType, + [in] DWORD dwBindFlags, + [in, annotation("__in")] REFIID riid, + [out, iid_is(riid), annotation("__deref_opt_out")] IUnknown **ppUnk); +} diff --git a/tools/make_makefiles b/tools/make_makefiles index 28c1e1cde13..f707564a5e2 100755 --- a/tools/make_makefiles +++ b/tools/make_makefiles @@ -125,6 +125,7 @@ my %private_idl_headers = ( "devenum.idl" => 1, "dyngraph.idl" => 1, "opnrst.idl" => 1, + "row.idl" => 1, "rstbas.idl" => 1, "rstinf.idl" => 1, "rstloc.idl" => 1,