master
   1/*** Autogenerated by WIDL 10.4 from include/tsvirtualchannels.idl - Do not edit ***/
   2
   3#ifdef _WIN32
   4#ifndef __REQUIRED_RPCNDR_H_VERSION__
   5#define __REQUIRED_RPCNDR_H_VERSION__ 475
   6#endif
   7#include <rpc.h>
   8#include <rpcndr.h>
   9#endif
  10
  11#ifndef COM_NO_WINDOWS_H
  12#include <windows.h>
  13#include <ole2.h>
  14#endif
  15
  16#ifndef __tsvirtualchannels_h__
  17#define __tsvirtualchannels_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IWTSPlugin_FWD_DEFINED__
  22#define __IWTSPlugin_FWD_DEFINED__
  23typedef interface IWTSPlugin IWTSPlugin;
  24#ifdef __cplusplus
  25interface IWTSPlugin;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __IWTSListener_FWD_DEFINED__
  30#define __IWTSListener_FWD_DEFINED__
  31typedef interface IWTSListener IWTSListener;
  32#ifdef __cplusplus
  33interface IWTSListener;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __IWTSListenerCallback_FWD_DEFINED__
  38#define __IWTSListenerCallback_FWD_DEFINED__
  39typedef interface IWTSListenerCallback IWTSListenerCallback;
  40#ifdef __cplusplus
  41interface IWTSListenerCallback;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __IWTSVirtualChannelCallback_FWD_DEFINED__
  46#define __IWTSVirtualChannelCallback_FWD_DEFINED__
  47typedef interface IWTSVirtualChannelCallback IWTSVirtualChannelCallback;
  48#ifdef __cplusplus
  49interface IWTSVirtualChannelCallback;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __IWTSVirtualChannelManager_FWD_DEFINED__
  54#define __IWTSVirtualChannelManager_FWD_DEFINED__
  55typedef interface IWTSVirtualChannelManager IWTSVirtualChannelManager;
  56#ifdef __cplusplus
  57interface IWTSVirtualChannelManager;
  58#endif /* __cplusplus */
  59#endif
  60
  61#ifndef __IWTSVirtualChannel_FWD_DEFINED__
  62#define __IWTSVirtualChannel_FWD_DEFINED__
  63typedef interface IWTSVirtualChannel IWTSVirtualChannel;
  64#ifdef __cplusplus
  65interface IWTSVirtualChannel;
  66#endif /* __cplusplus */
  67#endif
  68
  69#ifndef __IWTSPluginServiceProvider_FWD_DEFINED__
  70#define __IWTSPluginServiceProvider_FWD_DEFINED__
  71typedef interface IWTSPluginServiceProvider IWTSPluginServiceProvider;
  72#ifdef __cplusplus
  73interface IWTSPluginServiceProvider;
  74#endif /* __cplusplus */
  75#endif
  76
  77#ifndef __IWTSBitmapRenderer_FWD_DEFINED__
  78#define __IWTSBitmapRenderer_FWD_DEFINED__
  79typedef interface IWTSBitmapRenderer IWTSBitmapRenderer;
  80#ifdef __cplusplus
  81interface IWTSBitmapRenderer;
  82#endif /* __cplusplus */
  83#endif
  84
  85#ifndef __IWTSBitmapRendererCallback_FWD_DEFINED__
  86#define __IWTSBitmapRendererCallback_FWD_DEFINED__
  87typedef interface IWTSBitmapRendererCallback IWTSBitmapRendererCallback;
  88#ifdef __cplusplus
  89interface IWTSBitmapRendererCallback;
  90#endif /* __cplusplus */
  91#endif
  92
  93#ifndef __IWTSBitmapRenderService_FWD_DEFINED__
  94#define __IWTSBitmapRenderService_FWD_DEFINED__
  95typedef interface IWTSBitmapRenderService IWTSBitmapRenderService;
  96#ifdef __cplusplus
  97interface IWTSBitmapRenderService;
  98#endif /* __cplusplus */
  99#endif
 100
 101/* Headers for imported files */
 102
 103#include <unknwn.h>
 104#include <oaidl.h>
 105
 106#ifdef __cplusplus
 107extern "C" {
 108#endif
 109
 110#include <winapifamily.h>
 111#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 112#ifndef __IWTSPlugin_FWD_DEFINED__
 113#define __IWTSPlugin_FWD_DEFINED__
 114typedef interface IWTSPlugin IWTSPlugin;
 115#ifdef __cplusplus
 116interface IWTSPlugin;
 117#endif /* __cplusplus */
 118#endif
 119
 120#ifndef __IWTSListener_FWD_DEFINED__
 121#define __IWTSListener_FWD_DEFINED__
 122typedef interface IWTSListener IWTSListener;
 123#ifdef __cplusplus
 124interface IWTSListener;
 125#endif /* __cplusplus */
 126#endif
 127
 128#ifndef __IWTSListenerCallback_FWD_DEFINED__
 129#define __IWTSListenerCallback_FWD_DEFINED__
 130typedef interface IWTSListenerCallback IWTSListenerCallback;
 131#ifdef __cplusplus
 132interface IWTSListenerCallback;
 133#endif /* __cplusplus */
 134#endif
 135
 136#ifndef __IWTSVirtualChannelCallback_FWD_DEFINED__
 137#define __IWTSVirtualChannelCallback_FWD_DEFINED__
 138typedef interface IWTSVirtualChannelCallback IWTSVirtualChannelCallback;
 139#ifdef __cplusplus
 140interface IWTSVirtualChannelCallback;
 141#endif /* __cplusplus */
 142#endif
 143
 144#ifndef __IWTSVirtualChannelManager_FWD_DEFINED__
 145#define __IWTSVirtualChannelManager_FWD_DEFINED__
 146typedef interface IWTSVirtualChannelManager IWTSVirtualChannelManager;
 147#ifdef __cplusplus
 148interface IWTSVirtualChannelManager;
 149#endif /* __cplusplus */
 150#endif
 151
 152#ifndef __IWTSVirtualChannel_FWD_DEFINED__
 153#define __IWTSVirtualChannel_FWD_DEFINED__
 154typedef interface IWTSVirtualChannel IWTSVirtualChannel;
 155#ifdef __cplusplus
 156interface IWTSVirtualChannel;
 157#endif /* __cplusplus */
 158#endif
 159
 160#define WTS_PROPERTY_DEFAULT_CONFIG L"DefaultConfig"
 161#define E_MAPPEDRENDERER_SHUTDOWN HRESULT_FROM_WIN32(ERROR_INVALID_STATE)
 162#define E_DUPLICATE_WINDOW_HINT HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS)
 163/*****************************************************************************
 164 * IWTSPlugin interface
 165 */
 166#ifndef __IWTSPlugin_INTERFACE_DEFINED__
 167#define __IWTSPlugin_INTERFACE_DEFINED__
 168
 169DEFINE_GUID(IID_IWTSPlugin, 0xa1230201, 0x1439, 0x4e62, 0xa4,0x14, 0x19,0x0d,0x0a,0xc3,0xd4,0x0e);
 170#if defined(__cplusplus) && !defined(CINTERFACE)
 171MIDL_INTERFACE("a1230201-1439-4e62-a414-190d0ac3d40e")
 172IWTSPlugin : public IUnknown
 173{
 174    virtual HRESULT STDMETHODCALLTYPE Initialize(
 175        IWTSVirtualChannelManager *pChannelMgr) = 0;
 176
 177    virtual HRESULT STDMETHODCALLTYPE Connected(
 178        ) = 0;
 179
 180    virtual HRESULT STDMETHODCALLTYPE Disconnected(
 181        DWORD dwDisconnectCode) = 0;
 182
 183    virtual HRESULT STDMETHODCALLTYPE Terminated(
 184        ) = 0;
 185
 186};
 187#ifdef __CRT_UUID_DECL
 188__CRT_UUID_DECL(IWTSPlugin, 0xa1230201, 0x1439, 0x4e62, 0xa4,0x14, 0x19,0x0d,0x0a,0xc3,0xd4,0x0e)
 189#endif
 190#else
 191typedef struct IWTSPluginVtbl {
 192    BEGIN_INTERFACE
 193
 194    /*** IUnknown methods ***/
 195    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 196        IWTSPlugin *This,
 197        REFIID riid,
 198        void **ppvObject);
 199
 200    ULONG (STDMETHODCALLTYPE *AddRef)(
 201        IWTSPlugin *This);
 202
 203    ULONG (STDMETHODCALLTYPE *Release)(
 204        IWTSPlugin *This);
 205
 206    /*** IWTSPlugin methods ***/
 207    HRESULT (STDMETHODCALLTYPE *Initialize)(
 208        IWTSPlugin *This,
 209        IWTSVirtualChannelManager *pChannelMgr);
 210
 211    HRESULT (STDMETHODCALLTYPE *Connected)(
 212        IWTSPlugin *This);
 213
 214    HRESULT (STDMETHODCALLTYPE *Disconnected)(
 215        IWTSPlugin *This,
 216        DWORD dwDisconnectCode);
 217
 218    HRESULT (STDMETHODCALLTYPE *Terminated)(
 219        IWTSPlugin *This);
 220
 221    END_INTERFACE
 222} IWTSPluginVtbl;
 223
 224interface IWTSPlugin {
 225    CONST_VTBL IWTSPluginVtbl* lpVtbl;
 226};
 227
 228#ifdef COBJMACROS
 229#ifndef WIDL_C_INLINE_WRAPPERS
 230/*** IUnknown methods ***/
 231#define IWTSPlugin_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 232#define IWTSPlugin_AddRef(This) (This)->lpVtbl->AddRef(This)
 233#define IWTSPlugin_Release(This) (This)->lpVtbl->Release(This)
 234/*** IWTSPlugin methods ***/
 235#define IWTSPlugin_Initialize(This,pChannelMgr) (This)->lpVtbl->Initialize(This,pChannelMgr)
 236#define IWTSPlugin_Connected(This) (This)->lpVtbl->Connected(This)
 237#define IWTSPlugin_Disconnected(This,dwDisconnectCode) (This)->lpVtbl->Disconnected(This,dwDisconnectCode)
 238#define IWTSPlugin_Terminated(This) (This)->lpVtbl->Terminated(This)
 239#else
 240/*** IUnknown methods ***/
 241static inline HRESULT IWTSPlugin_QueryInterface(IWTSPlugin* This,REFIID riid,void **ppvObject) {
 242    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 243}
 244static inline ULONG IWTSPlugin_AddRef(IWTSPlugin* This) {
 245    return This->lpVtbl->AddRef(This);
 246}
 247static inline ULONG IWTSPlugin_Release(IWTSPlugin* This) {
 248    return This->lpVtbl->Release(This);
 249}
 250/*** IWTSPlugin methods ***/
 251static inline HRESULT IWTSPlugin_Initialize(IWTSPlugin* This,IWTSVirtualChannelManager *pChannelMgr) {
 252    return This->lpVtbl->Initialize(This,pChannelMgr);
 253}
 254static inline HRESULT IWTSPlugin_Connected(IWTSPlugin* This) {
 255    return This->lpVtbl->Connected(This);
 256}
 257static inline HRESULT IWTSPlugin_Disconnected(IWTSPlugin* This,DWORD dwDisconnectCode) {
 258    return This->lpVtbl->Disconnected(This,dwDisconnectCode);
 259}
 260static inline HRESULT IWTSPlugin_Terminated(IWTSPlugin* This) {
 261    return This->lpVtbl->Terminated(This);
 262}
 263#endif
 264#endif
 265
 266#endif
 267
 268
 269#endif  /* __IWTSPlugin_INTERFACE_DEFINED__ */
 270
 271/*****************************************************************************
 272 * IWTSListener interface
 273 */
 274#ifndef __IWTSListener_INTERFACE_DEFINED__
 275#define __IWTSListener_INTERFACE_DEFINED__
 276
 277DEFINE_GUID(IID_IWTSListener, 0xa1230206, 0x9a39, 0x4d58, 0x86,0x74, 0xcd,0xb4,0xdf,0xf4,0xe7,0x3b);
 278#if defined(__cplusplus) && !defined(CINTERFACE)
 279MIDL_INTERFACE("a1230206-9a39-4d58-8674-cdb4dff4e73b")
 280IWTSListener : public IUnknown
 281{
 282    virtual HRESULT STDMETHODCALLTYPE GetConfiguration(
 283        IPropertyBag **ppPropertyBag) = 0;
 284
 285};
 286#ifdef __CRT_UUID_DECL
 287__CRT_UUID_DECL(IWTSListener, 0xa1230206, 0x9a39, 0x4d58, 0x86,0x74, 0xcd,0xb4,0xdf,0xf4,0xe7,0x3b)
 288#endif
 289#else
 290typedef struct IWTSListenerVtbl {
 291    BEGIN_INTERFACE
 292
 293    /*** IUnknown methods ***/
 294    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 295        IWTSListener *This,
 296        REFIID riid,
 297        void **ppvObject);
 298
 299    ULONG (STDMETHODCALLTYPE *AddRef)(
 300        IWTSListener *This);
 301
 302    ULONG (STDMETHODCALLTYPE *Release)(
 303        IWTSListener *This);
 304
 305    /*** IWTSListener methods ***/
 306    HRESULT (STDMETHODCALLTYPE *GetConfiguration)(
 307        IWTSListener *This,
 308        IPropertyBag **ppPropertyBag);
 309
 310    END_INTERFACE
 311} IWTSListenerVtbl;
 312
 313interface IWTSListener {
 314    CONST_VTBL IWTSListenerVtbl* lpVtbl;
 315};
 316
 317#ifdef COBJMACROS
 318#ifndef WIDL_C_INLINE_WRAPPERS
 319/*** IUnknown methods ***/
 320#define IWTSListener_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 321#define IWTSListener_AddRef(This) (This)->lpVtbl->AddRef(This)
 322#define IWTSListener_Release(This) (This)->lpVtbl->Release(This)
 323/*** IWTSListener methods ***/
 324#define IWTSListener_GetConfiguration(This,ppPropertyBag) (This)->lpVtbl->GetConfiguration(This,ppPropertyBag)
 325#else
 326/*** IUnknown methods ***/
 327static inline HRESULT IWTSListener_QueryInterface(IWTSListener* This,REFIID riid,void **ppvObject) {
 328    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 329}
 330static inline ULONG IWTSListener_AddRef(IWTSListener* This) {
 331    return This->lpVtbl->AddRef(This);
 332}
 333static inline ULONG IWTSListener_Release(IWTSListener* This) {
 334    return This->lpVtbl->Release(This);
 335}
 336/*** IWTSListener methods ***/
 337static inline HRESULT IWTSListener_GetConfiguration(IWTSListener* This,IPropertyBag **ppPropertyBag) {
 338    return This->lpVtbl->GetConfiguration(This,ppPropertyBag);
 339}
 340#endif
 341#endif
 342
 343#endif
 344
 345
 346#endif  /* __IWTSListener_INTERFACE_DEFINED__ */
 347
 348/*****************************************************************************
 349 * IWTSListenerCallback interface
 350 */
 351#ifndef __IWTSListenerCallback_INTERFACE_DEFINED__
 352#define __IWTSListenerCallback_INTERFACE_DEFINED__
 353
 354DEFINE_GUID(IID_IWTSListenerCallback, 0xa1230203, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98);
 355#if defined(__cplusplus) && !defined(CINTERFACE)
 356MIDL_INTERFACE("a1230203-d6a7-11d8-b9fd-000bdbd1f198")
 357IWTSListenerCallback : public IUnknown
 358{
 359    virtual HRESULT STDMETHODCALLTYPE OnNewChannelConnection(
 360        IWTSVirtualChannel *pChannel,
 361        BSTR data,
 362        WINBOOL *pbAccept,
 363        IWTSVirtualChannelCallback **ppCallback) = 0;
 364
 365};
 366#ifdef __CRT_UUID_DECL
 367__CRT_UUID_DECL(IWTSListenerCallback, 0xa1230203, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98)
 368#endif
 369#else
 370typedef struct IWTSListenerCallbackVtbl {
 371    BEGIN_INTERFACE
 372
 373    /*** IUnknown methods ***/
 374    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 375        IWTSListenerCallback *This,
 376        REFIID riid,
 377        void **ppvObject);
 378
 379    ULONG (STDMETHODCALLTYPE *AddRef)(
 380        IWTSListenerCallback *This);
 381
 382    ULONG (STDMETHODCALLTYPE *Release)(
 383        IWTSListenerCallback *This);
 384
 385    /*** IWTSListenerCallback methods ***/
 386    HRESULT (STDMETHODCALLTYPE *OnNewChannelConnection)(
 387        IWTSListenerCallback *This,
 388        IWTSVirtualChannel *pChannel,
 389        BSTR data,
 390        WINBOOL *pbAccept,
 391        IWTSVirtualChannelCallback **ppCallback);
 392
 393    END_INTERFACE
 394} IWTSListenerCallbackVtbl;
 395
 396interface IWTSListenerCallback {
 397    CONST_VTBL IWTSListenerCallbackVtbl* lpVtbl;
 398};
 399
 400#ifdef COBJMACROS
 401#ifndef WIDL_C_INLINE_WRAPPERS
 402/*** IUnknown methods ***/
 403#define IWTSListenerCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 404#define IWTSListenerCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
 405#define IWTSListenerCallback_Release(This) (This)->lpVtbl->Release(This)
 406/*** IWTSListenerCallback methods ***/
 407#define IWTSListenerCallback_OnNewChannelConnection(This,pChannel,data,pbAccept,ppCallback) (This)->lpVtbl->OnNewChannelConnection(This,pChannel,data,pbAccept,ppCallback)
 408#else
 409/*** IUnknown methods ***/
 410static inline HRESULT IWTSListenerCallback_QueryInterface(IWTSListenerCallback* This,REFIID riid,void **ppvObject) {
 411    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 412}
 413static inline ULONG IWTSListenerCallback_AddRef(IWTSListenerCallback* This) {
 414    return This->lpVtbl->AddRef(This);
 415}
 416static inline ULONG IWTSListenerCallback_Release(IWTSListenerCallback* This) {
 417    return This->lpVtbl->Release(This);
 418}
 419/*** IWTSListenerCallback methods ***/
 420static inline HRESULT IWTSListenerCallback_OnNewChannelConnection(IWTSListenerCallback* This,IWTSVirtualChannel *pChannel,BSTR data,WINBOOL *pbAccept,IWTSVirtualChannelCallback **ppCallback) {
 421    return This->lpVtbl->OnNewChannelConnection(This,pChannel,data,pbAccept,ppCallback);
 422}
 423#endif
 424#endif
 425
 426#endif
 427
 428
 429#endif  /* __IWTSListenerCallback_INTERFACE_DEFINED__ */
 430
 431/*****************************************************************************
 432 * IWTSVirtualChannelCallback interface
 433 */
 434#ifndef __IWTSVirtualChannelCallback_INTERFACE_DEFINED__
 435#define __IWTSVirtualChannelCallback_INTERFACE_DEFINED__
 436
 437DEFINE_GUID(IID_IWTSVirtualChannelCallback, 0xa1230204, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98);
 438#if defined(__cplusplus) && !defined(CINTERFACE)
 439MIDL_INTERFACE("a1230204-d6a7-11d8-b9fd-000bdbd1f198")
 440IWTSVirtualChannelCallback : public IUnknown
 441{
 442    virtual HRESULT STDMETHODCALLTYPE OnDataReceived(
 443        ULONG cbSize,
 444        BYTE *pBuffer) = 0;
 445
 446    virtual HRESULT STDMETHODCALLTYPE OnClose(
 447        ) = 0;
 448
 449};
 450#ifdef __CRT_UUID_DECL
 451__CRT_UUID_DECL(IWTSVirtualChannelCallback, 0xa1230204, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98)
 452#endif
 453#else
 454typedef struct IWTSVirtualChannelCallbackVtbl {
 455    BEGIN_INTERFACE
 456
 457    /*** IUnknown methods ***/
 458    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 459        IWTSVirtualChannelCallback *This,
 460        REFIID riid,
 461        void **ppvObject);
 462
 463    ULONG (STDMETHODCALLTYPE *AddRef)(
 464        IWTSVirtualChannelCallback *This);
 465
 466    ULONG (STDMETHODCALLTYPE *Release)(
 467        IWTSVirtualChannelCallback *This);
 468
 469    /*** IWTSVirtualChannelCallback methods ***/
 470    HRESULT (STDMETHODCALLTYPE *OnDataReceived)(
 471        IWTSVirtualChannelCallback *This,
 472        ULONG cbSize,
 473        BYTE *pBuffer);
 474
 475    HRESULT (STDMETHODCALLTYPE *OnClose)(
 476        IWTSVirtualChannelCallback *This);
 477
 478    END_INTERFACE
 479} IWTSVirtualChannelCallbackVtbl;
 480
 481interface IWTSVirtualChannelCallback {
 482    CONST_VTBL IWTSVirtualChannelCallbackVtbl* lpVtbl;
 483};
 484
 485#ifdef COBJMACROS
 486#ifndef WIDL_C_INLINE_WRAPPERS
 487/*** IUnknown methods ***/
 488#define IWTSVirtualChannelCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 489#define IWTSVirtualChannelCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
 490#define IWTSVirtualChannelCallback_Release(This) (This)->lpVtbl->Release(This)
 491/*** IWTSVirtualChannelCallback methods ***/
 492#define IWTSVirtualChannelCallback_OnDataReceived(This,cbSize,pBuffer) (This)->lpVtbl->OnDataReceived(This,cbSize,pBuffer)
 493#define IWTSVirtualChannelCallback_OnClose(This) (This)->lpVtbl->OnClose(This)
 494#else
 495/*** IUnknown methods ***/
 496static inline HRESULT IWTSVirtualChannelCallback_QueryInterface(IWTSVirtualChannelCallback* This,REFIID riid,void **ppvObject) {
 497    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 498}
 499static inline ULONG IWTSVirtualChannelCallback_AddRef(IWTSVirtualChannelCallback* This) {
 500    return This->lpVtbl->AddRef(This);
 501}
 502static inline ULONG IWTSVirtualChannelCallback_Release(IWTSVirtualChannelCallback* This) {
 503    return This->lpVtbl->Release(This);
 504}
 505/*** IWTSVirtualChannelCallback methods ***/
 506static inline HRESULT IWTSVirtualChannelCallback_OnDataReceived(IWTSVirtualChannelCallback* This,ULONG cbSize,BYTE *pBuffer) {
 507    return This->lpVtbl->OnDataReceived(This,cbSize,pBuffer);
 508}
 509static inline HRESULT IWTSVirtualChannelCallback_OnClose(IWTSVirtualChannelCallback* This) {
 510    return This->lpVtbl->OnClose(This);
 511}
 512#endif
 513#endif
 514
 515#endif
 516
 517
 518#endif  /* __IWTSVirtualChannelCallback_INTERFACE_DEFINED__ */
 519
 520#define TS_VC_LISTENER_STATIC_CHANNEL 0x00000001
 521/*****************************************************************************
 522 * IWTSVirtualChannelManager interface
 523 */
 524#ifndef __IWTSVirtualChannelManager_INTERFACE_DEFINED__
 525#define __IWTSVirtualChannelManager_INTERFACE_DEFINED__
 526
 527DEFINE_GUID(IID_IWTSVirtualChannelManager, 0xa1230205, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98);
 528#if defined(__cplusplus) && !defined(CINTERFACE)
 529MIDL_INTERFACE("a1230205-d6a7-11d8-b9fd-000bdbd1f198")
 530IWTSVirtualChannelManager : public IUnknown
 531{
 532    virtual HRESULT STDMETHODCALLTYPE CreateListener(
 533        const char *pszChannelName,
 534        ULONG uFlags,
 535        IWTSListenerCallback *pListenerCallback,
 536        IWTSListener **ppListener) = 0;
 537
 538};
 539#ifdef __CRT_UUID_DECL
 540__CRT_UUID_DECL(IWTSVirtualChannelManager, 0xa1230205, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98)
 541#endif
 542#else
 543typedef struct IWTSVirtualChannelManagerVtbl {
 544    BEGIN_INTERFACE
 545
 546    /*** IUnknown methods ***/
 547    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 548        IWTSVirtualChannelManager *This,
 549        REFIID riid,
 550        void **ppvObject);
 551
 552    ULONG (STDMETHODCALLTYPE *AddRef)(
 553        IWTSVirtualChannelManager *This);
 554
 555    ULONG (STDMETHODCALLTYPE *Release)(
 556        IWTSVirtualChannelManager *This);
 557
 558    /*** IWTSVirtualChannelManager methods ***/
 559    HRESULT (STDMETHODCALLTYPE *CreateListener)(
 560        IWTSVirtualChannelManager *This,
 561        const char *pszChannelName,
 562        ULONG uFlags,
 563        IWTSListenerCallback *pListenerCallback,
 564        IWTSListener **ppListener);
 565
 566    END_INTERFACE
 567} IWTSVirtualChannelManagerVtbl;
 568
 569interface IWTSVirtualChannelManager {
 570    CONST_VTBL IWTSVirtualChannelManagerVtbl* lpVtbl;
 571};
 572
 573#ifdef COBJMACROS
 574#ifndef WIDL_C_INLINE_WRAPPERS
 575/*** IUnknown methods ***/
 576#define IWTSVirtualChannelManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 577#define IWTSVirtualChannelManager_AddRef(This) (This)->lpVtbl->AddRef(This)
 578#define IWTSVirtualChannelManager_Release(This) (This)->lpVtbl->Release(This)
 579/*** IWTSVirtualChannelManager methods ***/
 580#define IWTSVirtualChannelManager_CreateListener(This,pszChannelName,uFlags,pListenerCallback,ppListener) (This)->lpVtbl->CreateListener(This,pszChannelName,uFlags,pListenerCallback,ppListener)
 581#else
 582/*** IUnknown methods ***/
 583static inline HRESULT IWTSVirtualChannelManager_QueryInterface(IWTSVirtualChannelManager* This,REFIID riid,void **ppvObject) {
 584    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 585}
 586static inline ULONG IWTSVirtualChannelManager_AddRef(IWTSVirtualChannelManager* This) {
 587    return This->lpVtbl->AddRef(This);
 588}
 589static inline ULONG IWTSVirtualChannelManager_Release(IWTSVirtualChannelManager* This) {
 590    return This->lpVtbl->Release(This);
 591}
 592/*** IWTSVirtualChannelManager methods ***/
 593static inline HRESULT IWTSVirtualChannelManager_CreateListener(IWTSVirtualChannelManager* This,const char *pszChannelName,ULONG uFlags,IWTSListenerCallback *pListenerCallback,IWTSListener **ppListener) {
 594    return This->lpVtbl->CreateListener(This,pszChannelName,uFlags,pListenerCallback,ppListener);
 595}
 596#endif
 597#endif
 598
 599#endif
 600
 601
 602#endif  /* __IWTSVirtualChannelManager_INTERFACE_DEFINED__ */
 603
 604/*****************************************************************************
 605 * IWTSVirtualChannel interface
 606 */
 607#ifndef __IWTSVirtualChannel_INTERFACE_DEFINED__
 608#define __IWTSVirtualChannel_INTERFACE_DEFINED__
 609
 610DEFINE_GUID(IID_IWTSVirtualChannel, 0xa1230207, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98);
 611#if defined(__cplusplus) && !defined(CINTERFACE)
 612MIDL_INTERFACE("a1230207-d6a7-11d8-b9fd-000bdbd1f198")
 613IWTSVirtualChannel : public IUnknown
 614{
 615    virtual HRESULT STDMETHODCALLTYPE Write(
 616        ULONG cbSize,
 617        BYTE *pBuffer,
 618        IUnknown *pReserved) = 0;
 619
 620    virtual HRESULT STDMETHODCALLTYPE Close(
 621        ) = 0;
 622
 623};
 624#ifdef __CRT_UUID_DECL
 625__CRT_UUID_DECL(IWTSVirtualChannel, 0xa1230207, 0xd6a7, 0x11d8, 0xb9,0xfd, 0x00,0x0b,0xdb,0xd1,0xf1,0x98)
 626#endif
 627#else
 628typedef struct IWTSVirtualChannelVtbl {
 629    BEGIN_INTERFACE
 630
 631    /*** IUnknown methods ***/
 632    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 633        IWTSVirtualChannel *This,
 634        REFIID riid,
 635        void **ppvObject);
 636
 637    ULONG (STDMETHODCALLTYPE *AddRef)(
 638        IWTSVirtualChannel *This);
 639
 640    ULONG (STDMETHODCALLTYPE *Release)(
 641        IWTSVirtualChannel *This);
 642
 643    /*** IWTSVirtualChannel methods ***/
 644    HRESULT (STDMETHODCALLTYPE *Write)(
 645        IWTSVirtualChannel *This,
 646        ULONG cbSize,
 647        BYTE *pBuffer,
 648        IUnknown *pReserved);
 649
 650    HRESULT (STDMETHODCALLTYPE *Close)(
 651        IWTSVirtualChannel *This);
 652
 653    END_INTERFACE
 654} IWTSVirtualChannelVtbl;
 655
 656interface IWTSVirtualChannel {
 657    CONST_VTBL IWTSVirtualChannelVtbl* lpVtbl;
 658};
 659
 660#ifdef COBJMACROS
 661#ifndef WIDL_C_INLINE_WRAPPERS
 662/*** IUnknown methods ***/
 663#define IWTSVirtualChannel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 664#define IWTSVirtualChannel_AddRef(This) (This)->lpVtbl->AddRef(This)
 665#define IWTSVirtualChannel_Release(This) (This)->lpVtbl->Release(This)
 666/*** IWTSVirtualChannel methods ***/
 667#define IWTSVirtualChannel_Write(This,cbSize,pBuffer,pReserved) (This)->lpVtbl->Write(This,cbSize,pBuffer,pReserved)
 668#define IWTSVirtualChannel_Close(This) (This)->lpVtbl->Close(This)
 669#else
 670/*** IUnknown methods ***/
 671static inline HRESULT IWTSVirtualChannel_QueryInterface(IWTSVirtualChannel* This,REFIID riid,void **ppvObject) {
 672    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 673}
 674static inline ULONG IWTSVirtualChannel_AddRef(IWTSVirtualChannel* This) {
 675    return This->lpVtbl->AddRef(This);
 676}
 677static inline ULONG IWTSVirtualChannel_Release(IWTSVirtualChannel* This) {
 678    return This->lpVtbl->Release(This);
 679}
 680/*** IWTSVirtualChannel methods ***/
 681static inline HRESULT IWTSVirtualChannel_Write(IWTSVirtualChannel* This,ULONG cbSize,BYTE *pBuffer,IUnknown *pReserved) {
 682    return This->lpVtbl->Write(This,cbSize,pBuffer,pReserved);
 683}
 684static inline HRESULT IWTSVirtualChannel_Close(IWTSVirtualChannel* This) {
 685    return This->lpVtbl->Close(This);
 686}
 687#endif
 688#endif
 689
 690#endif
 691
 692
 693#endif  /* __IWTSVirtualChannel_INTERFACE_DEFINED__ */
 694
 695EXTERN_GUID( RDCLIENT_BITMAP_RENDER_SERVICE, 0xe4cc08cb, 0x942e, 0x4b19, 0x85, 0x4, 0xbd, 0x5a, 0x89, 0xa7, 0x47, 0xf5);
 696/*****************************************************************************
 697 * IWTSPluginServiceProvider interface
 698 */
 699#ifndef __IWTSPluginServiceProvider_INTERFACE_DEFINED__
 700#define __IWTSPluginServiceProvider_INTERFACE_DEFINED__
 701
 702DEFINE_GUID(IID_IWTSPluginServiceProvider, 0xd3e07363, 0x087c, 0x476c, 0x86,0xa7, 0xdb,0xb1,0x5f,0x46,0xdd,0xb4);
 703#if defined(__cplusplus) && !defined(CINTERFACE)
 704MIDL_INTERFACE("d3e07363-087c-476c-86a7-dbb15f46ddb4")
 705IWTSPluginServiceProvider : public IUnknown
 706{
 707    virtual HRESULT STDMETHODCALLTYPE GetService(
 708        GUID ServiceId,
 709        IUnknown **ppunkObject) = 0;
 710
 711};
 712#ifdef __CRT_UUID_DECL
 713__CRT_UUID_DECL(IWTSPluginServiceProvider, 0xd3e07363, 0x087c, 0x476c, 0x86,0xa7, 0xdb,0xb1,0x5f,0x46,0xdd,0xb4)
 714#endif
 715#else
 716typedef struct IWTSPluginServiceProviderVtbl {
 717    BEGIN_INTERFACE
 718
 719    /*** IUnknown methods ***/
 720    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 721        IWTSPluginServiceProvider *This,
 722        REFIID riid,
 723        void **ppvObject);
 724
 725    ULONG (STDMETHODCALLTYPE *AddRef)(
 726        IWTSPluginServiceProvider *This);
 727
 728    ULONG (STDMETHODCALLTYPE *Release)(
 729        IWTSPluginServiceProvider *This);
 730
 731    /*** IWTSPluginServiceProvider methods ***/
 732    HRESULT (STDMETHODCALLTYPE *GetService)(
 733        IWTSPluginServiceProvider *This,
 734        GUID ServiceId,
 735        IUnknown **ppunkObject);
 736
 737    END_INTERFACE
 738} IWTSPluginServiceProviderVtbl;
 739
 740interface IWTSPluginServiceProvider {
 741    CONST_VTBL IWTSPluginServiceProviderVtbl* lpVtbl;
 742};
 743
 744#ifdef COBJMACROS
 745#ifndef WIDL_C_INLINE_WRAPPERS
 746/*** IUnknown methods ***/
 747#define IWTSPluginServiceProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 748#define IWTSPluginServiceProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
 749#define IWTSPluginServiceProvider_Release(This) (This)->lpVtbl->Release(This)
 750/*** IWTSPluginServiceProvider methods ***/
 751#define IWTSPluginServiceProvider_GetService(This,ServiceId,ppunkObject) (This)->lpVtbl->GetService(This,ServiceId,ppunkObject)
 752#else
 753/*** IUnknown methods ***/
 754static inline HRESULT IWTSPluginServiceProvider_QueryInterface(IWTSPluginServiceProvider* This,REFIID riid,void **ppvObject) {
 755    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 756}
 757static inline ULONG IWTSPluginServiceProvider_AddRef(IWTSPluginServiceProvider* This) {
 758    return This->lpVtbl->AddRef(This);
 759}
 760static inline ULONG IWTSPluginServiceProvider_Release(IWTSPluginServiceProvider* This) {
 761    return This->lpVtbl->Release(This);
 762}
 763/*** IWTSPluginServiceProvider methods ***/
 764static inline HRESULT IWTSPluginServiceProvider_GetService(IWTSPluginServiceProvider* This,GUID ServiceId,IUnknown **ppunkObject) {
 765    return This->lpVtbl->GetService(This,ServiceId,ppunkObject);
 766}
 767#endif
 768#endif
 769
 770#endif
 771
 772
 773#endif  /* __IWTSPluginServiceProvider_INTERFACE_DEFINED__ */
 774
 775typedef struct __BITMAP_RENDERER_STATISTICS {
 776    DWORD dwFramesDelivered;
 777    DWORD dwFramesDropped;
 778} BITMAP_RENDERER_STATISTICS;
 779typedef struct __BITMAP_RENDERER_STATISTICS *PBITMAP_RENDERER_STATISTICS;
 780/*****************************************************************************
 781 * IWTSBitmapRenderer interface
 782 */
 783#ifndef __IWTSBitmapRenderer_INTERFACE_DEFINED__
 784#define __IWTSBitmapRenderer_INTERFACE_DEFINED__
 785
 786DEFINE_GUID(IID_IWTSBitmapRenderer, 0x5b7acc97, 0xf3c9, 0x46f7, 0x8c,0x5b, 0xfa,0x68,0x5d,0x34,0x41,0xb1);
 787#if defined(__cplusplus) && !defined(CINTERFACE)
 788MIDL_INTERFACE("5b7acc97-f3c9-46f7-8c5b-fa685d3441b1")
 789IWTSBitmapRenderer : public IUnknown
 790{
 791    virtual HRESULT STDMETHODCALLTYPE Render(
 792        GUID imageFormat,
 793        DWORD dwWidth,
 794        DWORD dwHeight,
 795        LONG cbStride,
 796        DWORD cbImageBuffer,
 797        BYTE *pImageBuffer) = 0;
 798
 799    virtual HRESULT STDMETHODCALLTYPE GetRendererStatistics(
 800        BITMAP_RENDERER_STATISTICS *pStatistics) = 0;
 801
 802    virtual HRESULT STDMETHODCALLTYPE RemoveMapping(
 803        ) = 0;
 804
 805};
 806#ifdef __CRT_UUID_DECL
 807__CRT_UUID_DECL(IWTSBitmapRenderer, 0x5b7acc97, 0xf3c9, 0x46f7, 0x8c,0x5b, 0xfa,0x68,0x5d,0x34,0x41,0xb1)
 808#endif
 809#else
 810typedef struct IWTSBitmapRendererVtbl {
 811    BEGIN_INTERFACE
 812
 813    /*** IUnknown methods ***/
 814    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 815        IWTSBitmapRenderer *This,
 816        REFIID riid,
 817        void **ppvObject);
 818
 819    ULONG (STDMETHODCALLTYPE *AddRef)(
 820        IWTSBitmapRenderer *This);
 821
 822    ULONG (STDMETHODCALLTYPE *Release)(
 823        IWTSBitmapRenderer *This);
 824
 825    /*** IWTSBitmapRenderer methods ***/
 826    HRESULT (STDMETHODCALLTYPE *Render)(
 827        IWTSBitmapRenderer *This,
 828        GUID imageFormat,
 829        DWORD dwWidth,
 830        DWORD dwHeight,
 831        LONG cbStride,
 832        DWORD cbImageBuffer,
 833        BYTE *pImageBuffer);
 834
 835    HRESULT (STDMETHODCALLTYPE *GetRendererStatistics)(
 836        IWTSBitmapRenderer *This,
 837        BITMAP_RENDERER_STATISTICS *pStatistics);
 838
 839    HRESULT (STDMETHODCALLTYPE *RemoveMapping)(
 840        IWTSBitmapRenderer *This);
 841
 842    END_INTERFACE
 843} IWTSBitmapRendererVtbl;
 844
 845interface IWTSBitmapRenderer {
 846    CONST_VTBL IWTSBitmapRendererVtbl* lpVtbl;
 847};
 848
 849#ifdef COBJMACROS
 850#ifndef WIDL_C_INLINE_WRAPPERS
 851/*** IUnknown methods ***/
 852#define IWTSBitmapRenderer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 853#define IWTSBitmapRenderer_AddRef(This) (This)->lpVtbl->AddRef(This)
 854#define IWTSBitmapRenderer_Release(This) (This)->lpVtbl->Release(This)
 855/*** IWTSBitmapRenderer methods ***/
 856#define IWTSBitmapRenderer_Render(This,imageFormat,dwWidth,dwHeight,cbStride,cbImageBuffer,pImageBuffer) (This)->lpVtbl->Render(This,imageFormat,dwWidth,dwHeight,cbStride,cbImageBuffer,pImageBuffer)
 857#define IWTSBitmapRenderer_GetRendererStatistics(This,pStatistics) (This)->lpVtbl->GetRendererStatistics(This,pStatistics)
 858#define IWTSBitmapRenderer_RemoveMapping(This) (This)->lpVtbl->RemoveMapping(This)
 859#else
 860/*** IUnknown methods ***/
 861static inline HRESULT IWTSBitmapRenderer_QueryInterface(IWTSBitmapRenderer* This,REFIID riid,void **ppvObject) {
 862    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 863}
 864static inline ULONG IWTSBitmapRenderer_AddRef(IWTSBitmapRenderer* This) {
 865    return This->lpVtbl->AddRef(This);
 866}
 867static inline ULONG IWTSBitmapRenderer_Release(IWTSBitmapRenderer* This) {
 868    return This->lpVtbl->Release(This);
 869}
 870/*** IWTSBitmapRenderer methods ***/
 871static inline HRESULT IWTSBitmapRenderer_Render(IWTSBitmapRenderer* This,GUID imageFormat,DWORD dwWidth,DWORD dwHeight,LONG cbStride,DWORD cbImageBuffer,BYTE *pImageBuffer) {
 872    return This->lpVtbl->Render(This,imageFormat,dwWidth,dwHeight,cbStride,cbImageBuffer,pImageBuffer);
 873}
 874static inline HRESULT IWTSBitmapRenderer_GetRendererStatistics(IWTSBitmapRenderer* This,BITMAP_RENDERER_STATISTICS *pStatistics) {
 875    return This->lpVtbl->GetRendererStatistics(This,pStatistics);
 876}
 877static inline HRESULT IWTSBitmapRenderer_RemoveMapping(IWTSBitmapRenderer* This) {
 878    return This->lpVtbl->RemoveMapping(This);
 879}
 880#endif
 881#endif
 882
 883#endif
 884
 885
 886#endif  /* __IWTSBitmapRenderer_INTERFACE_DEFINED__ */
 887
 888/*****************************************************************************
 889 * IWTSBitmapRendererCallback interface
 890 */
 891#ifndef __IWTSBitmapRendererCallback_INTERFACE_DEFINED__
 892#define __IWTSBitmapRendererCallback_INTERFACE_DEFINED__
 893
 894DEFINE_GUID(IID_IWTSBitmapRendererCallback, 0xd782928e, 0xfe4e, 0x4e77, 0xae,0x90, 0x9c,0xd0,0xb3,0xe3,0xb3,0x53);
 895#if defined(__cplusplus) && !defined(CINTERFACE)
 896MIDL_INTERFACE("d782928e-fe4e-4e77-ae90-9cd0b3e3b353")
 897IWTSBitmapRendererCallback : public IUnknown
 898{
 899    virtual HRESULT STDMETHODCALLTYPE OnTargetSizeChanged(
 900        RECT rcNewSize) = 0;
 901
 902};
 903#ifdef __CRT_UUID_DECL
 904__CRT_UUID_DECL(IWTSBitmapRendererCallback, 0xd782928e, 0xfe4e, 0x4e77, 0xae,0x90, 0x9c,0xd0,0xb3,0xe3,0xb3,0x53)
 905#endif
 906#else
 907typedef struct IWTSBitmapRendererCallbackVtbl {
 908    BEGIN_INTERFACE
 909
 910    /*** IUnknown methods ***/
 911    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 912        IWTSBitmapRendererCallback *This,
 913        REFIID riid,
 914        void **ppvObject);
 915
 916    ULONG (STDMETHODCALLTYPE *AddRef)(
 917        IWTSBitmapRendererCallback *This);
 918
 919    ULONG (STDMETHODCALLTYPE *Release)(
 920        IWTSBitmapRendererCallback *This);
 921
 922    /*** IWTSBitmapRendererCallback methods ***/
 923    HRESULT (STDMETHODCALLTYPE *OnTargetSizeChanged)(
 924        IWTSBitmapRendererCallback *This,
 925        RECT rcNewSize);
 926
 927    END_INTERFACE
 928} IWTSBitmapRendererCallbackVtbl;
 929
 930interface IWTSBitmapRendererCallback {
 931    CONST_VTBL IWTSBitmapRendererCallbackVtbl* lpVtbl;
 932};
 933
 934#ifdef COBJMACROS
 935#ifndef WIDL_C_INLINE_WRAPPERS
 936/*** IUnknown methods ***/
 937#define IWTSBitmapRendererCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 938#define IWTSBitmapRendererCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
 939#define IWTSBitmapRendererCallback_Release(This) (This)->lpVtbl->Release(This)
 940/*** IWTSBitmapRendererCallback methods ***/
 941#define IWTSBitmapRendererCallback_OnTargetSizeChanged(This,rcNewSize) (This)->lpVtbl->OnTargetSizeChanged(This,rcNewSize)
 942#else
 943/*** IUnknown methods ***/
 944static inline HRESULT IWTSBitmapRendererCallback_QueryInterface(IWTSBitmapRendererCallback* This,REFIID riid,void **ppvObject) {
 945    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 946}
 947static inline ULONG IWTSBitmapRendererCallback_AddRef(IWTSBitmapRendererCallback* This) {
 948    return This->lpVtbl->AddRef(This);
 949}
 950static inline ULONG IWTSBitmapRendererCallback_Release(IWTSBitmapRendererCallback* This) {
 951    return This->lpVtbl->Release(This);
 952}
 953/*** IWTSBitmapRendererCallback methods ***/
 954static inline HRESULT IWTSBitmapRendererCallback_OnTargetSizeChanged(IWTSBitmapRendererCallback* This,RECT rcNewSize) {
 955    return This->lpVtbl->OnTargetSizeChanged(This,rcNewSize);
 956}
 957#endif
 958#endif
 959
 960#endif
 961
 962
 963#endif  /* __IWTSBitmapRendererCallback_INTERFACE_DEFINED__ */
 964
 965/*****************************************************************************
 966 * IWTSBitmapRenderService interface
 967 */
 968#ifndef __IWTSBitmapRenderService_INTERFACE_DEFINED__
 969#define __IWTSBitmapRenderService_INTERFACE_DEFINED__
 970
 971DEFINE_GUID(IID_IWTSBitmapRenderService, 0xea326091, 0x05fe, 0x40c1, 0xb4,0x9c, 0x3d,0x2e,0xf4,0x62,0x6a,0x0e);
 972#if defined(__cplusplus) && !defined(CINTERFACE)
 973MIDL_INTERFACE("ea326091-05fe-40c1-b49c-3d2ef4626a0e")
 974IWTSBitmapRenderService : public IUnknown
 975{
 976    virtual HRESULT STDMETHODCALLTYPE GetMappedRenderer(
 977        UINT64 mappingId,
 978        IWTSBitmapRendererCallback *pMappedRendererCallback,
 979        IWTSBitmapRenderer **ppMappedRenderer) = 0;
 980
 981};
 982#ifdef __CRT_UUID_DECL
 983__CRT_UUID_DECL(IWTSBitmapRenderService, 0xea326091, 0x05fe, 0x40c1, 0xb4,0x9c, 0x3d,0x2e,0xf4,0x62,0x6a,0x0e)
 984#endif
 985#else
 986typedef struct IWTSBitmapRenderServiceVtbl {
 987    BEGIN_INTERFACE
 988
 989    /*** IUnknown methods ***/
 990    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 991        IWTSBitmapRenderService *This,
 992        REFIID riid,
 993        void **ppvObject);
 994
 995    ULONG (STDMETHODCALLTYPE *AddRef)(
 996        IWTSBitmapRenderService *This);
 997
 998    ULONG (STDMETHODCALLTYPE *Release)(
 999        IWTSBitmapRenderService *This);
