Nikolay Sivov : include: Added IRowPosition interface definition.

Alexandre Julliard julliard at winehq.org
Tue Jul 30 14:14:22 CDT 2013


Module: wine
Branch: master
Commit: 2fe34bfb094b93d825ebe6d1342e28804262398a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2fe34bfb094b93d825ebe6d1342e28804262398a

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Tue Jul 30 14:38:38 2013 +0400

include: Added IRowPosition interface definition.

---

 dlls/msdaps/usrmarshal.c |   60 +++++++++++++++++++++++++++++++++++
 include/Makefile.in      |    1 +
 include/oledb.idl        |    1 +
 include/rowpos.idl       |   77 ++++++++++++++++++++++++++++++++++++++++++++++
 tools/make_makefiles     |    1 +
 5 files changed, 140 insertions(+), 0 deletions(-)

diff --git a/dlls/msdaps/usrmarshal.c b/dlls/msdaps/usrmarshal.c
index b93340e..54c9b90 100644
--- a/dlls/msdaps/usrmarshal.c
+++ b/dlls/msdaps/usrmarshal.c
@@ -1279,3 +1279,63 @@ HRESULT __RPC_STUB IErrorRecords_AddErrorRecord_Stub(IErrorRecords* This, ERRORI
 
     return hr;
 }
+
+HRESULT __RPC_STUB IRowPosition_Initialize_Stub(IRowPosition* This, IUnknown *rowset, IErrorInfo **errorinfo)
+{
+    FIXME("(%p)->(%p %p): stub\n", This, rowset, errorinfo);
+    return E_NOTIMPL;
+}
+
+HRESULT __RPC_STUB IRowPosition_SetRowPosition_Stub(IRowPosition* This, HCHAPTER chapter, HROW row, DBPOSITIONFLAGS flags, IErrorInfo **errorinfo)
+{
+    FIXME("(%p)->(%lx %lx %d %p): stub\n", This, chapter, row, flags, errorinfo);
+    return E_NOTIMPL;
+}
+
+HRESULT __RPC_STUB IRowPosition_GetRowset_Stub(IRowPosition* This, REFIID riid, IUnknown **rowset, IErrorInfo **errorinfo)
+{
+    FIXME("(%p)->(%s %p %p): stub\n", This, debugstr_guid(riid), rowset, errorinfo);
+    return E_NOTIMPL;
+}
+
+HRESULT __RPC_STUB IRowPosition_GetRowPosition_Stub(IRowPosition* This, HCHAPTER *chapter, HROW *row, DBPOSITIONFLAGS *flags, IErrorInfo **errorinfo)
+{
+    FIXME("(%p)->(%p %p %p %p): stub\n", This, chapter, row, flags, errorinfo);
+    return E_NOTIMPL;
+}
+
+HRESULT __RPC_STUB IRowPosition_ClearRowPosition_Stub(IRowPosition* This, IErrorInfo **errorinfo)
+{
+    FIXME("(%p)->(%p): stub\n", This, errorinfo);
+    return E_NOTIMPL;
+}
+
+HRESULT CALLBACK IRowPosition_ClearRowPosition_Proxy(IRowPosition* This)
+{
+    FIXME("(%p): stub\n", This);
+    return E_NOTIMPL;
+}
+
+HRESULT CALLBACK IRowPosition_GetRowPosition_Proxy(IRowPosition* This, HCHAPTER *chapter, HROW *row, DBPOSITIONFLAGS *flags)
+{
+    FIXME("(%p)->(%p %p %p): stub\n", This, chapter, row, flags);
+    return E_NOTIMPL;
+}
+
+HRESULT CALLBACK IRowPosition_GetRowset_Proxy(IRowPosition* This, REFIID riid, IUnknown **rowset)
+{
+    FIXME("(%p)->(%s %p): stub\n", This, debugstr_guid(riid), rowset);
+    return E_NOTIMPL;
+}
+
+HRESULT CALLBACK IRowPosition_Initialize_Proxy(IRowPosition* This, IUnknown *rowset)
+{
+    FIXME("(%p)->(%p): stub\n", This, rowset);
+    return E_NOTIMPL;
+}
+
+HRESULT CALLBACK IRowPosition_SetRowPosition_Proxy(IRowPosition* This, HCHAPTER chapter, HROW row, DBPOSITIONFLAGS flags)
+{
+    FIXME("(%p)->(%lx %lx %d): stub\n", This, chapter, row, flags);
+    return E_NOTIMPL;
+}
diff --git a/include/Makefile.in b/include/Makefile.in
index cecc845..0818999 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -480,6 +480,7 @@ SRCDIR_INCLUDES = \
 	rmxfguid.h \
 	row.idl \
 	rowchg.idl \
