]> git.sesse.net Git - vlc/blob - activex/axvlc_idl.h
- activex: cleanup, improved VB compatibility and new test.html file for new script...
[vlc] / activex / axvlc_idl.h
1 /*** Autogenerated by WIDL 0.9.20 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 #include <oaidl.h>
11
12 DEFINE_GUID(LIBID_AXVLC, 0xdf2bbe39, 0x40a8, 0x433b, 0xa2,0x79, 0x07,0x3f,0x48,0xda,0x94,0xb6);
13
14 #ifndef __IVLCControl_FWD_DEFINED__
15 #define __IVLCControl_FWD_DEFINED__
16 typedef interface IVLCControl IVLCControl;
17 #endif
18
19 #ifndef __IVLCAudio_FWD_DEFINED__
20 #define __IVLCAudio_FWD_DEFINED__
21 typedef interface IVLCAudio IVLCAudio;
22 #endif
23
24 #ifndef __IVLCInput_FWD_DEFINED__
25 #define __IVLCInput_FWD_DEFINED__
26 typedef interface IVLCInput IVLCInput;
27 #endif
28
29 #ifndef __IVLCPlaylist_FWD_DEFINED__
30 #define __IVLCPlaylist_FWD_DEFINED__
31 typedef interface IVLCPlaylist IVLCPlaylist;
32 #endif
33
34 #ifndef __IVLCVideo_FWD_DEFINED__
35 #define __IVLCVideo_FWD_DEFINED__
36 typedef interface IVLCVideo IVLCVideo;
37 #endif
38
39 #ifndef __IVLCControl2_FWD_DEFINED__
40 #define __IVLCControl2_FWD_DEFINED__
41 typedef interface IVLCControl2 IVLCControl2;
42 #endif
43
44 #ifndef __DVLCEvents_FWD_DEFINED__
45 #define __DVLCEvents_FWD_DEFINED__
46 typedef interface DVLCEvents DVLCEvents;
47 #endif
48
49 enum VLCPlaylistMode {
50     VLCPlayListInsert = 1,
51     VLCPlayListInsertAndGo = 9,
52     VLCPlayListReplace = 2,
53     VLCPlayListReplaceAndGo = 10,
54     VLCPlayListAppend = 4,
55     VLCPlayListAppendAndGo = 12,
56     VLCPlayListCheckInsert = 16
57 };
58
59 #define VLCPlayListEnd (-666)
60
61 #define DISPID_Visible (100)
62
63 #define DISPID_Playing (101)
64
65 #define DISPID_Position (102)
66
67 #define DISPID_Time (103)
68
69 #define DISPID_Length (104)
70
71 #define DISPID_Volume (105)
72
73 #define DISPID_MRL (106)
74
75 #define DISPID_AutoPlay (107)
76
77 #define DISPID_AutoLoop (108)
78
79 /*****************************************************************************
80  * IVLCControl interface
81  */
82 #ifndef __IVLCControl_INTERFACE_DEFINED__
83 #define __IVLCControl_INTERFACE_DEFINED__
84
85 DEFINE_GUID(IID_IVLCControl, 0xc2fa41d0, 0xb113, 0x476e, 0xac,0x8c, 0x9b,0xd1,0x49,0x99,0xc1,0xc1);
86 #if defined(__cplusplus) && !defined(CINTERFACE)
87 interface IVLCControl : public IDispatch
88 {
89     virtual HRESULT STDMETHODCALLTYPE get_Visible(
90         VARIANT_BOOL* visible) = 0;
91
92     virtual HRESULT STDMETHODCALLTYPE put_Visible(
93         VARIANT_BOOL visible) = 0;
94
95     virtual HRESULT STDMETHODCALLTYPE play(
96         ) = 0;
97
98     virtual HRESULT STDMETHODCALLTYPE pause(
99         ) = 0;
100
101     virtual HRESULT STDMETHODCALLTYPE stop(
102         ) = 0;
103
104     virtual HRESULT STDMETHODCALLTYPE get_Playing(
105         VARIANT_BOOL* isPlaying) = 0;
106
107     virtual HRESULT STDMETHODCALLTYPE get_Position(
108         float* position) = 0;
109
110     virtual HRESULT STDMETHODCALLTYPE put_Position(
111         float position) = 0;
112
113     virtual HRESULT STDMETHODCALLTYPE get_Time(
114         int* seconds) = 0;
115
116     virtual HRESULT STDMETHODCALLTYPE put_Time(
117         int seconds) = 0;
118
119     virtual HRESULT STDMETHODCALLTYPE shuttle(
120         int seconds) = 0;
121
122     virtual HRESULT STDMETHODCALLTYPE fullscreen(
123         ) = 0;
124
125     virtual HRESULT STDMETHODCALLTYPE get_Length(
126         int* seconds) = 0;
127
128     virtual HRESULT STDMETHODCALLTYPE playFaster(
129         ) = 0;
130
131     virtual HRESULT STDMETHODCALLTYPE playSlower(
132         ) = 0;
133
134     virtual HRESULT STDMETHODCALLTYPE get_Volume(
135         int* volume) = 0;
136
137     virtual HRESULT STDMETHODCALLTYPE put_Volume(
138         int volume) = 0;
139
140     virtual HRESULT STDMETHODCALLTYPE toggleMute(
141         ) = 0;
142
143     virtual HRESULT STDMETHODCALLTYPE setVariable(
144         BSTR name,
145         VARIANT value) = 0;
146
147     virtual HRESULT STDMETHODCALLTYPE getVariable(
148         BSTR name,
149         VARIANT* value) = 0;
150
151     virtual HRESULT STDMETHODCALLTYPE addTarget(
152         BSTR uri,
153         VARIANT options,
154         enum VLCPlaylistMode mode,
155         int position) = 0;
156
157     virtual HRESULT STDMETHODCALLTYPE get_PlaylistIndex(
158         int* index) = 0;
159
160     virtual HRESULT STDMETHODCALLTYPE get_PlaylistCount(
161         int* index) = 0;
162
163     virtual HRESULT STDMETHODCALLTYPE playlistNext(
164         ) = 0;
165
166     virtual HRESULT STDMETHODCALLTYPE playlistPrev(
167         ) = 0;
168
169     virtual HRESULT STDMETHODCALLTYPE playlistClear(
170         ) = 0;
171
172     virtual HRESULT STDMETHODCALLTYPE get_VersionInfo(
173         BSTR* version) = 0;
174
175     virtual HRESULT STDMETHODCALLTYPE get_MRL(
176         BSTR* mrl) = 0;
177
178     virtual HRESULT STDMETHODCALLTYPE put_MRL(
179         BSTR mrl) = 0;
180
181     virtual HRESULT STDMETHODCALLTYPE get_AutoPlay(
182         VARIANT_BOOL* autoplay) = 0;
183
184     virtual HRESULT STDMETHODCALLTYPE put_AutoPlay(
185         VARIANT_BOOL autoplay) = 0;
186
187     virtual HRESULT STDMETHODCALLTYPE get_AutoLoop(
188         VARIANT_BOOL* autoloop) = 0;
189
190     virtual HRESULT STDMETHODCALLTYPE put_AutoLoop(
191         VARIANT_BOOL autoloop) = 0;
192
193 };
194 #else
195 typedef struct IVLCControlVtbl {
196     BEGIN_INTERFACE
197
198     /*** IUnknown methods ***/
199     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
200         IVLCControl* This,
201         REFIID riid,
202         void** ppvObject);
203
204     ULONG (STDMETHODCALLTYPE *AddRef)(
205         IVLCControl* This);
206
207     ULONG (STDMETHODCALLTYPE *Release)(
208         IVLCControl* This);
209
210     /*** IDispatch methods ***/
211     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
212         IVLCControl* This,
213         UINT* pctinfo);
214
215     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
216         IVLCControl* This,
217         UINT iTInfo,
218         LCID lcid,
219         ITypeInfo** ppTInfo);
220
221     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
222         IVLCControl* This,
223         REFIID riid,
224         LPOLESTR* rgszNames,
225         UINT cNames,
226         LCID lcid,
227         DISPID* rgDispId);
228
229     HRESULT (STDMETHODCALLTYPE *Invoke)(
230         IVLCControl* This,
231         DISPID dispIdMember,
232         REFIID riid,
233         LCID lcid,
234         WORD wFlags,
235         DISPPARAMS* pDispParams,
236         VARIANT* pVarResult,
237         EXCEPINFO* pExcepInfo,
238         UINT* puArgErr);
239
240     /*** IVLCControl methods ***/
241     HRESULT (STDMETHODCALLTYPE *get_Visible)(
242         IVLCControl* This,
243         VARIANT_BOOL* visible);
244
245     HRESULT (STDMETHODCALLTYPE *put_Visible)(
246         IVLCControl* This,
247         VARIANT_BOOL visible);
248
249     HRESULT (STDMETHODCALLTYPE *play)(
250         IVLCControl* This);
251
252     HRESULT (STDMETHODCALLTYPE *pause)(
253         IVLCControl* This);
254
255     HRESULT (STDMETHODCALLTYPE *stop)(
256         IVLCControl* This);
257
258     HRESULT (STDMETHODCALLTYPE *get_Playing)(
259         IVLCControl* This,
260         VARIANT_BOOL* isPlaying);
261
262     HRESULT (STDMETHODCALLTYPE *get_Position)(
263         IVLCControl* This,
264         float* position);
265
266     HRESULT (STDMETHODCALLTYPE *put_Position)(
267         IVLCControl* This,
268         float position);
269
270     HRESULT (STDMETHODCALLTYPE *get_Time)(
271         IVLCControl* This,
272         int* seconds);
273
274     HRESULT (STDMETHODCALLTYPE *put_Time)(
275         IVLCControl* This,
276         int seconds);
277
278     HRESULT (STDMETHODCALLTYPE *shuttle)(
279         IVLCControl* This,
280         int seconds);
281
282     HRESULT (STDMETHODCALLTYPE *fullscreen)(
283         IVLCControl* This);
284
285     HRESULT (STDMETHODCALLTYPE *get_Length)(
286         IVLCControl* This,
287         int* seconds);
288
289     HRESULT (STDMETHODCALLTYPE *playFaster)(
290         IVLCControl* This);
291
292     HRESULT (STDMETHODCALLTYPE *playSlower)(
293         IVLCControl* This);
294
295     HRESULT (STDMETHODCALLTYPE *get_Volume)(
296         IVLCControl* This,
297         int* volume);
298
299     HRESULT (STDMETHODCALLTYPE *put_Volume)(
300         IVLCControl* This,
301         int volume);
302
303     HRESULT (STDMETHODCALLTYPE *toggleMute)(
304         IVLCControl* This);
305
306     HRESULT (STDMETHODCALLTYPE *setVariable)(
307         IVLCControl* This,
308         BSTR name,
309         VARIANT value);
310
311     HRESULT (STDMETHODCALLTYPE *getVariable)(
312         IVLCControl* This,
313         BSTR name,
314         VARIANT* value);
315
316     HRESULT (STDMETHODCALLTYPE *addTarget)(
317         IVLCControl* This,
318         BSTR uri,
319         VARIANT options,
320         enum VLCPlaylistMode mode,
321         int position);
322
323     HRESULT (STDMETHODCALLTYPE *get_PlaylistIndex)(
324         IVLCControl* This,
325         int* index);
326
327     HRESULT (STDMETHODCALLTYPE *get_PlaylistCount)(
328         IVLCControl* This,
329         int* index);
330
331     HRESULT (STDMETHODCALLTYPE *playlistNext)(
332         IVLCControl* This);
333
334     HRESULT (STDMETHODCALLTYPE *playlistPrev)(
335         IVLCControl* This);
336
337     HRESULT (STDMETHODCALLTYPE *playlistClear)(
338         IVLCControl* This);
339
340     HRESULT (STDMETHODCALLTYPE *get_VersionInfo)(
341         IVLCControl* This,
342         BSTR* version);
343
344     HRESULT (STDMETHODCALLTYPE *get_MRL)(
345         IVLCControl* This,
346         BSTR* mrl);
347
348     HRESULT (STDMETHODCALLTYPE *put_MRL)(
349         IVLCControl* This,
350         BSTR mrl);
351
352     HRESULT (STDMETHODCALLTYPE *get_AutoPlay)(
353         IVLCControl* This,
354         VARIANT_BOOL* autoplay);
355
356     HRESULT (STDMETHODCALLTYPE *put_AutoPlay)(
357         IVLCControl* This,
358         VARIANT_BOOL autoplay);
359
360     HRESULT (STDMETHODCALLTYPE *get_AutoLoop)(
361         IVLCControl* This,
362         VARIANT_BOOL* autoloop);
363
364     HRESULT (STDMETHODCALLTYPE *put_AutoLoop)(
365         IVLCControl* This,
366         VARIANT_BOOL autoloop);
367
368     END_INTERFACE
369 } IVLCControlVtbl;
370 interface IVLCControl {
371     const IVLCControlVtbl* lpVtbl;
372 };
373
374 #ifdef COBJMACROS
375 /*** IUnknown methods ***/
376 #define IVLCControl_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
377 #define IVLCControl_AddRef(p) (p)->lpVtbl->AddRef(p)
378 #define IVLCControl_Release(p) (p)->lpVtbl->Release(p)
379 /*** IDispatch methods ***/
380 #define IVLCControl_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
381 #define IVLCControl_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
382 #define IVLCControl_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
383 #define IVLCControl_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
384 /*** IVLCControl methods ***/
385 #define IVLCControl_get_Visible(p,a) (p)->lpVtbl->get_Visible(p,a)
386 #define IVLCControl_put_Visible(p,a) (p)->lpVtbl->put_Visible(p,a)
387 #define IVLCControl_play(p) (p)->lpVtbl->play(p)
388 #define IVLCControl_pause(p) (p)->lpVtbl->pause(p)
389 #define IVLCControl_stop(p) (p)->lpVtbl->stop(p)
390 #define IVLCControl_get_Playing(p,a) (p)->lpVtbl->get_Playing(p,a)
391 #define IVLCControl_get_Position(p,a) (p)->lpVtbl->get_Position(p,a)
392 #define IVLCControl_put_Position(p,a) (p)->lpVtbl->put_Position(p,a)
393 #define IVLCControl_get_Time(p,a) (p)->lpVtbl->get_Time(p,a)
394 #define IVLCControl_put_Time(p,a) (p)->lpVtbl->put_Time(p,a)
395 #define IVLCControl_shuttle(p,a) (p)->lpVtbl->shuttle(p,a)
396 #define IVLCControl_fullscreen(p) (p)->lpVtbl->fullscreen(p)
397 #define IVLCControl_get_Length(p,a) (p)->lpVtbl->get_Length(p,a)
398 #define IVLCControl_playFaster(p) (p)->lpVtbl->playFaster(p)
399 #define IVLCControl_playSlower(p) (p)->lpVtbl->playSlower(p)
400 #define IVLCControl_get_Volume(p,a) (p)->lpVtbl->get_Volume(p,a)
401 #define IVLCControl_put_Volume(p,a) (p)->lpVtbl->put_Volume(p,a)
402 #define IVLCControl_toggleMute(p) (p)->lpVtbl->toggleMute(p)
403 #define IVLCControl_setVariable(p,a,b) (p)->lpVtbl->setVariable(p,a,b)
404 #define IVLCControl_getVariable(p,a,b) (p)->lpVtbl->getVariable(p,a,b)
405 #define IVLCControl_addTarget(p,a,b,c,d) (p)->lpVtbl->addTarget(p,a,b,c,d)
406 #define IVLCControl_get_PlaylistIndex(p,a) (p)->lpVtbl->get_PlaylistIndex(p,a)
407 #define IVLCControl_get_PlaylistCount(p,a) (p)->lpVtbl->get_PlaylistCount(p,a)
408 #define IVLCControl_playlistNext(p) (p)->lpVtbl->playlistNext(p)
409 #define IVLCControl_playlistPrev(p) (p)->lpVtbl->playlistPrev(p)
410 #define IVLCControl_playlistClear(p) (p)->lpVtbl->playlistClear(p)
411 #define IVLCControl_get_VersionInfo(p,a) (p)->lpVtbl->get_VersionInfo(p,a)
412 #define IVLCControl_get_MRL(p,a) (p)->lpVtbl->get_MRL(p,a)
413 #define IVLCControl_put_MRL(p,a) (p)->lpVtbl->put_MRL(p,a)
414 #define IVLCControl_get_AutoPlay(p,a) (p)->lpVtbl->get_AutoPlay(p,a)
415 #define IVLCControl_put_AutoPlay(p,a) (p)->lpVtbl->put_AutoPlay(p,a)
416 #define IVLCControl_get_AutoLoop(p,a) (p)->lpVtbl->get_AutoLoop(p,a)
417 #define IVLCControl_put_AutoLoop(p,a) (p)->lpVtbl->put_AutoLoop(p,a)
418 #endif
419
420 #endif
421
422 HRESULT CALLBACK IVLCControl_get_Visible_Proxy(
423     IVLCControl* This,
424     VARIANT_BOOL* visible);
425 void __RPC_STUB IVLCControl_get_Visible_Stub(
426     IRpcStubBuffer* This,
427     IRpcChannelBuffer* pRpcChannelBuffer,
428     PRPC_MESSAGE pRpcMessage,
429     DWORD* pdwStubPhase);
430 HRESULT CALLBACK IVLCControl_put_Visible_Proxy(
431     IVLCControl* This,
432     VARIANT_BOOL visible);
433 void __RPC_STUB IVLCControl_put_Visible_Stub(
434     IRpcStubBuffer* This,
435     IRpcChannelBuffer* pRpcChannelBuffer,
436     PRPC_MESSAGE pRpcMessage,
437     DWORD* pdwStubPhase);
438 HRESULT CALLBACK IVLCControl_play_Proxy(
439     IVLCControl* This);
440 void __RPC_STUB IVLCControl_play_Stub(
441     IRpcStubBuffer* This,
442     IRpcChannelBuffer* pRpcChannelBuffer,
443     PRPC_MESSAGE pRpcMessage,
444     DWORD* pdwStubPhase);
445 HRESULT CALLBACK IVLCControl_pause_Proxy(
446     IVLCControl* This);
447 void __RPC_STUB IVLCControl_pause_Stub(
448     IRpcStubBuffer* This,
449     IRpcChannelBuffer* pRpcChannelBuffer,
450     PRPC_MESSAGE pRpcMessage,
451     DWORD* pdwStubPhase);
452 HRESULT CALLBACK IVLCControl_stop_Proxy(
453     IVLCControl* This);
454 void __RPC_STUB IVLCControl_stop_Stub(
455     IRpcStubBuffer* This,
456     IRpcChannelBuffer* pRpcChannelBuffer,
457     PRPC_MESSAGE pRpcMessage,
458     DWORD* pdwStubPhase);
459 HRESULT CALLBACK IVLCControl_get_Playing_Proxy(
460     IVLCControl* This,
461     VARIANT_BOOL* isPlaying);
462 void __RPC_STUB IVLCControl_get_Playing_Stub(
463     IRpcStubBuffer* This,
464     IRpcChannelBuffer* pRpcChannelBuffer,
465     PRPC_MESSAGE pRpcMessage,
466     DWORD* pdwStubPhase);
467 HRESULT CALLBACK IVLCControl_get_Position_Proxy(
468     IVLCControl* This,
469     float* position);
470 void __RPC_STUB IVLCControl_get_Position_Stub(
471     IRpcStubBuffer* This,
472     IRpcChannelBuffer* pRpcChannelBuffer,
473     PRPC_MESSAGE pRpcMessage,
474     DWORD* pdwStubPhase);
475 HRESULT CALLBACK IVLCControl_put_Position_Proxy(
476     IVLCControl* This,
477     float position);
478 void __RPC_STUB IVLCControl_put_Position_Stub(
479     IRpcStubBuffer* This,
480     IRpcChannelBuffer* pRpcChannelBuffer,
481     PRPC_MESSAGE pRpcMessage,
482     DWORD* pdwStubPhase);
483 HRESULT CALLBACK IVLCControl_get_Time_Proxy(
484     IVLCControl* This,
485     int* seconds);
486 void __RPC_STUB IVLCControl_get_Time_Stub(
487     IRpcStubBuffer* This,
488     IRpcChannelBuffer* pRpcChannelBuffer,
489     PRPC_MESSAGE pRpcMessage,
490     DWORD* pdwStubPhase);
491 HRESULT CALLBACK IVLCControl_put_Time_Proxy(
492     IVLCControl* This,
493     int seconds);
494 void __RPC_STUB IVLCControl_put_Time_Stub(
495     IRpcStubBuffer* This,
496     IRpcChannelBuffer* pRpcChannelBuffer,
497     PRPC_MESSAGE pRpcMessage,
498     DWORD* pdwStubPhase);
499 HRESULT CALLBACK IVLCControl_shuttle_Proxy(
500     IVLCControl* This,
501     int seconds);
502 void __RPC_STUB IVLCControl_shuttle_Stub(
503     IRpcStubBuffer* This,
504     IRpcChannelBuffer* pRpcChannelBuffer,
505     PRPC_MESSAGE pRpcMessage,
506     DWORD* pdwStubPhase);
507 HRESULT CALLBACK IVLCControl_fullscreen_Proxy(
508     IVLCControl* This);
509 void __RPC_STUB IVLCControl_fullscreen_Stub(
510     IRpcStubBuffer* This,
511     IRpcChannelBuffer* pRpcChannelBuffer,
512     PRPC_MESSAGE pRpcMessage,
513     DWORD* pdwStubPhase);
514 HRESULT CALLBACK IVLCControl_get_Length_Proxy(
515     IVLCControl* This,
516     int* seconds);
517 void __RPC_STUB IVLCControl_get_Length_Stub(
518     IRpcStubBuffer* This,
519     IRpcChannelBuffer* pRpcChannelBuffer,
520     PRPC_MESSAGE pRpcMessage,
521     DWORD* pdwStubPhase);
522 HRESULT CALLBACK IVLCControl_playFaster_Proxy(
523     IVLCControl* This);
524 void __RPC_STUB IVLCControl_playFaster_Stub(
525     IRpcStubBuffer* This,
526     IRpcChannelBuffer* pRpcChannelBuffer,
527     PRPC_MESSAGE pRpcMessage,
528     DWORD* pdwStubPhase);
529 HRESULT CALLBACK IVLCControl_playSlower_Proxy(
530     IVLCControl* This);
531 void __RPC_STUB IVLCControl_playSlower_Stub(
532     IRpcStubBuffer* This,
533     IRpcChannelBuffer* pRpcChannelBuffer,
534     PRPC_MESSAGE pRpcMessage,
535     DWORD* pdwStubPhase);
536 HRESULT CALLBACK IVLCControl_get_Volume_Proxy(
537     IVLCControl* This,
538     int* volume);
539 void __RPC_STUB IVLCControl_get_Volume_Stub(
540     IRpcStubBuffer* This,
541     IRpcChannelBuffer* pRpcChannelBuffer,
542     PRPC_MESSAGE pRpcMessage,
543     DWORD* pdwStubPhase);
544 HRESULT CALLBACK IVLCControl_put_Volume_Proxy(
545     IVLCControl* This,
546     int volume);
547 void __RPC_STUB IVLCControl_put_Volume_Stub(
548     IRpcStubBuffer* This,
549     IRpcChannelBuffer* pRpcChannelBuffer,
550     PRPC_MESSAGE pRpcMessage,
551     DWORD* pdwStubPhase);
552 HRESULT CALLBACK IVLCControl_toggleMute_Proxy(
553     IVLCControl* This);
554 void __RPC_STUB IVLCControl_toggleMute_Stub(
555     IRpcStubBuffer* This,
556     IRpcChannelBuffer* pRpcChannelBuffer,
557     PRPC_MESSAGE pRpcMessage,
558     DWORD* pdwStubPhase);
559 HRESULT CALLBACK IVLCControl_setVariable_Proxy(
560     IVLCControl* This,
561     BSTR name,
562     VARIANT value);
563 void __RPC_STUB IVLCControl_setVariable_Stub(
564     IRpcStubBuffer* This,
565     IRpcChannelBuffer* pRpcChannelBuffer,
566     PRPC_MESSAGE pRpcMessage,
567     DWORD* pdwStubPhase);
568 HRESULT CALLBACK IVLCControl_getVariable_Proxy(
569     IVLCControl* This,
570     BSTR name,
571     VARIANT* value);
572 void __RPC_STUB IVLCControl_getVariable_Stub(
573     IRpcStubBuffer* This,
574     IRpcChannelBuffer* pRpcChannelBuffer,
575     PRPC_MESSAGE pRpcMessage,
576     DWORD* pdwStubPhase);
577 HRESULT CALLBACK IVLCControl_addTarget_Proxy(
578     IVLCControl* This,
579     BSTR uri,
580     VARIANT options,
581     enum VLCPlaylistMode mode,
582     int position);
583 void __RPC_STUB IVLCControl_addTarget_Stub(
584     IRpcStubBuffer* This,
585     IRpcChannelBuffer* pRpcChannelBuffer,
586     PRPC_MESSAGE pRpcMessage,
587     DWORD* pdwStubPhase);
588 HRESULT CALLBACK IVLCControl_get_PlaylistIndex_Proxy(
589     IVLCControl* This,
590     int* index);
591 void __RPC_STUB IVLCControl_get_PlaylistIndex_Stub(
592     IRpcStubBuffer* This,
593     IRpcChannelBuffer* pRpcChannelBuffer,
594     PRPC_MESSAGE pRpcMessage,
595     DWORD* pdwStubPhase);
596 HRESULT CALLBACK IVLCControl_get_PlaylistCount_Proxy(
597     IVLCControl* This,
598     int* index);
599 void __RPC_STUB IVLCControl_get_PlaylistCount_Stub(
600     IRpcStubBuffer* This,
601     IRpcChannelBuffer* pRpcChannelBuffer,
602     PRPC_MESSAGE pRpcMessage,
603     DWORD* pdwStubPhase);
604 HRESULT CALLBACK IVLCControl_playlistNext_Proxy(
605     IVLCControl* This);
606 void __RPC_STUB IVLCControl_playlistNext_Stub(
607     IRpcStubBuffer* This,
608     IRpcChannelBuffer* pRpcChannelBuffer,
609     PRPC_MESSAGE pRpcMessage,
610     DWORD* pdwStubPhase);
611 HRESULT CALLBACK IVLCControl_playlistPrev_Proxy(
612     IVLCControl* This);
613 void __RPC_STUB IVLCControl_playlistPrev_Stub(
614     IRpcStubBuffer* This,
615     IRpcChannelBuffer* pRpcChannelBuffer,
616     PRPC_MESSAGE pRpcMessage,
617     DWORD* pdwStubPhase);
618 HRESULT CALLBACK IVLCControl_playlistClear_Proxy(
619     IVLCControl* This);
620 void __RPC_STUB IVLCControl_playlistClear_Stub(
621     IRpcStubBuffer* This,
622     IRpcChannelBuffer* pRpcChannelBuffer,
623     PRPC_MESSAGE pRpcMessage,
624     DWORD* pdwStubPhase);
625 HRESULT CALLBACK IVLCControl_get_VersionInfo_Proxy(
626     IVLCControl* This,
627     BSTR* version);
628 void __RPC_STUB IVLCControl_get_VersionInfo_Stub(
629     IRpcStubBuffer* This,
630     IRpcChannelBuffer* pRpcChannelBuffer,
631     PRPC_MESSAGE pRpcMessage,
632     DWORD* pdwStubPhase);
633 HRESULT CALLBACK IVLCControl_get_MRL_Proxy(
634     IVLCControl* This,
635     BSTR* mrl);
636 void __RPC_STUB IVLCControl_get_MRL_Stub(
637     IRpcStubBuffer* This,
638     IRpcChannelBuffer* pRpcChannelBuffer,
639     PRPC_MESSAGE pRpcMessage,
640     DWORD* pdwStubPhase);
641 HRESULT CALLBACK IVLCControl_put_MRL_Proxy(
642     IVLCControl* This,
643     BSTR mrl);
644 void __RPC_STUB IVLCControl_put_MRL_Stub(
645     IRpcStubBuffer* This,
646     IRpcChannelBuffer* pRpcChannelBuffer,
647     PRPC_MESSAGE pRpcMessage,
648     DWORD* pdwStubPhase);
649 HRESULT CALLBACK IVLCControl_get_AutoPlay_Proxy(
650     IVLCControl* This,
651     VARIANT_BOOL* autoplay);
652 void __RPC_STUB IVLCControl_get_AutoPlay_Stub(
653     IRpcStubBuffer* This,
654     IRpcChannelBuffer* pRpcChannelBuffer,
655     PRPC_MESSAGE pRpcMessage,
656     DWORD* pdwStubPhase);
657 HRESULT CALLBACK IVLCControl_put_AutoPlay_Proxy(
658     IVLCControl* This,
659     VARIANT_BOOL autoplay);
660 void __RPC_STUB IVLCControl_put_AutoPlay_Stub(
661     IRpcStubBuffer* This,
662     IRpcChannelBuffer* pRpcChannelBuffer,
663     PRPC_MESSAGE pRpcMessage,
664     DWORD* pdwStubPhase);
665 HRESULT CALLBACK IVLCControl_get_AutoLoop_Proxy(
666     IVLCControl* This,
667     VARIANT_BOOL* autoloop);
668 void __RPC_STUB IVLCControl_get_AutoLoop_Stub(
669     IRpcStubBuffer* This,
670     IRpcChannelBuffer* pRpcChannelBuffer,
671     PRPC_MESSAGE pRpcMessage,
672     DWORD* pdwStubPhase);
673 HRESULT CALLBACK IVLCControl_put_AutoLoop_Proxy(
674     IVLCControl* This,
675     VARIANT_BOOL autoloop);
676 void __RPC_STUB IVLCControl_put_AutoLoop_Stub(
677     IRpcStubBuffer* This,
678     IRpcChannelBuffer* pRpcChannelBuffer,
679     PRPC_MESSAGE pRpcMessage,
680     DWORD* pdwStubPhase);
681
682 #endif  /* __IVLCControl_INTERFACE_DEFINED__ */
683
684 #define DISPID_PlayEvent (100)
685
686 #define DISPID_PauseEvent (101)
687
688 #define DISPID_StopEvent (102)
689
690 /*****************************************************************************
691  * DVLCEvents dispinterface
692  */
693 #ifndef __DVLCEvents_DISPINTERFACE_DEFINED__
694 #define __DVLCEvents_DISPINTERFACE_DEFINED__
695
696 DEFINE_GUID(DIID_DVLCEvents, 0xdf48072f, 0x5ef8, 0x434e, 0x9b,0x40, 0xe2,0xf3,0xae,0x75,0x9b,0x5f);
697 #if defined(__cplusplus) && !defined(CINTERFACE)
698 interface DVLCEvents : public IDispatch
699 {
700 };
701 #else
702 typedef struct DVLCEventsVtbl {
703     BEGIN_INTERFACE
704
705     /*** IUnknown methods ***/
706     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
707         DVLCEvents* This,
708         REFIID riid,
709         void** ppvObject);
710
711     ULONG (STDMETHODCALLTYPE *AddRef)(
712         DVLCEvents* This);
713
714     ULONG (STDMETHODCALLTYPE *Release)(
715         DVLCEvents* This);
716
717     /*** IDispatch methods ***/
718     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
719         DVLCEvents* This,
720         UINT* pctinfo);
721
722     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
723         DVLCEvents* This,
724         UINT iTInfo,
725         LCID lcid,
726         ITypeInfo** ppTInfo);
727
728     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
729         DVLCEvents* This,
730         REFIID riid,
731         LPOLESTR* rgszNames,
732         UINT cNames,
733         LCID lcid,
734         DISPID* rgDispId);
735
736     HRESULT (STDMETHODCALLTYPE *Invoke)(
737         DVLCEvents* This,
738         DISPID dispIdMember,
739         REFIID riid,
740         LCID lcid,
741         WORD wFlags,
742         DISPPARAMS* pDispParams,
743         VARIANT* pVarResult,
744         EXCEPINFO* pExcepInfo,
745         UINT* puArgErr);
746
747     END_INTERFACE
748 } DVLCEventsVtbl;
749 interface DVLCEvents {
750     const DVLCEventsVtbl* lpVtbl;
751 };
752
753 #ifdef COBJMACROS
754 /*** IUnknown methods ***/
755 #define DVLCEvents_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
756 #define DVLCEvents_AddRef(p) (p)->lpVtbl->AddRef(p)
757 #define DVLCEvents_Release(p) (p)->lpVtbl->Release(p)
758 /*** IDispatch methods ***/
759 #define DVLCEvents_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
760 #define DVLCEvents_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
761 #define DVLCEvents_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
762 #define DVLCEvents_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
763 #endif
764
765 #endif
766
767 #endif  /* __DVLCEvents_DISPINTERFACE_DEFINED__ */
768
769 /*****************************************************************************
770  * IVLCAudio interface
771  */
772 #ifndef __IVLCAudio_INTERFACE_DEFINED__
773 #define __IVLCAudio_INTERFACE_DEFINED__
774
775 DEFINE_GUID(IID_IVLCAudio, 0x9e0bd17b, 0x2d3c, 0x4656, 0xb9,0x4d, 0x03,0x08,0x4f,0x3f,0xd9,0xd4);
776 #if defined(__cplusplus) && !defined(CINTERFACE)
777 interface IVLCAudio : public IDispatch
778 {
779     virtual HRESULT STDMETHODCALLTYPE get_mute(
780         VARIANT_BOOL* muted) = 0;
781
782     virtual HRESULT STDMETHODCALLTYPE put_mute(
783         VARIANT_BOOL muted) = 0;
784
785     virtual HRESULT STDMETHODCALLTYPE get_volume(
786         int* volume) = 0;
787
788     virtual HRESULT STDMETHODCALLTYPE put_volume(
789         int volume) = 0;
790
791     virtual HRESULT STDMETHODCALLTYPE toggleMute(
792         ) = 0;
793
794 };
795 #else
796 typedef struct IVLCAudioVtbl {
797     BEGIN_INTERFACE
798
799     /*** IUnknown methods ***/
800     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
801         IVLCAudio* This,
802         REFIID riid,
803         void** ppvObject);
804
805     ULONG (STDMETHODCALLTYPE *AddRef)(
806         IVLCAudio* This);
807
808     ULONG (STDMETHODCALLTYPE *Release)(
809         IVLCAudio* This);
810
811     /*** IDispatch methods ***/
812     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
813         IVLCAudio* This,
814         UINT* pctinfo);
815
816     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
817         IVLCAudio* This,
818         UINT iTInfo,
819         LCID lcid,
820         ITypeInfo** ppTInfo);
821
822     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
823         IVLCAudio* This,
824         REFIID riid,
825         LPOLESTR* rgszNames,
826         UINT cNames,
827         LCID lcid,
828         DISPID* rgDispId);
829
830     HRESULT (STDMETHODCALLTYPE *Invoke)(
831         IVLCAudio* This,
832         DISPID dispIdMember,
833         REFIID riid,
834         LCID lcid,
835         WORD wFlags,
836         DISPPARAMS* pDispParams,
837         VARIANT* pVarResult,
838         EXCEPINFO* pExcepInfo,
839         UINT* puArgErr);
840
841     /*** IVLCAudio methods ***/
842     HRESULT (STDMETHODCALLTYPE *get_mute)(
843         IVLCAudio* This,
844         VARIANT_BOOL* muted);
845
846     HRESULT (STDMETHODCALLTYPE *put_mute)(
847         IVLCAudio* This,
848         VARIANT_BOOL muted);
849
850     HRESULT (STDMETHODCALLTYPE *get_volume)(
851         IVLCAudio* This,
852         int* volume);
853
854     HRESULT (STDMETHODCALLTYPE *put_volume)(
855         IVLCAudio* This,
856         int volume);
857
858     HRESULT (STDMETHODCALLTYPE *toggleMute)(
859         IVLCAudio* This);
860
861     END_INTERFACE
862 } IVLCAudioVtbl;
863 interface IVLCAudio {
864     const IVLCAudioVtbl* lpVtbl;
865 };
866
867 #ifdef COBJMACROS
868 /*** IUnknown methods ***/
869 #define IVLCAudio_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
870 #define IVLCAudio_AddRef(p) (p)->lpVtbl->AddRef(p)
871 #define IVLCAudio_Release(p) (p)->lpVtbl->Release(p)
872 /*** IDispatch methods ***/
873 #define IVLCAudio_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
874 #define IVLCAudio_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
875 #define IVLCAudio_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
876 #define IVLCAudio_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
877 /*** IVLCAudio methods ***/
878 #define IVLCAudio_get_mute(p,a) (p)->lpVtbl->get_mute(p,a)
879 #define IVLCAudio_put_mute(p,a) (p)->lpVtbl->put_mute(p,a)
880 #define IVLCAudio_get_volume(p,a) (p)->lpVtbl->get_volume(p,a)
881 #define IVLCAudio_put_volume(p,a) (p)->lpVtbl->put_volume(p,a)
882 #define IVLCAudio_toggleMute(p) (p)->lpVtbl->toggleMute(p)
883 #endif
884
885 #endif
886
887 HRESULT CALLBACK IVLCAudio_get_mute_Proxy(
888     IVLCAudio* This,
889     VARIANT_BOOL* muted);
890 void __RPC_STUB IVLCAudio_get_mute_Stub(
891     IRpcStubBuffer* This,
892     IRpcChannelBuffer* pRpcChannelBuffer,
893     PRPC_MESSAGE pRpcMessage,
894     DWORD* pdwStubPhase);
895 HRESULT CALLBACK IVLCAudio_put_mute_Proxy(
896     IVLCAudio* This,
897     VARIANT_BOOL muted);
898 void __RPC_STUB IVLCAudio_put_mute_Stub(
899     IRpcStubBuffer* This,
900     IRpcChannelBuffer* pRpcChannelBuffer,
901     PRPC_MESSAGE pRpcMessage,
902     DWORD* pdwStubPhase);
903 HRESULT CALLBACK IVLCAudio_get_volume_Proxy(
904     IVLCAudio* This,
905     int* volume);
906 void __RPC_STUB IVLCAudio_get_volume_Stub(
907     IRpcStubBuffer* This,
908     IRpcChannelBuffer* pRpcChannelBuffer,
909     PRPC_MESSAGE pRpcMessage,
910     DWORD* pdwStubPhase);
911 HRESULT CALLBACK IVLCAudio_put_volume_Proxy(
912     IVLCAudio* This,
913     int volume);
914 void __RPC_STUB IVLCAudio_put_volume_Stub(
915     IRpcStubBuffer* This,
916     IRpcChannelBuffer* pRpcChannelBuffer,
917     PRPC_MESSAGE pRpcMessage,
918     DWORD* pdwStubPhase);
919 HRESULT CALLBACK IVLCAudio_toggleMute_Proxy(
920     IVLCAudio* This);
921 void __RPC_STUB IVLCAudio_toggleMute_Stub(
922     IRpcStubBuffer* This,
923     IRpcChannelBuffer* pRpcChannelBuffer,
924     PRPC_MESSAGE pRpcMessage,
925     DWORD* pdwStubPhase);
926
927 #endif  /* __IVLCAudio_INTERFACE_DEFINED__ */
928
929 /*****************************************************************************
930  * IVLCInput interface
931  */
932 #ifndef __IVLCInput_INTERFACE_DEFINED__
933 #define __IVLCInput_INTERFACE_DEFINED__
934
935 DEFINE_GUID(IID_IVLCInput, 0x49e0dbd1, 0x9440, 0x466c, 0x9c,0x97, 0x95,0xc6,0x71,0x90,0xc6,0x03);
936 #if defined(__cplusplus) && !defined(CINTERFACE)
937 interface IVLCInput : public IDispatch
938 {
939     virtual HRESULT STDMETHODCALLTYPE get_length(
940         __int64* length) = 0;
941
942     virtual HRESULT STDMETHODCALLTYPE get_position(
943         float* position) = 0;
944
945     virtual HRESULT STDMETHODCALLTYPE put_position(
946         float position) = 0;
947
948     virtual HRESULT STDMETHODCALLTYPE get_time(
949         __int64* time) = 0;
950
951     virtual HRESULT STDMETHODCALLTYPE put_time(
952         __int64 time) = 0;
953
954     virtual HRESULT STDMETHODCALLTYPE get_state(
955         int* state) = 0;
956
957     virtual HRESULT STDMETHODCALLTYPE get_rate(
958         float* rate) = 0;
959
960     virtual HRESULT STDMETHODCALLTYPE put_rate(
961         float rate) = 0;
962
963     virtual HRESULT STDMETHODCALLTYPE get_fps(
964         float* fps) = 0;
965
966     virtual HRESULT STDMETHODCALLTYPE get_hasVout(
967         VARIANT_BOOL* hasVout) = 0;
968
969 };
970 #else
971 typedef struct IVLCInputVtbl {
972     BEGIN_INTERFACE
973
974     /*** IUnknown methods ***/
975     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
976         IVLCInput* This,
977         REFIID riid,
978         void** ppvObject);
979
980     ULONG (STDMETHODCALLTYPE *AddRef)(
981         IVLCInput* This);
982
983     ULONG (STDMETHODCALLTYPE *Release)(
984         IVLCInput* This);
985
986     /*** IDispatch methods ***/
987     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
988         IVLCInput* This,
989         UINT* pctinfo);
990
991     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
992         IVLCInput* This,
993         UINT iTInfo,
994         LCID lcid,
995         ITypeInfo** ppTInfo);
996
997     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
998         IVLCInput* This,
999         REFIID riid,
1000         LPOLESTR* rgszNames,
1001         UINT cNames,
1002         LCID lcid,
1003         DISPID* rgDispId);
1004
1005     HRESULT (STDMETHODCALLTYPE *Invoke)(
1006         IVLCInput* This,
1007         DISPID dispIdMember,
1008         REFIID riid,
1009         LCID lcid,
1010         WORD wFlags,
1011         DISPPARAMS* pDispParams,
1012         VARIANT* pVarResult,
1013         EXCEPINFO* pExcepInfo,
1014         UINT* puArgErr);
1015
1016     /*** IVLCInput methods ***/
1017     HRESULT (STDMETHODCALLTYPE *get_length)(
1018         IVLCInput* This,
1019         __int64* length);
1020
1021     HRESULT (STDMETHODCALLTYPE *get_position)(
1022         IVLCInput* This,
1023         float* position);
1024
1025     HRESULT (STDMETHODCALLTYPE *put_position)(
1026         IVLCInput* This,
1027         float position);
1028
1029     HRESULT (STDMETHODCALLTYPE *get_time)(
1030         IVLCInput* This,
1031         __int64* time);
1032
1033     HRESULT (STDMETHODCALLTYPE *put_time)(
1034         IVLCInput* This,
1035         __int64 time);
1036
1037     HRESULT (STDMETHODCALLTYPE *get_state)(
1038         IVLCInput* This,
1039         int* state);
1040
1041     HRESULT (STDMETHODCALLTYPE *get_rate)(
1042         IVLCInput* This,
1043         float* rate);
1044
1045     HRESULT (STDMETHODCALLTYPE *put_rate)(
1046         IVLCInput* This,
1047         float rate);
1048
1049     HRESULT (STDMETHODCALLTYPE *get_fps)(
1050         IVLCInput* This,
1051         float* fps);
1052
1053     HRESULT (STDMETHODCALLTYPE *get_hasVout)(
1054         IVLCInput* This,
1055         VARIANT_BOOL* hasVout);
1056
1057     END_INTERFACE
1058 } IVLCInputVtbl;
1059 interface IVLCInput {
1060     const IVLCInputVtbl* lpVtbl;
1061 };
1062
1063 #ifdef COBJMACROS
1064 /*** IUnknown methods ***/
1065 #define IVLCInput_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1066 #define IVLCInput_AddRef(p) (p)->lpVtbl->AddRef(p)
1067 #define IVLCInput_Release(p) (p)->lpVtbl->Release(p)
1068 /*** IDispatch methods ***/
1069 #define IVLCInput_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
1070 #define IVLCInput_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
1071 #define IVLCInput_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
1072 #define IVLCInput_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
1073 /*** IVLCInput methods ***/
1074 #define IVLCInput_get_length(p,a) (p)->lpVtbl->get_length(p,a)
1075 #define IVLCInput_get_position(p,a) (p)->lpVtbl->get_position(p,a)
1076 #define IVLCInput_put_position(p,a) (p)->lpVtbl->put_position(p,a)
1077 #define IVLCInput_get_time(p,a) (p)->lpVtbl->get_time(p,a)
1078 #define IVLCInput_put_time(p,a) (p)->lpVtbl->put_time(p,a)
1079 #define IVLCInput_get_state(p,a) (p)->lpVtbl->get_state(p,a)
1080 #define IVLCInput_get_rate(p,a) (p)->lpVtbl->get_rate(p,a)
1081 #define IVLCInput_put_rate(p,a) (p)->lpVtbl->put_rate(p,a)
1082 #define IVLCInput_get_fps(p,a) (p)->lpVtbl->get_fps(p,a)
1083 #define IVLCInput_get_hasVout(p,a) (p)->lpVtbl->get_hasVout(p,a)
1084 #endif
1085
1086 #endif
1087
1088 HRESULT CALLBACK IVLCInput_get_length_Proxy(
1089     IVLCInput* This,
1090     __int64* length);
1091 void __RPC_STUB IVLCInput_get_length_Stub(
1092     IRpcStubBuffer* This,
1093     IRpcChannelBuffer* pRpcChannelBuffer,
1094     PRPC_MESSAGE pRpcMessage,
1095     DWORD* pdwStubPhase);
1096 HRESULT CALLBACK IVLCInput_get_position_Proxy(
1097     IVLCInput* This,
1098     float* position);
1099 void __RPC_STUB IVLCInput_get_position_Stub(
1100     IRpcStubBuffer* This,
1101     IRpcChannelBuffer* pRpcChannelBuffer,
1102     PRPC_MESSAGE pRpcMessage,
1103     DWORD* pdwStubPhase);
1104 HRESULT CALLBACK IVLCInput_put_position_Proxy(
1105     IVLCInput* This,
1106     float position);
1107 void __RPC_STUB IVLCInput_put_position_Stub(
1108     IRpcStubBuffer* This,
1109     IRpcChannelBuffer* pRpcChannelBuffer,
1110     PRPC_MESSAGE pRpcMessage,
1111     DWORD* pdwStubPhase);
1112 HRESULT CALLBACK IVLCInput_get_time_Proxy(
1113     IVLCInput* This,
1114     __int64* time);
1115 void __RPC_STUB IVLCInput_get_time_Stub(
1116     IRpcStubBuffer* This,
1117     IRpcChannelBuffer* pRpcChannelBuffer,
1118     PRPC_MESSAGE pRpcMessage,
1119     DWORD* pdwStubPhase);
1120 HRESULT CALLBACK IVLCInput_put_time_Proxy(
1121     IVLCInput* This,
1122     __int64 time);
1123 void __RPC_STUB IVLCInput_put_time_Stub(
1124     IRpcStubBuffer* This,
1125     IRpcChannelBuffer* pRpcChannelBuffer,
1126     PRPC_MESSAGE pRpcMessage,
1127     DWORD* pdwStubPhase);
1128 HRESULT CALLBACK IVLCInput_get_state_Proxy(
1129     IVLCInput* This,
1130     int* state);
1131 void __RPC_STUB IVLCInput_get_state_Stub(
1132     IRpcStubBuffer* This,
1133     IRpcChannelBuffer* pRpcChannelBuffer,
1134     PRPC_MESSAGE pRpcMessage,
1135     DWORD* pdwStubPhase);
1136 HRESULT CALLBACK IVLCInput_get_rate_Proxy(
1137     IVLCInput* This,
1138     float* rate);
1139 void __RPC_STUB IVLCInput_get_rate_Stub(
1140     IRpcStubBuffer* This,
1141     IRpcChannelBuffer* pRpcChannelBuffer,
1142     PRPC_MESSAGE pRpcMessage,
1143     DWORD* pdwStubPhase);
1144 HRESULT CALLBACK IVLCInput_put_rate_Proxy(
1145     IVLCInput* This,
1146     float rate);
1147 void __RPC_STUB IVLCInput_put_rate_Stub(
1148     IRpcStubBuffer* This,
1149     IRpcChannelBuffer* pRpcChannelBuffer,
1150     PRPC_MESSAGE pRpcMessage,
1151     DWORD* pdwStubPhase);
1152 HRESULT CALLBACK IVLCInput_get_fps_Proxy(
1153     IVLCInput* This,
1154     float* fps);
1155 void __RPC_STUB IVLCInput_get_fps_Stub(
1156     IRpcStubBuffer* This,
1157     IRpcChannelBuffer* pRpcChannelBuffer,
1158     PRPC_MESSAGE pRpcMessage,
1159     DWORD* pdwStubPhase);
1160 HRESULT CALLBACK IVLCInput_get_hasVout_Proxy(
1161     IVLCInput* This,
1162     VARIANT_BOOL* hasVout);
1163 void __RPC_STUB IVLCInput_get_hasVout_Stub(
1164     IRpcStubBuffer* This,
1165     IRpcChannelBuffer* pRpcChannelBuffer,
1166     PRPC_MESSAGE pRpcMessage,
1167     DWORD* pdwStubPhase);
1168
1169 #endif  /* __IVLCInput_INTERFACE_DEFINED__ */
1170
1171 /*****************************************************************************
1172  * IVLCPlaylist interface
1173  */
1174 #ifndef __IVLCPlaylist_INTERFACE_DEFINED__
1175 #define __IVLCPlaylist_INTERFACE_DEFINED__
1176
1177 DEFINE_GUID(IID_IVLCPlaylist, 0x54613049, 0x40bf, 0x4035, 0x9e,0x70, 0x0a,0x93,0x12,0xc0,0x18,0x8d);
1178 #if defined(__cplusplus) && !defined(CINTERFACE)
1179 interface IVLCPlaylist : public IDispatch
1180 {
1181     virtual HRESULT STDMETHODCALLTYPE get_itemCount(
1182         int* count) = 0;
1183
1184     virtual HRESULT STDMETHODCALLTYPE get_isPlaying(
1185         VARIANT_BOOL* playing) = 0;
1186
1187     virtual HRESULT STDMETHODCALLTYPE add(
1188         BSTR uri,
1189         VARIANT name,
1190         VARIANT options,
1191         int* item) = 0;
1192
1193     virtual HRESULT STDMETHODCALLTYPE play(
1194         ) = 0;
1195
1196     virtual HRESULT STDMETHODCALLTYPE playItem(
1197         int item) = 0;
1198
1199     virtual HRESULT STDMETHODCALLTYPE togglePause(
1200         ) = 0;
1201
1202     virtual HRESULT STDMETHODCALLTYPE stop(
1203         ) = 0;
1204
1205     virtual HRESULT STDMETHODCALLTYPE next(
1206         ) = 0;
1207
1208     virtual HRESULT STDMETHODCALLTYPE prev(
1209         ) = 0;
1210
1211     virtual HRESULT STDMETHODCALLTYPE clear(
1212         ) = 0;
1213
1214     virtual HRESULT STDMETHODCALLTYPE removeItem(
1215         int item) = 0;
1216
1217 };
1218 #else
1219 typedef struct IVLCPlaylistVtbl {
1220     BEGIN_INTERFACE
1221
1222     /*** IUnknown methods ***/
1223     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1224         IVLCPlaylist* This,
1225         REFIID riid,
1226         void** ppvObject);
1227
1228     ULONG (STDMETHODCALLTYPE *AddRef)(
1229         IVLCPlaylist* This);
1230
1231     ULONG (STDMETHODCALLTYPE *Release)(
1232         IVLCPlaylist* This);
1233
1234     /*** IDispatch methods ***/
1235     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1236         IVLCPlaylist* This,
1237         UINT* pctinfo);
1238
1239     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1240         IVLCPlaylist* This,
1241         UINT iTInfo,
1242         LCID lcid,
1243         ITypeInfo** ppTInfo);
1244
1245     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1246         IVLCPlaylist* This,
1247         REFIID riid,
1248         LPOLESTR* rgszNames,
1249         UINT cNames,
1250         LCID lcid,
1251         DISPID* rgDispId);
1252
1253     HRESULT (STDMETHODCALLTYPE *Invoke)(
1254         IVLCPlaylist* This,
1255         DISPID dispIdMember,
1256         REFIID riid,
1257         LCID lcid,
1258         WORD wFlags,
1259         DISPPARAMS* pDispParams,
1260         VARIANT* pVarResult,
1261         EXCEPINFO* pExcepInfo,
1262         UINT* puArgErr);
1263
1264     /*** IVLCPlaylist methods ***/
1265     HRESULT (STDMETHODCALLTYPE *get_itemCount)(
1266         IVLCPlaylist* This,
1267         int* count);
1268
1269     HRESULT (STDMETHODCALLTYPE *get_isPlaying)(
1270         IVLCPlaylist* This,
1271         VARIANT_BOOL* playing);
1272
1273     HRESULT (STDMETHODCALLTYPE *add)(
1274         IVLCPlaylist* This,
1275         BSTR uri,
1276         VARIANT name,
1277         VARIANT options,
1278         int* item);
1279
1280     HRESULT (STDMETHODCALLTYPE *play)(
1281         IVLCPlaylist* This);
1282
1283     HRESULT (STDMETHODCALLTYPE *playItem)(
1284         IVLCPlaylist* This,
1285         int item);
1286
1287     HRESULT (STDMETHODCALLTYPE *togglePause)(
1288         IVLCPlaylist* This);
1289
1290     HRESULT (STDMETHODCALLTYPE *stop)(
1291         IVLCPlaylist* This);
1292
1293     HRESULT (STDMETHODCALLTYPE *next)(
1294         IVLCPlaylist* This);
1295
1296     HRESULT (STDMETHODCALLTYPE *prev)(
1297         IVLCPlaylist* This);
1298
1299     HRESULT (STDMETHODCALLTYPE *clear)(
1300         IVLCPlaylist* This);
1301
1302     HRESULT (STDMETHODCALLTYPE *removeItem)(
1303         IVLCPlaylist* This,
1304         int item);
1305
1306     END_INTERFACE
1307 } IVLCPlaylistVtbl;
1308 interface IVLCPlaylist {
1309     const IVLCPlaylistVtbl* lpVtbl;
1310 };
1311
1312 #ifdef COBJMACROS
1313 /*** IUnknown methods ***/
1314 #define IVLCPlaylist_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1315 #define IVLCPlaylist_AddRef(p) (p)->lpVtbl->AddRef(p)
1316 #define IVLCPlaylist_Release(p) (p)->lpVtbl->Release(p)
1317 /*** IDispatch methods ***/
1318 #define IVLCPlaylist_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
1319 #define IVLCPlaylist_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
1320 #define IVLCPlaylist_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
1321 #define IVLCPlaylist_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
1322 /*** IVLCPlaylist methods ***/
1323 #define IVLCPlaylist_get_itemCount(p,a) (p)->lpVtbl->get_itemCount(p,a)
1324 #define IVLCPlaylist_get_isPlaying(p,a) (p)->lpVtbl->get_isPlaying(p,a)
1325 #define IVLCPlaylist_add(p,a,b,c,d) (p)->lpVtbl->add(p,a,b,c,d)
1326 #define IVLCPlaylist_play(p) (p)->lpVtbl->play(p)
1327 #define IVLCPlaylist_playItem(p,a) (p)->lpVtbl->playItem(p,a)
1328 #define IVLCPlaylist_togglePause(p) (p)->lpVtbl->togglePause(p)
1329 #define IVLCPlaylist_stop(p) (p)->lpVtbl->stop(p)
1330 #define IVLCPlaylist_next(p) (p)->lpVtbl->next(p)
1331 #define IVLCPlaylist_prev(p) (p)->lpVtbl->prev(p)
1332 #define IVLCPlaylist_clear(p) (p)->lpVtbl->clear(p)
1333 #define IVLCPlaylist_removeItem(p,a) (p)->lpVtbl->removeItem(p,a)
1334 #endif
1335
1336 #endif
1337
1338 HRESULT CALLBACK IVLCPlaylist_get_itemCount_Proxy(
1339     IVLCPlaylist* This,
1340     int* count);
1341 void __RPC_STUB IVLCPlaylist_get_itemCount_Stub(
1342     IRpcStubBuffer* This,
1343     IRpcChannelBuffer* pRpcChannelBuffer,
1344     PRPC_MESSAGE pRpcMessage,
1345     DWORD* pdwStubPhase);
1346 HRESULT CALLBACK IVLCPlaylist_get_isPlaying_Proxy(
1347     IVLCPlaylist* This,
1348     VARIANT_BOOL* playing);
1349 void __RPC_STUB IVLCPlaylist_get_isPlaying_Stub(
1350     IRpcStubBuffer* This,
1351     IRpcChannelBuffer* pRpcChannelBuffer,
1352     PRPC_MESSAGE pRpcMessage,
1353     DWORD* pdwStubPhase);
1354 HRESULT CALLBACK IVLCPlaylist_add_Proxy(
1355     IVLCPlaylist* This,
1356     BSTR uri,
1357     VARIANT name,
1358     VARIANT options,
1359     int* item);
1360 void __RPC_STUB IVLCPlaylist_add_Stub(
1361     IRpcStubBuffer* This,
1362     IRpcChannelBuffer* pRpcChannelBuffer,
1363     PRPC_MESSAGE pRpcMessage,
1364     DWORD* pdwStubPhase);
1365 HRESULT CALLBACK IVLCPlaylist_play_Proxy(
1366     IVLCPlaylist* This);
1367 void __RPC_STUB IVLCPlaylist_play_Stub(
1368     IRpcStubBuffer* This,
1369     IRpcChannelBuffer* pRpcChannelBuffer,
1370     PRPC_MESSAGE pRpcMessage,
1371     DWORD* pdwStubPhase);
1372 HRESULT CALLBACK IVLCPlaylist_playItem_Proxy(
1373     IVLCPlaylist* This,
1374     int item);
1375 void __RPC_STUB IVLCPlaylist_playItem_Stub(
1376     IRpcStubBuffer* This,
1377     IRpcChannelBuffer* pRpcChannelBuffer,
1378     PRPC_MESSAGE pRpcMessage,
1379     DWORD* pdwStubPhase);
1380 HRESULT CALLBACK IVLCPlaylist_togglePause_Proxy(
1381     IVLCPlaylist* This);
1382 void __RPC_STUB IVLCPlaylist_togglePause_Stub(
1383     IRpcStubBuffer* This,
1384     IRpcChannelBuffer* pRpcChannelBuffer,
1385     PRPC_MESSAGE pRpcMessage,
1386     DWORD* pdwStubPhase);
1387 HRESULT CALLBACK IVLCPlaylist_stop_Proxy(
1388     IVLCPlaylist* This);
1389 void __RPC_STUB IVLCPlaylist_stop_Stub(
1390     IRpcStubBuffer* This,
1391     IRpcChannelBuffer* pRpcChannelBuffer,
1392     PRPC_MESSAGE pRpcMessage,
1393     DWORD* pdwStubPhase);
1394 HRESULT CALLBACK IVLCPlaylist_next_Proxy(
1395     IVLCPlaylist* This);
1396 void __RPC_STUB IVLCPlaylist_next_Stub(
1397     IRpcStubBuffer* This,
1398     IRpcChannelBuffer* pRpcChannelBuffer,
1399     PRPC_MESSAGE pRpcMessage,
1400     DWORD* pdwStubPhase);
1401 HRESULT CALLBACK IVLCPlaylist_prev_Proxy(
1402     IVLCPlaylist* This);
1403 void __RPC_STUB IVLCPlaylist_prev_Stub(
1404     IRpcStubBuffer* This,
1405     IRpcChannelBuffer* pRpcChannelBuffer,
1406     PRPC_MESSAGE pRpcMessage,
1407     DWORD* pdwStubPhase);
1408 HRESULT CALLBACK IVLCPlaylist_clear_Proxy(
1409     IVLCPlaylist* This);
1410 void __RPC_STUB IVLCPlaylist_clear_Stub(
1411     IRpcStubBuffer* This,
1412     IRpcChannelBuffer* pRpcChannelBuffer,
1413     PRPC_MESSAGE pRpcMessage,
1414     DWORD* pdwStubPhase);
1415 HRESULT CALLBACK IVLCPlaylist_removeItem_Proxy(
1416     IVLCPlaylist* This,
1417     int item);
1418 void __RPC_STUB IVLCPlaylist_removeItem_Stub(
1419     IRpcStubBuffer* This,
1420     IRpcChannelBuffer* pRpcChannelBuffer,
1421     PRPC_MESSAGE pRpcMessage,
1422     DWORD* pdwStubPhase);
1423
1424 #endif  /* __IVLCPlaylist_INTERFACE_DEFINED__ */
1425
1426 /*****************************************************************************
1427  * IVLCVideo interface
1428  */
1429 #ifndef __IVLCVideo_INTERFACE_DEFINED__
1430 #define __IVLCVideo_INTERFACE_DEFINED__
1431
1432 DEFINE_GUID(IID_IVLCVideo, 0x0aaedf0b, 0xd333, 0x4b27, 0xa0,0xc6, 0xbb,0xf3,0x14,0x13,0xa4,0x2e);
1433 #if defined(__cplusplus) && !defined(CINTERFACE)
1434 interface IVLCVideo : public IDispatch
1435 {
1436     virtual HRESULT STDMETHODCALLTYPE get_fullscreen(
1437         VARIANT_BOOL* fullscreen) = 0;
1438
1439     virtual HRESULT STDMETHODCALLTYPE put_fullscreen(
1440         VARIANT_BOOL fullscreen) = 0;
1441
1442     virtual HRESULT STDMETHODCALLTYPE get_width(
1443         int* width) = 0;
1444
1445     virtual HRESULT STDMETHODCALLTYPE get_height(
1446         int* height) = 0;
1447
1448 };
1449 #else
1450 typedef struct IVLCVideoVtbl {
1451     BEGIN_INTERFACE
1452
1453     /*** IUnknown methods ***/
1454     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1455         IVLCVideo* This,
1456         REFIID riid,
1457         void** ppvObject);
1458
1459     ULONG (STDMETHODCALLTYPE *AddRef)(
1460         IVLCVideo* This);
1461
1462     ULONG (STDMETHODCALLTYPE *Release)(
1463         IVLCVideo* This);
1464
1465     /*** IDispatch methods ***/
1466     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1467         IVLCVideo* This,
1468         UINT* pctinfo);
1469
1470     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1471         IVLCVideo* This,
1472         UINT iTInfo,
1473         LCID lcid,
1474         ITypeInfo** ppTInfo);
1475
1476     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1477         IVLCVideo* This,
1478         REFIID riid,
1479         LPOLESTR* rgszNames,
1480         UINT cNames,
1481         LCID lcid,
1482         DISPID* rgDispId);
1483
1484     HRESULT (STDMETHODCALLTYPE *Invoke)(
1485         IVLCVideo* This,
1486         DISPID dispIdMember,
1487         REFIID riid,
1488         LCID lcid,
1489         WORD wFlags,
1490         DISPPARAMS* pDispParams,
1491         VARIANT* pVarResult,
1492         EXCEPINFO* pExcepInfo,
1493         UINT* puArgErr);
1494
1495     /*** IVLCVideo methods ***/
1496     HRESULT (STDMETHODCALLTYPE *get_fullscreen)(
1497         IVLCVideo* This,
1498         VARIANT_BOOL* fullscreen);
1499
1500     HRESULT (STDMETHODCALLTYPE *put_fullscreen)(
1501         IVLCVideo* This,
1502         VARIANT_BOOL fullscreen);
1503
1504     HRESULT (STDMETHODCALLTYPE *get_width)(
1505         IVLCVideo* This,
1506         int* width);
1507
1508     HRESULT (STDMETHODCALLTYPE *get_height)(
1509         IVLCVideo* This,
1510         int* height);
1511
1512     END_INTERFACE
1513 } IVLCVideoVtbl;
1514 interface IVLCVideo {
1515     const IVLCVideoVtbl* lpVtbl;
1516 };
1517
1518 #ifdef COBJMACROS
1519 /*** IUnknown methods ***/
1520 #define IVLCVideo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1521 #define IVLCVideo_AddRef(p) (p)->lpVtbl->AddRef(p)
1522 #define IVLCVideo_Release(p) (p)->lpVtbl->Release(p)
1523 /*** IDispatch methods ***/
1524 #define IVLCVideo_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
1525 #define IVLCVideo_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
1526 #define IVLCVideo_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
1527 #define IVLCVideo_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
1528 /*** IVLCVideo methods ***/
1529 #define IVLCVideo_get_fullscreen(p,a) (p)->lpVtbl->get_fullscreen(p,a)
1530 #define IVLCVideo_put_fullscreen(p,a) (p)->lpVtbl->put_fullscreen(p,a)
1531 #define IVLCVideo_get_width(p,a) (p)->lpVtbl->get_width(p,a)
1532 #define IVLCVideo_get_height(p,a) (p)->lpVtbl->get_height(p,a)
1533 #endif
1534
1535 #endif
1536
1537 HRESULT CALLBACK IVLCVideo_get_fullscreen_Proxy(
1538     IVLCVideo* This,
1539     VARIANT_BOOL* fullscreen);
1540 void __RPC_STUB IVLCVideo_get_fullscreen_Stub(
1541     IRpcStubBuffer* This,
1542     IRpcChannelBuffer* pRpcChannelBuffer,
1543     PRPC_MESSAGE pRpcMessage,
1544     DWORD* pdwStubPhase);
1545 HRESULT CALLBACK IVLCVideo_put_fullscreen_Proxy(
1546     IVLCVideo* This,
1547     VARIANT_BOOL fullscreen);
1548 void __RPC_STUB IVLCVideo_put_fullscreen_Stub(
1549     IRpcStubBuffer* This,
1550     IRpcChannelBuffer* pRpcChannelBuffer,
1551     PRPC_MESSAGE pRpcMessage,
1552     DWORD* pdwStubPhase);
1553 HRESULT CALLBACK IVLCVideo_get_width_Proxy(
1554     IVLCVideo* This,
1555     int* width);
1556 void __RPC_STUB IVLCVideo_get_width_Stub(
1557     IRpcStubBuffer* This,
1558     IRpcChannelBuffer* pRpcChannelBuffer,
1559     PRPC_MESSAGE pRpcMessage,
1560     DWORD* pdwStubPhase);
1561 HRESULT CALLBACK IVLCVideo_get_height_Proxy(
1562     IVLCVideo* This,
1563     int* height);
1564 void __RPC_STUB IVLCVideo_get_height_Stub(
1565     IRpcStubBuffer* This,
1566     IRpcChannelBuffer* pRpcChannelBuffer,
1567     PRPC_MESSAGE pRpcMessage,
1568     DWORD* pdwStubPhase);
1569
1570 #endif  /* __IVLCVideo_INTERFACE_DEFINED__ */
1571
1572 /*****************************************************************************
1573  * IVLCControl2 interface
1574  */
1575 #ifndef __IVLCControl2_INTERFACE_DEFINED__
1576 #define __IVLCControl2_INTERFACE_DEFINED__
1577
1578 DEFINE_GUID(IID_IVLCControl2, 0x2d719729, 0x5333, 0x406c, 0xbf,0x12, 0x8d,0xe7,0x87,0xfd,0x65,0xe3);
1579 #if defined(__cplusplus) && !defined(CINTERFACE)
1580 interface IVLCControl2 : public IDispatch
1581 {
1582     virtual HRESULT STDMETHODCALLTYPE get_audio(
1583         IVLCAudio** obj) = 0;
1584
1585     virtual HRESULT STDMETHODCALLTYPE get_input(
1586         IVLCInput** obj) = 0;
1587
1588     virtual HRESULT STDMETHODCALLTYPE get_playlist(
1589         IVLCPlaylist** obj) = 0;
1590
1591     virtual HRESULT STDMETHODCALLTYPE get_video(
1592         IVLCVideo** obj) = 0;
1593
1594 };
1595 #else
1596 typedef struct IVLCControl2Vtbl {
1597     BEGIN_INTERFACE
1598
1599     /*** IUnknown methods ***/
1600     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1601         IVLCControl2* This,
1602         REFIID riid,
1603         void** ppvObject);
1604
1605     ULONG (STDMETHODCALLTYPE *AddRef)(
1606         IVLCControl2* This);
1607
1608     ULONG (STDMETHODCALLTYPE *Release)(
1609         IVLCControl2* This);
1610
1611     /*** IDispatch methods ***/
1612     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1613         IVLCControl2* This,
1614         UINT* pctinfo);
1615
1616     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1617         IVLCControl2* This,
1618         UINT iTInfo,
1619         LCID lcid,
1620         ITypeInfo** ppTInfo);
1621
1622     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1623         IVLCControl2* This,
1624         REFIID riid,
1625         LPOLESTR* rgszNames,
1626         UINT cNames,
1627         LCID lcid,
1628         DISPID* rgDispId);
1629
1630     HRESULT (STDMETHODCALLTYPE *Invoke)(
1631         IVLCControl2* This,
1632         DISPID dispIdMember,
1633         REFIID riid,
1634         LCID lcid,
1635         WORD wFlags,
1636         DISPPARAMS* pDispParams,
1637         VARIANT* pVarResult,
1638         EXCEPINFO* pExcepInfo,
1639         UINT* puArgErr);
1640
1641     /*** IVLCControl2 methods ***/
1642     HRESULT (STDMETHODCALLTYPE *get_audio)(
1643         IVLCControl2* This,
1644         IVLCAudio** obj);
1645
1646     HRESULT (STDMETHODCALLTYPE *get_input)(
1647         IVLCControl2* This,
1648         IVLCInput** obj);
1649
1650     HRESULT (STDMETHODCALLTYPE *get_playlist)(
1651         IVLCControl2* This,
1652         IVLCPlaylist** obj);
1653
1654     HRESULT (STDMETHODCALLTYPE *get_video)(
1655         IVLCControl2* This,
1656         IVLCVideo** obj);
1657
1658     END_INTERFACE
1659 } IVLCControl2Vtbl;
1660 interface IVLCControl2 {
1661     const IVLCControl2Vtbl* lpVtbl;
1662 };
1663
1664 #ifdef COBJMACROS
1665 /*** IUnknown methods ***/
1666 #define IVLCControl2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1667 #define IVLCControl2_AddRef(p) (p)->lpVtbl->AddRef(p)
1668 #define IVLCControl2_Release(p) (p)->lpVtbl->Release(p)
1669 /*** IDispatch methods ***/
1670 #define IVLCControl2_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
1671 #define IVLCControl2_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
1672 #define IVLCControl2_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
1673 #define IVLCControl2_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
1674 /*** IVLCControl2 methods ***/
1675 #define IVLCControl2_get_audio(p,a) (p)->lpVtbl->get_audio(p,a)
1676 #define IVLCControl2_get_input(p,a) (p)->lpVtbl->get_input(p,a)
1677 #define IVLCControl2_get_playlist(p,a) (p)->lpVtbl->get_playlist(p,a)
1678 #define IVLCControl2_get_video(p,a) (p)->lpVtbl->get_video(p,a)
1679 #endif
1680
1681 #endif
1682
1683 HRESULT CALLBACK IVLCControl2_get_audio_Proxy(
1684     IVLCControl2* This,
1685     IVLCAudio** obj);
1686 void __RPC_STUB IVLCControl2_get_audio_Stub(
1687     IRpcStubBuffer* This,
1688     IRpcChannelBuffer* pRpcChannelBuffer,
1689     PRPC_MESSAGE pRpcMessage,
1690     DWORD* pdwStubPhase);
1691 HRESULT CALLBACK IVLCControl2_get_input_Proxy(
1692     IVLCControl2* This,
1693     IVLCInput** obj);
1694 void __RPC_STUB IVLCControl2_get_input_Stub(
1695     IRpcStubBuffer* This,
1696     IRpcChannelBuffer* pRpcChannelBuffer,
1697     PRPC_MESSAGE pRpcMessage,
1698     DWORD* pdwStubPhase);
1699 HRESULT CALLBACK IVLCControl2_get_playlist_Proxy(
1700     IVLCControl2* This,
1701     IVLCPlaylist** obj);
1702 void __RPC_STUB IVLCControl2_get_playlist_Stub(
1703     IRpcStubBuffer* This,
1704     IRpcChannelBuffer* pRpcChannelBuffer,
1705     PRPC_MESSAGE pRpcMessage,
1706     DWORD* pdwStubPhase);
1707 HRESULT CALLBACK IVLCControl2_get_video_Proxy(
1708     IVLCControl2* This,
1709     IVLCVideo** obj);
1710 void __RPC_STUB IVLCControl2_get_video_Stub(
1711     IRpcStubBuffer* This,
1712     IRpcChannelBuffer* pRpcChannelBuffer,
1713     PRPC_MESSAGE pRpcMessage,
1714     DWORD* pdwStubPhase);
1715
1716 #endif  /* __IVLCControl2_INTERFACE_DEFINED__ */
1717
1718 /*****************************************************************************
1719  * VLCPlugin coclass
1720  */
1721
1722 DEFINE_GUID(CLSID_VLCPlugin, 0xe23fe9c6, 0x778e, 0x49d4, 0xb5,0x37, 0x38,0xfc,0xde,0x48,0x87,0xd8);
1723
1724 #ifndef __VLCPlugin_FWD_DEFINED__
1725 #define __VLCPlugin_FWD_DEFINED__
1726 typedef struct VLCPlugin VLCPlugin;
1727 #endif /* defined __VLCPlugin_FWD_DEFINED__ */
1728
1729 /*****************************************************************************
1730  * VLCPlugin2 coclass
1731  */
1732
1733 DEFINE_GUID(CLSID_VLCPlugin2, 0x9be31822, 0xfdad, 0x461b, 0xad,0x51, 0xbe,0x1d,0x1c,0x15,0x99,0x21);
1734
1735 #ifndef __VLCPlugin2_FWD_DEFINED__
1736 #define __VLCPlugin2_FWD_DEFINED__
1737 typedef struct VLCPlugin2 VLCPlugin2;
1738 #endif /* defined __VLCPlugin2_FWD_DEFINED__ */
1739
1740 /* Begin additional prototypes for all interfaces */
1741
1742 unsigned long   __RPC_USER VARIANT_UserSize     (unsigned long *, unsigned long,   VARIANT *);
1743 unsigned char * __RPC_USER VARIANT_UserMarshal  (unsigned long *, unsigned char *, VARIANT *);
1744 unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT *);
1745 void            __RPC_USER VARIANT_UserFree     (unsigned long *, VARIANT *);
1746 unsigned long   __RPC_USER BSTR_UserSize     (unsigned long *, unsigned long,   BSTR *);
1747 unsigned char * __RPC_USER BSTR_UserMarshal  (unsigned long *, unsigned char *, BSTR *);
1748 unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR *);
1749 void            __RPC_USER BSTR_UserFree     (unsigned long *, BSTR *);
1750
1751 /* End additional prototypes */
1752
1753 #ifdef __cplusplus
1754 }
1755 #endif
1756 #endif /* __WIDL_AXVLC_IDL_H */