annotate loader/dshow/interfaces.h @ 1716:b8b17db5e3cc

*** empty log message ***
author gabucino
date Mon, 27 Aug 2001 16:46:09 +0000
parents da26060c81ef
children ce45cce7f7a5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
1 #ifndef DS_INTERFACES_H
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
2 #define DS_INTERFACES_H
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
3
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
4 /*
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
5
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
6 Definition of important DirectShow interfaces.
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
7 Created using freely-available DirectX 8.0 SDK
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
8 ( http://msdn.microsoft.com )
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
9
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
10 */
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
11
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
12 #include <com.h>
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
13 #include "guids.h"
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
14
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
15 #ifndef STDCALL
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
16 #define STDCALL __attribute__((__stdcall__))
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
17 #endif
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
18
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
19 typedef GUID& REFIID;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
20 typedef GUID CLSID;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
21 typedef GUID IID;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
22
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
23 /* Sh*t. MSVC++ and g++ use different methods of storing vtables. */
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
24
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
25 struct IBaseFilter;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
26 struct IReferenceClock;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
27 struct IEnumPins;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
28 struct IEnumMediaTypes;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
29 struct IPin;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
30 struct IFilterGraph;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
31 struct IMemInputPin;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
32 struct IMemAllocator;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
33 struct IMediaSample;
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
34 struct IHidden;
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
35 struct IHidden2;
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
36
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
37 enum PIN_DIRECTION;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
38
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
39 class IClassFactory2
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
40 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
41 public:
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
42 virtual long STDCALL QueryInterface(GUID* iid, void** ppv) =0;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
43 virtual long STDCALL AddRef() =0;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
44 virtual long STDCALL Release() =0;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
45 virtual long STDCALL CreateInstance(IUnknown* pUnkOuter, GUID* riid, void** ppvObject) =0;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
46 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
47
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
48 struct IBaseFilter_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
49 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
50 HRESULT STDCALL ( *GetClassID )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
51 /* [out] */ CLSID *pClassID);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
52 HRESULT STDCALL ( *Stop )(IBaseFilter * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
53 HRESULT STDCALL ( *Pause )(IBaseFilter * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
54 HRESULT STDCALL ( *Run )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
55 REFERENCE_TIME tStart);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
56 HRESULT STDCALL ( *GetState )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
57 /* [in] */ unsigned long dwMilliSecsTimeout,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
58 ///* [out] */ FILTER_STATE *State);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
59 void* State);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
60 HRESULT STDCALL ( *SetSyncSource )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
61 /* [in] */ IReferenceClock *pClock);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
62 HRESULT STDCALL ( *GetSyncSource )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
63 /* [out] */ IReferenceClock **pClock);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
64 HRESULT STDCALL ( *EnumPins )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
65 /* [out] */ IEnumPins **ppEnum);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
66 HRESULT STDCALL ( *FindPin )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
67 /* [string][in] */ const unsigned short* Id,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
68 /* [out] */ IPin **ppPin);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
69 HRESULT STDCALL ( *QueryFilterInfo )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
70 // /* [out] */ FILTER_INFO *pInfo);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
71 void* pInfo);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
72 HRESULT STDCALL ( *JoinFilterGraph )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
73 /* [in] */ IFilterGraph *pGraph,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
74 /* [string][in] */ const unsigned short* pName);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
75 HRESULT STDCALL ( *QueryVendorInfo )(IBaseFilter * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
76 /* [string][out] */ unsigned short* *pVendorInfo);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
77 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
78
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
79 struct IBaseFilter
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
80 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
81 struct IBaseFilter_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
82 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
83
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
84
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
85 struct IEnumPins_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
86 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
87 HRESULT STDCALL ( *Next )(IEnumPins * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
88 /* [in] */ unsigned long cPins,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
89 /* [size_is][out] */ IPin **ppPins,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
90 /* [out] */ unsigned long *pcFetched);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
91 HRESULT STDCALL ( *Skip )(IEnumPins * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
92 /* [in] */ unsigned long cPins);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
93 HRESULT STDCALL ( *Reset )(IEnumPins * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
94 HRESULT STDCALL ( *Clone )(IEnumPins * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
95 /* [out] */ IEnumPins **ppEnum);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
96 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
97
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
98 struct IEnumPins
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
99 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
100 struct IEnumPins_vt *vt;
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
101 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
102
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
103
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
104 struct IPin_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
105 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
106 HRESULT STDCALL ( *Connect )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
107 /* [in] */ IPin *pReceivePin,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
108 /* [in] */ /*const*/ AM_MEDIA_TYPE *pmt);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
109 HRESULT STDCALL ( *ReceiveConnection )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
110 /* [in] */ IPin *pConnector,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
111 /* [in] */ const AM_MEDIA_TYPE *pmt);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
112 HRESULT STDCALL ( *Disconnect )(IPin * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
113 HRESULT STDCALL ( *ConnectedTo )(IPin * This, /* [out] */ IPin **pPin);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
114 HRESULT STDCALL ( *ConnectionMediaType )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
115 /* [out] */ AM_MEDIA_TYPE *pmt);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
116 HRESULT STDCALL ( *QueryPinInfo )(IPin * This, /* [out] */ PIN_INFO *pInfo);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
117 HRESULT STDCALL ( *QueryDirection )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
118 /* [out] */ PIN_DIRECTION *pPinDir);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
119 HRESULT STDCALL ( *QueryId )(IPin * This, /* [out] */ unsigned short* *Id);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
120 HRESULT STDCALL ( *QueryAccept )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
121 /* [in] */ const AM_MEDIA_TYPE *pmt);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
122 HRESULT STDCALL ( *EnumMediaTypes )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
123 /* [out] */ IEnumMediaTypes **ppEnum);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
124 HRESULT STDCALL ( *QueryInternalConnections )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
125 /* [out] */ IPin **apPin,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
126 /* [out][in] */ unsigned long *nPin);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
127 HRESULT STDCALL ( *EndOfStream )(IPin * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
128 HRESULT STDCALL ( *BeginFlush )(IPin * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
129 HRESULT STDCALL ( *EndFlush )(IPin * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
130 HRESULT STDCALL ( *NewSegment )(IPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
131 /* [in] */ REFERENCE_TIME tStart,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
132 /* [in] */ REFERENCE_TIME tStop,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
133 /* [in] */ double dRate);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
134 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
135
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
136 struct IPin
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
137 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
138 IPin_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
139 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
140
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
141
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
142 struct IEnumMediaTypes_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
143 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
144 HRESULT STDCALL ( *Next )(IEnumMediaTypes * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
145 /* [in] */ unsigned long cMediaTypes,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
146 /* [size_is][out] */ AM_MEDIA_TYPE **ppMediaTypes,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
147 /* [out] */ unsigned long *pcFetched);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
148 HRESULT STDCALL ( *Skip )(IEnumMediaTypes * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
149 /* [in] */ unsigned long cMediaTypes);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
150 HRESULT STDCALL ( *Reset )(IEnumMediaTypes * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
151 HRESULT STDCALL ( *Clone )(IEnumMediaTypes * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
152 /* [out] */ IEnumMediaTypes **ppEnum);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
153 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
154
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
155 struct IEnumMediaTypes
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
156 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
157 IEnumMediaTypes_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
158 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
159
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
160
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
161 struct IMemInputPin_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
162 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
163 HRESULT STDCALL ( *GetAllocator )(IMemInputPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
164 /* [out] */ IMemAllocator **ppAllocator);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
165 HRESULT STDCALL ( *NotifyAllocator )(IMemInputPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
166 /* [in] */ IMemAllocator *pAllocator,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
167 /* [in] */ int bReadOnly);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
168 HRESULT STDCALL ( *GetAllocatorRequirements )(IMemInputPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
169 /* [out] */ ALLOCATOR_PROPERTIES *pProps);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
170 HRESULT STDCALL ( *Receive )(IMemInputPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
171 /* [in] */ IMediaSample *pSample);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
172 HRESULT STDCALL ( *ReceiveMultiple )(IMemInputPin * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
173 /* [size_is][in] */ IMediaSample **pSamples,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
174 /* [in] */ long nSamples,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
175 /* [out] */ long *nSamplesProcessed);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
176 HRESULT STDCALL ( *ReceiveCanBlock )(IMemInputPin * This);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
177 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
178
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
179 struct IMemInputPin
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
180 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
181 IMemInputPin_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
182 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
183
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
184
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
185 struct IMemAllocator_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
186 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
187 HRESULT STDCALL ( *SetProperties )(IMemAllocator * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
188 /* [in] */ ALLOCATOR_PROPERTIES *pRequest,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
189 /* [out] */ ALLOCATOR_PROPERTIES *pActual);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
190 HRESULT STDCALL ( *GetProperties )(IMemAllocator * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
191 /* [out] */ ALLOCATOR_PROPERTIES *pProps);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
192 HRESULT STDCALL ( *Commit )(IMemAllocator * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
193 HRESULT STDCALL ( *Decommit )(IMemAllocator * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
194 HRESULT STDCALL ( *GetBuffer )(IMemAllocator * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
195 /* [out] */ IMediaSample **ppBuffer,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
196 /* [in] */ REFERENCE_TIME *pStartTime,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
197 /* [in] */ REFERENCE_TIME *pEndTime,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
198 /* [in] */ unsigned long dwFlags);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
199 HRESULT STDCALL ( *ReleaseBuffer )(IMemAllocator * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
200 /* [in] */ IMediaSample *pBuffer);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
201 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
202
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
203 struct IMemAllocator
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
204 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
205 IMemAllocator_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
206 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
207
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
208
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
209 struct IMediaSample_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
210 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
211 HRESULT STDCALL ( *GetPointer )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
212 /* [out] */ unsigned char **ppBuffer);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
213 long STDCALL ( *GetSize )(IMediaSample * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
214 HRESULT STDCALL ( *GetTime )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
215 /* [out] */ REFERENCE_TIME *pTimeStart,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
216 /* [out] */ REFERENCE_TIME *pTimeEnd);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
217 HRESULT STDCALL ( *SetTime )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
218 /* [in] */ REFERENCE_TIME *pTimeStart,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
219 /* [in] */ REFERENCE_TIME *pTimeEnd);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
220 HRESULT STDCALL ( *IsSyncPoint )(IMediaSample * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
221 HRESULT STDCALL ( *SetSyncPoint )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
222 long bIsSyncPoint);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
223 HRESULT STDCALL ( *IsPreroll )(IMediaSample * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
224 HRESULT STDCALL ( *SetPreroll )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
225 long bIsPreroll);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
226 long STDCALL ( *GetActualDataLength )(IMediaSample * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
227 HRESULT STDCALL ( *SetActualDataLength )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
228 long __MIDL_0010);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
229 HRESULT STDCALL ( *GetMediaType )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
230 AM_MEDIA_TYPE **ppMediaType);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
231 HRESULT STDCALL ( *SetMediaType )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
232 AM_MEDIA_TYPE *pMediaType);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
233 HRESULT STDCALL ( *IsDiscontinuity )(IMediaSample * This);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
234 HRESULT STDCALL ( *SetDiscontinuity )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
235 long bDiscontinuity);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
236 HRESULT STDCALL ( *GetMediaTime )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
237 /* [out] */ long long *pTimeStart,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
238 /* [out] */ long long *pTimeEnd);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
239 HRESULT STDCALL ( *SetMediaTime )(IMediaSample * This,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
240 /* [in] */ long long *pTimeStart,
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
241 /* [in] */ long long *pTimeEnd);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
242 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
243
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
244 struct IMediaSample
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
245 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
246 struct IMediaSample_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
247 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
248
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
249
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
250 struct IHidden_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
251 {
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
252 HRESULT STDCALL ( *GetSmth )(IHidden * This, int* pv);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
253 HRESULT STDCALL ( *SetSmth )(IHidden * This, int v1, int v2);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
254 HRESULT STDCALL ( *GetSmth2 )(IHidden * This, int* pv);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
255 HRESULT STDCALL ( *SetSmth2 )(IHidden * This, int v1, int v2);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
256 HRESULT STDCALL ( *GetSmth3 )(IHidden * This, int* pv);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
257 HRESULT STDCALL ( *SetSmth3 )(IHidden * This, int v1, int v2);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
258 HRESULT STDCALL ( *GetSmth4 )(IHidden * This, int* pv);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
259 HRESULT STDCALL ( *SetSmth4 )(IHidden * This, int v1, int v2);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
260 HRESULT STDCALL ( *GetSmth5 )(IHidden * This, int* pv);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
261 HRESULT STDCALL ( *SetSmth5 )(IHidden * This, int v1, int v2);
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
262 HRESULT STDCALL ( *GetSmth6 )(IHidden * This, int* pv);
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
263 };
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
264
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
265 struct IHidden
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
266 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
267 struct IHidden_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
268 };
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
269
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
270 struct IHidden2_vt: IUnknown_vt
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
271 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
272 HRESULT STDCALL (*unk1) ();
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
273 HRESULT STDCALL (*unk2) ();
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
274 HRESULT STDCALL (*unk3) ();
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
275 HRESULT STDCALL (*DecodeGet) (IHidden2* This, int* region);
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
276 HRESULT STDCALL (*unk5) ();
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
277 HRESULT STDCALL (*DecodeSet) (IHidden2* This, int* region);
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
278 HRESULT STDCALL (*unk7) ();
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
279 HRESULT STDCALL (*unk8) ();
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
280 };
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
281
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
282 struct IHidden2
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
283 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
284 struct IHidden2_vt *vt;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
285 };
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
286
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
287 #endif /* DS_INTERFACES_H */