Home | History | Annotate | Download | only in include
      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__
     27 typedef struct IWiaVideo IWiaVideo;
     28 #endif
     29 
     30 #ifndef __WiaVideo_FWD_DEFINED__
     31 #define __WiaVideo_FWD_DEFINED__
     32 #ifdef __cplusplus
     33 typedef class WiaVideo WiaVideo;
     34 #else
     35 typedef struct WiaVideo WiaVideo;
     36 #endif
     37 #endif
     38 
     39 #include "oaidl.h"
     40 #include "ocidl.h"
     41 
     42 #ifdef __cplusplus
     43 extern "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
    172