1000
1001    /*** IWTSBitmapRenderService methods ***/
1002    HRESULT (STDMETHODCALLTYPE *GetMappedRenderer)(
1003        IWTSBitmapRenderService *This,
1004        UINT64 mappingId,
1005        IWTSBitmapRendererCallback *pMappedRendererCallback,
1006        IWTSBitmapRenderer **ppMappedRenderer);
1007
1008    END_INTERFACE
1009} IWTSBitmapRenderServiceVtbl;
1010
1011interface IWTSBitmapRenderService {
1012    CONST_VTBL IWTSBitmapRenderServiceVtbl* lpVtbl;
1013};
1014
1015#ifdef COBJMACROS
1016#ifndef WIDL_C_INLINE_WRAPPERS
1017/*** IUnknown methods ***/
1018#define IWTSBitmapRenderService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1019#define IWTSBitmapRenderService_AddRef(This) (This)->lpVtbl->AddRef(This)
1020#define IWTSBitmapRenderService_Release(This) (This)->lpVtbl->Release(This)
1021/*** IWTSBitmapRenderService methods ***/
1022#define IWTSBitmapRenderService_GetMappedRenderer(This,mappingId,pMappedRendererCallback,ppMappedRenderer) (This)->lpVtbl->GetMappedRenderer(This,mappingId,pMappedRendererCallback,ppMappedRenderer)
1023#else
1024/*** IUnknown methods ***/
1025static inline HRESULT IWTSBitmapRenderService_QueryInterface(IWTSBitmapRenderService* This,REFIID riid,void **ppvObject) {
1026    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1027}
1028static inline ULONG IWTSBitmapRenderService_AddRef(IWTSBitmapRenderService* This) {
1029    return This->lpVtbl->AddRef(This);
1030}
1031static inline ULONG IWTSBitmapRenderService_Release(IWTSBitmapRenderService* This) {
1032    return This->lpVtbl->Release(This);
1033}
1034/*** IWTSBitmapRenderService methods ***/
1035static inline HRESULT IWTSBitmapRenderService_GetMappedRenderer(IWTSBitmapRenderService* This,UINT64 mappingId,IWTSBitmapRendererCallback *pMappedRendererCallback,IWTSBitmapRenderer **ppMappedRenderer) {
1036    return This->lpVtbl->GetMappedRenderer(This,mappingId,pMappedRendererCallback,ppMappedRenderer);
1037}
1038#endif
1039#endif
1040
1041#endif
1042
1043
1044#endif  /* __IWTSBitmapRenderService_INTERFACE_DEFINED__ */
1045
1046#endif /* WINAPI_PARTITION_DESKTOP */
1047/* Begin additional prototypes for all interfaces */
1048
1049ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
1050unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
1051unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
1052void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
1053
1054/* End additional prototypes */
1055
1056#ifdef __cplusplus
1057}
1058#endif
1059
1060#endif /* __tsvirtualchannels_h__ */