+	rowpos.idl \
 	rpc.h \
 	rpcasync.h \
 	rpcdce.h \
diff --git a/include/oledb.idl b/include/oledb.idl
index 5cd287f..3d47fe7 100644
--- a/include/oledb.idl
+++ b/include/oledb.idl
@@ -64,6 +64,7 @@ typedef DWORD_PTR DBHASHVALUE;
 #include "opnrst.idl"
 #include "row.idl"
 #include "rowchg.idl"
+#include "rowpos.idl"
 #include "binres.idl"
 #include "crtrow.idl"
 #include "errrec.idl"
diff --git a/include/rowpos.idl b/include/rowpos.idl
new file mode 100644
index 0000000..1ef6807
--- /dev/null
+++ b/include/rowpos.idl
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2013 Nikolay Sivov
+ *
+ * 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
+ */
+
+[
+    object,
+    uuid(0c733a94-2a1c-11ce-ade5-00aa0044773d),
+    pointer_default(unique)
+]
+interface IRowPosition : IUnknown
+{
+    typedef DWORD DBPOSITIONFLAGS;
+
+    enum DBPOSITIONFLAGSENUM {
+        DBPOSITION_OK,
+        DBPOSITION_NOROW,
+        DBPOSITION_BOF,
+        DBPOSITION_EOF
+    };
+
+    [local]
+    HRESULT ClearRowPosition();
+
+    [call_as(ClearRowPosition)]
+    HRESULT RemoteClearRowPosition([out] IErrorInfo **errorinfo);
+
+    [local]
+    HRESULT GetRowPosition([out] HCHAPTER *chapter,
+                           [out] HROW *row,
+                           [out] DBPOSITIONFLAGS *position_flags);
+
+    [call_as(GetRowPosition)]
+    HRESULT RemoteGetRowPosition([out] HCHAPTER *chapter,
+                                 [out] HROW *row,
+                                 [out] DBPOSITIONFLAGS *position_flags,
+                                 [out] IErrorInfo **errorinfo);
+    [local]
+    HRESULT GetRowset([in] REFIID riid,
+                      [out, iid_is(riid)] IUnknown **rowset);
+
+    [call_as(GetRowset)]
+    HRESULT RemoteGetRowset([in] REFIID riid,
+                            [out, iid_is(riid)] IUnknown **rowset,
+                            [out] IErrorInfo **errorinfo);
+
+    [local]
+    HRESULT Initialize([in] IUnknown *rowset);
+
+    [call_as(Initialize)]
+    HRESULT RemoteInitialize([in] IUnknown *rowset,
+                             [out] IErrorInfo **errorinfo);
+
+    [local]
+    HRESULT SetRowPosition([in] HCHAPTER chapter,
+                           [in] HROW row,
+                           [in] DBPOSITIONFLAGS flags);
+
+    [call_as(SetRowPosition)]
+    HRESULT RemoteSetRowPosition([in] HCHAPTER chapter,
+                                 [in] HROW row,
+                                 [in] DBPOSITIONFLAGS flags,
+                                 [out] IErrorInfo **errorinfo);
+}
diff --git a/tools/make_makefiles b/tools/make_makefiles
index 6d4e8a7..566ca0d 100755
--- a/tools/make_makefiles
+++ b/tools/make_makefiles
@@ -155,6 +155,7 @@ my %private_idl_headers = (
     "opnrst.idl" => 1,
     "row.idl" => 1,
     "rowchg.idl" => 1,
+    "rowpos.idl" => 1,
     "rstbas.idl" => 1,
     "rstinf.idl" => 1,
     "rstloc.idl" => 1,




More information about the wine-cvs mailing list