[CABMAN]
[reactos.git] / reactos / dll / directx / quartz / fil_data.idl
1 /*
2 * Copyright (C) 2009 Vitaliy Margolen
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 import "objidl.idl";
20 import "strmif.idl";
21 import "unknwn.idl";
22
23
24 /*****************************************************************************
25 * IAMFilterData interface
26 *
27 * Notes:
28 * - This interface is deprecated and IFilterMapper2 should be used instead.
29 * - There is no full replacement for IAMFilterData::ParseFilterData short of manually
30 * parsing out the REGFILTER2 struct from the binary blob.
31 */
32 [
33 object,
34 uuid(97f7c4d4-547b-4a5f-8332-536430ad2e4d),
35 pointer_default(unique)
36 ]
37 interface IAMFilterData : IUnknown
38 {
39 typedef [unique] IAMFilterData *LPIAMFILTERDATA;
40
41 HRESULT ParseFilterData(
42 [in] BYTE * rgbFilterData,
43 [in] ULONG cb,
44 [out] BYTE ** prgbRegFilter2);
45
46 HRESULT CreateFilterData(
47 [in] REGFILTER2 * prf2,
48 [out] BYTE ** prgbFilterData,
49 [out] ULONG * pcb);
50 }