xref: /reactos/sdk/include/psdk/rstbas.idl (revision fb5d5ecd)
1/*
2 * Copyright (C) 2009 Huw Davies
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19[
20    local,
21    object,
22    uuid(0c733a7c-2a1c-11ce-ade5-00aa0044773d),
23    pointer_default(unique)
24]
25interface IRowset : IUnknown
26{
27    typedef DWORD DBROWOPTIONS;
28
29    HRESULT AddRefRows([in] DBCOUNTITEM cRows,
30                       [in, size_is(cRows)] const HROW rghRows[],
31                       [out, size_is(cRows)] DBREFCOUNT rgRefCounts[],
32                       [out, size_is(cRows)] DBROWSTATUS rgRowStatus[]);
33
34    HRESULT GetData([in] HROW hRow,
35                    [in] HACCESSOR hAccessor,
36                    [out] void *pData);
37
38    HRESULT GetNextRows([in] HCHAPTER hReserved,
39                        [in] DBROWOFFSET lRowsOffset,
40                        [in] DBROWCOUNT cRows,
41                        [out] DBCOUNTITEM *pcRowObtained,
42                        [out, size_is(,cRows)] HROW **prghRows);
43
44    HRESULT ReleaseRows([in] DBCOUNTITEM cRows,
45                        [in, size_is(cRows)] const HROW rghRows[],
46                        [in, size_is(cRows)] DBROWOPTIONS rgRowOptions[],
47                        [out, size_is(cRows)] DBREFCOUNT rgRefCounts[],
48                        [out, size_is(cRows)] DBROWSTATUS rgRowStatus[]);
49
50    HRESULT RestartPosition([in] HCHAPTER hReserved);
51}
52