ReactOS 0.4.15-dev-8076-g06e89b2
avifil32.idl
Go to the documentation of this file.
1/*
2 * COM Classes for avifil32
3 *
4 * Copyright 2010 Alexandre Julliard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#pragma makedep proxy
22#pragma makedep register
23
24import "wtypes.idl";
25import "unknwn.idl";
26
27typedef struct _AVISTREAMINFOW
28{
48
49[
50 object,
51 uuid(00020021-0000-0000-c000-000000000046)
52]
54{
55 HRESULT Create(LPARAM lParam1, LPARAM lParam2);
57 LONG FindSample(LONG lPos, LONG lFlags);
58 HRESULT ReadFormat(LONG lPos, [out,size_is(*lpcbFormat)] char *lpFormat, [in,out] LONG *lpcbFormat);
59 HRESULT SetFormat(LONG lPos, [in,size_is(cbFormat)] char *lpFormat, LONG cbFormat);
60 HRESULT Read(LONG lStart, LONG lSamples, [out,size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer, LONG *plBytes, LONG *plSamples);
61 HRESULT Write(LONG lStart, LONG lSamples, [in,size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer, DWORD dwFlags, LONG *plSampWritten, LONG *plBytesWritten);
62 HRESULT Delete(LONG lStart, LONG lSamples);
63 HRESULT ReadData(DWORD fcc, [out,size_is(*lpcbBuffer)] char *lpBuffer, [in,out] LONG *lpcbBuffer);
64 HRESULT WriteData(DWORD fcc, [in,size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer);
66};
67
68typedef struct _AVIFILEINFOW
69{
83
84[
85 object,
86 uuid(00020020-0000-0000-c000-000000000046)
87]
88interface IAVIFile : IUnknown
89{
93 HRESULT WriteData(DWORD fcc, [in,size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer);
94 HRESULT ReadData(DWORD fcc, [out,size_is(*lpcbBuffer)] char *lpBuffer, [in,out] LONG *lpcbBuffer);
97};
98
99[
100 helpstring("Microsoft AVI Files"),
101 threading(both),
102 uuid(00020000-0000-0000-C000-000000000046)
103]
104coclass AVIFile { interface IAVIFile; }
105
106[
107 helpstring("AVI Compressed Stream"),
109 uuid(00020001-0000-0000-c000-000000000046)
110]
111coclass ICMStream { interface IAVIStream; }
112
113[
114 helpstring("Microsoft Wave File"),
115 threading(both),
116 uuid(00020003-0000-0000-c000-000000000046)
117]
118coclass WAVFile { interface IAVIFile; }
119
120[
121 helpstring("IAVIStream & IAVIFile Proxy"),
122 threading(both),
123 uuid(0002000d-0000-0000-c000-000000000046)
124]
125coclass PSFactoryBuffer { interface IFactoryBuffer; }
126
127[
128 helpstring("ACM Compressed Audio Stream"),
129 threading(both),
130 uuid(0002000f-0000-0000-c000-000000000046)
131]
132coclass ACMStream { interface IAVIStream; }
struct _AVISTREAMINFOW AVISTREAMINFOW
struct _AVIFILEINFOW AVIFILEINFOW
coclass AVIFile helpstring("AVI Compressed Stream")
LPARAM lParam
Definition: combotst.c:139
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
Definition: db.cpp:175
#define threading(model)
Definition: exdisp.idl:30
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
GLfloat f
Definition: glext.h:7540
GLuint in
Definition: glext.h:9616
HRESULT WriteData(DWORD fcc, [in, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer)
HRESULT ReadData(DWORD fcc, [out, size_is(*lpcbBuffer)] char *lpBuffer, [in, out] LONG *lpcbBuffer)
HRESULT Info(AVIFILEINFOW *pfi, LONG lSize)
HRESULT GetStream(IAVIStream **ppStream, DWORD fccType, LONG lParam)
HRESULT DeleteStream(DWORD fccType, LONG lParam)
HRESULT EndRecord(void)
HRESULT CreateStream(IAVIStream **ppStream, AVISTREAMINFOW *psi)
HRESULT Write(LONG lStart, LONG lSamples, [in, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer, DWORD dwFlags, LONG *plSampWritten, LONG *plBytesWritten)
HRESULT Info(AVISTREAMINFOW *psi, LONG lSize)
HRESULT Delete(LONG lStart, LONG lSamples)
HRESULT ReadFormat(LONG lPos, [out, size_is(*lpcbFormat)] char *lpFormat, [in, out] LONG *lpcbFormat)
HRESULT SetInfo(AVISTREAMINFOW *plInfo, LONG cbInfo)
HRESULT ReadData(DWORD fcc, [out, size_is(*lpcbBuffer)] char *lpBuffer, [in, out] LONG *lpcbBuffer)
HRESULT SetFormat(LONG lPos, [in, size_is(cbFormat)] char *lpFormat, LONG cbFormat)
LONG FindSample(LONG lPos, LONG lFlags)
HRESULT Read(LONG lStart, LONG lSamples, [out, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer, LONG *plBytes, LONG *plSamples)
HRESULT Create(LPARAM lParam1, LPARAM lParam2)
HRESULT WriteData(DWORD fcc, [in, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer)
Definition: msctf.idl:550
#define d
Definition: ke_i.h:81
long LONG
Definition: pedump.c:60
static FILE * out
Definition: regtests2xml.c:44
DWORD dwRate
Definition: avifil32.idl:78
WCHAR szFileType[64]
Definition: avifil32.idl:81
DWORD dwMaxBytesPerSec
Definition: avifil32.idl:70
DWORD dwWidth
Definition: avifil32.idl:75
DWORD dwCaps
Definition: avifil32.idl:72
DWORD dwStreams
Definition: avifil32.idl:73
DWORD dwSuggestedBufferSize
Definition: avifil32.idl:74
DWORD dwHeight
Definition: avifil32.idl:76
DWORD dwScale
Definition: avifil32.idl:77
DWORD dwEditCount
Definition: avifil32.idl:80
DWORD dwFlags
Definition: avifil32.idl:71
DWORD dwLength
Definition: avifil32.idl:79
DWORD dwSuggestedBufferSize
Definition: avifil32.idl:40
DWORD dwInitialFrames
Definition: avifil32.idl:39
DWORD fccHandler
Definition: avifil32.idl:30
WCHAR szName[64]
Definition: avifil32.idl:46
DWORD dwEditCount
Definition: avifil32.idl:44
DWORD dwFormatChangeCount
Definition: avifil32.idl:45
DWORD dwSampleSize
Definition: avifil32.idl:42
LPCWSTR lpFormat
Definition: trayclock.cpp:32
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
LONG_PTR LPARAM
Definition: windef.h:208
__wchar_t WCHAR
Definition: xmlstorage.h:180