ReactOS  0.4.14-dev-49-gfb4591c
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 
24 import "wtypes.idl";
25 import "unknwn.idl";
26 
27 typedef struct _AVISTREAMINFOW
28 {
48 
49 [
50  object,
51  uuid(00020021-0000-0000-c000-000000000046)
52 ]
53 interface IAVIStream : IUnknown
54 {
55  HRESULT Create(LPARAM lParam1, LPARAM lParam2);
56  HRESULT Info(AVISTREAMINFOW *psi, LONG lSize);
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);
65  HRESULT SetInfo(AVISTREAMINFOW *plInfo, LONG cbInfo);
66 };
67 
68 typedef struct _AVIFILEINFOW
69 {
82 } AVIFILEINFOW;
83 
84 [
85  object,
86  uuid(00020020-0000-0000-c000-000000000046)
87 ]
88 interface IAVIFile : IUnknown
89 {
90  HRESULT Info(AVIFILEINFOW *pfi, LONG lSize);
91  HRESULT GetStream(IAVIStream **ppStream, DWORD fccType, LONG lParam);
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);
95  HRESULT EndRecord(void);
97 };
98 
99 [
100  helpstring("Microsoft AVI Files"),
101  threading(both),
102  uuid(00020000-0000-0000-C000-000000000046)
103 ]
104 coclass AVIFile { interface IAVIFile; }
105 
106 [
107  helpstring("AVI Compressed Stream"),
108  threading(both),
109  uuid(00020001-0000-0000-c000-000000000046)
110 ]
111 coclass ICMStream { interface IAVIStream; }
112 
113 [
114  helpstring("Microsoft Wave File"),
115  threading(both),
116  uuid(00020003-0000-0000-c000-000000000046)
117 ]
118 coclass WAVFile { interface IAVIFile; }
119 
120 [
121  helpstring("IAVIStream & IAVIFile Proxy"),
122  threading(both),
123  uuid(0002000d-0000-0000-c000-000000000046)
124 ]
125 coclass PSFactoryBuffer { interface IFactoryBuffer; }
126 
127 [
128  helpstring("ACM Compressed Audio Stream"),
129  threading(both),
130  uuid(0002000f-0000-0000-c000-000000000046)
131 ]
132 coclass ACMStream { interface IAVIStream; }
coclass AVIFile helpstring("AVI Compressed Stream")
HRESULT WriteData(DWORD fcc, [in, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer)
DWORD dwSampleSize
Definition: avifil32.idl:42
HRESULT ReadData(DWORD fcc, [out, size_is(*lpcbBuffer)] char *lpBuffer, [in, out] LONG *lpcbBuffer)
DWORD dwSuggestedBufferSize
Definition: avifil32.idl:40
DWORD dwFlags
Definition: avifil32.idl:71
HRESULT SetInfo(AVISTREAMINFOW *plInfo, LONG cbInfo)
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 Create(LPARAM lParam1, LPARAM lParam2)
HRESULT Info(AVIFILEINFOW *pfi, LONG lSize)
struct _AVISTREAMINFOW AVISTREAMINFOW
long LONG
Definition: pedump.c:60
HRESULT SetFormat(LONG lPos, [in, size_is(cbFormat)] char *lpFormat, LONG cbFormat)
HRESULT Delete(LONG lStart, LONG lSamples)
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
Definition: db.cpp:173
DWORD dwInitialFrames
Definition: avifil32.idl:39
LONG_PTR LPARAM
Definition: windef.h:208
GLfloat f
Definition: glext.h:7540
DWORD dwWidth
Definition: avifil32.idl:75
#define d
Definition: ke_i.h:81
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:77
HRESULT ReadFormat(LONG lPos, [out, size_is(*lpcbFormat)] char *lpFormat, [in, out] LONG *lpcbFormat)
DWORD dwLength
Definition: avifil32.idl:79
DWORD dwHeight
Definition: avifil32.idl:76
DWORD dwEditCount
Definition: avifil32.idl:44
DWORD dwScale
Definition: avifil32.idl:77
unsigned short WORD
Definition: ntddk_ex.h:93
static FILE * out
Definition: regtests2xml.c:44
unsigned long DWORD
Definition: ntddk_ex.h:95
WCHAR szFileType[64]
Definition: avifil32.idl:81
LONG FindSample(LONG lPos, LONG lFlags)
HRESULT Info(AVISTREAMINFOW *psi, LONG lSize)
HRESULT Read(LONG lStart, LONG lSamples, [out, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer, LONG *plBytes, LONG *plSamples)
DWORD dwSuggestedBufferSize
Definition: avifil32.idl:74
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
LPCWSTR lpFormat
Definition: trayclock.cpp:32
HRESULT EndRecord(void)
GLuint in
Definition: glext.h:9616
DWORD dwRate
Definition: avifil32.idl:78
coclass AVIFile uuid(00020001-0000-0000-c000-000000000046)] coclass ICMStream
Definition: avifil32.idl:109
DWORD dwEditCount
Definition: avifil32.idl:80
DWORD dwStreams
Definition: avifil32.idl:73
DWORD fccHandler
Definition: avifil32.idl:30
WCHAR szName[64]
Definition: avifil32.idl:46
HRESULT Write(LONG lStart, LONG lSamples, [in, size_is(cbBuffer)] char *lpBuffer, LONG cbBuffer, DWORD dwFlags, LONG *plSampWritten, LONG *plBytesWritten)
HRESULT DeleteStream(DWORD fccType, LONG lParam)
DWORD dwMaxBytesPerSec
Definition: avifil32.idl:70
coclass AVIFile threading(both)
DWORD dwCaps
Definition: avifil32.idl:72
DWORD dwFormatChangeCount
Definition: avifil32.idl:45
struct _AVIFILEINFOW AVIFILEINFOW
LPARAM lParam
Definition: combotst.c:139
void * object
Definition: jmemsys.h:48
HRESULT GetStream(IAVIStream **ppStream, DWORD fccType, LONG lParam)
HRESULT CreateStream(IAVIStream **ppStream, AVISTREAMINFOW *psi)