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