winepulse: Move session_wrapper_create into mmdevapi.
[wine.git] / include / wmsbuffer.idl
bloba9d76898982f67ab4bd3a207d1cea6f42c83d4e8
1 /*
2 * Copyright 2012 André Hentschel
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.
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.
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
19 import "objidl.idl";
22 object,
23 uuid(e1cd3524-03d7-11d2-9eed-006097d2d7cf),
24 pointer_default(unique),
25 local
27 interface INSSBuffer : IUnknown
29 HRESULT GetLength(
30 [out] DWORD *pdwLength);
31 HRESULT SetLength(
32 [in] DWORD dwLength);
34 HRESULT GetMaxLength(
35 [out] DWORD *pdwLength);
37 HRESULT GetBuffer(
38 [out] BYTE **ppdwBuffer);
40 HRESULT GetBufferAndLength(
41 [out] BYTE **ppdwBuffer,
42 [out] DWORD *pdwLength);
46 object,
47 local,
48 uuid(4f528693-1035-43fe-b428-757561ad3a68),
50 interface INSSBuffer2 : INSSBuffer
52 HRESULT GetSampleProperties(DWORD size, BYTE *props);
53 HRESULT SetSampleProperties(DWORD size, BYTE *props);
57 object,
58 local,
59 uuid(c87ceaaf-75be-4bc4-84eb-ac2798507672),
61 interface INSSBuffer3 : INSSBuffer2
63 HRESULT SetProperty(GUID id, void *value, DWORD size);
64 HRESULT GetProperty(GUID id, void *value, DWORD *size);