source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/wiavideo.h@ 1167

Last change on this file since 1167 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 10.1 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef __REQUIRED_RPCNDR_H_VERSION__
7#define __REQUIRED_RPCNDR_H_VERSION__ 475
8#endif
9
10#include "rpc.h"
11#include "rpcndr.h"
12
13#ifndef __RPCNDR_H_VERSION__
14#error This stub requires an updated version of <rpcndr.h>
15#endif
16
17#ifndef COM_NO_WINDOWS_H
18#include "windows.h"
19#include "ole2.h"
20#endif
21
22#ifndef __wiavideo_h__
23#define __wiavideo_h__
24
25#ifndef __IWiaVideo_FWD_DEFINED__
26#define __IWiaVideo_FWD_DEFINED__
27typedef struct IWiaVideo IWiaVideo;
28#endif
29
30#ifndef __WiaVideo_FWD_DEFINED__
31#define __WiaVideo_FWD_DEFINED__
32#ifdef __cplusplus
33typedef class WiaVideo WiaVideo;
34#else
35typedef struct WiaVideo WiaVideo;
36#endif
37#endif
38
39#include "oaidl.h"
40#include "ocidl.h"
41
42#ifdef __cplusplus
43extern "C" {
44#endif
45
46#ifndef __MIDL_user_allocate_free_DEFINED__
47#define __MIDL_user_allocate_free_DEFINED__
48 void *__RPC_API MIDL_user_allocate(size_t);
49 void __RPC_API MIDL_user_free(void *);
50#endif
51
52 typedef enum __MIDL___MIDL_itf_wiavideo_0000_0001 {
53 WIAVIDEO_NO_VIDEO = 1,WIAVIDEO_CREATING_VIDEO = 2,WIAVIDEO_VIDEO_CREATED = 3,WIAVIDEO_VIDEO_PLAYING = 4,WIAVIDEO_VIDEO_PAUSED = 5,
54 WIAVIDEO_DESTROYING_VIDEO = 6
55 } WIAVIDEO_STATE;
56
57 extern RPC_IF_HANDLE __MIDL_itf_wiavideo_0000_v0_0_c_ifspec;
58 extern RPC_IF_HANDLE __MIDL_itf_wiavideo_0000_v0_0_s_ifspec;
59#ifndef __IWiaVideo_INTERFACE_DEFINED__
60#define __IWiaVideo_INTERFACE_DEFINED__
61 EXTERN_C const IID IID_IWiaVideo;
62#if defined(__cplusplus) && !defined(CINTERFACE)
63 struct IWiaVideo : public IUnknown {
64 public:
65 virtual HRESULT WINAPI get_PreviewVisible(WINBOOL *pbPreviewVisible) = 0;
66 virtual HRESULT WINAPI put_PreviewVisible(WINBOOL bPreviewVisible) = 0;
67 virtual HRESULT WINAPI get_ImagesDirectory(BSTR *pbstrImageDirectory) = 0;
68 virtual HRESULT WINAPI put_ImagesDirectory(BSTR bstrImageDirectory) = 0;
69 virtual HRESULT WINAPI CreateVideoByWiaDevID(BSTR bstrWiaDeviceID,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback) = 0;
70 virtual HRESULT WINAPI CreateVideoByDevNum(UINT uiDeviceNumber,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback) = 0;
71 virtual HRESULT WINAPI CreateVideoByName(BSTR bstrFriendlyName,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback) = 0;
72 virtual HRESULT WINAPI DestroyVideo(void) = 0;
73 virtual HRESULT WINAPI Play(void) = 0;
74 virtual HRESULT WINAPI Pause(void) = 0;
75 virtual HRESULT WINAPI TakePicture(BSTR *pbstrNewImageFilename) = 0;
76 virtual HRESULT WINAPI ResizeVideo(WINBOOL bStretchToFitParent) = 0;
77 virtual HRESULT WINAPI GetCurrentState(WIAVIDEO_STATE *pState) = 0;
78 };
79#else
80 typedef struct IWiaVideoVtbl {
81 BEGIN_INTERFACE
82 HRESULT (WINAPI *QueryInterface)(IWiaVideo *This,REFIID riid,void **ppvObject);
83 ULONG (WINAPI *AddRef)(IWiaVideo *This);
84 ULONG (WINAPI *Release)(IWiaVideo *This);
85 HRESULT (WINAPI *get_PreviewVisible)(IWiaVideo *This,WINBOOL *pbPreviewVisible);
86 HRESULT (WINAPI *put_PreviewVisible)(IWiaVideo *This,WINBOOL bPreviewVisible);
87 HRESULT (WINAPI *get_ImagesDirectory)(IWiaVideo *This,BSTR *pbstrImageDirectory);
88 HRESULT (WINAPI *put_ImagesDirectory)(IWiaVideo *This,BSTR bstrImageDirectory);
89 HRESULT (WINAPI *CreateVideoByWiaDevID)(IWiaVideo *This,BSTR bstrWiaDeviceID,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback);
90 HRESULT (WINAPI *CreateVideoByDevNum)(IWiaVideo *This,UINT uiDeviceNumber,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback);
91 HRESULT (WINAPI *CreateVideoByName)(IWiaVideo *This,BSTR bstrFriendlyName,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback);
92 HRESULT (WINAPI *DestroyVideo)(IWiaVideo *This);
93 HRESULT (WINAPI *Play)(IWiaVideo *This);
94 HRESULT (WINAPI *Pause)(IWiaVideo *This);
95 HRESULT (WINAPI *TakePicture)(IWiaVideo *This,BSTR *pbstrNewImageFilename);
96 HRESULT (WINAPI *ResizeVideo)(IWiaVideo *This,WINBOOL bStretchToFitParent);
97 HRESULT (WINAPI *GetCurrentState)(IWiaVideo *This,WIAVIDEO_STATE *pState);
98 END_INTERFACE
99 } IWiaVideoVtbl;
100 struct IWiaVideo {
101 CONST_VTBL struct IWiaVideoVtbl *lpVtbl;
102 };
103#ifdef COBJMACROS
104#define IWiaVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
105#define IWiaVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
106#define IWiaVideo_Release(This) (This)->lpVtbl->Release(This)
107#define IWiaVideo_get_PreviewVisible(This,pbPreviewVisible) (This)->lpVtbl->get_PreviewVisible(This,pbPreviewVisible)
108#define IWiaVideo_put_PreviewVisible(This,bPreviewVisible) (This)->lpVtbl->put_PreviewVisible(This,bPreviewVisible)
109#define IWiaVideo_get_ImagesDirectory(This,pbstrImageDirectory) (This)->lpVtbl->get_ImagesDirectory(This,pbstrImageDirectory)
110#define IWiaVideo_put_ImagesDirectory(This,bstrImageDirectory) (This)->lpVtbl->put_ImagesDirectory(This,bstrImageDirectory)
111#define IWiaVideo_CreateVideoByWiaDevID(This,bstrWiaDeviceID,hwndParent,bStretchToFitParent,bAutoBeginPlayback) (This)->lpVtbl->CreateVideoByWiaDevID(This,bstrWiaDeviceID,hwndParent,bStretchToFitParent,bAutoBeginPlayback)
112#define IWiaVideo_CreateVideoByDevNum(This,uiDeviceNumber,hwndParent,bStretchToFitParent,bAutoBeginPlayback) (This)->lpVtbl->CreateVideoByDevNum(This,uiDeviceNumber,hwndParent,bStretchToFitParent,bAutoBeginPlayback)
113#define IWiaVideo_CreateVideoByName(This,bstrFriendlyName,hwndParent,bStretchToFitParent,bAutoBeginPlayback) (This)->lpVtbl->CreateVideoByName(This,bstrFriendlyName,hwndParent,bStretchToFitParent,bAutoBeginPlayback)
114#define IWiaVideo_DestroyVideo(This) (This)->lpVtbl->DestroyVideo(This)
115#define IWiaVideo_Play(This) (This)->lpVtbl->Play(This)
116#define IWiaVideo_Pause(This) (This)->lpVtbl->Pause(This)
117#define IWiaVideo_TakePicture(This,pbstrNewImageFilename) (This)->lpVtbl->TakePicture(This,pbstrNewImageFilename)
118#define IWiaVideo_ResizeVideo(This,bStretchToFitParent) (This)->lpVtbl->ResizeVideo(This,bStretchToFitParent)
119#define IWiaVideo_GetCurrentState(This,pState) (This)->lpVtbl->GetCurrentState(This,pState)
120#endif
121#endif
122 HRESULT WINAPI IWiaVideo_get_PreviewVisible_Proxy(IWiaVideo *This,WINBOOL *pbPreviewVisible);
123 void __RPC_STUB IWiaVideo_get_PreviewVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
124 HRESULT WINAPI IWiaVideo_put_PreviewVisible_Proxy(IWiaVideo *This,WINBOOL bPreviewVisible);
125 void __RPC_STUB IWiaVideo_put_PreviewVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
126 HRESULT WINAPI IWiaVideo_get_ImagesDirectory_Proxy(IWiaVideo *This,BSTR *pbstrImageDirectory);
127 void __RPC_STUB IWiaVideo_get_ImagesDirectory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
128 HRESULT WINAPI IWiaVideo_put_ImagesDirectory_Proxy(IWiaVideo *This,BSTR bstrImageDirectory);
129 void __RPC_STUB IWiaVideo_put_ImagesDirectory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
130 HRESULT WINAPI IWiaVideo_CreateVideoByWiaDevID_Proxy(IWiaVideo *This,BSTR bstrWiaDeviceID,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback);
131 void __RPC_STUB IWiaVideo_CreateVideoByWiaDevID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
132 HRESULT WINAPI IWiaVideo_CreateVideoByDevNum_Proxy(IWiaVideo *This,UINT uiDeviceNumber,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback);
133 void __RPC_STUB IWiaVideo_CreateVideoByDevNum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
134 HRESULT WINAPI IWiaVideo_CreateVideoByName_Proxy(IWiaVideo *This,BSTR bstrFriendlyName,HWND hwndParent,WINBOOL bStretchToFitParent,WINBOOL bAutoBeginPlayback);
135 void __RPC_STUB IWiaVideo_CreateVideoByName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
136 HRESULT WINAPI IWiaVideo_DestroyVideo_Proxy(IWiaVideo *This);
137 void __RPC_STUB IWiaVideo_DestroyVideo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
138 HRESULT WINAPI IWiaVideo_Play_Proxy(IWiaVideo *This);
139 void __RPC_STUB IWiaVideo_Play_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
140 HRESULT WINAPI IWiaVideo_Pause_Proxy(IWiaVideo *This);
141 void __RPC_STUB IWiaVideo_Pause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
142 HRESULT WINAPI IWiaVideo_TakePicture_Proxy(IWiaVideo *This,BSTR *pbstrNewImageFilename);
143 void __RPC_STUB IWiaVideo_TakePicture_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
144 HRESULT WINAPI IWiaVideo_ResizeVideo_Proxy(IWiaVideo *This,WINBOOL bStretchToFitParent);
145 void __RPC_STUB IWiaVideo_ResizeVideo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
146 HRESULT WINAPI IWiaVideo_GetCurrentState_Proxy(IWiaVideo *This,WIAVIDEO_STATE *pState);
147 void __RPC_STUB IWiaVideo_GetCurrentState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
148#endif
149
150#ifndef __WIAVIDEOLib_LIBRARY_DEFINED__
151#define __WIAVIDEOLib_LIBRARY_DEFINED__
152 EXTERN_C const IID LIBID_WIAVIDEOLib;
153 EXTERN_C const CLSID CLSID_WiaVideo;
154#ifdef __cplusplus
155 class WiaVideo;
156#endif
157#endif
158
159 ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
160 unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
161 unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
162 void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
163 ULONG __RPC_API HWND_UserSize(ULONG *,ULONG,HWND *);
164 unsigned char *__RPC_API HWND_UserMarshal(ULONG *,unsigned char *,HWND *);
165 unsigned char *__RPC_API HWND_UserUnmarshal(ULONG *,unsigned char *,HWND *);
166 void __RPC_API HWND_UserFree(ULONG *,HWND *);
167
168#ifdef __cplusplus
169}
170#endif
171#endif
Note: See TracBrowser for help on using the repository browser.