]> git.sesse.net Git - vlc/blob - projects/activex/axvlc_idl.h
Distribute the plugins manifest files
[vlc] / projects / activex / axvlc_idl.h
1 /*** Autogenerated by WIDL 1.0 from axvlc.idl - Do not edit ***/
2 #include <rpc.h>
3 #include <rpcndr.h>
4
5 #ifndef __WIDL_AXVLC_IDL_H
6 #define __WIDL_AXVLC_IDL_H
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 #include <ocidl.h>
12
13 DEFINE_GUID(LIBID_AXVLC, 0xdf2bbe39, 0x40a8, 0x433b, 0xa2,0x79, 0x07,0x3f,0x48,0xda,0x94,0xb6);
14
15 #ifndef __IVLCControl_FWD_DEFINED__
16 #define __IVLCControl_FWD_DEFINED__
17 typedef interface IVLCControl IVLCControl;
18 #endif
19
20 #ifndef __IVLCAudio_FWD_DEFINED__
21 #define __IVLCAudio_FWD_DEFINED__
22 typedef interface IVLCAudio IVLCAudio;
23 #endif
24
25 #ifndef __IVLCInput_FWD_DEFINED__
26 #define __IVLCInput_FWD_DEFINED__
27 typedef interface IVLCInput IVLCInput;
28 #endif
29
30 #ifndef __IVLCLog_FWD_DEFINED__
31 #define __IVLCLog_FWD_DEFINED__
32 typedef interface IVLCLog IVLCLog;
33 #endif
34
35 #ifndef __IVLCMessage_FWD_DEFINED__
36 #define __IVLCMessage_FWD_DEFINED__
37 typedef interface IVLCMessage IVLCMessage;
38 #endif
39
40 #ifndef __IVLCMessageIterator_FWD_DEFINED__
41 #define __IVLCMessageIterator_FWD_DEFINED__
42 typedef interface IVLCMessageIterator IVLCMessageIterator;
43 #endif
44
45 #ifndef __IVLCMessages_FWD_DEFINED__
46 #define __IVLCMessages_FWD_DEFINED__
47 typedef interface IVLCMessages IVLCMessages;
48 #endif
49
50 #ifndef __IVLCPlaylist_FWD_DEFINED__
51 #define __IVLCPlaylist_FWD_DEFINED__
52 typedef interface IVLCPlaylist IVLCPlaylist;
53 #endif
54
55 #ifndef __IVLCSubtitle_FWD_DEFINED__
56 #define __IVLCSubtitle_FWD_DEFINED__
57 typedef interface IVLCSubtitle IVLCSubtitle;
58 #endif
59
60 #ifndef __IVLCVideo_FWD_DEFINED__
61 #define __IVLCVideo_FWD_DEFINED__
62 typedef interface IVLCVideo IVLCVideo;
63 #endif
64
65 #ifndef __IVLCControl2_FWD_DEFINED__
66 #define __IVLCControl2_FWD_DEFINED__
67 typedef interface IVLCControl2 IVLCControl2;
68 #endif
69
70 #ifndef __DVLCEvents_FWD_DEFINED__
71 #define __DVLCEvents_FWD_DEFINED__
72 typedef interface DVLCEvents DVLCEvents;
73 #endif
74
75 typedef enum VLCPlaylistMode {
76     VLCPlayListInsert = 1,
77     VLCPlayListInsertAndGo = 9,
78     VLCPlayListReplace = 2,
79     VLCPlayListReplaceAndGo = 10,
80     VLCPlayListAppend = 4,
81     VLCPlayListAppendAndGo = 12,
82     VLCPlayListCheckInsert = 16
83 } eVLCPlaylistMode;
84 #define VLCPlayListEnd (-666)
85
86 #define DISPID_BackColor (-501)
87
88 #define DISPID_Visible (100)
89
90 #define DISPID_Playing (101)
91
92 #define DISPID_Position (102)
93
94 #define DISPID_Time (103)
95
96 #define DISPID_Length (104)
97
98 #define DISPID_Volume (105)
99
100 #define DISPID_MRL (106)
101
102 #define DISPID_AutoPlay (107)
103
104 #define DISPID_AutoLoop (108)
105
106 #define DISPID_StartTime (109)
107
108 #define DISPID_BaseURL (110)
109
110 #define DISPID_Toolbar (111)
111
112 /*****************************************************************************
113  * IVLCControl interface
114  */
115 #ifndef __IVLCControl_INTERFACE_DEFINED__
116 #define __IVLCControl_INTERFACE_DEFINED__
117
118 DEFINE_GUID(IID_IVLCControl, 0xc2fa41d0, 0xb113, 0x476e, 0xac,0x8c, 0x9b,0xd1,0x49,0x99,0xc1,0xc1);
119 #if defined(__cplusplus) && !defined(CINTERFACE)
120 interface IVLCControl : public IDispatch
121 {
122     virtual HRESULT STDMETHODCALLTYPE get_Visible(
123         VARIANT_BOOL *visible) = 0;
124
125     virtual HRESULT STDMETHODCALLTYPE put_Visible(
126         VARIANT_BOOL visible) = 0;
127
128     virtual HRESULT STDMETHODCALLTYPE play(
129         ) = 0;
130
131     virtual HRESULT STDMETHODCALLTYPE pause(
132         ) = 0;
133
134     virtual HRESULT STDMETHODCALLTYPE stop(
135         ) = 0;
136
137     virtual HRESULT STDMETHODCALLTYPE get_Playing(
138         VARIANT_BOOL *isPlaying) = 0;
139
140     virtual HRESULT STDMETHODCALLTYPE get_Position(
141         float *position) = 0;
142
143     virtual HRESULT STDMETHODCALLTYPE put_Position(
144         float position) = 0;
145
146     virtual HRESULT STDMETHODCALLTYPE get_Time(
147         int *seconds) = 0;
148
149     virtual HRESULT STDMETHODCALLTYPE put_Time(
150         int seconds) = 0;
151
152     virtual HRESULT STDMETHODCALLTYPE shuttle(
153         int seconds) = 0;
154
155     virtual HRESULT STDMETHODCALLTYPE fullscreen(
156         ) = 0;
157
158     virtual HRESULT STDMETHODCALLTYPE get_Length(
159         int *seconds) = 0;
160
161     virtual HRESULT STDMETHODCALLTYPE playFaster(
162         ) = 0;
163
164     virtual HRESULT STDMETHODCALLTYPE playSlower(
165         ) = 0;
166
167     virtual HRESULT STDMETHODCALLTYPE get_Volume(
168         int *volume) = 0;
169
170     virtual HRESULT STDMETHODCALLTYPE put_Volume(
171         int volume) = 0;
172
173     virtual HRESULT STDMETHODCALLTYPE toggleMute(
174         ) = 0;
175
176     virtual HRESULT STDMETHODCALLTYPE setVariable(
177         BSTR name,
178         VARIANT value) = 0;
179
180     virtual HRESULT STDMETHODCALLTYPE getVariable(
181         BSTR name,
182         VARIANT *value) = 0;
183
184     virtual HRESULT STDMETHODCALLTYPE addTarget(
185         BSTR uri,
186         VARIANT options,
187         enum VLCPlaylistMode mode,
188         int position) = 0;
189
190     virtual HRESULT STDMETHODCALLTYPE get_PlaylistIndex(
191         int *index) = 0;
192
193     virtual HRESULT STDMETHODCALLTYPE get_PlaylistCount(
194         int *index) = 0;
195
196     virtual HRESULT STDMETHODCALLTYPE playlistNext(
197         ) = 0;
198
199     virtual HRESULT STDMETHODCALLTYPE playlistPrev(
200         ) = 0;
201
202     virtual HRESULT STDMETHODCALLTYPE playlistClear(
203         ) = 0;
204
205     virtual HRESULT STDMETHODCALLTYPE get_VersionInfo(
206         BSTR *version) = 0;
207
208     virtual HRESULT STDMETHODCALLTYPE get_MRL(
209         BSTR *mrl) = 0;
210
211     virtual HRESULT STDMETHODCALLTYPE put_MRL(
212         BSTR mrl) = 0;
213
214     virtual HRESULT STDMETHODCALLTYPE get_AutoPlay(
215         VARIANT_BOOL *autoplay) = 0;
216
217     virtual HRESULT STDMETHODCALLTYPE put_AutoPlay(
218         VARIANT_BOOL autoplay) = 0;
219
220     virtual HRESULT STDMETHODCALLTYPE get_AutoLoop(
221         VARIANT_BOOL *autoloop) = 0;
222
223     virtual HRESULT STDMETHODCALLTYPE put_AutoLoop(
224         VARIANT_BOOL autoloop) = 0;
225
226 };
227 #else
228 typedef struct IVLCControlVtbl {
229     BEGIN_INTERFACE
230
231     /*** IUnknown methods ***/
232     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
233         IVLCControl* This,
234         REFIID riid,
235         void **ppvObject);
236
237     ULONG (STDMETHODCALLTYPE *AddRef)(
238         IVLCControl* This);
239
240     ULONG (STDMETHODCALLTYPE *Release)(
241         IVLCControl* This);
242
243     /*** IDispatch methods ***/
244     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
245         IVLCControl* This,
246         UINT *pctinfo);
247
248     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
249         IVLCControl* This,
250         UINT iTInfo,
251         LCID lcid,
252         ITypeInfo **ppTInfo);
253
254     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
255         IVLCControl* This,
256         REFIID riid,
257         LPOLESTR *rgszNames,
258         UINT cNames,
259         LCID lcid,
260         DISPID *rgDispId);
261
262     HRESULT (STDMETHODCALLTYPE *Invoke)(
263         IVLCControl* This,
264         DISPID dispIdMember,
265         REFIID riid,
266         LCID lcid,
267         WORD wFlags,
268         DISPPARAMS *pDispParams,
269         VARIANT *pVarResult,
270         EXCEPINFO *pExcepInfo,
271         UINT *puArgErr);
272
273     /*** IVLCControl methods ***/
274     HRESULT (STDMETHODCALLTYPE *get_Visible)(
275         IVLCControl* This,
276         VARIANT_BOOL *visible);
277
278     HRESULT (STDMETHODCALLTYPE *put_Visible)(
279         IVLCControl* This,
280         VARIANT_BOOL visible);
281
282     HRESULT (STDMETHODCALLTYPE *play)(
283         IVLCControl* This);
284
285     HRESULT (STDMETHODCALLTYPE *pause)(
286         IVLCControl* This);
287
288     HRESULT (STDMETHODCALLTYPE *stop)(
289         IVLCControl* This);
290
291     HRESULT (STDMETHODCALLTYPE *get_Playing)(
292         IVLCControl* This,
293         VARIANT_BOOL *isPlaying);
294
295     HRESULT (STDMETHODCALLTYPE *get_Position)(
296         IVLCControl* This,
297         float *position);
298
299     HRESULT (STDMETHODCALLTYPE *put_Position)(
300         IVLCControl* This,
301         float position);
302
303     HRESULT (STDMETHODCALLTYPE *get_Time)(
304         IVLCControl* This,
305         int *seconds);
306
307     HRESULT (STDMETHODCALLTYPE *put_Time)(
308         IVLCControl* This,
309         int seconds);
310
311     HRESULT (STDMETHODCALLTYPE *shuttle)(
312         IVLCControl* This,
313         int seconds);
314
315     HRESULT (STDMETHODCALLTYPE *fullscreen)(
316         IVLCControl* This);
317
318     HRESULT (STDMETHODCALLTYPE *get_Length)(
319         IVLCControl* This,
320         int *seconds);
321
322     HRESULT (STDMETHODCALLTYPE *playFaster)(
323         IVLCControl* This);
324
325     HRESULT (STDMETHODCALLTYPE *playSlower)(
326         IVLCControl* This);
327
328     HRESULT (STDMETHODCALLTYPE *get_Volume)(
329         IVLCControl* This,
330         int *volume);
331
332     HRESULT (STDMETHODCALLTYPE *put_Volume)(
333         IVLCControl* This,
334         int volume);
335
336     HRESULT (STDMETHODCALLTYPE *toggleMute)(
337         IVLCControl* This);
338
339     HRESULT (STDMETHODCALLTYPE *setVariable)(
340         IVLCControl* This,
341         BSTR name,
342         VARIANT value);
343
344     HRESULT (STDMETHODCALLTYPE *getVariable)(
345         IVLCControl* This,
346         BSTR name,
347         VARIANT *value);
348
349     HRESULT (STDMETHODCALLTYPE *addTarget)(
350         IVLCControl* This,
351         BSTR uri,
352         VARIANT options,
353         enum VLCPlaylistMode mode,
354         int position);
355
356     HRESULT (STDMETHODCALLTYPE *get_PlaylistIndex)(
357         IVLCControl* This,
358         int *index);
359
360     HRESULT (STDMETHODCALLTYPE *get_PlaylistCount)(
361         IVLCControl* This,
362         int *index);
363
364     HRESULT (STDMETHODCALLTYPE *playlistNext)(
365         IVLCControl* This);
366
367     HRESULT (STDMETHODCALLTYPE *playlistPrev)(
368         IVLCControl* This);
369
370     HRESULT (STDMETHODCALLTYPE *playlistClear)(
371         IVLCControl* This);
372
373     HRESULT (STDMETHODCALLTYPE *get_VersionInfo)(
374         IVLCControl* This,
375         BSTR *version);
376
377     HRESULT (STDMETHODCALLTYPE *get_MRL)(
378         IVLCControl* This,
379         BSTR *mrl);
380
381     HRESULT (STDMETHODCALLTYPE *put_MRL)(
382         IVLCControl* This,
383         BSTR mrl);
384
385     HRESULT (STDMETHODCALLTYPE *get_AutoPlay)(
386         IVLCControl* This,
387         VARIANT_BOOL *autoplay);
388
389     HRESULT (STDMETHODCALLTYPE *put_AutoPlay)(
390         IVLCControl* This,
391         VARIANT_BOOL autoplay);
392
393     HRESULT (STDMETHODCALLTYPE *get_AutoLoop)(
394         IVLCControl* This,
395         VARIANT_BOOL *autoloop);
396
397     HRESULT (STDMETHODCALLTYPE *put_AutoLoop)(
398         IVLCControl* This,
399         VARIANT_BOOL autoloop);
400
401     END_INTERFACE
402 } IVLCControlVtbl;
403 interface IVLCControl {
404     CONST_VTBL IVLCControlVtbl* lpVtbl;
405 };
406
407 #ifdef COBJMACROS
408 /*** IUnknown methods ***/
409 #define IVLCControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
410 #define IVLCControl_AddRef(This) (This)->lpVtbl->AddRef(This)
411 #define IVLCControl_Release(This) (This)->lpVtbl->Release(This)
412 /*** IDispatch methods ***/
413 #define IVLCControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
414 #define IVLCControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
415 #define IVLCControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
416 #define IVLCControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
417 /*** IVLCControl methods ***/
418 #define IVLCControl_get_Visible(This,visible) (This)->lpVtbl->get_Visible(This,visible)
419 #define IVLCControl_put_Visible(This,visible) (This)->lpVtbl->put_Visible(This,visible)
420 #define IVLCControl_play(This) (This)->lpVtbl->play(This)
421 #define IVLCControl_pause(This) (This)->lpVtbl->pause(This)
422 #define IVLCControl_stop(This) (This)->lpVtbl->stop(This)
423 #define IVLCControl_get_Playing(This,isPlaying) (This)->lpVtbl->get_Playing(This,isPlaying)
424 #define IVLCControl_get_Position(This,position) (This)->lpVtbl->get_Position(This,position)
425 #define IVLCControl_put_Position(This,position) (This)->lpVtbl->put_Position(This,position)
426 #define IVLCControl_get_Time(This,seconds) (This)->lpVtbl->get_Time(This,seconds)
427 #define IVLCControl_put_Time(This,seconds) (This)->lpVtbl->put_Time(This,seconds)
428 #define IVLCControl_shuttle(This,seconds) (This)->lpVtbl->shuttle(This,seconds)
429 #define IVLCControl_fullscreen(This) (This)->lpVtbl->fullscreen(This)
430 #define IVLCControl_get_Length(This,seconds) (This)->lpVtbl->get_Length(This,seconds)
431 #define IVLCControl_playFaster(This) (This)->lpVtbl->playFaster(This)
432 #define IVLCControl_playSlower(This) (This)->lpVtbl->playSlower(This)
433 #define IVLCControl_get_Volume(This,volume) (This)->lpVtbl->get_Volume(This,volume)
434 #define IVLCControl_put_Volume(This,volume) (This)->lpVtbl->put_Volume(This,volume)
435 #define IVLCControl_toggleMute(This) (This)->lpVtbl->toggleMute(This)
436 #define IVLCControl_setVariable(This,name,value) (This)->lpVtbl->setVariable(This,name,value)
437 #define IVLCControl_getVariable(This,name,value) (This)->lpVtbl->getVariable(This,name,value)
438 #define IVLCControl_addTarget(This,uri,options,mode,position) (This)->lpVtbl->addTarget(This,uri,options,mode,position)
439 #define IVLCControl_get_PlaylistIndex(This,index) (This)->lpVtbl->get_PlaylistIndex(This,index)
440 #define IVLCControl_get_PlaylistCount(This,index) (This)->lpVtbl->get_PlaylistCount(This,index)
441 #define IVLCControl_playlistNext(This) (This)->lpVtbl->playlistNext(This)
442 #define IVLCControl_playlistPrev(This) (This)->lpVtbl->playlistPrev(This)
443 #define IVLCControl_playlistClear(This) (This)->lpVtbl->playlistClear(This)
444 #define IVLCControl_get_VersionInfo(This,version) (This)->lpVtbl->get_VersionInfo(This,version)
445 #define IVLCControl_get_MRL(This,mrl) (This)->lpVtbl->get_MRL(This,mrl)
446 #define IVLCControl_put_MRL(This,mrl) (This)->lpVtbl->put_MRL(This,mrl)
447 #define IVLCControl_get_AutoPlay(This,autoplay) (This)->lpVtbl->get_AutoPlay(This,autoplay)
448 #define IVLCControl_put_AutoPlay(This,autoplay) (This)->lpVtbl->put_AutoPlay(This,autoplay)
449 #define IVLCControl_get_AutoLoop(This,autoloop) (This)->lpVtbl->get_AutoLoop(This,autoloop)
450 #define IVLCControl_put_AutoLoop(This,autoloop) (This)->lpVtbl->put_AutoLoop(This,autoloop)
451 #endif
452
453 #endif
454
455 HRESULT STDMETHODCALLTYPE IVLCControl_get_Visible_Proxy(
456     IVLCControl* This,
457     VARIANT_BOOL *visible);
458 void __RPC_STUB IVLCControl_get_Visible_Stub(
459     IRpcStubBuffer* This,
460     IRpcChannelBuffer* pRpcChannelBuffer,
461     PRPC_MESSAGE pRpcMessage,
462     DWORD* pdwStubPhase);
463 HRESULT STDMETHODCALLTYPE IVLCControl_put_Visible_Proxy(
464     IVLCControl* This,
465     VARIANT_BOOL visible);
466 void __RPC_STUB IVLCControl_put_Visible_Stub(
467     IRpcStubBuffer* This,
468     IRpcChannelBuffer* pRpcChannelBuffer,
469     PRPC_MESSAGE pRpcMessage,
470     DWORD* pdwStubPhase);
471 HRESULT STDMETHODCALLTYPE IVLCControl_play_Proxy(
472     IVLCControl* This);
473 void __RPC_STUB IVLCControl_play_Stub(
474     IRpcStubBuffer* This,
475     IRpcChannelBuffer* pRpcChannelBuffer,
476     PRPC_MESSAGE pRpcMessage,
477     DWORD* pdwStubPhase);
478 HRESULT STDMETHODCALLTYPE IVLCControl_pause_Proxy(
479     IVLCControl* This);
480 void __RPC_STUB IVLCControl_pause_Stub(
481     IRpcStubBuffer* This,
482     IRpcChannelBuffer* pRpcChannelBuffer,
483     PRPC_MESSAGE pRpcMessage,
484     DWORD* pdwStubPhase);
485 HRESULT STDMETHODCALLTYPE IVLCControl_stop_Proxy(
486     IVLCControl* This);
487 void __RPC_STUB IVLCControl_stop_Stub(
488     IRpcStubBuffer* This,
489     IRpcChannelBuffer* pRpcChannelBuffer,
490     PRPC_MESSAGE pRpcMessage,
491     DWORD* pdwStubPhase);
492 HRESULT STDMETHODCALLTYPE IVLCControl_get_Playing_Proxy(
493     IVLCControl* This,
494     VARIANT_BOOL *isPlaying);
495 void __RPC_STUB IVLCControl_get_Playing_Stub(
496     IRpcStubBuffer* This,
497     IRpcChannelBuffer* pRpcChannelBuffer,
498     PRPC_MESSAGE pRpcMessage,
499     DWORD* pdwStubPhase);
500 HRESULT STDMETHODCALLTYPE IVLCControl_get_Position_Proxy(
501     IVLCControl* This,
502     float *position);
503 void __RPC_STUB IVLCControl_get_Position_Stub(
504     IRpcStubBuffer* This,
505     IRpcChannelBuffer* pRpcChannelBuffer,
506     PRPC_MESSAGE pRpcMessage,
507     DWORD* pdwStubPhase);
508 HRESULT STDMETHODCALLTYPE IVLCControl_put_Position_Proxy(
509     IVLCControl* This,
510     float position);
511 void __RPC_STUB IVLCControl_put_Position_Stub(
512     IRpcStubBuffer* This,
513     IRpcChannelBuffer* pRpcChannelBuffer,
514     PRPC_MESSAGE pRpcMessage,
515     DWORD* pdwStubPhase);
516 HRESULT STDMETHODCALLTYPE IVLCControl_get_Time_Proxy(
517     IVLCControl* This,
518     int *seconds);
519 void __RPC_STUB IVLCControl_get_Time_Stub(
520     IRpcStubBuffer* This,
521     IRpcChannelBuffer* pRpcChannelBuffer,
522     PRPC_MESSAGE pRpcMessage,
523     DWORD* pdwStubPhase);
524 HRESULT STDMETHODCALLTYPE IVLCControl_put_Time_Proxy(
525     IVLCControl* This,
526     int seconds);
527 void __RPC_STUB IVLCControl_put_Time_Stub(
528     IRpcStubBuffer* This,
529     IRpcChannelBuffer* pRpcChannelBuffer,
530     PRPC_MESSAGE pRpcMessage,
531     DWORD* pdwStubPhase);
532 HRESULT STDMETHODCALLTYPE IVLCControl_shuttle_Proxy(
533     IVLCControl* This,
534     int seconds);
535 void __RPC_STUB IVLCControl_shuttle_Stub(
536     IRpcStubBuffer* This,
537     IRpcChannelBuffer* pRpcChannelBuffer,
538     PRPC_MESSAGE pRpcMessage,
539     DWORD* pdwStubPhase);
540 HRESULT STDMETHODCALLTYPE IVLCControl_fullscreen_Proxy(
541     IVLCControl* This);
542 void __RPC_STUB IVLCControl_fullscreen_Stub(
543     IRpcStubBuffer* This,
544     IRpcChannelBuffer* pRpcChannelBuffer,
545     PRPC_MESSAGE pRpcMessage,
546     DWORD* pdwStubPhase);
547 HRESULT STDMETHODCALLTYPE IVLCControl_get_Length_Proxy(
548     IVLCControl* This,
549     int *seconds);
550 void __RPC_STUB IVLCControl_get_Length_Stub(
551     IRpcStubBuffer* This,
552     IRpcChannelBuffer* pRpcChannelBuffer,
553     PRPC_MESSAGE pRpcMessage,
554     DWORD* pdwStubPhase);
555 HRESULT STDMETHODCALLTYPE IVLCControl_playFaster_Proxy(
556     IVLCControl* This);
557 void __RPC_STUB IVLCControl_playFaster_Stub(
558     IRpcStubBuffer* This,
559     IRpcChannelBuffer* pRpcChannelBuffer,
560     PRPC_MESSAGE pRpcMessage,
561     DWORD* pdwStubPhase);
562 HRESULT STDMETHODCALLTYPE IVLCControl_playSlower_Proxy(
563     IVLCControl* This);
564 void __RPC_STUB IVLCControl_playSlower_Stub(
565     IRpcStubBuffer* This,
566     IRpcChannelBuffer* pRpcChannelBuffer,
567     PRPC_MESSAGE pRpcMessage,
568     DWORD* pdwStubPhase);
569 HRESULT STDMETHODCALLTYPE IVLCControl_get_Volume_Proxy(
570     IVLCControl* This,
571     int *volume);
572 void __RPC_STUB IVLCControl_get_Volume_Stub(
573     IRpcStubBuffer* This,
574     IRpcChannelBuffer* pRpcChannelBuffer,
575     PRPC_MESSAGE pRpcMessage,
576     DWORD* pdwStubPhase);
577 HRESULT STDMETHODCALLTYPE IVLCControl_put_Volume_Proxy(
578     IVLCControl* This,
579     int volume);
580 void __RPC_STUB IVLCControl_put_Volume_Stub(
581     IRpcStubBuffer* This,
582     IRpcChannelBuffer* pRpcChannelBuffer,
583     PRPC_MESSAGE pRpcMessage,
584     DWORD* pdwStubPhase);
585 HRESULT STDMETHODCALLTYPE IVLCControl_toggleMute_Proxy(
586     IVLCControl* This);
587 void __RPC_STUB IVLCControl_toggleMute_Stub(
588     IRpcStubBuffer* This,
589     IRpcChannelBuffer* pRpcChannelBuffer,
590     PRPC_MESSAGE pRpcMessage,
591     DWORD* pdwStubPhase);
592 HRESULT STDMETHODCALLTYPE IVLCControl_setVariable_Proxy(
593     IVLCControl* This,
594     BSTR name,
595     VARIANT value);
596 void __RPC_STUB IVLCControl_setVariable_Stub(
597     IRpcStubBuffer* This,
598     IRpcChannelBuffer* pRpcChannelBuffer,
599     PRPC_MESSAGE pRpcMessage,
600     DWORD* pdwStubPhase);
601 HRESULT STDMETHODCALLTYPE IVLCControl_getVariable_Proxy(
602     IVLCControl* This,
603     BSTR name,
604     VARIANT *value);
605 void __RPC_STUB IVLCControl_getVariable_Stub(
606     IRpcStubBuffer* This,
607     IRpcChannelBuffer* pRpcChannelBuffer,
608     PRPC_MESSAGE pRpcMessage,
609     DWORD* pdwStubPhase);
610 HRESULT STDMETHODCALLTYPE IVLCControl_addTarget_Proxy(
611     IVLCControl* This,
612     BSTR uri,
613     VARIANT options,
614     enum VLCPlaylistMode mode,
615     int position);
616 void __RPC_STUB IVLCControl_addTarget_Stub(
617     IRpcStubBuffer* This,
618     IRpcChannelBuffer* pRpcChannelBuffer,
619     PRPC_MESSAGE pRpcMessage,
620     DWORD* pdwStubPhase);
621 HRESULT STDMETHODCALLTYPE IVLCControl_get_PlaylistIndex_Proxy(
622     IVLCControl* This,
623     int *index);
624 void __RPC_STUB IVLCControl_get_PlaylistIndex_Stub(
625     IRpcStubBuffer* This,
626     IRpcChannelBuffer* pRpcChannelBuffer,
627     PRPC_MESSAGE pRpcMessage,
628     DWORD* pdwStubPhase);
629 HRESULT STDMETHODCALLTYPE IVLCControl_get_PlaylistCount_Proxy(
630     IVLCControl* This,
631     int *index);
632 void __RPC_STUB IVLCControl_get_PlaylistCount_Stub(
633     IRpcStubBuffer* This,
634     IRpcChannelBuffer* pRpcChannelBuffer,
635     PRPC_MESSAGE pRpcMessage,
636     DWORD* pdwStubPhase);
637 HRESULT STDMETHODCALLTYPE IVLCControl_playlistNext_Proxy(
638     IVLCControl* This);
639 void __RPC_STUB IVLCControl_playlistNext_Stub(
640     IRpcStubBuffer* This,
641     IRpcChannelBuffer* pRpcChannelBuffer,
642     PRPC_MESSAGE pRpcMessage,
643     DWORD* pdwStubPhase);
644 HRESULT STDMETHODCALLTYPE IVLCControl_playlistPrev_Proxy(
645     IVLCControl* This);
646 void __RPC_STUB IVLCControl_playlistPrev_Stub(
647     IRpcStubBuffer* This,
648     IRpcChannelBuffer* pRpcChannelBuffer,
649     PRPC_MESSAGE pRpcMessage,
650     DWORD* pdwStubPhase);
651 HRESULT STDMETHODCALLTYPE IVLCControl_playlistClear_Proxy(
652     IVLCControl* This);
653 void __RPC_STUB IVLCControl_playlistClear_Stub(
654     IRpcStubBuffer* This,
655     IRpcChannelBuffer* pRpcChannelBuffer,
656     PRPC_MESSAGE pRpcMessage,
657     DWORD* pdwStubPhase);
658 HRESULT STDMETHODCALLTYPE IVLCControl_get_VersionInfo_Proxy(
659     IVLCControl* This,
660     BSTR *version);
661 void __RPC_STUB IVLCControl_get_VersionInfo_Stub(
662     IRpcStubBuffer* This,
663     IRpcChannelBuffer* pRpcChannelBuffer,
664     PRPC_MESSAGE pRpcMessage,
665     DWORD* pdwStubPhase);
666 HRESULT STDMETHODCALLTYPE IVLCControl_get_MRL_Proxy(
667     IVLCControl* This,
668     BSTR *mrl);
669 void __RPC_STUB IVLCControl_get_MRL_Stub(
670     IRpcStubBuffer* This,
671     IRpcChannelBuffer* pRpcChannelBuffer,
672     PRPC_MESSAGE pRpcMessage,
673     DWORD* pdwStubPhase);
674 HRESULT STDMETHODCALLTYPE IVLCControl_put_MRL_Proxy(
675     IVLCControl* This,
676     BSTR mrl);
677 void __RPC_STUB IVLCControl_put_MRL_Stub(
678     IRpcStubBuffer* This,
679     IRpcChannelBuffer* pRpcChannelBuffer,
680     PRPC_MESSAGE pRpcMessage,
681     DWORD* pdwStubPhase);
682 HRESULT STDMETHODCALLTYPE IVLCControl_get_AutoPlay_Proxy(
683     IVLCControl* This,
684     VARIANT_BOOL *autoplay);
685 void __RPC_STUB IVLCControl_get_AutoPlay_Stub(
686     IRpcStubBuffer* This,
687     IRpcChannelBuffer* pRpcChannelBuffer,
688     PRPC_MESSAGE pRpcMessage,
689     DWORD* pdwStubPhase);
690 HRESULT STDMETHODCALLTYPE IVLCControl_put_AutoPlay_Proxy(
691     IVLCControl* This,
692     VARIANT_BOOL autoplay);
693 void __RPC_STUB IVLCControl_put_AutoPlay_Stub(
694     IRpcStubBuffer* This,
695     IRpcChannelBuffer* pRpcChannelBuffer,
696     PRPC_MESSAGE pRpcMessage,
697     DWORD* pdwStubPhase);
698 HRESULT STDMETHODCALLTYPE IVLCControl_get_AutoLoop_Proxy(
699     IVLCControl* This,
700     VARIANT_BOOL *autoloop);
701 void __RPC_STUB IVLCControl_get_AutoLoop_Stub(
702     IRpcStubBuffer* This,
703     IRpcChannelBuffer* pRpcChannelBuffer,
704     PRPC_MESSAGE pRpcMessage,
705     DWORD* pdwStubPhase);
706 HRESULT STDMETHODCALLTYPE IVLCControl_put_AutoLoop_Proxy(
707     IVLCControl* This,
708     VARIANT_BOOL autoloop);
709 void __RPC_STUB IVLCControl_put_AutoLoop_Stub(
710     IRpcStubBuffer* This,
711     IRpcChannelBuffer* pRpcChannelBuffer,
712     PRPC_MESSAGE pRpcMessage,
713     DWORD* pdwStubPhase);
714
715 #endif  /* __IVLCControl_INTERFACE_DEFINED__ */
716
717 #define DISPID_PlayEvent (100)
718
719 #define DISPID_PauseEvent (101)
720
721 #define DISPID_StopEvent (102)
722
723 /*****************************************************************************
724  * DVLCEvents dispinterface
725  */
726 #ifndef __DVLCEvents_DISPINTERFACE_DEFINED__
727 #define __DVLCEvents_DISPINTERFACE_DEFINED__
728
729 DEFINE_GUID(DIID_DVLCEvents, 0xdf48072f, 0x5ef8, 0x434e, 0x9b,0x40, 0xe2,0xf3,0xae,0x75,0x9b,0x5f);
730 #if defined(__cplusplus) && !defined(CINTERFACE)
731 interface DVLCEvents : public IDispatch
732 {
733 };
734 #else
735 typedef struct DVLCEventsVtbl {
736     BEGIN_INTERFACE
737
738     /*** IUnknown methods ***/
739     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
740         DVLCEvents* This,
741         REFIID riid,
742         void **ppvObject);
743
744     ULONG (STDMETHODCALLTYPE *AddRef)(
745         DVLCEvents* This);
746
747     ULONG (STDMETHODCALLTYPE *Release)(
748         DVLCEvents* This);
749
750     /*** IDispatch methods ***/
751     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
752         DVLCEvents* This,
753         UINT *pctinfo);
754
755     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
756         DVLCEvents* This,
757         UINT iTInfo,
758         LCID lcid,
759         ITypeInfo **ppTInfo);
760
761     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
762         DVLCEvents* This,
763         REFIID riid,
764         LPOLESTR *rgszNames,
765         UINT cNames,
766         LCID lcid,
767         DISPID *rgDispId);
768
769     HRESULT (STDMETHODCALLTYPE *Invoke)(
770         DVLCEvents* This,
771         DISPID dispIdMember,
772         REFIID riid,
773         LCID lcid,
774         WORD wFlags,
775         DISPPARAMS *pDispParams,
776         VARIANT *pVarResult,
777         EXCEPINFO *pExcepInfo,
778         UINT *puArgErr);
779
780     END_INTERFACE
781 } DVLCEventsVtbl;
782 interface DVLCEvents {
783     CONST_VTBL DVLCEventsVtbl* lpVtbl;
784 };
785
786 #ifdef COBJMACROS
787 /*** IUnknown methods ***/
788 #define DVLCEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
789 #define DVLCEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
790 #define DVLCEvents_Release(This) (This)->lpVtbl->Release(This)
791 /*** IDispatch methods ***/
792 #define DVLCEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
793 #define DVLCEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
794 #define DVLCEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
795 #define DVLCEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
796 #endif
797
798 #endif
799
800 #endif  /* __DVLCEvents_DISPINTERFACE_DEFINED__ */
801
802 /*****************************************************************************
803  * IVLCAudio interface
804  */
805 #ifndef __IVLCAudio_INTERFACE_DEFINED__
806 #define __IVLCAudio_INTERFACE_DEFINED__
807
808 DEFINE_GUID(IID_IVLCAudio, 0x9e0bd17b, 0x2d3c, 0x4656, 0xb9,0x4d, 0x03,0x08,0x4f,0x3f,0xd9,0xd4);
809 #if defined(__cplusplus) && !defined(CINTERFACE)
810 interface IVLCAudio : public IDispatch
811 {
812     virtual HRESULT STDMETHODCALLTYPE get_mute(
813         VARIANT_BOOL *muted) = 0;
814
815     virtual HRESULT STDMETHODCALLTYPE put_mute(
816         VARIANT_BOOL muted) = 0;
817
818     virtual HRESULT STDMETHODCALLTYPE get_volume(
819         long *volume) = 0;
820
821     virtual HRESULT STDMETHODCALLTYPE put_volume(
822         long volume) = 0;
823
824     virtual HRESULT STDMETHODCALLTYPE toggleMute(
825         ) = 0;
826
827     virtual HRESULT STDMETHODCALLTYPE get_track(
828         long *track) = 0;
829
830     virtual HRESULT STDMETHODCALLTYPE put_track(
831         long track) = 0;
832
833     virtual HRESULT STDMETHODCALLTYPE get_count(
834         long *trackNumber) = 0;
835
836     virtual HRESULT STDMETHODCALLTYPE description(
837         long trackID,
838         BSTR *name) = 0;
839
840     virtual HRESULT STDMETHODCALLTYPE get_channel(
841         long *channel) = 0;
842
843     virtual HRESULT STDMETHODCALLTYPE put_channel(
844         long channel) = 0;
845
846 };
847 #else
848 typedef struct IVLCAudioVtbl {
849     BEGIN_INTERFACE
850
851     /*** IUnknown methods ***/
852     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
853         IVLCAudio* This,
854         REFIID riid,
855         void **ppvObject);
856
857     ULONG (STDMETHODCALLTYPE *AddRef)(
858         IVLCAudio* This);
859
860     ULONG (STDMETHODCALLTYPE *Release)(
861         IVLCAudio* This);
862
863     /*** IDispatch methods ***/
864     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
865         IVLCAudio* This,
866         UINT *pctinfo);
867
868     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
869         IVLCAudio* This,
870         UINT iTInfo,
871         LCID lcid,
872         ITypeInfo **ppTInfo);
873
874     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
875         IVLCAudio* This,
876         REFIID riid,
877         LPOLESTR *rgszNames,
878         UINT cNames,
879         LCID lcid,
880         DISPID *rgDispId);
881
882     HRESULT (STDMETHODCALLTYPE *Invoke)(
883         IVLCAudio* This,
884         DISPID dispIdMember,
885         REFIID riid,
886         LCID lcid,
887         WORD wFlags,
888         DISPPARAMS *pDispParams,
889         VARIANT *pVarResult,
890         EXCEPINFO *pExcepInfo,
891         UINT *puArgErr);
892
893     /*** IVLCAudio methods ***/
894     HRESULT (STDMETHODCALLTYPE *get_mute)(
895         IVLCAudio* This,
896         VARIANT_BOOL *muted);
897
898     HRESULT (STDMETHODCALLTYPE *put_mute)(
899         IVLCAudio* This,
900         VARIANT_BOOL muted);
901
902     HRESULT (STDMETHODCALLTYPE *get_volume)(
903         IVLCAudio* This,
904         long *volume);
905
906     HRESULT (STDMETHODCALLTYPE *put_volume)(
907         IVLCAudio* This,
908         long volume);
909
910     HRESULT (STDMETHODCALLTYPE *toggleMute)(
911         IVLCAudio* This);
912
913     HRESULT (STDMETHODCALLTYPE *get_track)(
914         IVLCAudio* This,
915         long *track);
916
917     HRESULT (STDMETHODCALLTYPE *put_track)(
918         IVLCAudio* This,
919         long track);
920
921     HRESULT (STDMETHODCALLTYPE *get_count)(
922         IVLCAudio* This,
923         long *trackNumber);
924
925     HRESULT (STDMETHODCALLTYPE *description)(
926         IVLCAudio* This,
927         long trackID,
928         BSTR *name);
929
930     HRESULT (STDMETHODCALLTYPE *get_channel)(
931         IVLCAudio* This,
932         long *channel);
933
934     HRESULT (STDMETHODCALLTYPE *put_channel)(
935         IVLCAudio* This,
936         long channel);
937
938     END_INTERFACE
939 } IVLCAudioVtbl;
940 interface IVLCAudio {
941     CONST_VTBL IVLCAudioVtbl* lpVtbl;
942 };
943
944 #ifdef COBJMACROS
945 /*** IUnknown methods ***/
946 #define IVLCAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
947 #define IVLCAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
948 #define IVLCAudio_Release(This) (This)->lpVtbl->Release(This)
949 /*** IDispatch methods ***/
950 #define IVLCAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
951 #define IVLCAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
952 #define IVLCAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
953 #define IVLCAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
954 /*** IVLCAudio methods ***/
955 #define IVLCAudio_get_mute(This,muted) (This)->lpVtbl->get_mute(This,muted)
956 #define IVLCAudio_put_mute(This,muted) (This)->lpVtbl->put_mute(This,muted)
957 #define IVLCAudio_get_volume(This,volume) (This)->lpVtbl->get_volume(This,volume)
958 #define IVLCAudio_put_volume(This,volume) (This)->lpVtbl->put_volume(This,volume)
959 #define IVLCAudio_toggleMute(This) (This)->lpVtbl->toggleMute(This)
960 #define IVLCAudio_get_track(This,track) (This)->lpVtbl->get_track(This,track)
961 #define IVLCAudio_put_track(This,track) (This)->lpVtbl->put_track(This,track)
962 #define IVLCAudio_get_count(This,trackNumber) (This)->lpVtbl->get_count(This,trackNumber)
963 #define IVLCAudio_description(This,trackID,name) (This)->lpVtbl->description(This,trackID,name)
964 #define IVLCAudio_get_channel(This,channel) (This)->lpVtbl->get_channel(This,channel)
965 #define IVLCAudio_put_channel(This,channel) (This)->lpVtbl->put_channel(This,channel)
966 #endif
967
968 #endif
969
970 HRESULT STDMETHODCALLTYPE IVLCAudio_get_mute_Proxy(
971     IVLCAudio* This,
972     VARIANT_BOOL *muted);
973 void __RPC_STUB IVLCAudio_get_mute_Stub(
974     IRpcStubBuffer* This,
975     IRpcChannelBuffer* pRpcChannelBuffer,
976     PRPC_MESSAGE pRpcMessage,
977     DWORD* pdwStubPhase);
978 HRESULT STDMETHODCALLTYPE IVLCAudio_put_mute_Proxy(
979     IVLCAudio* This,
980     VARIANT_BOOL muted);
981 void __RPC_STUB IVLCAudio_put_mute_Stub(
982     IRpcStubBuffer* This,
983     IRpcChannelBuffer* pRpcChannelBuffer,
984     PRPC_MESSAGE pRpcMessage,
985     DWORD* pdwStubPhase);
986 HRESULT STDMETHODCALLTYPE IVLCAudio_get_volume_Proxy(
987     IVLCAudio* This,
988     long *volume);
989 void __RPC_STUB IVLCAudio_get_volume_Stub(
990     IRpcStubBuffer* This,
991     IRpcChannelBuffer* pRpcChannelBuffer,
992     PRPC_MESSAGE pRpcMessage,
993     DWORD* pdwStubPhase);
994 HRESULT STDMETHODCALLTYPE IVLCAudio_put_volume_Proxy(
995     IVLCAudio* This,
996     long volume);
997 void __RPC_STUB IVLCAudio_put_volume_Stub(
998     IRpcStubBuffer* This,
999     IRpcChannelBuffer* pRpcChannelBuffer,
1000     PRPC_MESSAGE pRpcMessage,
1001     DWORD* pdwStubPhase);
1002 HRESULT STDMETHODCALLTYPE IVLCAudio_toggleMute_Proxy(
1003     IVLCAudio* This);
1004 void __RPC_STUB IVLCAudio_toggleMute_Stub(
1005     IRpcStubBuffer* This,
1006     IRpcChannelBuffer* pRpcChannelBuffer,
1007     PRPC_MESSAGE pRpcMessage,
1008     DWORD* pdwStubPhase);
1009 HRESULT STDMETHODCALLTYPE IVLCAudio_get_track_Proxy(
1010     IVLCAudio* This,
1011     long *track);
1012 void __RPC_STUB IVLCAudio_get_track_Stub(
1013     IRpcStubBuffer* This,
1014     IRpcChannelBuffer* pRpcChannelBuffer,
1015     PRPC_MESSAGE pRpcMessage,
1016     DWORD* pdwStubPhase);
1017 HRESULT STDMETHODCALLTYPE IVLCAudio_put_track_Proxy(
1018     IVLCAudio* This,
1019     long track);
1020 void __RPC_STUB IVLCAudio_put_track_Stub(
1021     IRpcStubBuffer* This,
1022     IRpcChannelBuffer* pRpcChannelBuffer,
1023     PRPC_MESSAGE pRpcMessage,
1024     DWORD* pdwStubPhase);
1025 HRESULT STDMETHODCALLTYPE IVLCAudio_get_count_Proxy(
1026     IVLCAudio* This,
1027     long *trackNumber);
1028 void __RPC_STUB IVLCAudio_get_count_Stub(
1029     IRpcStubBuffer* This,
1030     IRpcChannelBuffer* pRpcChannelBuffer,
1031     PRPC_MESSAGE pRpcMessage,
1032     DWORD* pdwStubPhase);
1033 HRESULT STDMETHODCALLTYPE IVLCAudio_description_Proxy(
1034     IVLCAudio* This,
1035     long trackID,
1036     BSTR *name);
1037 void __RPC_STUB IVLCAudio_description_Stub(
1038     IRpcStubBuffer* This,
1039     IRpcChannelBuffer* pRpcChannelBuffer,
1040     PRPC_MESSAGE pRpcMessage,
1041     DWORD* pdwStubPhase);
1042 HRESULT STDMETHODCALLTYPE IVLCAudio_get_channel_Proxy(
1043     IVLCAudio* This,
1044     long *channel);
1045 void __RPC_STUB IVLCAudio_get_channel_Stub(
1046     IRpcStubBuffer* This,
1047     IRpcChannelBuffer* pRpcChannelBuffer,
1048     PRPC_MESSAGE pRpcMessage,
1049     DWORD* pdwStubPhase);
1050 HRESULT STDMETHODCALLTYPE IVLCAudio_put_channel_Proxy(
1051     IVLCAudio* This,
1052     long channel);
1053 void __RPC_STUB IVLCAudio_put_channel_Stub(
1054     IRpcStubBuffer* This,
1055     IRpcChannelBuffer* pRpcChannelBuffer,
1056     PRPC_MESSAGE pRpcMessage,
1057     DWORD* pdwStubPhase);
1058
1059 #endif  /* __IVLCAudio_INTERFACE_DEFINED__ */
1060
1061 /*****************************************************************************
1062  * IVLCInput interface
1063  */
1064 #ifndef __IVLCInput_INTERFACE_DEFINED__
1065 #define __IVLCInput_INTERFACE_DEFINED__
1066
1067 DEFINE_GUID(IID_IVLCInput, 0x49e0dbd1, 0x9440, 0x466c, 0x9c,0x97, 0x95,0xc6,0x71,0x90,0xc6,0x03);
1068 #if defined(__cplusplus) && !defined(CINTERFACE)
1069 interface IVLCInput : public IDispatch
1070 {
1071     virtual HRESULT STDMETHODCALLTYPE get_length(
1072         double *length) = 0;
1073
1074     virtual HRESULT STDMETHODCALLTYPE get_position(
1075         double *position) = 0;
1076
1077     virtual HRESULT STDMETHODCALLTYPE put_position(
1078         double position) = 0;
1079
1080     virtual HRESULT STDMETHODCALLTYPE get_time(
1081         double *time) = 0;
1082
1083     virtual HRESULT STDMETHODCALLTYPE put_time(
1084         double time) = 0;
1085
1086     virtual HRESULT STDMETHODCALLTYPE get_state(
1087         long *state) = 0;
1088
1089     virtual HRESULT STDMETHODCALLTYPE get_rate(
1090         double *rate) = 0;
1091
1092     virtual HRESULT STDMETHODCALLTYPE put_rate(
1093         double rate) = 0;
1094
1095     virtual HRESULT STDMETHODCALLTYPE get_fps(
1096         double *fps) = 0;
1097
1098     virtual HRESULT STDMETHODCALLTYPE get_hasVout(
1099         VARIANT_BOOL *hasVout) = 0;
1100
1101 };
1102 #else
1103 typedef struct IVLCInputVtbl {
1104     BEGIN_INTERFACE
1105
1106     /*** IUnknown methods ***/
1107     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1108         IVLCInput* This,
1109         REFIID riid,
1110         void **ppvObject);
1111
1112     ULONG (STDMETHODCALLTYPE *AddRef)(
1113         IVLCInput* This);
1114
1115     ULONG (STDMETHODCALLTYPE *Release)(
1116         IVLCInput* This);
1117
1118     /*** IDispatch methods ***/
1119     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1120         IVLCInput* This,
1121         UINT *pctinfo);
1122
1123     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1124         IVLCInput* This,
1125         UINT iTInfo,
1126         LCID lcid,
1127         ITypeInfo **ppTInfo);
1128
1129     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1130         IVLCInput* This,
1131         REFIID riid,
1132         LPOLESTR *rgszNames,
1133         UINT cNames,
1134         LCID lcid,
1135         DISPID *rgDispId);
1136
1137     HRESULT (STDMETHODCALLTYPE *Invoke)(
1138         IVLCInput* This,
1139         DISPID dispIdMember,
1140         REFIID riid,
1141         LCID lcid,
1142         WORD wFlags,
1143         DISPPARAMS *pDispParams,
1144         VARIANT *pVarResult,
1145         EXCEPINFO *pExcepInfo,
1146         UINT *puArgErr);
1147
1148     /*** IVLCInput methods ***/
1149     HRESULT (STDMETHODCALLTYPE *get_length)(
1150         IVLCInput* This,
1151         double *length);
1152
1153     HRESULT (STDMETHODCALLTYPE *get_position)(
1154         IVLCInput* This,
1155         double *position);
1156
1157     HRESULT (STDMETHODCALLTYPE *put_position)(
1158         IVLCInput* This,
1159         double position);
1160
1161     HRESULT (STDMETHODCALLTYPE *get_time)(
1162         IVLCInput* This,
1163         double *time);
1164
1165     HRESULT (STDMETHODCALLTYPE *put_time)(
1166         IVLCInput* This,
1167         double time);
1168
1169     HRESULT (STDMETHODCALLTYPE *get_state)(
1170         IVLCInput* This,
1171         long *state);
1172
1173     HRESULT (STDMETHODCALLTYPE *get_rate)(
1174         IVLCInput* This,
1175         double *rate);
1176
1177     HRESULT (STDMETHODCALLTYPE *put_rate)(
1178         IVLCInput* This,
1179         double rate);
1180
1181     HRESULT (STDMETHODCALLTYPE *get_fps)(
1182         IVLCInput* This,
1183         double *fps);
1184
1185     HRESULT (STDMETHODCALLTYPE *get_hasVout)(
1186         IVLCInput* This,
1187         VARIANT_BOOL *hasVout);
1188
1189     END_INTERFACE
1190 } IVLCInputVtbl;
1191 interface IVLCInput {
1192     CONST_VTBL IVLCInputVtbl* lpVtbl;
1193 };
1194
1195 #ifdef COBJMACROS
1196 /*** IUnknown methods ***/
1197 #define IVLCInput_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1198 #define IVLCInput_AddRef(This) (This)->lpVtbl->AddRef(This)
1199 #define IVLCInput_Release(This) (This)->lpVtbl->Release(This)
1200 /*** IDispatch methods ***/
1201 #define IVLCInput_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1202 #define IVLCInput_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1203 #define IVLCInput_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1204 #define IVLCInput_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1205 /*** IVLCInput methods ***/
1206 #define IVLCInput_get_length(This,length) (This)->lpVtbl->get_length(This,length)
1207 #define IVLCInput_get_position(This,position) (This)->lpVtbl->get_position(This,position)
1208 #define IVLCInput_put_position(This,position) (This)->lpVtbl->put_position(This,position)
1209 #define IVLCInput_get_time(This,time) (This)->lpVtbl->get_time(This,time)
1210 #define IVLCInput_put_time(This,time) (This)->lpVtbl->put_time(This,time)
1211 #define IVLCInput_get_state(This,state) (This)->lpVtbl->get_state(This,state)
1212 #define IVLCInput_get_rate(This,rate) (This)->lpVtbl->get_rate(This,rate)
1213 #define IVLCInput_put_rate(This,rate) (This)->lpVtbl->put_rate(This,rate)
1214 #define IVLCInput_get_fps(This,fps) (This)->lpVtbl->get_fps(This,fps)
1215 #define IVLCInput_get_hasVout(This,hasVout) (This)->lpVtbl->get_hasVout(This,hasVout)
1216 #endif
1217
1218 #endif
1219
1220 HRESULT STDMETHODCALLTYPE IVLCInput_get_length_Proxy(
1221     IVLCInput* This,
1222     double *length);
1223 void __RPC_STUB IVLCInput_get_length_Stub(
1224     IRpcStubBuffer* This,
1225     IRpcChannelBuffer* pRpcChannelBuffer,
1226     PRPC_MESSAGE pRpcMessage,
1227     DWORD* pdwStubPhase);
1228 HRESULT STDMETHODCALLTYPE IVLCInput_get_position_Proxy(
1229     IVLCInput* This,
1230     double *position);
1231 void __RPC_STUB IVLCInput_get_position_Stub(
1232     IRpcStubBuffer* This,
1233     IRpcChannelBuffer* pRpcChannelBuffer,
1234     PRPC_MESSAGE pRpcMessage,
1235     DWORD* pdwStubPhase);
1236 HRESULT STDMETHODCALLTYPE IVLCInput_put_position_Proxy(
1237     IVLCInput* This,
1238     double position);
1239 void __RPC_STUB IVLCInput_put_position_Stub(
1240     IRpcStubBuffer* This,
1241     IRpcChannelBuffer* pRpcChannelBuffer,
1242     PRPC_MESSAGE pRpcMessage,
1243     DWORD* pdwStubPhase);
1244 HRESULT STDMETHODCALLTYPE IVLCInput_get_time_Proxy(
1245     IVLCInput* This,
1246     double *time);
1247 void __RPC_STUB IVLCInput_get_time_Stub(
1248     IRpcStubBuffer* This,
1249     IRpcChannelBuffer* pRpcChannelBuffer,
1250     PRPC_MESSAGE pRpcMessage,
1251     DWORD* pdwStubPhase);
1252 HRESULT STDMETHODCALLTYPE IVLCInput_put_time_Proxy(
1253     IVLCInput* This,
1254     double time);
1255 void __RPC_STUB IVLCInput_put_time_Stub(
1256     IRpcStubBuffer* This,
1257     IRpcChannelBuffer* pRpcChannelBuffer,
1258     PRPC_MESSAGE pRpcMessage,
1259     DWORD* pdwStubPhase);
1260 HRESULT STDMETHODCALLTYPE IVLCInput_get_state_Proxy(
1261     IVLCInput* This,
1262     long *state);
1263 void __RPC_STUB IVLCInput_get_state_Stub(
1264     IRpcStubBuffer* This,
1265     IRpcChannelBuffer* pRpcChannelBuffer,
1266     PRPC_MESSAGE pRpcMessage,
1267     DWORD* pdwStubPhase);
1268 HRESULT STDMETHODCALLTYPE IVLCInput_get_rate_Proxy(
1269     IVLCInput* This,
1270     double *rate);
1271 void __RPC_STUB IVLCInput_get_rate_Stub(
1272     IRpcStubBuffer* This,
1273     IRpcChannelBuffer* pRpcChannelBuffer,
1274     PRPC_MESSAGE pRpcMessage,
1275     DWORD* pdwStubPhase);
1276 HRESULT STDMETHODCALLTYPE IVLCInput_put_rate_Proxy(
1277     IVLCInput* This,
1278     double rate);
1279 void __RPC_STUB IVLCInput_put_rate_Stub(
1280     IRpcStubBuffer* This,
1281     IRpcChannelBuffer* pRpcChannelBuffer,
1282     PRPC_MESSAGE pRpcMessage,
1283     DWORD* pdwStubPhase);
1284 HRESULT STDMETHODCALLTYPE IVLCInput_get_fps_Proxy(
1285     IVLCInput* This,
1286     double *fps);
1287 void __RPC_STUB IVLCInput_get_fps_Stub(
1288     IRpcStubBuffer* This,
1289     IRpcChannelBuffer* pRpcChannelBuffer,
1290     PRPC_MESSAGE pRpcMessage,
1291     DWORD* pdwStubPhase);
1292 HRESULT STDMETHODCALLTYPE IVLCInput_get_hasVout_Proxy(
1293     IVLCInput* This,
1294     VARIANT_BOOL *hasVout);
1295 void __RPC_STUB IVLCInput_get_hasVout_Stub(
1296     IRpcStubBuffer* This,
1297     IRpcChannelBuffer* pRpcChannelBuffer,
1298     PRPC_MESSAGE pRpcMessage,
1299     DWORD* pdwStubPhase);
1300
1301 #endif  /* __IVLCInput_INTERFACE_DEFINED__ */
1302
1303 /*****************************************************************************
1304  * IVLCMessage interface
1305  */
1306 #ifndef __IVLCMessage_INTERFACE_DEFINED__
1307 #define __IVLCMessage_INTERFACE_DEFINED__
1308
1309 DEFINE_GUID(IID_IVLCMessage, 0x9ed00afa, 0x7bcd, 0x4fff, 0x8d,0x48, 0x7d,0xd4,0xdb,0x2c,0x80,0x0d);
1310 #if defined(__cplusplus) && !defined(CINTERFACE)
1311 interface IVLCMessage : public IDispatch
1312 {
1313     virtual HRESULT STDMETHODCALLTYPE get__Value(
1314         VARIANT *message) = 0;
1315
1316     virtual HRESULT STDMETHODCALLTYPE get_severity(
1317         long *level) = 0;
1318
1319     virtual HRESULT STDMETHODCALLTYPE get_type(
1320         BSTR *type) = 0;
1321
1322     virtual HRESULT STDMETHODCALLTYPE get_name(
1323         BSTR *name) = 0;
1324
1325     virtual HRESULT STDMETHODCALLTYPE get_header(
1326         BSTR *header) = 0;
1327
1328     virtual HRESULT STDMETHODCALLTYPE get_message(
1329         BSTR *message) = 0;
1330
1331 };
1332 #else
1333 typedef struct IVLCMessageVtbl {
1334     BEGIN_INTERFACE
1335
1336     /*** IUnknown methods ***/
1337     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1338         IVLCMessage* This,
1339         REFIID riid,
1340         void **ppvObject);
1341
1342     ULONG (STDMETHODCALLTYPE *AddRef)(
1343         IVLCMessage* This);
1344
1345     ULONG (STDMETHODCALLTYPE *Release)(
1346         IVLCMessage* This);
1347
1348     /*** IDispatch methods ***/
1349     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1350         IVLCMessage* This,
1351         UINT *pctinfo);
1352
1353     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1354         IVLCMessage* This,
1355         UINT iTInfo,
1356         LCID lcid,
1357         ITypeInfo **ppTInfo);
1358
1359     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1360         IVLCMessage* This,
1361         REFIID riid,
1362         LPOLESTR *rgszNames,
1363         UINT cNames,
1364         LCID lcid,
1365         DISPID *rgDispId);
1366
1367     HRESULT (STDMETHODCALLTYPE *Invoke)(
1368         IVLCMessage* This,
1369         DISPID dispIdMember,
1370         REFIID riid,
1371         LCID lcid,
1372         WORD wFlags,
1373         DISPPARAMS *pDispParams,
1374         VARIANT *pVarResult,
1375         EXCEPINFO *pExcepInfo,
1376         UINT *puArgErr);
1377
1378     /*** IVLCMessage methods ***/
1379     HRESULT (STDMETHODCALLTYPE *get__Value)(
1380         IVLCMessage* This,
1381         VARIANT *message);
1382
1383     HRESULT (STDMETHODCALLTYPE *get_severity)(
1384         IVLCMessage* This,
1385         long *level);
1386
1387     HRESULT (STDMETHODCALLTYPE *get_type)(
1388         IVLCMessage* This,
1389         BSTR *type);
1390
1391     HRESULT (STDMETHODCALLTYPE *get_name)(
1392         IVLCMessage* This,
1393         BSTR *name);
1394
1395     HRESULT (STDMETHODCALLTYPE *get_header)(
1396         IVLCMessage* This,
1397         BSTR *header);
1398
1399     HRESULT (STDMETHODCALLTYPE *get_message)(
1400         IVLCMessage* This,
1401         BSTR *message);
1402
1403     END_INTERFACE
1404 } IVLCMessageVtbl;
1405 interface IVLCMessage {
1406     CONST_VTBL IVLCMessageVtbl* lpVtbl;
1407 };
1408
1409 #ifdef COBJMACROS
1410 /*** IUnknown methods ***/
1411 #define IVLCMessage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1412 #define IVLCMessage_AddRef(This) (This)->lpVtbl->AddRef(This)
1413 #define IVLCMessage_Release(This) (This)->lpVtbl->Release(This)
1414 /*** IDispatch methods ***/
1415 #define IVLCMessage_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1416 #define IVLCMessage_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1417 #define IVLCMessage_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1418 #define IVLCMessage_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1419 /*** IVLCMessage methods ***/
1420 #define IVLCMessage_get__Value(This,message) (This)->lpVtbl->get__Value(This,message)
1421 #define IVLCMessage_get_severity(This,level) (This)->lpVtbl->get_severity(This,level)
1422 #define IVLCMessage_get_type(This,type) (This)->lpVtbl->get_type(This,type)
1423 #define IVLCMessage_get_name(This,name) (This)->lpVtbl->get_name(This,name)
1424 #define IVLCMessage_get_header(This,header) (This)->lpVtbl->get_header(This,header)
1425 #define IVLCMessage_get_message(This,message) (This)->lpVtbl->get_message(This,message)
1426 #endif
1427
1428 #endif
1429
1430 HRESULT STDMETHODCALLTYPE IVLCMessage_get__Value_Proxy(
1431     IVLCMessage* This,
1432     VARIANT *message);
1433 void __RPC_STUB IVLCMessage_get__Value_Stub(
1434     IRpcStubBuffer* This,
1435     IRpcChannelBuffer* pRpcChannelBuffer,
1436     PRPC_MESSAGE pRpcMessage,
1437     DWORD* pdwStubPhase);
1438 HRESULT STDMETHODCALLTYPE IVLCMessage_get_severity_Proxy(
1439     IVLCMessage* This,
1440     long *level);
1441 void __RPC_STUB IVLCMessage_get_severity_Stub(
1442     IRpcStubBuffer* This,
1443     IRpcChannelBuffer* pRpcChannelBuffer,
1444     PRPC_MESSAGE pRpcMessage,
1445     DWORD* pdwStubPhase);
1446 HRESULT STDMETHODCALLTYPE IVLCMessage_get_type_Proxy(
1447     IVLCMessage* This,
1448     BSTR *type);
1449 void __RPC_STUB IVLCMessage_get_type_Stub(
1450     IRpcStubBuffer* This,
1451     IRpcChannelBuffer* pRpcChannelBuffer,
1452     PRPC_MESSAGE pRpcMessage,
1453     DWORD* pdwStubPhase);
1454 HRESULT STDMETHODCALLTYPE IVLCMessage_get_name_Proxy(
1455     IVLCMessage* This,
1456     BSTR *name);
1457 void __RPC_STUB IVLCMessage_get_name_Stub(
1458     IRpcStubBuffer* This,
1459     IRpcChannelBuffer* pRpcChannelBuffer,
1460     PRPC_MESSAGE pRpcMessage,
1461     DWORD* pdwStubPhase);
1462 HRESULT STDMETHODCALLTYPE IVLCMessage_get_header_Proxy(
1463     IVLCMessage* This,
1464     BSTR *header);
1465 void __RPC_STUB IVLCMessage_get_header_Stub(
1466     IRpcStubBuffer* This,
1467     IRpcChannelBuffer* pRpcChannelBuffer,
1468     PRPC_MESSAGE pRpcMessage,
1469     DWORD* pdwStubPhase);
1470 HRESULT STDMETHODCALLTYPE IVLCMessage_get_message_Proxy(
1471     IVLCMessage* This,
1472     BSTR *message);
1473 void __RPC_STUB IVLCMessage_get_message_Stub(
1474     IRpcStubBuffer* This,
1475     IRpcChannelBuffer* pRpcChannelBuffer,
1476     PRPC_MESSAGE pRpcMessage,
1477     DWORD* pdwStubPhase);
1478
1479 #endif  /* __IVLCMessage_INTERFACE_DEFINED__ */
1480
1481 /*****************************************************************************
1482  * IVLCMessageIterator interface
1483  */
1484 #ifndef __IVLCMessageIterator_INTERFACE_DEFINED__
1485 #define __IVLCMessageIterator_INTERFACE_DEFINED__
1486
1487 DEFINE_GUID(IID_IVLCMessageIterator, 0x15179cd8, 0xcc12, 0x4242, 0xa5,0x8e, 0xe4,0x12,0x21,0x7f,0xf3,0x43);
1488 #if defined(__cplusplus) && !defined(CINTERFACE)
1489 interface IVLCMessageIterator : public IDispatch
1490 {
1491     virtual HRESULT STDMETHODCALLTYPE get_hasNext(
1492         VARIANT_BOOL *hasNext) = 0;
1493
1494     virtual HRESULT STDMETHODCALLTYPE next(
1495         IVLCMessage **msg) = 0;
1496
1497 };
1498 #else
1499 typedef struct IVLCMessageIteratorVtbl {
1500     BEGIN_INTERFACE
1501
1502     /*** IUnknown methods ***/
1503     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1504         IVLCMessageIterator* This,
1505         REFIID riid,
1506         void **ppvObject);
1507
1508     ULONG (STDMETHODCALLTYPE *AddRef)(
1509         IVLCMessageIterator* This);
1510
1511     ULONG (STDMETHODCALLTYPE *Release)(
1512         IVLCMessageIterator* This);
1513
1514     /*** IDispatch methods ***/
1515     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1516         IVLCMessageIterator* This,
1517         UINT *pctinfo);
1518
1519     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1520         IVLCMessageIterator* This,
1521         UINT iTInfo,
1522         LCID lcid,
1523         ITypeInfo **ppTInfo);
1524
1525     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1526         IVLCMessageIterator* This,
1527         REFIID riid,
1528         LPOLESTR *rgszNames,
1529         UINT cNames,
1530         LCID lcid,
1531         DISPID *rgDispId);
1532
1533     HRESULT (STDMETHODCALLTYPE *Invoke)(
1534         IVLCMessageIterator* This,
1535         DISPID dispIdMember,
1536         REFIID riid,
1537         LCID lcid,
1538         WORD wFlags,
1539         DISPPARAMS *pDispParams,
1540         VARIANT *pVarResult,
1541         EXCEPINFO *pExcepInfo,
1542         UINT *puArgErr);
1543
1544     /*** IVLCMessageIterator methods ***/
1545     HRESULT (STDMETHODCALLTYPE *get_hasNext)(
1546         IVLCMessageIterator* This,
1547         VARIANT_BOOL *hasNext);
1548
1549     HRESULT (STDMETHODCALLTYPE *next)(
1550         IVLCMessageIterator* This,
1551         IVLCMessage **msg);
1552
1553     END_INTERFACE
1554 } IVLCMessageIteratorVtbl;
1555 interface IVLCMessageIterator {
1556     CONST_VTBL IVLCMessageIteratorVtbl* lpVtbl;
1557 };
1558
1559 #ifdef COBJMACROS
1560 /*** IUnknown methods ***/
1561 #define IVLCMessageIterator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1562 #define IVLCMessageIterator_AddRef(This) (This)->lpVtbl->AddRef(This)
1563 #define IVLCMessageIterator_Release(This) (This)->lpVtbl->Release(This)
1564 /*** IDispatch methods ***/
1565 #define IVLCMessageIterator_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1566 #define IVLCMessageIterator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1567 #define IVLCMessageIterator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1568 #define IVLCMessageIterator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1569 /*** IVLCMessageIterator methods ***/
1570 #define IVLCMessageIterator_get_hasNext(This,hasNext) (This)->lpVtbl->get_hasNext(This,hasNext)
1571 #define IVLCMessageIterator_next(This,msg) (This)->lpVtbl->next(This,msg)
1572 #endif
1573
1574 #endif
1575
1576 HRESULT STDMETHODCALLTYPE IVLCMessageIterator_get_hasNext_Proxy(
1577     IVLCMessageIterator* This,
1578     VARIANT_BOOL *hasNext);
1579 void __RPC_STUB IVLCMessageIterator_get_hasNext_Stub(
1580     IRpcStubBuffer* This,
1581     IRpcChannelBuffer* pRpcChannelBuffer,
1582     PRPC_MESSAGE pRpcMessage,
1583     DWORD* pdwStubPhase);
1584 HRESULT STDMETHODCALLTYPE IVLCMessageIterator_next_Proxy(
1585     IVLCMessageIterator* This,
1586     IVLCMessage **msg);
1587 void __RPC_STUB IVLCMessageIterator_next_Stub(
1588     IRpcStubBuffer* This,
1589     IRpcChannelBuffer* pRpcChannelBuffer,
1590     PRPC_MESSAGE pRpcMessage,
1591     DWORD* pdwStubPhase);
1592
1593 #endif  /* __IVLCMessageIterator_INTERFACE_DEFINED__ */
1594
1595 /*****************************************************************************
1596  * IVLCMessages interface
1597  */
1598 #ifndef __IVLCMessages_INTERFACE_DEFINED__
1599 #define __IVLCMessages_INTERFACE_DEFINED__
1600
1601 DEFINE_GUID(IID_IVLCMessages, 0x6c5ce55d, 0x2d6c, 0x4aad, 0x82,0x99, 0xc6,0x2d,0x23,0x71,0xf1,0x06);
1602 #if defined(__cplusplus) && !defined(CINTERFACE)
1603 interface IVLCMessages : public IDispatch
1604 {
1605     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
1606         IUnknown **_NewEnum) = 0;
1607
1608     virtual HRESULT STDMETHODCALLTYPE clear(
1609         ) = 0;
1610
1611     virtual HRESULT STDMETHODCALLTYPE get_count(
1612         long *count) = 0;
1613
1614     virtual HRESULT STDMETHODCALLTYPE iterator(
1615         IVLCMessageIterator **iter) = 0;
1616
1617 };
1618 #else
1619 typedef struct IVLCMessagesVtbl {
1620     BEGIN_INTERFACE
1621
1622     /*** IUnknown methods ***/
1623     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1624         IVLCMessages* This,
1625         REFIID riid,
1626         void **ppvObject);
1627
1628     ULONG (STDMETHODCALLTYPE *AddRef)(
1629         IVLCMessages* This);
1630
1631     ULONG (STDMETHODCALLTYPE *Release)(
1632         IVLCMessages* This);
1633
1634     /*** IDispatch methods ***/
1635     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1636         IVLCMessages* This,
1637         UINT *pctinfo);
1638
1639     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1640         IVLCMessages* This,
1641         UINT iTInfo,
1642         LCID lcid,
1643         ITypeInfo **ppTInfo);
1644
1645     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1646         IVLCMessages* This,
1647         REFIID riid,
1648         LPOLESTR *rgszNames,
1649         UINT cNames,
1650         LCID lcid,
1651         DISPID *rgDispId);
1652
1653     HRESULT (STDMETHODCALLTYPE *Invoke)(
1654         IVLCMessages* This,
1655         DISPID dispIdMember,
1656         REFIID riid,
1657         LCID lcid,
1658         WORD wFlags,
1659         DISPPARAMS *pDispParams,
1660         VARIANT *pVarResult,
1661         EXCEPINFO *pExcepInfo,
1662         UINT *puArgErr);
1663
1664     /*** IVLCMessages methods ***/
1665     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
1666         IVLCMessages* This,
1667         IUnknown **_NewEnum);
1668
1669     HRESULT (STDMETHODCALLTYPE *clear)(
1670         IVLCMessages* This);
1671
1672     HRESULT (STDMETHODCALLTYPE *get_count)(
1673         IVLCMessages* This,
1674         long *count);
1675
1676     HRESULT (STDMETHODCALLTYPE *iterator)(
1677         IVLCMessages* This,
1678         IVLCMessageIterator **iter);
1679
1680     END_INTERFACE
1681 } IVLCMessagesVtbl;
1682 interface IVLCMessages {
1683     CONST_VTBL IVLCMessagesVtbl* lpVtbl;
1684 };
1685
1686 #ifdef COBJMACROS
1687 /*** IUnknown methods ***/
1688 #define IVLCMessages_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1689 #define IVLCMessages_AddRef(This) (This)->lpVtbl->AddRef(This)
1690 #define IVLCMessages_Release(This) (This)->lpVtbl->Release(This)
1691 /*** IDispatch methods ***/
1692 #define IVLCMessages_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1693 #define IVLCMessages_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1694 #define IVLCMessages_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1695 #define IVLCMessages_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1696 /*** IVLCMessages methods ***/
1697 #define IVLCMessages_get__NewEnum(This,_NewEnum) (This)->lpVtbl->get__NewEnum(This,_NewEnum)
1698 #define IVLCMessages_clear(This) (This)->lpVtbl->clear(This)
1699 #define IVLCMessages_get_count(This,count) (This)->lpVtbl->get_count(This,count)
1700 #define IVLCMessages_iterator(This,iter) (This)->lpVtbl->iterator(This,iter)
1701 #endif
1702
1703 #endif
1704
1705 HRESULT STDMETHODCALLTYPE IVLCMessages_get__NewEnum_Proxy(
1706     IVLCMessages* This,
1707     IUnknown **_NewEnum);
1708 void __RPC_STUB IVLCMessages_get__NewEnum_Stub(
1709     IRpcStubBuffer* This,
1710     IRpcChannelBuffer* pRpcChannelBuffer,
1711     PRPC_MESSAGE pRpcMessage,
1712     DWORD* pdwStubPhase);
1713 HRESULT STDMETHODCALLTYPE IVLCMessages_clear_Proxy(
1714     IVLCMessages* This);
1715 void __RPC_STUB IVLCMessages_clear_Stub(
1716     IRpcStubBuffer* This,
1717     IRpcChannelBuffer* pRpcChannelBuffer,
1718     PRPC_MESSAGE pRpcMessage,
1719     DWORD* pdwStubPhase);
1720 HRESULT STDMETHODCALLTYPE IVLCMessages_get_count_Proxy(
1721     IVLCMessages* This,
1722     long *count);
1723 void __RPC_STUB IVLCMessages_get_count_Stub(
1724     IRpcStubBuffer* This,
1725     IRpcChannelBuffer* pRpcChannelBuffer,
1726     PRPC_MESSAGE pRpcMessage,
1727     DWORD* pdwStubPhase);
1728 HRESULT STDMETHODCALLTYPE IVLCMessages_iterator_Proxy(
1729     IVLCMessages* This,
1730     IVLCMessageIterator **iter);
1731 void __RPC_STUB IVLCMessages_iterator_Stub(
1732     IRpcStubBuffer* This,
1733     IRpcChannelBuffer* pRpcChannelBuffer,
1734     PRPC_MESSAGE pRpcMessage,
1735     DWORD* pdwStubPhase);
1736
1737 #endif  /* __IVLCMessages_INTERFACE_DEFINED__ */
1738
1739 /*****************************************************************************
1740  * IVLCLog interface
1741  */
1742 #ifndef __IVLCLog_INTERFACE_DEFINED__
1743 #define __IVLCLog_INTERFACE_DEFINED__
1744
1745 DEFINE_GUID(IID_IVLCLog, 0x8e3bc3d9, 0x62e9, 0x48fb, 0x8a,0x6d, 0x99,0x3f,0x9a,0xbc,0x4a,0x0a);
1746 #if defined(__cplusplus) && !defined(CINTERFACE)
1747 interface IVLCLog : public IDispatch
1748 {
1749     virtual HRESULT STDMETHODCALLTYPE get_messages(
1750         IVLCMessages **iter) = 0;
1751
1752     virtual HRESULT STDMETHODCALLTYPE get_verbosity(
1753         long *level) = 0;
1754
1755     virtual HRESULT STDMETHODCALLTYPE put_verbosity(
1756         long level) = 0;
1757
1758 };
1759 #else
1760 typedef struct IVLCLogVtbl {
1761     BEGIN_INTERFACE
1762
1763     /*** IUnknown methods ***/
1764     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1765         IVLCLog* This,
1766         REFIID riid,
1767         void **ppvObject);
1768
1769     ULONG (STDMETHODCALLTYPE *AddRef)(
1770         IVLCLog* This);
1771
1772     ULONG (STDMETHODCALLTYPE *Release)(
1773         IVLCLog* This);
1774
1775     /*** IDispatch methods ***/
1776     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1777         IVLCLog* This,
1778         UINT *pctinfo);
1779
1780     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1781         IVLCLog* This,
1782         UINT iTInfo,
1783         LCID lcid,
1784         ITypeInfo **ppTInfo);
1785
1786     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1787         IVLCLog* This,
1788         REFIID riid,
1789         LPOLESTR *rgszNames,
1790         UINT cNames,
1791         LCID lcid,
1792         DISPID *rgDispId);
1793
1794     HRESULT (STDMETHODCALLTYPE *Invoke)(
1795         IVLCLog* This,
1796         DISPID dispIdMember,
1797         REFIID riid,
1798         LCID lcid,
1799         WORD wFlags,
1800         DISPPARAMS *pDispParams,
1801         VARIANT *pVarResult,
1802         EXCEPINFO *pExcepInfo,
1803         UINT *puArgErr);
1804
1805     /*** IVLCLog methods ***/
1806     HRESULT (STDMETHODCALLTYPE *get_messages)(
1807         IVLCLog* This,
1808         IVLCMessages **iter);
1809
1810     HRESULT (STDMETHODCALLTYPE *get_verbosity)(
1811         IVLCLog* This,
1812         long *level);
1813
1814     HRESULT (STDMETHODCALLTYPE *put_verbosity)(
1815         IVLCLog* This,
1816         long level);
1817
1818     END_INTERFACE
1819 } IVLCLogVtbl;
1820 interface IVLCLog {
1821     CONST_VTBL IVLCLogVtbl* lpVtbl;
1822 };
1823
1824 #ifdef COBJMACROS
1825 /*** IUnknown methods ***/
1826 #define IVLCLog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1827 #define IVLCLog_AddRef(This) (This)->lpVtbl->AddRef(This)
1828 #define IVLCLog_Release(This) (This)->lpVtbl->Release(This)
1829 /*** IDispatch methods ***/
1830 #define IVLCLog_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1831 #define IVLCLog_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1832 #define IVLCLog_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1833 #define IVLCLog_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1834 /*** IVLCLog methods ***/
1835 #define IVLCLog_get_messages(This,iter) (This)->lpVtbl->get_messages(This,iter)
1836 #define IVLCLog_get_verbosity(This,level) (This)->lpVtbl->get_verbosity(This,level)
1837 #define IVLCLog_put_verbosity(This,level) (This)->lpVtbl->put_verbosity(This,level)
1838 #endif
1839
1840 #endif
1841
1842 HRESULT STDMETHODCALLTYPE IVLCLog_get_messages_Proxy(
1843     IVLCLog* This,
1844     IVLCMessages **iter);
1845 void __RPC_STUB IVLCLog_get_messages_Stub(
1846     IRpcStubBuffer* This,
1847     IRpcChannelBuffer* pRpcChannelBuffer,
1848     PRPC_MESSAGE pRpcMessage,
1849     DWORD* pdwStubPhase);
1850 HRESULT STDMETHODCALLTYPE IVLCLog_get_verbosity_Proxy(
1851     IVLCLog* This,
1852     long *level);
1853 void __RPC_STUB IVLCLog_get_verbosity_Stub(
1854     IRpcStubBuffer* This,
1855     IRpcChannelBuffer* pRpcChannelBuffer,
1856     PRPC_MESSAGE pRpcMessage,
1857     DWORD* pdwStubPhase);
1858 HRESULT STDMETHODCALLTYPE IVLCLog_put_verbosity_Proxy(
1859     IVLCLog* This,
1860     long level);
1861 void __RPC_STUB IVLCLog_put_verbosity_Stub(
1862     IRpcStubBuffer* This,
1863     IRpcChannelBuffer* pRpcChannelBuffer,
1864     PRPC_MESSAGE pRpcMessage,
1865     DWORD* pdwStubPhase);
1866
1867 #endif  /* __IVLCLog_INTERFACE_DEFINED__ */
1868
1869 #ifndef __IVLCPlaylistItems_FWD_DEFINED__
1870 #define __IVLCPlaylistItems_FWD_DEFINED__
1871 typedef interface IVLCPlaylistItems IVLCPlaylistItems;
1872 #endif
1873
1874 /*****************************************************************************
1875  * IVLCPlaylistItems interface
1876  */
1877 #ifndef __IVLCPlaylistItems_INTERFACE_DEFINED__
1878 #define __IVLCPlaylistItems_INTERFACE_DEFINED__
1879
1880 DEFINE_GUID(IID_IVLCPlaylistItems, 0xfd37fe32, 0x82bc, 0x4a25, 0xb0,0x56, 0x31,0x5f,0x4d,0xbb,0x19,0x4d);
1881 #if defined(__cplusplus) && !defined(CINTERFACE)
1882 interface IVLCPlaylistItems : public IDispatch
1883 {
1884     virtual HRESULT STDMETHODCALLTYPE get_count(
1885         long *count) = 0;
1886
1887     virtual HRESULT STDMETHODCALLTYPE clear(
1888         ) = 0;
1889
1890     virtual HRESULT STDMETHODCALLTYPE remove(
1891         long itemId) = 0;
1892
1893 };
1894 #else
1895 typedef struct IVLCPlaylistItemsVtbl {
1896     BEGIN_INTERFACE
1897
1898     /*** IUnknown methods ***/
1899     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1900         IVLCPlaylistItems* This,
1901         REFIID riid,
1902         void **ppvObject);
1903
1904     ULONG (STDMETHODCALLTYPE *AddRef)(
1905         IVLCPlaylistItems* This);
1906
1907     ULONG (STDMETHODCALLTYPE *Release)(
1908         IVLCPlaylistItems* This);
1909
1910     /*** IDispatch methods ***/
1911     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1912         IVLCPlaylistItems* This,
1913         UINT *pctinfo);
1914
1915     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1916         IVLCPlaylistItems* This,
1917         UINT iTInfo,
1918         LCID lcid,
1919         ITypeInfo **ppTInfo);
1920
1921     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1922         IVLCPlaylistItems* This,
1923         REFIID riid,
1924         LPOLESTR *rgszNames,
1925         UINT cNames,
1926         LCID lcid,
1927         DISPID *rgDispId);
1928
1929     HRESULT (STDMETHODCALLTYPE *Invoke)(
1930         IVLCPlaylistItems* This,
1931         DISPID dispIdMember,
1932         REFIID riid,
1933         LCID lcid,
1934         WORD wFlags,
1935         DISPPARAMS *pDispParams,
1936         VARIANT *pVarResult,
1937         EXCEPINFO *pExcepInfo,
1938         UINT *puArgErr);
1939
1940     /*** IVLCPlaylistItems methods ***/
1941     HRESULT (STDMETHODCALLTYPE *get_count)(
1942         IVLCPlaylistItems* This,
1943         long *count);
1944
1945     HRESULT (STDMETHODCALLTYPE *clear)(
1946         IVLCPlaylistItems* This);
1947
1948     HRESULT (STDMETHODCALLTYPE *remove)(
1949         IVLCPlaylistItems* This,
1950         long itemId);
1951
1952     END_INTERFACE
1953 } IVLCPlaylistItemsVtbl;
1954 interface IVLCPlaylistItems {
1955     CONST_VTBL IVLCPlaylistItemsVtbl* lpVtbl;
1956 };
1957
1958 #ifdef COBJMACROS
1959 /*** IUnknown methods ***/
1960 #define IVLCPlaylistItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1961 #define IVLCPlaylistItems_AddRef(This) (This)->lpVtbl->AddRef(This)
1962 #define IVLCPlaylistItems_Release(This) (This)->lpVtbl->Release(This)
1963 /*** IDispatch methods ***/
1964 #define IVLCPlaylistItems_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1965 #define IVLCPlaylistItems_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1966 #define IVLCPlaylistItems_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1967 #define IVLCPlaylistItems_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1968 /*** IVLCPlaylistItems methods ***/
1969 #define IVLCPlaylistItems_get_count(This,count) (This)->lpVtbl->get_count(This,count)
1970 #define IVLCPlaylistItems_clear(This) (This)->lpVtbl->clear(This)
1971 #define IVLCPlaylistItems_remove(This,itemId) (This)->lpVtbl->remove(This,itemId)
1972 #endif
1973
1974 #endif
1975
1976 HRESULT STDMETHODCALLTYPE IVLCPlaylistItems_get_count_Proxy(
1977     IVLCPlaylistItems* This,
1978     long *count);
1979 void __RPC_STUB IVLCPlaylistItems_get_count_Stub(
1980     IRpcStubBuffer* This,
1981     IRpcChannelBuffer* pRpcChannelBuffer,
1982     PRPC_MESSAGE pRpcMessage,
1983     DWORD* pdwStubPhase);
1984 HRESULT STDMETHODCALLTYPE IVLCPlaylistItems_clear_Proxy(
1985     IVLCPlaylistItems* This);
1986 void __RPC_STUB IVLCPlaylistItems_clear_Stub(
1987     IRpcStubBuffer* This,
1988     IRpcChannelBuffer* pRpcChannelBuffer,
1989     PRPC_MESSAGE pRpcMessage,
1990     DWORD* pdwStubPhase);
1991 HRESULT STDMETHODCALLTYPE IVLCPlaylistItems_remove_Proxy(
1992     IVLCPlaylistItems* This,
1993     long itemId);
1994 void __RPC_STUB IVLCPlaylistItems_remove_Stub(
1995     IRpcStubBuffer* This,
1996     IRpcChannelBuffer* pRpcChannelBuffer,
1997     PRPC_MESSAGE pRpcMessage,
1998     DWORD* pdwStubPhase);
1999
2000 #endif  /* __IVLCPlaylistItems_INTERFACE_DEFINED__ */
2001
2002 /*****************************************************************************
2003  * IVLCPlaylist interface
2004  */
2005 #ifndef __IVLCPlaylist_INTERFACE_DEFINED__
2006 #define __IVLCPlaylist_INTERFACE_DEFINED__
2007
2008 DEFINE_GUID(IID_IVLCPlaylist, 0x54613049, 0x40bf, 0x4035, 0x9e,0x70, 0x0a,0x93,0x12,0xc0,0x18,0x8d);
2009 #if defined(__cplusplus) && !defined(CINTERFACE)
2010 interface IVLCPlaylist : public IDispatch
2011 {
2012     virtual HRESULT STDMETHODCALLTYPE get_itemCount(
2013         long *count) = 0;
2014
2015     virtual HRESULT STDMETHODCALLTYPE get_isPlaying(
2016         VARIANT_BOOL *playing) = 0;
2017
2018     virtual HRESULT STDMETHODCALLTYPE add(
2019         BSTR uri,
2020         VARIANT name,
2021         VARIANT options,
2022         long *itemId) = 0;
2023
2024     virtual HRESULT STDMETHODCALLTYPE play(
2025         ) = 0;
2026
2027     virtual HRESULT STDMETHODCALLTYPE playItem(
2028         long itemId) = 0;
2029
2030     virtual HRESULT STDMETHODCALLTYPE togglePause(
2031         ) = 0;
2032
2033     virtual HRESULT STDMETHODCALLTYPE stop(
2034         ) = 0;
2035
2036     virtual HRESULT STDMETHODCALLTYPE next(
2037         ) = 0;
2038
2039     virtual HRESULT STDMETHODCALLTYPE prev(
2040         ) = 0;
2041
2042     virtual HRESULT STDMETHODCALLTYPE clear(
2043         ) = 0;
2044
2045     virtual HRESULT STDMETHODCALLTYPE removeItem(
2046         long item) = 0;
2047
2048     virtual HRESULT STDMETHODCALLTYPE get_items(
2049         IVLCPlaylistItems **obj) = 0;
2050
2051 };
2052 #else
2053 typedef struct IVLCPlaylistVtbl {
2054     BEGIN_INTERFACE
2055
2056     /*** IUnknown methods ***/
2057     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2058         IVLCPlaylist* This,
2059         REFIID riid,
2060         void **ppvObject);
2061
2062     ULONG (STDMETHODCALLTYPE *AddRef)(
2063         IVLCPlaylist* This);
2064
2065     ULONG (STDMETHODCALLTYPE *Release)(
2066         IVLCPlaylist* This);
2067
2068     /*** IDispatch methods ***/
2069     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2070         IVLCPlaylist* This,
2071         UINT *pctinfo);
2072
2073     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2074         IVLCPlaylist* This,
2075         UINT iTInfo,
2076         LCID lcid,
2077         ITypeInfo **ppTInfo);
2078
2079     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2080         IVLCPlaylist* This,
2081         REFIID riid,
2082         LPOLESTR *rgszNames,
2083         UINT cNames,
2084         LCID lcid,
2085         DISPID *rgDispId);
2086
2087     HRESULT (STDMETHODCALLTYPE *Invoke)(
2088         IVLCPlaylist* This,
2089         DISPID dispIdMember,
2090         REFIID riid,
2091         LCID lcid,
2092         WORD wFlags,
2093         DISPPARAMS *pDispParams,
2094         VARIANT *pVarResult,
2095         EXCEPINFO *pExcepInfo,
2096         UINT *puArgErr);
2097
2098     /*** IVLCPlaylist methods ***/
2099     HRESULT (STDMETHODCALLTYPE *get_itemCount)(
2100         IVLCPlaylist* This,
2101         long *count);
2102
2103     HRESULT (STDMETHODCALLTYPE *get_isPlaying)(
2104         IVLCPlaylist* This,
2105         VARIANT_BOOL *playing);
2106
2107     HRESULT (STDMETHODCALLTYPE *add)(
2108         IVLCPlaylist* This,
2109         BSTR uri,
2110         VARIANT name,
2111         VARIANT options,
2112         long *itemId);
2113
2114     HRESULT (STDMETHODCALLTYPE *play)(
2115         IVLCPlaylist* This);
2116
2117     HRESULT (STDMETHODCALLTYPE *playItem)(
2118         IVLCPlaylist* This,
2119         long itemId);
2120
2121     HRESULT (STDMETHODCALLTYPE *togglePause)(
2122         IVLCPlaylist* This);
2123
2124     HRESULT (STDMETHODCALLTYPE *stop)(
2125         IVLCPlaylist* This);
2126
2127     HRESULT (STDMETHODCALLTYPE *next)(
2128         IVLCPlaylist* This);
2129
2130     HRESULT (STDMETHODCALLTYPE *prev)(
2131         IVLCPlaylist* This);
2132
2133     HRESULT (STDMETHODCALLTYPE *clear)(
2134         IVLCPlaylist* This);
2135
2136     HRESULT (STDMETHODCALLTYPE *removeItem)(
2137         IVLCPlaylist* This,
2138         long item);
2139
2140     HRESULT (STDMETHODCALLTYPE *get_items)(
2141         IVLCPlaylist* This,
2142         IVLCPlaylistItems **obj);
2143
2144     END_INTERFACE
2145 } IVLCPlaylistVtbl;
2146 interface IVLCPlaylist {
2147     CONST_VTBL IVLCPlaylistVtbl* lpVtbl;
2148 };
2149
2150 #ifdef COBJMACROS
2151 /*** IUnknown methods ***/
2152 #define IVLCPlaylist_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2153 #define IVLCPlaylist_AddRef(This) (This)->lpVtbl->AddRef(This)
2154 #define IVLCPlaylist_Release(This) (This)->lpVtbl->Release(This)
2155 /*** IDispatch methods ***/
2156 #define IVLCPlaylist_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2157 #define IVLCPlaylist_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2158 #define IVLCPlaylist_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2159 #define IVLCPlaylist_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2160 /*** IVLCPlaylist methods ***/
2161 #define IVLCPlaylist_get_itemCount(This,count) (This)->lpVtbl->get_itemCount(This,count)
2162 #define IVLCPlaylist_get_isPlaying(This,playing) (This)->lpVtbl->get_isPlaying(This,playing)
2163 #define IVLCPlaylist_add(This,uri,name,options,itemId) (This)->lpVtbl->add(This,uri,name,options,itemId)
2164 #define IVLCPlaylist_play(This) (This)->lpVtbl->play(This)
2165 #define IVLCPlaylist_playItem(This,itemId) (This)->lpVtbl->playItem(This,itemId)
2166 #define IVLCPlaylist_togglePause(This) (This)->lpVtbl->togglePause(This)
2167 #define IVLCPlaylist_stop(This) (This)->lpVtbl->stop(This)
2168 #define IVLCPlaylist_next(This) (This)->lpVtbl->next(This)
2169 #define IVLCPlaylist_prev(This) (This)->lpVtbl->prev(This)
2170 #define IVLCPlaylist_clear(This) (This)->lpVtbl->clear(This)
2171 #define IVLCPlaylist_removeItem(This,item) (This)->lpVtbl->removeItem(This,item)
2172 #define IVLCPlaylist_get_items(This,obj) (This)->lpVtbl->get_items(This,obj)
2173 #endif
2174
2175 #endif
2176
2177 HRESULT STDMETHODCALLTYPE IVLCPlaylist_get_itemCount_Proxy(
2178     IVLCPlaylist* This,
2179     long *count);
2180 void __RPC_STUB IVLCPlaylist_get_itemCount_Stub(
2181     IRpcStubBuffer* This,
2182     IRpcChannelBuffer* pRpcChannelBuffer,
2183     PRPC_MESSAGE pRpcMessage,
2184     DWORD* pdwStubPhase);
2185 HRESULT STDMETHODCALLTYPE IVLCPlaylist_get_isPlaying_Proxy(
2186     IVLCPlaylist* This,
2187     VARIANT_BOOL *playing);
2188 void __RPC_STUB IVLCPlaylist_get_isPlaying_Stub(
2189     IRpcStubBuffer* This,
2190     IRpcChannelBuffer* pRpcChannelBuffer,
2191     PRPC_MESSAGE pRpcMessage,
2192     DWORD* pdwStubPhase);
2193 HRESULT STDMETHODCALLTYPE IVLCPlaylist_add_Proxy(
2194     IVLCPlaylist* This,
2195     BSTR uri,
2196     VARIANT name,
2197     VARIANT options,
2198     long *itemId);
2199 void __RPC_STUB IVLCPlaylist_add_Stub(
2200     IRpcStubBuffer* This,
2201     IRpcChannelBuffer* pRpcChannelBuffer,
2202     PRPC_MESSAGE pRpcMessage,
2203     DWORD* pdwStubPhase);
2204 HRESULT STDMETHODCALLTYPE IVLCPlaylist_play_Proxy(
2205     IVLCPlaylist* This);
2206 void __RPC_STUB IVLCPlaylist_play_Stub(
2207     IRpcStubBuffer* This,
2208     IRpcChannelBuffer* pRpcChannelBuffer,
2209     PRPC_MESSAGE pRpcMessage,
2210     DWORD* pdwStubPhase);
2211 HRESULT STDMETHODCALLTYPE IVLCPlaylist_playItem_Proxy(
2212     IVLCPlaylist* This,
2213     long itemId);
2214 void __RPC_STUB IVLCPlaylist_playItem_Stub(
2215     IRpcStubBuffer* This,
2216     IRpcChannelBuffer* pRpcChannelBuffer,
2217     PRPC_MESSAGE pRpcMessage,
2218     DWORD* pdwStubPhase);
2219 HRESULT STDMETHODCALLTYPE IVLCPlaylist_togglePause_Proxy(
2220     IVLCPlaylist* This);
2221 void __RPC_STUB IVLCPlaylist_togglePause_Stub(
2222     IRpcStubBuffer* This,
2223     IRpcChannelBuffer* pRpcChannelBuffer,
2224     PRPC_MESSAGE pRpcMessage,
2225     DWORD* pdwStubPhase);
2226 HRESULT STDMETHODCALLTYPE IVLCPlaylist_stop_Proxy(
2227     IVLCPlaylist* This);
2228 void __RPC_STUB IVLCPlaylist_stop_Stub(
2229     IRpcStubBuffer* This,
2230     IRpcChannelBuffer* pRpcChannelBuffer,
2231     PRPC_MESSAGE pRpcMessage,
2232     DWORD* pdwStubPhase);
2233 HRESULT STDMETHODCALLTYPE IVLCPlaylist_next_Proxy(
2234     IVLCPlaylist* This);
2235 void __RPC_STUB IVLCPlaylist_next_Stub(
2236     IRpcStubBuffer* This,
2237     IRpcChannelBuffer* pRpcChannelBuffer,
2238     PRPC_MESSAGE pRpcMessage,
2239     DWORD* pdwStubPhase);
2240 HRESULT STDMETHODCALLTYPE IVLCPlaylist_prev_Proxy(
2241     IVLCPlaylist* This);
2242 void __RPC_STUB IVLCPlaylist_prev_Stub(
2243     IRpcStubBuffer* This,
2244     IRpcChannelBuffer* pRpcChannelBuffer,
2245     PRPC_MESSAGE pRpcMessage,
2246     DWORD* pdwStubPhase);
2247 HRESULT STDMETHODCALLTYPE IVLCPlaylist_clear_Proxy(
2248     IVLCPlaylist* This);
2249 void __RPC_STUB IVLCPlaylist_clear_Stub(
2250     IRpcStubBuffer* This,
2251     IRpcChannelBuffer* pRpcChannelBuffer,
2252     PRPC_MESSAGE pRpcMessage,
2253     DWORD* pdwStubPhase);
2254 HRESULT STDMETHODCALLTYPE IVLCPlaylist_removeItem_Proxy(
2255     IVLCPlaylist* This,
2256     long item);
2257 void __RPC_STUB IVLCPlaylist_removeItem_Stub(
2258     IRpcStubBuffer* This,
2259     IRpcChannelBuffer* pRpcChannelBuffer,
2260     PRPC_MESSAGE pRpcMessage,
2261     DWORD* pdwStubPhase);
2262 HRESULT STDMETHODCALLTYPE IVLCPlaylist_get_items_Proxy(
2263     IVLCPlaylist* This,
2264     IVLCPlaylistItems **obj);
2265 void __RPC_STUB IVLCPlaylist_get_items_Stub(
2266     IRpcStubBuffer* This,
2267     IRpcChannelBuffer* pRpcChannelBuffer,
2268     PRPC_MESSAGE pRpcMessage,
2269     DWORD* pdwStubPhase);
2270
2271 #endif  /* __IVLCPlaylist_INTERFACE_DEFINED__ */
2272
2273 /*****************************************************************************
2274  * IVLCSubtitle interface
2275  */
2276 #ifndef __IVLCSubtitle_INTERFACE_DEFINED__
2277 #define __IVLCSubtitle_INTERFACE_DEFINED__
2278
2279 DEFINE_GUID(IID_IVLCSubtitle, 0x465e787a, 0x0556, 0x452f, 0x94,0x77, 0x95,0x4e,0x4a,0x94,0x00,0x03);
2280 #if defined(__cplusplus) && !defined(CINTERFACE)
2281 interface IVLCSubtitle : public IDispatch
2282 {
2283     virtual HRESULT STDMETHODCALLTYPE get_track(
2284         long *spu) = 0;
2285
2286     virtual HRESULT STDMETHODCALLTYPE put_track(
2287         long spu) = 0;
2288
2289     virtual HRESULT STDMETHODCALLTYPE get_count(
2290         long *spuNumber) = 0;
2291
2292     virtual HRESULT STDMETHODCALLTYPE description(
2293         long nameID,
2294         BSTR *name) = 0;
2295
2296 };
2297 #else
2298 typedef struct IVLCSubtitleVtbl {
2299     BEGIN_INTERFACE
2300
2301     /*** IUnknown methods ***/
2302     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2303         IVLCSubtitle* This,
2304         REFIID riid,
2305         void **ppvObject);
2306
2307     ULONG (STDMETHODCALLTYPE *AddRef)(
2308         IVLCSubtitle* This);
2309
2310     ULONG (STDMETHODCALLTYPE *Release)(
2311         IVLCSubtitle* This);
2312
2313     /*** IDispatch methods ***/
2314     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2315         IVLCSubtitle* This,
2316         UINT *pctinfo);
2317
2318     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2319         IVLCSubtitle* This,
2320         UINT iTInfo,
2321         LCID lcid,
2322         ITypeInfo **ppTInfo);
2323
2324     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2325         IVLCSubtitle* This,
2326         REFIID riid,
2327         LPOLESTR *rgszNames,
2328         UINT cNames,
2329         LCID lcid,
2330         DISPID *rgDispId);
2331
2332     HRESULT (STDMETHODCALLTYPE *Invoke)(
2333         IVLCSubtitle* This,
2334         DISPID dispIdMember,
2335         REFIID riid,
2336         LCID lcid,
2337         WORD wFlags,
2338         DISPPARAMS *pDispParams,
2339         VARIANT *pVarResult,
2340         EXCEPINFO *pExcepInfo,
2341         UINT *puArgErr);
2342
2343     /*** IVLCSubtitle methods ***/
2344     HRESULT (STDMETHODCALLTYPE *get_track)(
2345         IVLCSubtitle* This,
2346         long *spu);
2347
2348     HRESULT (STDMETHODCALLTYPE *put_track)(
2349         IVLCSubtitle* This,
2350         long spu);
2351
2352     HRESULT (STDMETHODCALLTYPE *get_count)(
2353         IVLCSubtitle* This,
2354         long *spuNumber);
2355
2356     HRESULT (STDMETHODCALLTYPE *description)(
2357         IVLCSubtitle* This,
2358         long nameID,
2359         BSTR *name);
2360
2361     END_INTERFACE
2362 } IVLCSubtitleVtbl;
2363 interface IVLCSubtitle {
2364     CONST_VTBL IVLCSubtitleVtbl* lpVtbl;
2365 };
2366
2367 #ifdef COBJMACROS
2368 /*** IUnknown methods ***/
2369 #define IVLCSubtitle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2370 #define IVLCSubtitle_AddRef(This) (This)->lpVtbl->AddRef(This)
2371 #define IVLCSubtitle_Release(This) (This)->lpVtbl->Release(This)
2372 /*** IDispatch methods ***/
2373 #define IVLCSubtitle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2374 #define IVLCSubtitle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2375 #define IVLCSubtitle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2376 #define IVLCSubtitle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2377 /*** IVLCSubtitle methods ***/
2378 #define IVLCSubtitle_get_track(This,spu) (This)->lpVtbl->get_track(This,spu)
2379 #define IVLCSubtitle_put_track(This,spu) (This)->lpVtbl->put_track(This,spu)
2380 #define IVLCSubtitle_get_count(This,spuNumber) (This)->lpVtbl->get_count(This,spuNumber)
2381 #define IVLCSubtitle_description(This,nameID,name) (This)->lpVtbl->description(This,nameID,name)
2382 #endif
2383
2384 #endif
2385
2386 HRESULT STDMETHODCALLTYPE IVLCSubtitle_get_track_Proxy(
2387     IVLCSubtitle* This,
2388     long *spu);
2389 void __RPC_STUB IVLCSubtitle_get_track_Stub(
2390     IRpcStubBuffer* This,
2391     IRpcChannelBuffer* pRpcChannelBuffer,
2392     PRPC_MESSAGE pRpcMessage,
2393     DWORD* pdwStubPhase);
2394 HRESULT STDMETHODCALLTYPE IVLCSubtitle_put_track_Proxy(
2395     IVLCSubtitle* This,
2396     long spu);
2397 void __RPC_STUB IVLCSubtitle_put_track_Stub(
2398     IRpcStubBuffer* This,
2399     IRpcChannelBuffer* pRpcChannelBuffer,
2400     PRPC_MESSAGE pRpcMessage,
2401     DWORD* pdwStubPhase);
2402 HRESULT STDMETHODCALLTYPE IVLCSubtitle_get_count_Proxy(
2403     IVLCSubtitle* This,
2404     long *spuNumber);
2405 void __RPC_STUB IVLCSubtitle_get_count_Stub(
2406     IRpcStubBuffer* This,
2407     IRpcChannelBuffer* pRpcChannelBuffer,
2408     PRPC_MESSAGE pRpcMessage,
2409     DWORD* pdwStubPhase);
2410 HRESULT STDMETHODCALLTYPE IVLCSubtitle_description_Proxy(
2411     IVLCSubtitle* This,
2412     long nameID,
2413     BSTR *name);
2414 void __RPC_STUB IVLCSubtitle_description_Stub(
2415     IRpcStubBuffer* This,
2416     IRpcChannelBuffer* pRpcChannelBuffer,
2417     PRPC_MESSAGE pRpcMessage,
2418     DWORD* pdwStubPhase);
2419
2420 #endif  /* __IVLCSubtitle_INTERFACE_DEFINED__ */
2421
2422 /*****************************************************************************
2423  * IVLCVideo interface
2424  */
2425 #ifndef __IVLCVideo_INTERFACE_DEFINED__
2426 #define __IVLCVideo_INTERFACE_DEFINED__
2427
2428 DEFINE_GUID(IID_IVLCVideo, 0x0aaedf0b, 0xd333, 0x4b27, 0xa0,0xc6, 0xbb,0xf3,0x14,0x13,0xa4,0x2e);
2429 #if defined(__cplusplus) && !defined(CINTERFACE)
2430 interface IVLCVideo : public IDispatch
2431 {
2432     virtual HRESULT STDMETHODCALLTYPE get_fullscreen(
2433         VARIANT_BOOL *fullscreen) = 0;
2434
2435     virtual HRESULT STDMETHODCALLTYPE put_fullscreen(
2436         VARIANT_BOOL fullscreen) = 0;
2437
2438     virtual HRESULT STDMETHODCALLTYPE get_width(
2439         long *width) = 0;
2440
2441     virtual HRESULT STDMETHODCALLTYPE get_height(
2442         long *height) = 0;
2443
2444     virtual HRESULT STDMETHODCALLTYPE get_aspectRatio(
2445         BSTR *aspect) = 0;
2446
2447     virtual HRESULT STDMETHODCALLTYPE put_aspectRatio(
2448         BSTR aspect) = 0;
2449
2450     virtual HRESULT STDMETHODCALLTYPE get_subtitle(
2451         long *spu) = 0;
2452
2453     virtual HRESULT STDMETHODCALLTYPE put_subtitle(
2454         long spu) = 0;
2455
2456     virtual HRESULT STDMETHODCALLTYPE get_crop(
2457         BSTR *geometry) = 0;
2458
2459     virtual HRESULT STDMETHODCALLTYPE put_crop(
2460         BSTR geometry) = 0;
2461
2462     virtual HRESULT STDMETHODCALLTYPE get_teletext(
2463         long *page) = 0;
2464
2465     virtual HRESULT STDMETHODCALLTYPE put_teletext(
2466         long page) = 0;
2467
2468     virtual HRESULT STDMETHODCALLTYPE deinterlaceEnable(
2469         BSTR mode) = 0;
2470
2471     virtual HRESULT STDMETHODCALLTYPE deinterlaceDisable(
2472         ) = 0;
2473
2474     virtual HRESULT STDMETHODCALLTYPE toggleFullscreen(
2475         ) = 0;
2476
2477     virtual HRESULT STDMETHODCALLTYPE takeSnapshot(
2478         IPictureDisp **picture) = 0;
2479
2480     virtual HRESULT STDMETHODCALLTYPE toggleTeletext(
2481         ) = 0;
2482
2483 };
2484 #else
2485 typedef struct IVLCVideoVtbl {
2486     BEGIN_INTERFACE
2487
2488     /*** IUnknown methods ***/
2489     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2490         IVLCVideo* This,
2491         REFIID riid,
2492         void **ppvObject);
2493
2494     ULONG (STDMETHODCALLTYPE *AddRef)(
2495         IVLCVideo* This);
2496
2497     ULONG (STDMETHODCALLTYPE *Release)(
2498         IVLCVideo* This);
2499
2500     /*** IDispatch methods ***/
2501     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2502         IVLCVideo* This,
2503         UINT *pctinfo);
2504
2505     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2506         IVLCVideo* This,
2507         UINT iTInfo,
2508         LCID lcid,
2509         ITypeInfo **ppTInfo);
2510
2511     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2512         IVLCVideo* This,
2513         REFIID riid,
2514         LPOLESTR *rgszNames,
2515         UINT cNames,
2516         LCID lcid,
2517         DISPID *rgDispId);
2518
2519     HRESULT (STDMETHODCALLTYPE *Invoke)(
2520         IVLCVideo* This,
2521         DISPID dispIdMember,
2522         REFIID riid,
2523         LCID lcid,
2524         WORD wFlags,
2525         DISPPARAMS *pDispParams,
2526         VARIANT *pVarResult,
2527         EXCEPINFO *pExcepInfo,
2528         UINT *puArgErr);
2529
2530     /*** IVLCVideo methods ***/
2531     HRESULT (STDMETHODCALLTYPE *get_fullscreen)(
2532         IVLCVideo* This,
2533         VARIANT_BOOL *fullscreen);
2534
2535     HRESULT (STDMETHODCALLTYPE *put_fullscreen)(
2536         IVLCVideo* This,
2537         VARIANT_BOOL fullscreen);
2538
2539     HRESULT (STDMETHODCALLTYPE *get_width)(
2540         IVLCVideo* This,
2541         long *width);
2542
2543     HRESULT (STDMETHODCALLTYPE *get_height)(
2544         IVLCVideo* This,
2545         long *height);
2546
2547     HRESULT (STDMETHODCALLTYPE *get_aspectRatio)(
2548         IVLCVideo* This,
2549         BSTR *aspect);
2550
2551     HRESULT (STDMETHODCALLTYPE *put_aspectRatio)(
2552         IVLCVideo* This,
2553         BSTR aspect);
2554
2555     HRESULT (STDMETHODCALLTYPE *get_subtitle)(
2556         IVLCVideo* This,
2557         long *spu);
2558
2559     HRESULT (STDMETHODCALLTYPE *put_subtitle)(
2560         IVLCVideo* This,
2561         long spu);
2562
2563     HRESULT (STDMETHODCALLTYPE *get_crop)(
2564         IVLCVideo* This,
2565         BSTR *geometry);
2566
2567     HRESULT (STDMETHODCALLTYPE *put_crop)(
2568         IVLCVideo* This,
2569         BSTR geometry);
2570
2571     HRESULT (STDMETHODCALLTYPE *get_teletext)(
2572         IVLCVideo* This,
2573         long *page);
2574
2575     HRESULT (STDMETHODCALLTYPE *put_teletext)(
2576         IVLCVideo* This,
2577         long page);
2578
2579     HRESULT (STDMETHODCALLTYPE *deinterlaceEnable)(
2580         IVLCVideo* This,
2581         BSTR mode);
2582
2583     HRESULT (STDMETHODCALLTYPE *deinterlaceDisable)(
2584         IVLCVideo* This);
2585
2586     HRESULT (STDMETHODCALLTYPE *toggleFullscreen)(
2587         IVLCVideo* This);
2588
2589     HRESULT (STDMETHODCALLTYPE *takeSnapshot)(
2590         IVLCVideo* This,
2591         IPictureDisp **picture);
2592
2593     HRESULT (STDMETHODCALLTYPE *toggleTeletext)(
2594         IVLCVideo* This);
2595
2596     END_INTERFACE
2597 } IVLCVideoVtbl;
2598 interface IVLCVideo {
2599     CONST_VTBL IVLCVideoVtbl* lpVtbl;
2600 };
2601
2602 #ifdef COBJMACROS
2603 /*** IUnknown methods ***/
2604 #define IVLCVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2605 #define IVLCVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
2606 #define IVLCVideo_Release(This) (This)->lpVtbl->Release(This)
2607 /*** IDispatch methods ***/
2608 #define IVLCVideo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2609 #define IVLCVideo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2610 #define IVLCVideo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2611 #define IVLCVideo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2612 /*** IVLCVideo methods ***/
2613 #define IVLCVideo_get_fullscreen(This,fullscreen) (This)->lpVtbl->get_fullscreen(This,fullscreen)
2614 #define IVLCVideo_put_fullscreen(This,fullscreen) (This)->lpVtbl->put_fullscreen(This,fullscreen)
2615 #define IVLCVideo_get_width(This,width) (This)->lpVtbl->get_width(This,width)
2616 #define IVLCVideo_get_height(This,height) (This)->lpVtbl->get_height(This,height)
2617 #define IVLCVideo_get_aspectRatio(This,aspect) (This)->lpVtbl->get_aspectRatio(This,aspect)
2618 #define IVLCVideo_put_aspectRatio(This,aspect) (This)->lpVtbl->put_aspectRatio(This,aspect)
2619 #define IVLCVideo_get_subtitle(This,spu) (This)->lpVtbl->get_subtitle(This,spu)
2620 #define IVLCVideo_put_subtitle(This,spu) (This)->lpVtbl->put_subtitle(This,spu)
2621 #define IVLCVideo_get_crop(This,geometry) (This)->lpVtbl->get_crop(This,geometry)
2622 #define IVLCVideo_put_crop(This,geometry) (This)->lpVtbl->put_crop(This,geometry)
2623 #define IVLCVideo_get_teletext(This,page) (This)->lpVtbl->get_teletext(This,page)
2624 #define IVLCVideo_put_teletext(This,page) (This)->lpVtbl->put_teletext(This,page)
2625 #define IVLCVideo_deinterlaceEnable(This,mode) (This)->lpVtbl->deinterlaceEnable(This,mode)
2626 #define IVLCVideo_deinterlaceDisable(This) (This)->lpVtbl->deinterlaceDisable(This)
2627 #define IVLCVideo_toggleFullscreen(This) (This)->lpVtbl->toggleFullscreen(This)
2628 #define IVLCVideo_takeSnapshot(This,picture) (This)->lpVtbl->takeSnapshot(This,picture)
2629 #define IVLCVideo_toggleTeletext(This) (This)->lpVtbl->toggleTeletext(This)
2630 #endif
2631
2632 #endif
2633
2634 HRESULT STDMETHODCALLTYPE IVLCVideo_get_fullscreen_Proxy(
2635     IVLCVideo* This,
2636     VARIANT_BOOL *fullscreen);
2637 void __RPC_STUB IVLCVideo_get_fullscreen_Stub(
2638     IRpcStubBuffer* This,
2639     IRpcChannelBuffer* pRpcChannelBuffer,
2640     PRPC_MESSAGE pRpcMessage,
2641     DWORD* pdwStubPhase);
2642 HRESULT STDMETHODCALLTYPE IVLCVideo_put_fullscreen_Proxy(
2643     IVLCVideo* This,
2644     VARIANT_BOOL fullscreen);
2645 void __RPC_STUB IVLCVideo_put_fullscreen_Stub(
2646     IRpcStubBuffer* This,
2647     IRpcChannelBuffer* pRpcChannelBuffer,
2648     PRPC_MESSAGE pRpcMessage,
2649     DWORD* pdwStubPhase);
2650 HRESULT STDMETHODCALLTYPE IVLCVideo_get_width_Proxy(
2651     IVLCVideo* This,
2652     long *width);
2653 void __RPC_STUB IVLCVideo_get_width_Stub(
2654     IRpcStubBuffer* This,
2655     IRpcChannelBuffer* pRpcChannelBuffer,
2656     PRPC_MESSAGE pRpcMessage,
2657     DWORD* pdwStubPhase);
2658 HRESULT STDMETHODCALLTYPE IVLCVideo_get_height_Proxy(
2659     IVLCVideo* This,
2660     long *height);
2661 void __RPC_STUB IVLCVideo_get_height_Stub(
2662     IRpcStubBuffer* This,
2663     IRpcChannelBuffer* pRpcChannelBuffer,
2664     PRPC_MESSAGE pRpcMessage,
2665     DWORD* pdwStubPhase);
2666 HRESULT STDMETHODCALLTYPE IVLCVideo_get_aspectRatio_Proxy(
2667     IVLCVideo* This,
2668     BSTR *aspect);
2669 void __RPC_STUB IVLCVideo_get_aspectRatio_Stub(
2670     IRpcStubBuffer* This,
2671     IRpcChannelBuffer* pRpcChannelBuffer,
2672     PRPC_MESSAGE pRpcMessage,
2673     DWORD* pdwStubPhase);
2674 HRESULT STDMETHODCALLTYPE IVLCVideo_put_aspectRatio_Proxy(
2675     IVLCVideo* This,
2676     BSTR aspect);
2677 void __RPC_STUB IVLCVideo_put_aspectRatio_Stub(
2678     IRpcStubBuffer* This,
2679     IRpcChannelBuffer* pRpcChannelBuffer,
2680     PRPC_MESSAGE pRpcMessage,
2681     DWORD* pdwStubPhase);
2682 HRESULT STDMETHODCALLTYPE IVLCVideo_get_subtitle_Proxy(
2683     IVLCVideo* This,
2684     long *spu);
2685 void __RPC_STUB IVLCVideo_get_subtitle_Stub(
2686     IRpcStubBuffer* This,
2687     IRpcChannelBuffer* pRpcChannelBuffer,
2688     PRPC_MESSAGE pRpcMessage,
2689     DWORD* pdwStubPhase);
2690 HRESULT STDMETHODCALLTYPE IVLCVideo_put_subtitle_Proxy(
2691     IVLCVideo* This,
2692     long spu);
2693 void __RPC_STUB IVLCVideo_put_subtitle_Stub(
2694     IRpcStubBuffer* This,
2695     IRpcChannelBuffer* pRpcChannelBuffer,
2696     PRPC_MESSAGE pRpcMessage,
2697     DWORD* pdwStubPhase);
2698 HRESULT STDMETHODCALLTYPE IVLCVideo_get_crop_Proxy(
2699     IVLCVideo* This,
2700     BSTR *geometry);
2701 void __RPC_STUB IVLCVideo_get_crop_Stub(
2702     IRpcStubBuffer* This,
2703     IRpcChannelBuffer* pRpcChannelBuffer,
2704     PRPC_MESSAGE pRpcMessage,
2705     DWORD* pdwStubPhase);
2706 HRESULT STDMETHODCALLTYPE IVLCVideo_put_crop_Proxy(
2707     IVLCVideo* This,
2708     BSTR geometry);
2709 void __RPC_STUB IVLCVideo_put_crop_Stub(
2710     IRpcStubBuffer* This,
2711     IRpcChannelBuffer* pRpcChannelBuffer,
2712     PRPC_MESSAGE pRpcMessage,
2713     DWORD* pdwStubPhase);
2714 HRESULT STDMETHODCALLTYPE IVLCVideo_get_teletext_Proxy(
2715     IVLCVideo* This,
2716     long *page);
2717 void __RPC_STUB IVLCVideo_get_teletext_Stub(
2718     IRpcStubBuffer* This,
2719     IRpcChannelBuffer* pRpcChannelBuffer,
2720     PRPC_MESSAGE pRpcMessage,
2721     DWORD* pdwStubPhase);
2722 HRESULT STDMETHODCALLTYPE IVLCVideo_put_teletext_Proxy(
2723     IVLCVideo* This,
2724     long page);
2725 void __RPC_STUB IVLCVideo_put_teletext_Stub(
2726     IRpcStubBuffer* This,
2727     IRpcChannelBuffer* pRpcChannelBuffer,
2728     PRPC_MESSAGE pRpcMessage,
2729     DWORD* pdwStubPhase);
2730 HRESULT STDMETHODCALLTYPE IVLCVideo_deinterlaceEnable_Proxy(
2731     IVLCVideo* This,
2732     BSTR mode);
2733 void __RPC_STUB IVLCVideo_deinterlaceEnable_Stub(
2734     IRpcStubBuffer* This,
2735     IRpcChannelBuffer* pRpcChannelBuffer,
2736     PRPC_MESSAGE pRpcMessage,
2737     DWORD* pdwStubPhase);
2738 HRESULT STDMETHODCALLTYPE IVLCVideo_deinterlaceDisable_Proxy(
2739     IVLCVideo* This);
2740 void __RPC_STUB IVLCVideo_deinterlaceDisable_Stub(
2741     IRpcStubBuffer* This,
2742     IRpcChannelBuffer* pRpcChannelBuffer,
2743     PRPC_MESSAGE pRpcMessage,
2744     DWORD* pdwStubPhase);
2745 HRESULT STDMETHODCALLTYPE IVLCVideo_toggleFullscreen_Proxy(
2746     IVLCVideo* This);
2747 void __RPC_STUB IVLCVideo_toggleFullscreen_Stub(
2748     IRpcStubBuffer* This,
2749     IRpcChannelBuffer* pRpcChannelBuffer,
2750     PRPC_MESSAGE pRpcMessage,
2751     DWORD* pdwStubPhase);
2752 HRESULT STDMETHODCALLTYPE IVLCVideo_takeSnapshot_Proxy(
2753     IVLCVideo* This,
2754     IPictureDisp **picture);
2755 void __RPC_STUB IVLCVideo_takeSnapshot_Stub(
2756     IRpcStubBuffer* This,
2757     IRpcChannelBuffer* pRpcChannelBuffer,
2758     PRPC_MESSAGE pRpcMessage,
2759     DWORD* pdwStubPhase);
2760 HRESULT STDMETHODCALLTYPE IVLCVideo_toggleTeletext_Proxy(
2761     IVLCVideo* This);
2762 void __RPC_STUB IVLCVideo_toggleTeletext_Stub(
2763     IRpcStubBuffer* This,
2764     IRpcChannelBuffer* pRpcChannelBuffer,
2765     PRPC_MESSAGE pRpcMessage,
2766     DWORD* pdwStubPhase);
2767
2768 #endif  /* __IVLCVideo_INTERFACE_DEFINED__ */
2769
2770 /*****************************************************************************
2771  * IVLCControl2 interface
2772  */
2773 #ifndef __IVLCControl2_INTERFACE_DEFINED__
2774 #define __IVLCControl2_INTERFACE_DEFINED__
2775
2776 DEFINE_GUID(IID_IVLCControl2, 0x2d719729, 0x5333, 0x406c, 0xbf,0x12, 0x8d,0xe7,0x87,0xfd,0x65,0xe3);
2777 #if defined(__cplusplus) && !defined(CINTERFACE)
2778 interface IVLCControl2 : public IDispatch
2779 {
2780     virtual HRESULT STDMETHODCALLTYPE get_AutoLoop(
2781         VARIANT_BOOL *autoloop) = 0;
2782
2783     virtual HRESULT STDMETHODCALLTYPE put_AutoLoop(
2784         VARIANT_BOOL autoloop) = 0;
2785
2786     virtual HRESULT STDMETHODCALLTYPE get_AutoPlay(
2787         VARIANT_BOOL *autoplay) = 0;
2788
2789     virtual HRESULT STDMETHODCALLTYPE put_AutoPlay(
2790         VARIANT_BOOL autoplay) = 0;
2791
2792     virtual HRESULT STDMETHODCALLTYPE get_BaseURL(
2793         BSTR *url) = 0;
2794
2795     virtual HRESULT STDMETHODCALLTYPE put_BaseURL(
2796         BSTR url) = 0;
2797
2798     virtual HRESULT STDMETHODCALLTYPE get_StartTime(
2799         long *seconds) = 0;
2800
2801     virtual HRESULT STDMETHODCALLTYPE put_StartTime(
2802         long seconds) = 0;
2803
2804     virtual HRESULT STDMETHODCALLTYPE get_MRL(
2805         BSTR *mrl) = 0;
2806
2807     virtual HRESULT STDMETHODCALLTYPE put_MRL(
2808         BSTR mrl) = 0;
2809
2810     virtual HRESULT STDMETHODCALLTYPE get_VersionInfo(
2811         BSTR *version) = 0;
2812
2813     virtual HRESULT STDMETHODCALLTYPE get_Visible(
2814         VARIANT_BOOL *visible) = 0;
2815
2816     virtual HRESULT STDMETHODCALLTYPE put_Visible(
2817         VARIANT_BOOL visible) = 0;
2818
2819     virtual HRESULT STDMETHODCALLTYPE get_Volume(
2820         long *volume) = 0;
2821
2822     virtual HRESULT STDMETHODCALLTYPE put_Volume(
2823         long volume) = 0;
2824
2825     virtual HRESULT STDMETHODCALLTYPE get_BackColor(
2826         OLE_COLOR *backcolor) = 0;
2827
2828     virtual HRESULT STDMETHODCALLTYPE put_BackColor(
2829         OLE_COLOR backcolor) = 0;
2830
2831     virtual HRESULT STDMETHODCALLTYPE get_Toolbar(
2832         VARIANT_BOOL *visible) = 0;
2833
2834     virtual HRESULT STDMETHODCALLTYPE put_Toolbar(
2835         VARIANT_BOOL visible) = 0;
2836
2837     virtual HRESULT STDMETHODCALLTYPE get_audio(
2838         IVLCAudio **obj) = 0;
2839
2840     virtual HRESULT STDMETHODCALLTYPE get_input(
2841         IVLCInput **obj) = 0;
2842
2843     virtual HRESULT STDMETHODCALLTYPE get_log(
2844         IVLCLog **obj) = 0;
2845
2846     virtual HRESULT STDMETHODCALLTYPE get_playlist(
2847         IVLCPlaylist **obj) = 0;
2848
2849     virtual HRESULT STDMETHODCALLTYPE get_subtitle(
2850         IVLCSubtitle **obj) = 0;
2851
2852     virtual HRESULT STDMETHODCALLTYPE get_video(
2853         IVLCVideo **obj) = 0;
2854
2855 };
2856 #else
2857 typedef struct IVLCControl2Vtbl {
2858     BEGIN_INTERFACE
2859
2860     /*** IUnknown methods ***/
2861     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2862         IVLCControl2* This,
2863         REFIID riid,
2864         void **ppvObject);
2865
2866     ULONG (STDMETHODCALLTYPE *AddRef)(
2867         IVLCControl2* This);
2868
2869     ULONG (STDMETHODCALLTYPE *Release)(
2870         IVLCControl2* This);
2871
2872     /*** IDispatch methods ***/
2873     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2874         IVLCControl2* This,
2875         UINT *pctinfo);
2876
2877     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2878         IVLCControl2* This,
2879         UINT iTInfo,
2880         LCID lcid,
2881         ITypeInfo **ppTInfo);
2882
2883     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2884         IVLCControl2* This,
2885         REFIID riid,
2886         LPOLESTR *rgszNames,
2887         UINT cNames,
2888         LCID lcid,
2889         DISPID *rgDispId);
2890
2891     HRESULT (STDMETHODCALLTYPE *Invoke)(
2892         IVLCControl2* This,
2893         DISPID dispIdMember,
2894         REFIID riid,
2895         LCID lcid,
2896         WORD wFlags,
2897         DISPPARAMS *pDispParams,
2898         VARIANT *pVarResult,
2899         EXCEPINFO *pExcepInfo,
2900         UINT *puArgErr);
2901
2902     /*** IVLCControl2 methods ***/
2903     HRESULT (STDMETHODCALLTYPE *get_AutoLoop)(
2904         IVLCControl2* This,
2905         VARIANT_BOOL *autoloop);
2906
2907     HRESULT (STDMETHODCALLTYPE *put_AutoLoop)(
2908         IVLCControl2* This,
2909         VARIANT_BOOL autoloop);
2910
2911     HRESULT (STDMETHODCALLTYPE *get_AutoPlay)(
2912         IVLCControl2* This,
2913         VARIANT_BOOL *autoplay);
2914
2915     HRESULT (STDMETHODCALLTYPE *put_AutoPlay)(
2916         IVLCControl2* This,
2917         VARIANT_BOOL autoplay);
2918
2919     HRESULT (STDMETHODCALLTYPE *get_BaseURL)(
2920         IVLCControl2* This,
2921         BSTR *url);
2922
2923     HRESULT (STDMETHODCALLTYPE *put_BaseURL)(
2924         IVLCControl2* This,
2925         BSTR url);
2926
2927     HRESULT (STDMETHODCALLTYPE *get_StartTime)(
2928         IVLCControl2* This,
2929         long *seconds);
2930
2931     HRESULT (STDMETHODCALLTYPE *put_StartTime)(
2932         IVLCControl2* This,
2933         long seconds);
2934
2935     HRESULT (STDMETHODCALLTYPE *get_MRL)(
2936         IVLCControl2* This,
2937         BSTR *mrl);
2938
2939     HRESULT (STDMETHODCALLTYPE *put_MRL)(
2940         IVLCControl2* This,
2941         BSTR mrl);
2942
2943     HRESULT (STDMETHODCALLTYPE *get_VersionInfo)(
2944         IVLCControl2* This,
2945         BSTR *version);
2946
2947     HRESULT (STDMETHODCALLTYPE *get_Visible)(
2948         IVLCControl2* This,
2949         VARIANT_BOOL *visible);
2950
2951     HRESULT (STDMETHODCALLTYPE *put_Visible)(
2952         IVLCControl2* This,
2953         VARIANT_BOOL visible);
2954
2955     HRESULT (STDMETHODCALLTYPE *get_Volume)(
2956         IVLCControl2* This,
2957         long *volume);
2958
2959     HRESULT (STDMETHODCALLTYPE *put_Volume)(
2960         IVLCControl2* This,
2961         long volume);
2962
2963     HRESULT (STDMETHODCALLTYPE *get_BackColor)(
2964         IVLCControl2* This,
2965         OLE_COLOR *backcolor);
2966
2967     HRESULT (STDMETHODCALLTYPE *put_BackColor)(
2968         IVLCControl2* This,
2969         OLE_COLOR backcolor);
2970
2971     HRESULT (STDMETHODCALLTYPE *get_Toolbar)(
2972         IVLCControl2* This,
2973         VARIANT_BOOL *visible);
2974
2975     HRESULT (STDMETHODCALLTYPE *put_Toolbar)(
2976         IVLCControl2* This,
2977         VARIANT_BOOL visible);
2978
2979     HRESULT (STDMETHODCALLTYPE *get_audio)(
2980         IVLCControl2* This,
2981         IVLCAudio **obj);
2982
2983     HRESULT (STDMETHODCALLTYPE *get_input)(
2984         IVLCControl2* This,
2985         IVLCInput **obj);
2986
2987     HRESULT (STDMETHODCALLTYPE *get_log)(
2988         IVLCControl2* This,
2989         IVLCLog **obj);
2990
2991     HRESULT (STDMETHODCALLTYPE *get_playlist)(
2992         IVLCControl2* This,
2993         IVLCPlaylist **obj);
2994
2995     HRESULT (STDMETHODCALLTYPE *get_subtitle)(
2996         IVLCControl2* This,
2997         IVLCSubtitle **obj);
2998
2999     HRESULT (STDMETHODCALLTYPE *get_video)(
3000         IVLCControl2* This,
3001         IVLCVideo **obj);
3002
3003     END_INTERFACE
3004 } IVLCControl2Vtbl;
3005 interface IVLCControl2 {
3006     CONST_VTBL IVLCControl2Vtbl* lpVtbl;
3007 };
3008
3009 #ifdef COBJMACROS
3010 /*** IUnknown methods ***/
3011 #define IVLCControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3012 #define IVLCControl2_AddRef(This) (This)->lpVtbl->AddRef(This)
3013 #define IVLCControl2_Release(This) (This)->lpVtbl->Release(This)
3014 /*** IDispatch methods ***/
3015 #define IVLCControl2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3016 #define IVLCControl2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3017 #define IVLCControl2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3018 #define IVLCControl2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3019 /*** IVLCControl2 methods ***/
3020 #define IVLCControl2_get_AutoLoop(This,autoloop) (This)->lpVtbl->get_AutoLoop(This,autoloop)
3021 #define IVLCControl2_put_AutoLoop(This,autoloop) (This)->lpVtbl->put_AutoLoop(This,autoloop)
3022 #define IVLCControl2_get_AutoPlay(This,autoplay) (This)->lpVtbl->get_AutoPlay(This,autoplay)
3023 #define IVLCControl2_put_AutoPlay(This,autoplay) (This)->lpVtbl->put_AutoPlay(This,autoplay)
3024 #define IVLCControl2_get_BaseURL(This,url) (This)->lpVtbl->get_BaseURL(This,url)
3025 #define IVLCControl2_put_BaseURL(This,url) (This)->lpVtbl->put_BaseURL(This,url)
3026 #define IVLCControl2_get_StartTime(This,seconds) (This)->lpVtbl->get_StartTime(This,seconds)
3027 #define IVLCControl2_put_StartTime(This,seconds) (This)->lpVtbl->put_StartTime(This,seconds)
3028 #define IVLCControl2_get_MRL(This,mrl) (This)->lpVtbl->get_MRL(This,mrl)
3029 #define IVLCControl2_put_MRL(This,mrl) (This)->lpVtbl->put_MRL(This,mrl)
3030 #define IVLCControl2_get_VersionInfo(This,version) (This)->lpVtbl->get_VersionInfo(This,version)
3031 #define IVLCControl2_get_Visible(This,visible) (This)->lpVtbl->get_Visible(This,visible)
3032 #define IVLCControl2_put_Visible(This,visible) (This)->lpVtbl->put_Visible(This,visible)
3033 #define IVLCControl2_get_Volume(This,volume) (This)->lpVtbl->get_Volume(This,volume)
3034 #define IVLCControl2_put_Volume(This,volume) (This)->lpVtbl->put_Volume(This,volume)
3035 #define IVLCControl2_get_BackColor(This,backcolor) (This)->lpVtbl->get_BackColor(This,backcolor)
3036 #define IVLCControl2_put_BackColor(This,backcolor) (This)->lpVtbl->put_BackColor(This,backcolor)
3037 #define IVLCControl2_get_Toolbar(This,visible) (This)->lpVtbl->get_Toolbar(This,visible)
3038 #define IVLCControl2_put_Toolbar(This,visible) (This)->lpVtbl->put_Toolbar(This,visible)
3039 #define IVLCControl2_get_audio(This,obj) (This)->lpVtbl->get_audio(This,obj)
3040 #define IVLCControl2_get_input(This,obj) (This)->lpVtbl->get_input(This,obj)
3041 #define IVLCControl2_get_log(This,obj) (This)->lpVtbl->get_log(This,obj)
3042 #define IVLCControl2_get_playlist(This,obj) (This)->lpVtbl->get_playlist(This,obj)
3043 #define IVLCControl2_get_subtitle(This,obj) (This)->lpVtbl->get_subtitle(This,obj)
3044 #define IVLCControl2_get_video(This,obj) (This)->lpVtbl->get_video(This,obj)
3045 #endif
3046
3047 #endif
3048
3049 HRESULT STDMETHODCALLTYPE IVLCControl2_get_AutoLoop_Proxy(
3050     IVLCControl2* This,
3051     VARIANT_BOOL *autoloop);
3052 void __RPC_STUB IVLCControl2_get_AutoLoop_Stub(
3053     IRpcStubBuffer* This,
3054     IRpcChannelBuffer* pRpcChannelBuffer,
3055     PRPC_MESSAGE pRpcMessage,
3056     DWORD* pdwStubPhase);
3057 HRESULT STDMETHODCALLTYPE IVLCControl2_put_AutoLoop_Proxy(
3058     IVLCControl2* This,
3059     VARIANT_BOOL autoloop);
3060 void __RPC_STUB IVLCControl2_put_AutoLoop_Stub(
3061     IRpcStubBuffer* This,
3062     IRpcChannelBuffer* pRpcChannelBuffer,
3063     PRPC_MESSAGE pRpcMessage,
3064     DWORD* pdwStubPhase);
3065 HRESULT STDMETHODCALLTYPE IVLCControl2_get_AutoPlay_Proxy(
3066     IVLCControl2* This,
3067     VARIANT_BOOL *autoplay);
3068 void __RPC_STUB IVLCControl2_get_AutoPlay_Stub(
3069     IRpcStubBuffer* This,
3070     IRpcChannelBuffer* pRpcChannelBuffer,
3071     PRPC_MESSAGE pRpcMessage,
3072     DWORD* pdwStubPhase);
3073 HRESULT STDMETHODCALLTYPE IVLCControl2_put_AutoPlay_Proxy(
3074     IVLCControl2* This,
3075     VARIANT_BOOL autoplay);
3076 void __RPC_STUB IVLCControl2_put_AutoPlay_Stub(
3077     IRpcStubBuffer* This,
3078     IRpcChannelBuffer* pRpcChannelBuffer,
3079     PRPC_MESSAGE pRpcMessage,
3080     DWORD* pdwStubPhase);
3081 HRESULT STDMETHODCALLTYPE IVLCControl2_get_BaseURL_Proxy(
3082     IVLCControl2* This,
3083     BSTR *url);
3084 void __RPC_STUB IVLCControl2_get_BaseURL_Stub(
3085     IRpcStubBuffer* This,
3086     IRpcChannelBuffer* pRpcChannelBuffer,
3087     PRPC_MESSAGE pRpcMessage,
3088     DWORD* pdwStubPhase);
3089 HRESULT STDMETHODCALLTYPE IVLCControl2_put_BaseURL_Proxy(
3090     IVLCControl2* This,
3091     BSTR url);
3092 void __RPC_STUB IVLCControl2_put_BaseURL_Stub(
3093     IRpcStubBuffer* This,
3094     IRpcChannelBuffer* pRpcChannelBuffer,
3095     PRPC_MESSAGE pRpcMessage,
3096     DWORD* pdwStubPhase);
3097 HRESULT STDMETHODCALLTYPE IVLCControl2_get_StartTime_Proxy(
3098     IVLCControl2* This,
3099     long *seconds);
3100 void __RPC_STUB IVLCControl2_get_StartTime_Stub(
3101     IRpcStubBuffer* This,
3102     IRpcChannelBuffer* pRpcChannelBuffer,
3103     PRPC_MESSAGE pRpcMessage,
3104     DWORD* pdwStubPhase);
3105 HRESULT STDMETHODCALLTYPE IVLCControl2_put_StartTime_Proxy(
3106     IVLCControl2* This,
3107     long seconds);
3108 void __RPC_STUB IVLCControl2_put_StartTime_Stub(
3109     IRpcStubBuffer* This,
3110     IRpcChannelBuffer* pRpcChannelBuffer,
3111     PRPC_MESSAGE pRpcMessage,
3112     DWORD* pdwStubPhase);
3113 HRESULT STDMETHODCALLTYPE IVLCControl2_get_MRL_Proxy(
3114     IVLCControl2* This,
3115     BSTR *mrl);
3116 void __RPC_STUB IVLCControl2_get_MRL_Stub(
3117     IRpcStubBuffer* This,
3118     IRpcChannelBuffer* pRpcChannelBuffer,
3119     PRPC_MESSAGE pRpcMessage,
3120     DWORD* pdwStubPhase);
3121 HRESULT STDMETHODCALLTYPE IVLCControl2_put_MRL_Proxy(
3122     IVLCControl2* This,
3123     BSTR mrl);
3124 void __RPC_STUB IVLCControl2_put_MRL_Stub(
3125     IRpcStubBuffer* This,
3126     IRpcChannelBuffer* pRpcChannelBuffer,
3127     PRPC_MESSAGE pRpcMessage,
3128     DWORD* pdwStubPhase);
3129 HRESULT STDMETHODCALLTYPE IVLCControl2_get_VersionInfo_Proxy(
3130     IVLCControl2* This,
3131     BSTR *version);
3132 void __RPC_STUB IVLCControl2_get_VersionInfo_Stub(
3133     IRpcStubBuffer* This,
3134     IRpcChannelBuffer* pRpcChannelBuffer,
3135     PRPC_MESSAGE pRpcMessage,
3136     DWORD* pdwStubPhase);
3137 HRESULT STDMETHODCALLTYPE IVLCControl2_get_Visible_Proxy(
3138     IVLCControl2* This,
3139     VARIANT_BOOL *visible);
3140 void __RPC_STUB IVLCControl2_get_Visible_Stub(
3141     IRpcStubBuffer* This,
3142     IRpcChannelBuffer* pRpcChannelBuffer,
3143     PRPC_MESSAGE pRpcMessage,
3144     DWORD* pdwStubPhase);
3145 HRESULT STDMETHODCALLTYPE IVLCControl2_put_Visible_Proxy(
3146     IVLCControl2* This,
3147     VARIANT_BOOL visible);
3148 void __RPC_STUB IVLCControl2_put_Visible_Stub(
3149     IRpcStubBuffer* This,
3150     IRpcChannelBuffer* pRpcChannelBuffer,
3151     PRPC_MESSAGE pRpcMessage,
3152     DWORD* pdwStubPhase);
3153 HRESULT STDMETHODCALLTYPE IVLCControl2_get_Volume_Proxy(
3154     IVLCControl2* This,
3155     long *volume);
3156 void __RPC_STUB IVLCControl2_get_Volume_Stub(
3157     IRpcStubBuffer* This,
3158     IRpcChannelBuffer* pRpcChannelBuffer,
3159     PRPC_MESSAGE pRpcMessage,
3160     DWORD* pdwStubPhase);
3161 HRESULT STDMETHODCALLTYPE IVLCControl2_put_Volume_Proxy(
3162     IVLCControl2* This,
3163     long volume);
3164 void __RPC_STUB IVLCControl2_put_Volume_Stub(
3165     IRpcStubBuffer* This,
3166     IRpcChannelBuffer* pRpcChannelBuffer,
3167     PRPC_MESSAGE pRpcMessage,
3168     DWORD* pdwStubPhase);
3169 HRESULT STDMETHODCALLTYPE IVLCControl2_get_BackColor_Proxy(
3170     IVLCControl2* This,
3171     OLE_COLOR *backcolor);
3172 void __RPC_STUB IVLCControl2_get_BackColor_Stub(
3173     IRpcStubBuffer* This,
3174     IRpcChannelBuffer* pRpcChannelBuffer,
3175     PRPC_MESSAGE pRpcMessage,
3176     DWORD* pdwStubPhase);
3177 HRESULT STDMETHODCALLTYPE IVLCControl2_put_BackColor_Proxy(
3178     IVLCControl2* This,
3179     OLE_COLOR backcolor);
3180 void __RPC_STUB IVLCControl2_put_BackColor_Stub(
3181     IRpcStubBuffer* This,
3182     IRpcChannelBuffer* pRpcChannelBuffer,
3183     PRPC_MESSAGE pRpcMessage,
3184     DWORD* pdwStubPhase);
3185 HRESULT STDMETHODCALLTYPE IVLCControl2_get_Toolbar_Proxy(
3186     IVLCControl2* This,
3187     VARIANT_BOOL *visible);
3188 void __RPC_STUB IVLCControl2_get_Toolbar_Stub(
3189     IRpcStubBuffer* This,
3190     IRpcChannelBuffer* pRpcChannelBuffer,
3191     PRPC_MESSAGE pRpcMessage,
3192     DWORD* pdwStubPhase);
3193 HRESULT STDMETHODCALLTYPE IVLCControl2_put_Toolbar_Proxy(
3194     IVLCControl2* This,
3195     VARIANT_BOOL visible);
3196 void __RPC_STUB IVLCControl2_put_Toolbar_Stub(
3197     IRpcStubBuffer* This,
3198     IRpcChannelBuffer* pRpcChannelBuffer,
3199     PRPC_MESSAGE pRpcMessage,
3200     DWORD* pdwStubPhase);
3201 HRESULT STDMETHODCALLTYPE IVLCControl2_get_audio_Proxy(
3202     IVLCControl2* This,
3203     IVLCAudio **obj);
3204 void __RPC_STUB IVLCControl2_get_audio_Stub(
3205     IRpcStubBuffer* This,
3206     IRpcChannelBuffer* pRpcChannelBuffer,
3207     PRPC_MESSAGE pRpcMessage,
3208     DWORD* pdwStubPhase);
3209 HRESULT STDMETHODCALLTYPE IVLCControl2_get_input_Proxy(
3210     IVLCControl2* This,
3211     IVLCInput **obj);
3212 void __RPC_STUB IVLCControl2_get_input_Stub(
3213     IRpcStubBuffer* This,
3214     IRpcChannelBuffer* pRpcChannelBuffer,
3215     PRPC_MESSAGE pRpcMessage,
3216     DWORD* pdwStubPhase);
3217 HRESULT STDMETHODCALLTYPE IVLCControl2_get_log_Proxy(
3218     IVLCControl2* This,
3219     IVLCLog **obj);
3220 void __RPC_STUB IVLCControl2_get_log_Stub(
3221     IRpcStubBuffer* This,
3222     IRpcChannelBuffer* pRpcChannelBuffer,
3223     PRPC_MESSAGE pRpcMessage,
3224     DWORD* pdwStubPhase);
3225 HRESULT STDMETHODCALLTYPE IVLCControl2_get_playlist_Proxy(
3226     IVLCControl2* This,
3227     IVLCPlaylist **obj);
3228 void __RPC_STUB IVLCControl2_get_playlist_Stub(
3229     IRpcStubBuffer* This,
3230     IRpcChannelBuffer* pRpcChannelBuffer,
3231     PRPC_MESSAGE pRpcMessage,
3232     DWORD* pdwStubPhase);
3233 HRESULT STDMETHODCALLTYPE IVLCControl2_get_subtitle_Proxy(
3234     IVLCControl2* This,
3235     IVLCSubtitle **obj);
3236 void __RPC_STUB IVLCControl2_get_subtitle_Stub(
3237     IRpcStubBuffer* This,
3238     IRpcChannelBuffer* pRpcChannelBuffer,
3239     PRPC_MESSAGE pRpcMessage,
3240     DWORD* pdwStubPhase);
3241 HRESULT STDMETHODCALLTYPE IVLCControl2_get_video_Proxy(
3242     IVLCControl2* This,
3243     IVLCVideo **obj);
3244 void __RPC_STUB IVLCControl2_get_video_Stub(
3245     IRpcStubBuffer* This,
3246     IRpcChannelBuffer* pRpcChannelBuffer,
3247     PRPC_MESSAGE pRpcMessage,
3248     DWORD* pdwStubPhase);
3249
3250 #endif  /* __IVLCControl2_INTERFACE_DEFINED__ */
3251
3252 /*****************************************************************************
3253  * VLCPlugin coclass
3254  */
3255
3256 DEFINE_GUID(CLSID_VLCPlugin, 0xe23fe9c6, 0x778e, 0x49d4, 0xb5,0x37, 0x38,0xfc,0xde,0x48,0x87,0xd8);
3257
3258 #ifndef __VLCPlugin_FWD_DEFINED__
3259 #define __VLCPlugin_FWD_DEFINED__
3260 typedef struct VLCPlugin VLCPlugin;
3261 #endif /* defined __VLCPlugin_FWD_DEFINED__ */
3262
3263 /*****************************************************************************
3264  * VLCPlugin2 coclass
3265  */
3266
3267 DEFINE_GUID(CLSID_VLCPlugin2, 0x9be31822, 0xfdad, 0x461b, 0xad,0x51, 0xbe,0x1d,0x1c,0x15,0x99,0x21);
3268
3269 #ifndef __VLCPlugin2_FWD_DEFINED__
3270 #define __VLCPlugin2_FWD_DEFINED__
3271 typedef struct VLCPlugin2 VLCPlugin2;
3272 #endif /* defined __VLCPlugin2_FWD_DEFINED__ */
3273
3274 /* Begin additional prototypes for all interfaces */
3275
3276 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
3277 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
3278 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
3279 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
3280 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
3281 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
3282 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
3283 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
3284
3285 /* End additional prototypes */
3286
3287 #ifdef __cplusplus
3288 }
3289 #endif
3290
3291 #endif /* __WIDL_AXVLC_IDL_H */