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 __termmgr_h__
     23 #define __termmgr_h__
     24 
     25 #ifndef __ITTerminalControl_FWD_DEFINED__
     26 #define __ITTerminalControl_FWD_DEFINED__
     27 typedef struct ITTerminalControl ITTerminalControl;
     28 #endif
     29 
     30 #ifndef __ITPluggableTerminalInitialization_FWD_DEFINED__
     31 #define __ITPluggableTerminalInitialization_FWD_DEFINED__
     32 typedef struct ITPluggableTerminalInitialization ITPluggableTerminalInitialization;
     33 #endif
     34 
     35 #ifndef __ITTerminalManager_FWD_DEFINED__
     36 #define __ITTerminalManager_FWD_DEFINED__
     37 typedef struct ITTerminalManager ITTerminalManager;
     38 #endif
     39 
     40 #ifndef __ITTerminalManager2_FWD_DEFINED__
     41 #define __ITTerminalManager2_FWD_DEFINED__
     42 typedef struct ITTerminalManager2 ITTerminalManager2;
     43 #endif
     44 
     45 #ifndef __ITPluggableTerminalClassRegistration_FWD_DEFINED__
     46 #define __ITPluggableTerminalClassRegistration_FWD_DEFINED__
     47 typedef struct ITPluggableTerminalClassRegistration ITPluggableTerminalClassRegistration;
     48 #endif
     49 
     50 #ifndef __ITPluggableTerminalSuperclassRegistration_FWD_DEFINED__
     51 #define __ITPluggableTerminalSuperclassRegistration_FWD_DEFINED__
     52 typedef struct ITPluggableTerminalSuperclassRegistration ITPluggableTerminalSuperclassRegistration;
     53 #endif
     54 
     55 #ifndef __TerminalManager_FWD_DEFINED__
     56 #define __TerminalManager_FWD_DEFINED__
     57 #ifdef __cplusplus
     58 typedef class TerminalManager TerminalManager;
     59 #else
     60 typedef struct TerminalManager TerminalManager;
     61 #endif
     62 #endif
     63 
     64 #ifndef __PluggableSuperclassRegistration_FWD_DEFINED__
     65 #define __PluggableSuperclassRegistration_FWD_DEFINED__
     66 #ifdef __cplusplus
     67 typedef class PluggableSuperclassRegistration PluggableSuperclassRegistration;
     68 #else
     69 typedef struct PluggableSuperclassRegistration PluggableSuperclassRegistration;
     70 #endif
     71 #endif
     72 
     73 #ifndef __PluggableTerminalRegistration_FWD_DEFINED__
     74 #define __PluggableTerminalRegistration_FWD_DEFINED__
     75 #ifdef __cplusplus
     76 typedef class PluggableTerminalRegistration PluggableTerminalRegistration;
     77 #else
     78 typedef struct PluggableTerminalRegistration PluggableTerminalRegistration;
     79 #endif
     80 #endif
     81 
     82 #include "Objsafe.h"
     83 #include "tapi3if.h"
     84 #include "tapi3ds.h"
     85 #include "msp.h"
     86 
     87 #ifdef __cplusplus
     88 extern "C" {
     89 #endif
     90 
     91 #ifndef __MIDL_user_allocate_free_DEFINED__
     92 #define __MIDL_user_allocate_free_DEFINED__
     93   void *__RPC_API MIDL_user_allocate(size_t);
     94   void __RPC_API MIDL_user_free(void *);
     95 #endif
     96 
     97   typedef enum __MIDL___MIDL_itf_termmgr_0000_0001 {
     98     TMGR_TD_CAPTURE = 1,TMGR_TD_RENDER = 2,TMGR_TD_BOTH = 3
     99   } TMGR_DIRECTION;
    100 
    101 #define CLSID_String_VideoSuperclass (L"{714C6F8C-6244-4685-87B3-B91F3F9EADA7}")
    102 #define CLSID_String_StreamingSuperclass (L"{214F4ACC-AE0B-4464-8405-07029003F8E2}")
    103 #define CLSID_String_FileSuperclass (L"{B4790031-56DB-4d3e-88C8-6FFAAFA08A91}")
    104 
    105   extern RPC_IF_HANDLE __MIDL_itf_termmgr_0000_v0_0_c_ifspec;
    106   extern RPC_IF_HANDLE __MIDL_itf_termmgr_0000_v0_0_s_ifspec;
    107 
    108 #ifndef __ITTerminalControl_INTERFACE_DEFINED__
    109 #define __ITTerminalControl_INTERFACE_DEFINED__
    110 
    111   EXTERN_C const IID IID_ITTerminalControl;
    112 #if defined(__cplusplus) && !defined(CINTERFACE)
    113   struct ITTerminalControl : public IUnknown {
    114   public:
    115     virtual HRESULT WINAPI get_AddressHandle(MSP_HANDLE *phtAddress) = 0;
    116     virtual HRESULT WINAPI ConnectTerminal(IGraphBuilder *pGraph,DWORD dwTerminalDirection,DWORD *pdwNumPins,IPin **ppPins) = 0;
    117     virtual HRESULT WINAPI CompleteConnectTerminal(void) = 0;
    118     virtual HRESULT WINAPI DisconnectTerminal(IGraphBuilder *pGraph,DWORD dwReserved) = 0;
    119     virtual HRESULT WINAPI RunRenderFilter(void) = 0;
    120     virtual HRESULT WINAPI StopRenderFilter(void) = 0;
    121   };
    122 #else
    123   typedef struct ITTerminalControlVtbl {
    124     BEGIN_INTERFACE
    125       HRESULT (WINAPI *QueryInterface)(ITTerminalControl *This,REFIID riid,void **ppvObject);
    126       ULONG (WINAPI *AddRef)(ITTerminalControl *This);
    127       ULONG (WINAPI *Release)(ITTerminalControl *This);
    128       HRESULT (WINAPI *get_AddressHandle)(ITTerminalControl *This,MSP_HANDLE *phtAddress);
    129       HRESULT (WINAPI *ConnectTerminal)(ITTerminalControl *This,IGraphBuilder *pGraph,DWORD dwTerminalDirection,DWORD *pdwNumPins,IPin **ppPins);
    130       HRESULT (WINAPI *CompleteConnectTerminal)(ITTerminalControl *This);
    131       HRESULT (WINAPI *DisconnectTerminal)(ITTerminalControl *This,IGraphBuilder *pGraph,DWORD dwReserved);
    132       HRESULT (WINAPI *RunRenderFilter)(ITTerminalControl *This);
    133       HRESULT (WINAPI *StopRenderFilter)(ITTerminalControl *This);
    134     END_INTERFACE
    135   } ITTerminalControlVtbl;
    136   struct ITTerminalControl {
    137     CONST_VTBL struct ITTerminalControlVtbl *lpVtbl;
    138   };
    139 #ifdef COBJMACROS
    140 #define ITTerminalControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    141 #define ITTerminalControl_AddRef(This) (This)->lpVtbl->AddRef(This)
    142 #define ITTerminalControl_Release(This) (This)->lpVtbl->Release(This)
    143 #define ITTerminalControl_get_AddressHandle(This,phtAddress) (This)->lpVtbl->get_AddressHandle(This,phtAddress)
    144 #define ITTerminalControl_ConnectTerminal(This,pGraph,dwTerminalDirection,pdwNumPins,ppPins) (This)->lpVtbl->ConnectTerminal(This,pGraph,dwTerminalDirection,pdwNumPins,ppPins)
    145 #define ITTerminalControl_CompleteConnectTerminal(This) (This)->lpVtbl->CompleteConnectTerminal(This)
    146 #define ITTerminalControl_DisconnectTerminal(This,pGraph,dwReserved) (This)->lpVtbl->DisconnectTerminal(This,pGraph,dwReserved)
    147 #define ITTerminalControl_RunRenderFilter(This) (This)->lpVtbl->RunRenderFilter(This)
    148 #define ITTerminalControl_StopRenderFilter(This) (This)->lpVtbl->StopRenderFilter(This)
    149 #endif
    150 #endif
    151   HRESULT WINAPI ITTerminalControl_get_AddressHandle_Proxy(ITTerminalControl *This,MSP_HANDLE *phtAddress);
    152   void __RPC_STUB ITTerminalControl_get_AddressHandle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    153   HRESULT WINAPI ITTerminalControl_ConnectTerminal_Proxy(ITTerminalControl *This,IGraphBuilder *pGraph,DWORD dwTerminalDirection,DWORD *pdwNumPins,IPin **ppPins);
    154   void __RPC_STUB ITTerminalControl_ConnectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    155   HRESULT WINAPI ITTerminalControl_CompleteConnectTerminal_Proxy(ITTerminalControl *This);
    156   void __RPC_STUB ITTerminalControl_CompleteConnectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    157   HRESULT WINAPI ITTerminalControl_DisconnectTerminal_Proxy(ITTerminalControl *This,IGraphBuilder *pGraph,DWORD dwReserved);
    158   void __RPC_STUB ITTerminalControl_DisconnectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    159   HRESULT WINAPI ITTerminalControl_RunRenderFilter_Proxy(ITTerminalControl *This);
    160   void __RPC_STUB ITTerminalControl_RunRenderFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    161   HRESULT WINAPI ITTerminalControl_StopRenderFilter_Proxy(ITTerminalControl *This);
    162   void __RPC_STUB ITTerminalControl_StopRenderFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    163 #endif
    164 
    165 #ifndef __ITPluggableTerminalInitialization_INTERFACE_DEFINED__
    166 #define __ITPluggableTerminalInitialization_INTERFACE_DEFINED__
    167   EXTERN_C const IID IID_ITPluggableTerminalInitialization;
    168 #if defined(__cplusplus) && !defined(CINTERFACE)
    169   struct ITPluggableTerminalInitialization : public IUnknown {
    170   public:
    171     virtual HRESULT WINAPI InitializeDynamic(IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress) = 0;
    172   };
    173 #else
    174   typedef struct ITPluggableTerminalInitializationVtbl {
    175     BEGIN_INTERFACE
    176       HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalInitialization *This,REFIID riid,void **ppvObject);
    177       ULONG (WINAPI *AddRef)(ITPluggableTerminalInitialization *This);
    178       ULONG (WINAPI *Release)(ITPluggableTerminalInitialization *This);
    179       HRESULT (WINAPI *InitializeDynamic)(ITPluggableTerminalInitialization *This,IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress);
    180     END_INTERFACE
    181   } ITPluggableTerminalInitializationVtbl;
    182   struct ITPluggableTerminalInitialization {
    183     CONST_VTBL struct ITPluggableTerminalInitializationVtbl *lpVtbl;
    184   };
    185 #ifdef COBJMACROS
    186 #define ITPluggableTerminalInitialization_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    187 #define ITPluggableTerminalInitialization_AddRef(This) (This)->lpVtbl->AddRef(This)
    188 #define ITPluggableTerminalInitialization_Release(This) (This)->lpVtbl->Release(This)
    189 #define ITPluggableTerminalInitialization_InitializeDynamic(This,iidTerminalClass,dwMediaType,Direction,htAddress) (This)->lpVtbl->InitializeDynamic(This,iidTerminalClass,dwMediaType,Direction,htAddress)
    190 #endif
    191 #endif
    192   HRESULT WINAPI ITPluggableTerminalInitialization_InitializeDynamic_Proxy(ITPluggableTerminalInitialization *This,IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress);
    193   void __RPC_STUB ITPluggableTerminalInitialization_InitializeDynamic_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    194 #endif
    195 
    196 #ifndef __ITTerminalManager_INTERFACE_DEFINED__
    197 #define __ITTerminalManager_INTERFACE_DEFINED__
    198   EXTERN_C const IID IID_ITTerminalManager;
    199 #if defined(__cplusplus) && !defined(CINTERFACE)
    200   struct ITTerminalManager : public IUnknown {
    201   public:
    202     virtual HRESULT WINAPI GetDynamicTerminalClasses(DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses) = 0;
    203     virtual HRESULT WINAPI CreateDynamicTerminal(IUnknown *pOuterUnknown,IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress,ITTerminal **ppTerminal) = 0;
    204   };
    205 #else
    206   typedef struct ITTerminalManagerVtbl {
    207     BEGIN_INTERFACE
    208       HRESULT (WINAPI *QueryInterface)(ITTerminalManager *This,REFIID riid,void **ppvObject);
    209       ULONG (WINAPI *AddRef)(ITTerminalManager *This);
    210       ULONG (WINAPI *Release)(ITTerminalManager *This);
    211       HRESULT (WINAPI *GetDynamicTerminalClasses)(ITTerminalManager *This,DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses);
    212       HRESULT (WINAPI *CreateDynamicTerminal)(ITTerminalManager *This,IUnknown *pOuterUnknown,IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress,ITTerminal **ppTerminal);
    213     END_INTERFACE
    214   } ITTerminalManagerVtbl;
    215   struct ITTerminalManager {
    216     CONST_VTBL struct ITTerminalManagerVtbl *lpVtbl;
    217   };
    218 #ifdef COBJMACROS
    219 #define ITTerminalManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    220 #define ITTerminalManager_AddRef(This) (This)->lpVtbl->AddRef(This)
    221 #define ITTerminalManager_Release(This) (This)->lpVtbl->Release(This)
    222 #define ITTerminalManager_GetDynamicTerminalClasses(This,dwMediaTypes,pdwNumClasses,pTerminalClasses) (This)->lpVtbl->GetDynamicTerminalClasses(This,dwMediaTypes,pdwNumClasses,pTerminalClasses)
    223 #define ITTerminalManager_CreateDynamicTerminal(This,pOuterUnknown,iidTerminalClass,dwMediaType,Direction,htAddress,ppTerminal) (This)->lpVtbl->CreateDynamicTerminal(This,pOuterUnknown,iidTerminalClass,dwMediaType,Direction,htAddress,ppTerminal)
    224 #endif
    225 #endif
    226   HRESULT WINAPI ITTerminalManager_GetDynamicTerminalClasses_Proxy(ITTerminalManager *This,DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses);
    227   void __RPC_STUB ITTerminalManager_GetDynamicTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    228   HRESULT WINAPI ITTerminalManager_CreateDynamicTerminal_Proxy(ITTerminalManager *This,IUnknown *pOuterUnknown,IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress,ITTerminal **ppTerminal);
    229   void __RPC_STUB ITTerminalManager_CreateDynamicTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    230 #endif
    231 
    232 #ifndef __ITTerminalManager2_INTERFACE_DEFINED__
    233 #define __ITTerminalManager2_INTERFACE_DEFINED__
    234   EXTERN_C const IID IID_ITTerminalManager2;
    235 #if defined(__cplusplus) && !defined(CINTERFACE)
    236   struct ITTerminalManager2 : public ITTerminalManager {
    237   public:
    238     virtual HRESULT WINAPI GetPluggableSuperclasses(DWORD *pdwNumSuperclasses,IID *pSuperclasses) = 0;
    239     virtual HRESULT WINAPI GetPluggableTerminalClasses(IID iidSuperclass,DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses) = 0;
    240   };
    241 #else
    242   typedef struct ITTerminalManager2Vtbl {
    243     BEGIN_INTERFACE
    244       HRESULT (WINAPI *QueryInterface)(ITTerminalManager2 *This,REFIID riid,void **ppvObject);
    245       ULONG (WINAPI *AddRef)(ITTerminalManager2 *This);
    246       ULONG (WINAPI *Release)(ITTerminalManager2 *This);
    247       HRESULT (WINAPI *GetDynamicTerminalClasses)(ITTerminalManager2 *This,DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses);
    248       HRESULT (WINAPI *CreateDynamicTerminal)(ITTerminalManager2 *This,IUnknown *pOuterUnknown,IID iidTerminalClass,DWORD dwMediaType,TERMINAL_DIRECTION Direction,MSP_HANDLE htAddress,ITTerminal **ppTerminal);
    249       HRESULT (WINAPI *GetPluggableSuperclasses)(ITTerminalManager2 *This,DWORD *pdwNumSuperclasses,IID *pSuperclasses);
    250       HRESULT (WINAPI *GetPluggableTerminalClasses)(ITTerminalManager2 *This,IID iidSuperclass,DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses);
    251     END_INTERFACE
    252   } ITTerminalManager2Vtbl;
    253   struct ITTerminalManager2 {
    254     CONST_VTBL struct ITTerminalManager2Vtbl *lpVtbl;
    255   };
    256 #ifdef COBJMACROS
    257 #define ITTerminalManager2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    258 #define ITTerminalManager2_AddRef(This) (This)->lpVtbl->AddRef(This)
    259 #define ITTerminalManager2_Release(This) (This)->lpVtbl->Release(This)
    260 #define ITTerminalManager2_GetDynamicTerminalClasses(This,dwMediaTypes,pdwNumClasses,pTerminalClasses) (This)->lpVtbl->GetDynamicTerminalClasses(This,dwMediaTypes,pdwNumClasses,pTerminalClasses)
    261 #define ITTerminalManager2_CreateDynamicTerminal(This,pOuterUnknown,iidTerminalClass,dwMediaType,Direction,htAddress,ppTerminal) (This)->lpVtbl->CreateDynamicTerminal(This,pOuterUnknown,iidTerminalClass,dwMediaType,Direction,htAddress,ppTerminal)
    262 #define ITTerminalManager2_GetPluggableSuperclasses(This,pdwNumSuperclasses,pSuperclasses) (This)->lpVtbl->GetPluggableSuperclasses(This,pdwNumSuperclasses,pSuperclasses)
    263 #define ITTerminalManager2_GetPluggableTerminalClasses(This,iidSuperclass,dwMediaTypes,pdwNumClasses,pTerminalClasses) (This)->lpVtbl->GetPluggableTerminalClasses(This,iidSuperclass,dwMediaTypes,pdwNumClasses,pTerminalClasses)
    264 #endif
    265 #endif
    266   HRESULT WINAPI ITTerminalManager2_GetPluggableSuperclasses_Proxy(ITTerminalManager2 *This,DWORD *pdwNumSuperclasses,IID *pSuperclasses);
    267   void __RPC_STUB ITTerminalManager2_GetPluggableSuperclasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    268   HRESULT WINAPI ITTerminalManager2_GetPluggableTerminalClasses_Proxy(ITTerminalManager2 *This,IID iidSuperclass,DWORD dwMediaTypes,DWORD *pdwNumClasses,IID *pTerminalClasses);
    269   void __RPC_STUB ITTerminalManager2_GetPluggableTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    270 #endif
    271 
    272 #ifndef __ITPluggableTerminalClassRegistration_INTERFACE_DEFINED__
    273 #define __ITPluggableTerminalClassRegistration_INTERFACE_DEFINED__
    274   EXTERN_C const IID IID_ITPluggableTerminalClassRegistration;
    275 #if defined(__cplusplus) && !defined(CINTERFACE)
    276   struct ITPluggableTerminalClassRegistration : public IDispatch {
    277   public:
    278     virtual HRESULT WINAPI get_Name(BSTR *pName) = 0;
    279     virtual HRESULT WINAPI put_Name(BSTR bstrName) = 0;
    280     virtual HRESULT WINAPI get_Company(BSTR *pCompany) = 0;
    281     virtual HRESULT WINAPI put_Company(BSTR bstrCompany) = 0;
    282     virtual HRESULT WINAPI get_Version(BSTR *pVersion) = 0;
    283     virtual HRESULT WINAPI put_Version(BSTR bstrVersion) = 0;
    284     virtual HRESULT WINAPI get_TerminalClass(BSTR *pTerminalClass) = 0;
    285     virtual HRESULT WINAPI put_TerminalClass(BSTR bstrTerminalClass) = 0;
    286     virtual HRESULT WINAPI get_CLSID(BSTR *pCLSID) = 0;
    287     virtual HRESULT WINAPI put_CLSID(BSTR bstrCLSID) = 0;
    288     virtual HRESULT WINAPI get_Direction(TMGR_DIRECTION *pDirection) = 0;
    289     virtual HRESULT WINAPI put_Direction(TMGR_DIRECTION nDirection) = 0;
    290     virtual HRESULT WINAPI get_MediaTypes(__LONG32 *pMediaTypes) = 0;
    291     virtual HRESULT WINAPI put_MediaTypes(__LONG32 nMediaTypes) = 0;
    292     virtual HRESULT WINAPI Add(BSTR bstrSuperclass) = 0;
    293     virtual HRESULT WINAPI Delete(BSTR bstrSuperclass) = 0;
    294     virtual HRESULT WINAPI GetTerminalClassInfo(BSTR bstrSuperclass) = 0;
    295   };
    296 #else
    297   typedef struct ITPluggableTerminalClassRegistrationVtbl {
    298     BEGIN_INTERFACE
    299       HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalClassRegistration *This,REFIID riid,void **ppvObject);
    300       ULONG (WINAPI *AddRef)(ITPluggableTerminalClassRegistration *This);
    301       ULONG (WINAPI *Release)(ITPluggableTerminalClassRegistration *This);
    302       HRESULT (WINAPI *GetTypeInfoCount)(ITPluggableTerminalClassRegistration *This,UINT *pctinfo);
    303       HRESULT (WINAPI *GetTypeInfo)(ITPluggableTerminalClassRegistration *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    304       HRESULT (WINAPI *GetIDsOfNames)(ITPluggableTerminalClassRegistration *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    305       HRESULT (WINAPI *Invoke)(ITPluggableTerminalClassRegistration *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    306       HRESULT (WINAPI *get_Name)(ITPluggableTerminalClassRegistration *This,BSTR *pName);
    307       HRESULT (WINAPI *put_Name)(ITPluggableTerminalClassRegistration *This,BSTR bstrName);
    308       HRESULT (WINAPI *get_Company)(ITPluggableTerminalClassRegistration *This,BSTR *pCompany);
    309       HRESULT (WINAPI *put_Company)(ITPluggableTerminalClassRegistration *This,BSTR bstrCompany);
    310       HRESULT (WINAPI *get_Version)(ITPluggableTerminalClassRegistration *This,BSTR *pVersion);
    311       HRESULT (WINAPI *put_Version)(ITPluggableTerminalClassRegistration *This,BSTR bstrVersion);
    312       HRESULT (WINAPI *get_TerminalClass)(ITPluggableTerminalClassRegistration *This,BSTR *pTerminalClass);
    313       HRESULT (WINAPI *put_TerminalClass)(ITPluggableTerminalClassRegistration *This,BSTR bstrTerminalClass);
    314       HRESULT (WINAPI *get_CLSID)(ITPluggableTerminalClassRegistration *This,BSTR *pCLSID);
    315       HRESULT (WINAPI *put_CLSID)(ITPluggableTerminalClassRegistration *This,BSTR bstrCLSID);
    316       HRESULT (WINAPI *get_Direction)(ITPluggableTerminalClassRegistration *This,TMGR_DIRECTION *pDirection);
    317       HRESULT (WINAPI *put_Direction)(ITPluggableTerminalClassRegistration *This,TMGR_DIRECTION nDirection);
    318       HRESULT (WINAPI *get_MediaTypes)(ITPluggableTerminalClassRegistration *This,__LONG32 *pMediaTypes);
    319       HRESULT (WINAPI *put_MediaTypes)(ITPluggableTerminalClassRegistration *This,__LONG32 nMediaTypes);
    320       HRESULT (WINAPI *Add)(ITPluggableTerminalClassRegistration *This,BSTR bstrSuperclass);
    321       HRESULT (WINAPI *Delete)(ITPluggableTerminalClassRegistration *This,BSTR bstrSuperclass);
    322       HRESULT (WINAPI *GetTerminalClassInfo)(ITPluggableTerminalClassRegistration *This,BSTR bstrSuperclass);
    323     END_INTERFACE
    324   } ITPluggableTerminalClassRegistrationVtbl;
    325   struct ITPluggableTerminalClassRegistration {
    326     CONST_VTBL struct ITPluggableTerminalClassRegistrationVtbl *lpVtbl;
    327   };
    328 #ifdef COBJMACROS
    329 #define ITPluggableTerminalClassRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    330 #define ITPluggableTerminalClassRegistration_AddRef(This) (This)->lpVtbl->AddRef(This)
    331 #define ITPluggableTerminalClassRegistration_Release(This) (This)->lpVtbl->Release(This)
    332 #define ITPluggableTerminalClassRegistration_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    333 #define ITPluggableTerminalClassRegistration_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    334 #define ITPluggableTerminalClassRegistration_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    335 #define ITPluggableTerminalClassRegistration_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    336 #define ITPluggableTerminalClassRegistration_get_Name(This,pName) (This)->lpVtbl->get_Name(This,pName)
    337 #define ITPluggableTerminalClassRegistration_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName)
    338 #define ITPluggableTerminalClassRegistration_get_Company(This,pCompany) (This)->lpVtbl->get_Company(This,pCompany)
    339 #define ITPluggableTerminalClassRegistration_put_Company(This,bstrCompany) (This)->lpVtbl->put_Company(This,bstrCompany)
    340 #define ITPluggableTerminalClassRegistration_get_Version(This,pVersion) (This)->lpVtbl->get_Version(This,pVersion)
    341 #define ITPluggableTerminalClassRegistration_put_Version(This,bstrVersion) (This)->lpVtbl->put_Version(This,bstrVersion)
    342 #define ITPluggableTerminalClassRegistration_get_TerminalClass(This,pTerminalClass) (This)->lpVtbl->get_TerminalClass(This,pTerminalClass)
    343 #define ITPluggableTerminalClassRegistration_put_TerminalClass(This,bstrTerminalClass) (This)->lpVtbl->put_TerminalClass(This,bstrTerminalClass)
    344 #define ITPluggableTerminalClassRegistration_get_CLSID(This,pCLSID) (This)->lpVtbl->get_CLSID(This,pCLSID)
    345 #define ITPluggableTerminalClassRegistration_put_CLSID(This,bstrCLSID) (This)->lpVtbl->put_CLSID(This,bstrCLSID)
    346 #define ITPluggableTerminalClassRegistration_get_Direction(This,pDirection) (This)->lpVtbl->get_Direction(This,pDirection)
    347 #define ITPluggableTerminalClassRegistration_put_Direction(This,nDirection) (This)->lpVtbl->put_Direction(This,nDirection)
    348 #define ITPluggableTerminalClassRegistration_get_MediaTypes(This,pMediaTypes) (This)->lpVtbl->get_MediaTypes(This,pMediaTypes)
    349 #define ITPluggableTerminalClassRegistration_put_MediaTypes(This,nMediaTypes) (This)->lpVtbl->put_MediaTypes(This,nMediaTypes)
    350 #define ITPluggableTerminalClassRegistration_Add(This,bstrSuperclass) (This)->lpVtbl->Add(This,bstrSuperclass)
    351 #define ITPluggableTerminalClassRegistration_Delete(This,bstrSuperclass) (This)->lpVtbl->Delete(This,bstrSuperclass)
    352 #define ITPluggableTerminalClassRegistration_GetTerminalClassInfo(This,bstrSuperclass) (This)->lpVtbl->GetTerminalClassInfo(This,bstrSuperclass)
    353 #endif
    354 #endif
    355   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_Name_Proxy(ITPluggableTerminalClassRegistration *This,BSTR *pName);
    356   void __RPC_STUB ITPluggableTerminalClassRegistration_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    357   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_Name_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrName);
    358   void __RPC_STUB ITPluggableTerminalClassRegistration_put_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    359   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_Company_Proxy(ITPluggableTerminalClassRegistration *This,BSTR *pCompany);
    360   void __RPC_STUB ITPluggableTerminalClassRegistration_get_Company_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    361   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_Company_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrCompany);
    362   void __RPC_STUB ITPluggableTerminalClassRegistration_put_Company_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    363   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_Version_Proxy(ITPluggableTerminalClassRegistration *This,BSTR *pVersion);
    364   void __RPC_STUB ITPluggableTerminalClassRegistration_get_Version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    365   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_Version_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrVersion);
    366   void __RPC_STUB ITPluggableTerminalClassRegistration_put_Version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    367   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_TerminalClass_Proxy(ITPluggableTerminalClassRegistration *This,BSTR *pTerminalClass);
    368   void __RPC_STUB ITPluggableTerminalClassRegistration_get_TerminalClass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    369   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_TerminalClass_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrTerminalClass);
    370   void __RPC_STUB ITPluggableTerminalClassRegistration_put_TerminalClass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    371   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_CLSID_Proxy(ITPluggableTerminalClassRegistration *This,BSTR *pCLSID);
    372   void __RPC_STUB ITPluggableTerminalClassRegistration_get_CLSID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    373   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_CLSID_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrCLSID);
    374   void __RPC_STUB ITPluggableTerminalClassRegistration_put_CLSID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    375   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_Direction_Proxy(ITPluggableTerminalClassRegistration *This,TMGR_DIRECTION *pDirection);
    376   void __RPC_STUB ITPluggableTerminalClassRegistration_get_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    377   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_Direction_Proxy(ITPluggableTerminalClassRegistration *This,TMGR_DIRECTION nDirection);
    378   void __RPC_STUB ITPluggableTerminalClassRegistration_put_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    379   HRESULT WINAPI ITPluggableTerminalClassRegistration_get_MediaTypes_Proxy(ITPluggableTerminalClassRegistration *This,__LONG32 *pMediaTypes);
    380   void __RPC_STUB ITPluggableTerminalClassRegistration_get_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    381   HRESULT WINAPI ITPluggableTerminalClassRegistration_put_MediaTypes_Proxy(ITPluggableTerminalClassRegistration *This,__LONG32 nMediaTypes);
    382   void __RPC_STUB ITPluggableTerminalClassRegistration_put_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    383   HRESULT WINAPI ITPluggableTerminalClassRegistration_Add_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrSuperclass);
    384   void __RPC_STUB ITPluggableTerminalClassRegistration_Add_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    385   HRESULT WINAPI ITPluggableTerminalClassRegistration_Delete_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrSuperclass);
    386   void __RPC_STUB ITPluggableTerminalClassRegistration_Delete_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    387   HRESULT WINAPI ITPluggableTerminalClassRegistration_GetTerminalClassInfo_Proxy(ITPluggableTerminalClassRegistration *This,BSTR bstrSuperclass);
    388   void __RPC_STUB ITPluggableTerminalClassRegistration_GetTerminalClassInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    389 #endif
    390 
    391 #ifndef __ITPluggableTerminalSuperclassRegistration_INTERFACE_DEFINED__
    392 #define __ITPluggableTerminalSuperclassRegistration_INTERFACE_DEFINED__
    393   EXTERN_C const IID IID_ITPluggableTerminalSuperclassRegistration;
    394 #if defined(__cplusplus) && !defined(CINTERFACE)
    395   struct ITPluggableTerminalSuperclassRegistration : public IDispatch {
    396   public:
    397     virtual HRESULT WINAPI get_Name(BSTR *pName) = 0;
    398     virtual HRESULT WINAPI put_Name(BSTR bstrName) = 0;
    399     virtual HRESULT WINAPI get_CLSID(BSTR *pCLSID) = 0;
    400     virtual HRESULT WINAPI put_CLSID(BSTR bstrCLSID) = 0;
    401     virtual HRESULT WINAPI Add(void) = 0;
    402     virtual HRESULT WINAPI Delete(void) = 0;
    403     virtual HRESULT WINAPI GetTerminalSuperclassInfo(void) = 0;
    404     virtual HRESULT WINAPI get_TerminalClasses(VARIANT *pTerminals) = 0;
    405     virtual HRESULT WINAPI EnumerateTerminalClasses(IEnumTerminalClass **ppTerminals) = 0;
    406   };
    407 #else
    408   typedef struct ITPluggableTerminalSuperclassRegistrationVtbl {
    409     BEGIN_INTERFACE
    410       HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalSuperclassRegistration *This,REFIID riid,void **ppvObject);
    411       ULONG (WINAPI *AddRef)(ITPluggableTerminalSuperclassRegistration *This);
    412       ULONG (WINAPI *Release)(ITPluggableTerminalSuperclassRegistration *This);
    413       HRESULT (WINAPI *GetTypeInfoCount)(ITPluggableTerminalSuperclassRegistration *This,UINT *pctinfo);
    414       HRESULT (WINAPI *GetTypeInfo)(ITPluggableTerminalSuperclassRegistration *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    415       HRESULT (WINAPI *GetIDsOfNames)(ITPluggableTerminalSuperclassRegistration *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    416       HRESULT (WINAPI *Invoke)(ITPluggableTerminalSuperclassRegistration *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    417       HRESULT (WINAPI *get_Name)(ITPluggableTerminalSuperclassRegistration *This,BSTR *pName);
    418       HRESULT (WINAPI *put_Name)(ITPluggableTerminalSuperclassRegistration *This,BSTR bstrName);
    419       HRESULT (WINAPI *get_CLSID)(ITPluggableTerminalSuperclassRegistration *This,BSTR *pCLSID);
    420       HRESULT (WINAPI *put_CLSID)(ITPluggableTerminalSuperclassRegistration *This,BSTR bstrCLSID);
    421       HRESULT (WINAPI *Add)(ITPluggableTerminalSuperclassRegistration *This);
    422       HRESULT (WINAPI *Delete)(ITPluggableTerminalSuperclassRegistration *This);
    423       HRESULT (WINAPI *GetTerminalSuperclassInfo)(ITPluggableTerminalSuperclassRegistration *This);
    424       HRESULT (WINAPI *get_TerminalClasses)(ITPluggableTerminalSuperclassRegistration *This,VARIANT *pTerminals);
    425       HRESULT (WINAPI *EnumerateTerminalClasses)(ITPluggableTerminalSuperclassRegistration *This,IEnumTerminalClass **ppTerminals);
    426     END_INTERFACE
    427   } ITPluggableTerminalSuperclassRegistrationVtbl;
    428   struct ITPluggableTerminalSuperclassRegistration {
    429     CONST_VTBL struct ITPluggableTerminalSuperclassRegistrationVtbl *lpVtbl;
    430   };
    431 #ifdef COBJMACROS
    432 #define ITPluggableTerminalSuperclassRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    433 #define ITPluggableTerminalSuperclassRegistration_AddRef(This) (This)->lpVtbl->AddRef(This)
    434 #define ITPluggableTerminalSuperclassRegistration_Release(This) (This)->lpVtbl->Release(This)
    435 #define ITPluggableTerminalSuperclassRegistration_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    436 #define ITPluggableTerminalSuperclassRegistration_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    437 #define ITPluggableTerminalSuperclassRegistration_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    438 #define ITPluggableTerminalSuperclassRegistration_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    439 #define ITPluggableTerminalSuperclassRegistration_get_Name(This,pName) (This)->lpVtbl->get_Name(This,pName)
    440 #define ITPluggableTerminalSuperclassRegistration_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName)
    441 #define ITPluggableTerminalSuperclassRegistration_get_CLSID(This,pCLSID) (This)->lpVtbl->get_CLSID(This,pCLSID)
    442 #define ITPluggableTerminalSuperclassRegistration_put_CLSID(This,bstrCLSID) (This)->lpVtbl->put_CLSID(This,bstrCLSID)
    443 #define ITPluggableTerminalSuperclassRegistration_Add(This) (This)->lpVtbl->Add(This)
    444 #define ITPluggableTerminalSuperclassRegistration_Delete(This) (This)->lpVtbl->Delete(This)
    445 #define ITPluggableTerminalSuperclassRegistration_GetTerminalSuperclassInfo(This) (This)->lpVtbl->GetTerminalSuperclassInfo(This)
    446 #define ITPluggableTerminalSuperclassRegistration_get_TerminalClasses(This,pTerminals) (This)->lpVtbl->get_TerminalClasses(This,pTerminals)
    447 #define ITPluggableTerminalSuperclassRegistration_EnumerateTerminalClasses(This,ppTerminals) (This)->lpVtbl->EnumerateTerminalClasses(This,ppTerminals)
    448 #endif
    449 #endif
    450   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_get_Name_Proxy(ITPluggableTerminalSuperclassRegistration *This,BSTR *pName);
    451   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    452   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_put_Name_Proxy(ITPluggableTerminalSuperclassRegistration *This,BSTR bstrName);
    453   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_put_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    454   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_get_CLSID_Proxy(ITPluggableTerminalSuperclassRegistration *This,BSTR *pCLSID);
    455   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_get_CLSID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    456   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_put_CLSID_Proxy(ITPluggableTerminalSuperclassRegistration *This,BSTR bstrCLSID);
    457   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_put_CLSID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    458   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_Add_Proxy(ITPluggableTerminalSuperclassRegistration *This);
    459   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_Add_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    460   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_Delete_Proxy(ITPluggableTerminalSuperclassRegistration *This);
    461   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_Delete_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    462   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_GetTerminalSuperclassInfo_Proxy(ITPluggableTerminalSuperclassRegistration *This);
    463   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_GetTerminalSuperclassInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    464   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_get_TerminalClasses_Proxy(ITPluggableTerminalSuperclassRegistration *This,VARIANT *pTerminals);
    465   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_get_TerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    466   HRESULT WINAPI ITPluggableTerminalSuperclassRegistration_EnumerateTerminalClasses_Proxy(ITPluggableTerminalSuperclassRegistration *This,IEnumTerminalClass **ppTerminals);
    467   void __RPC_STUB ITPluggableTerminalSuperclassRegistration_EnumerateTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    468 #endif
    469 
    470 #ifndef __TERMMGRLib_LIBRARY_DEFINED__
    471 #define __TERMMGRLib_LIBRARY_DEFINED__
    472   EXTERN_C const IID LIBID_TERMMGRLib;
    473   EXTERN_C const CLSID CLSID_TerminalManager;
    474 #ifdef __cplusplus
    475   class TerminalManager;
    476 #endif
    477   EXTERN_C const CLSID CLSID_PluggableSuperclassRegistration;
    478 #ifdef __cplusplus
    479   class PluggableSuperclassRegistration;
    480 #endif
    481   EXTERN_C const CLSID CLSID_PluggableTerminalRegistration;
    482 #ifdef __cplusplus
    483   class PluggableTerminalRegistration;
    484 #endif
    485 #endif
    486 
    487   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
    488   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
    489   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
    490   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
    491   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
    492   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
    493   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
    494   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
    495 
    496 #ifdef __cplusplus
    497 }
    498 #endif
    499 #endif
    500