home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / mtxdm.h < prev    next >
C/C++ Source or Header  |  1998-04-25  |  24KB  |  780 lines

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 3.01.75 */
  5. /* at Thu Sep 11 16:03:06 1997
  6.  */
  7. /* Compiler settings for mtxdm.idl:
  8.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  9.     error checks: none
  10. */
  11. //@@MIDL_FILE_HEADING(  )
  12. #include "rpc.h"
  13. #include "rpcndr.h"
  14. #ifndef COM_NO_WINDOWS_H
  15. #include "windows.h"
  16. #include "ole2.h"
  17. #endif /*COM_NO_WINDOWS_H*/
  18.  
  19. #ifndef __mtxdm_h__
  20. #define __mtxdm_h__
  21.  
  22. #ifdef __cplusplus
  23. extern "C"{
  24. #endif 
  25.  
  26. /* Forward Declarations */ 
  27.  
  28. #ifndef __IDispenserManager_FWD_DEFINED__
  29. #define __IDispenserManager_FWD_DEFINED__
  30. typedef interface IDispenserManager IDispenserManager;
  31. #endif     /* __IDispenserManager_FWD_DEFINED__ */
  32.  
  33.  
  34. #ifndef __IHolder_FWD_DEFINED__
  35. #define __IHolder_FWD_DEFINED__
  36. typedef interface IHolder IHolder;
  37. #endif     /* __IHolder_FWD_DEFINED__ */
  38.  
  39.  
  40. #ifndef __IDispenserDriver_FWD_DEFINED__
  41. #define __IDispenserDriver_FWD_DEFINED__
  42. typedef interface IDispenserDriver IDispenserDriver;
  43. #endif     /* __IDispenserDriver_FWD_DEFINED__ */
  44.  
  45.  
  46. /* header files for imported files */
  47. #include "oaidl.h"
  48.  
  49. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  50. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  51.  
  52. /****************************************
  53.  * Generated header for interface: __MIDL_itf_mtxdm_0000
  54.  * at Thu Sep 11 16:03:06 1997
  55.  * using MIDL 3.01.75
  56.  ****************************************/
  57. /* [local] */ 
  58.  
  59.  
  60. // -----------------------------------------------------------------------    
  61. // mtxdm.h  -- Microsoft Transaction Server Resource Dispenser Interfaces                
  62. //                                                                            
  63. // This file provides the prototypes for the APIs and COM interfaces            
  64. // used by Microsoft Transaction Server Resource Dispensers.                                                    
  65. //                                                                            
  66. // Microsoft Transaction Server 2.0                                                
  67. // Copyright (c) 1996-1997 Microsoft Corporation.  All Rights Reserved.        
  68. // -----------------------------------------------------------------------    
  69.  
  70. #ifndef DECLSPEC_UUID
  71. #if _MSC_VER >= 1100
  72. #define DECLSPEC_UUID(x)    __declspec(uuid(x))
  73. #else
  74. #define DECLSPEC_UUID(x)
  75. #endif
  76. #endif
  77. typedef DWORD RESTYPID;
  78.  
  79. typedef DWORD RESID;
  80.  
  81. typedef LPOLESTR SRESID;
  82.  
  83. typedef LPCOLESTR constSRESID;
  84.  
  85. typedef DWORD RESOURCERATING;
  86.  
  87. typedef long TIMEINSECS;
  88.  
  89. typedef DWORD INSTID;
  90.  
  91. typedef DWORD TRANSID;
  92.  
  93.  
  94.  
  95. //
  96. // Error Codes
  97. //
  98. #define MTXDM_E_ENLISTRESOURCEFAILED 0x8004E100 // return from EnlistResource, is then returned by AllocResource
  99.  
  100. //
  101. // GetDispenserManager
  102. // A Dispenser calls this API to get a reference to DispenserManager.
  103. //
  104. __declspec(dllimport) HRESULT __cdecl GetDispenserManager(IDispenserManager**);
  105.  
  106. //
  107. // IDispenserManager
  108. // Implemented by Dispenser Manager, called by all Dispensers.
  109. //
  110.  
  111.  
  112. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0000_v0_0_c_ifspec;
  113. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0000_v0_0_s_ifspec;
  114.  
  115. #ifndef __IDispenserManager_INTERFACE_DEFINED__
  116. #define __IDispenserManager_INTERFACE_DEFINED__
  117.  
  118. /****************************************
  119.  * Generated header for interface: IDispenserManager
  120.  * at Thu Sep 11 16:03:06 1997
  121.  * using MIDL 3.01.75
  122.  ****************************************/
  123. /* [unique][helpstring][uuid][object] */ 
  124.  
  125.  
  126.  
  127. EXTERN_C const IID IID_IDispenserManager;
  128.  
  129. #if defined(__cplusplus) && !defined(CINTERFACE)
  130.     
  131.     interface DECLSPEC_UUID("5cb31e10-2b5f-11cf-be10-00aa00a2fa25")
  132.     IDispenserManager : public IUnknown
  133.     {
  134.     public:
  135.         virtual HRESULT STDMETHODCALLTYPE RegisterDispenser( 
  136.             /* [in] */ IDispenserDriver __RPC_FAR *__MIDL_0015,
  137.             /* [in] */ LPCOLESTR szDispenserName,
  138.             /* [out] */ IHolder __RPC_FAR *__RPC_FAR *__MIDL_0016) = 0;
  139.         
  140.         virtual HRESULT STDMETHODCALLTYPE GetContext( 
  141.             /* [out] */ INSTID __RPC_FAR *__MIDL_0017,
  142.             /* [out] */ TRANSID __RPC_FAR *__MIDL_0018) = 0;
  143.         
  144.     };
  145.     
  146. #else     /* C style interface */
  147.  
  148.     typedef struct IDispenserManagerVtbl
  149.     {
  150.         BEGIN_INTERFACE
  151.         
  152.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  153.             IDispenserManager __RPC_FAR * This,
  154.             /* [in] */ REFIID riid,
  155.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  156.         
  157.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  158.             IDispenserManager __RPC_FAR * This);
  159.         
  160.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  161.             IDispenserManager __RPC_FAR * This);
  162.         
  163.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RegisterDispenser )( 
  164.             IDispenserManager __RPC_FAR * This,
  165.             /* [in] */ IDispenserDriver __RPC_FAR *__MIDL_0015,
  166.             /* [in] */ LPCOLESTR szDispenserName,
  167.             /* [out] */ IHolder __RPC_FAR *__RPC_FAR *__MIDL_0016);
  168.         
  169.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetContext )( 
  170.             IDispenserManager __RPC_FAR * This,
  171.             /* [out] */ INSTID __RPC_FAR *__MIDL_0017,
  172.             /* [out] */ TRANSID __RPC_FAR *__MIDL_0018);
  173.         
  174.         END_INTERFACE
  175.     } IDispenserManagerVtbl;
  176.  
  177.     interface IDispenserManager
  178.     {
  179.         CONST_VTBL struct IDispenserManagerVtbl __RPC_FAR *lpVtbl;
  180.     };
  181.  
  182.     
  183.  
  184. #ifdef COBJMACROS
  185.  
  186.  
  187. #define IDispenserManager_QueryInterface(This,riid,ppvObject)    \
  188.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  189.  
  190. #define IDispenserManager_AddRef(This)    \
  191.     (This)->lpVtbl -> AddRef(This)
  192.  
  193. #define IDispenserManager_Release(This)    \
  194.     (This)->lpVtbl -> Release(This)
  195.  
  196.  
  197. #define IDispenserManager_RegisterDispenser(This,__MIDL_0015,szDispenserName,__MIDL_0016)    \
  198.     (This)->lpVtbl -> RegisterDispenser(This,__MIDL_0015,szDispenserName,__MIDL_0016)
  199.  
  200. #define IDispenserManager_GetContext(This,__MIDL_0017,__MIDL_0018)    \
  201.     (This)->lpVtbl -> GetContext(This,__MIDL_0017,__MIDL_0018)
  202.  
  203. #endif /* COBJMACROS */
  204.  
  205.  
  206. #endif     /* C style interface */
  207.  
  208.  
  209.  
  210. HRESULT STDMETHODCALLTYPE IDispenserManager_RegisterDispenser_Proxy( 
  211.     IDispenserManager __RPC_FAR * This,
  212.     /* [in] */ IDispenserDriver __RPC_FAR *__MIDL_0015,
  213.     /* [in] */ LPCOLESTR szDispenserName,
  214.     /* [out] */ IHolder __RPC_FAR *__RPC_FAR *__MIDL_0016);
  215.  
  216.  
  217. void __RPC_STUB IDispenserManager_RegisterDispenser_Stub(
  218.     IRpcStubBuffer *This,
  219.     IRpcChannelBuffer *_pRpcChannelBuffer,
  220.     PRPC_MESSAGE _pRpcMessage,
  221.     DWORD *_pdwStubPhase);
  222.  
  223.  
  224. HRESULT STDMETHODCALLTYPE IDispenserManager_GetContext_Proxy( 
  225.     IDispenserManager __RPC_FAR * This,
  226.     /* [out] */ INSTID __RPC_FAR *__MIDL_0017,
  227.     /* [out] */ TRANSID __RPC_FAR *__MIDL_0018);
  228.  
  229.  
  230. void __RPC_STUB IDispenserManager_GetContext_Stub(
  231.     IRpcStubBuffer *This,
  232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  233.     PRPC_MESSAGE _pRpcMessage,
  234.     DWORD *_pdwStubPhase);
  235.  
  236.  
  237.  
  238. #endif     /* __IDispenserManager_INTERFACE_DEFINED__ */
  239.  
  240.  
  241. /****************************************
  242.  * Generated header for interface: __MIDL_itf_mtxdm_0094
  243.  * at Thu Sep 11 16:03:06 1997
  244.  * using MIDL 3.01.75
  245.  ****************************************/
  246. /* [local] */ 
  247.  
  248.  
  249. //
  250. // IHolder
  251. // Implemented by Dispenser Manager, called by one Dispenser.
  252. //
  253.  
  254.  
  255. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0094_v0_0_c_ifspec;
  256. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0094_v0_0_s_ifspec;
  257.  
  258. #ifndef __IHolder_INTERFACE_DEFINED__
  259. #define __IHolder_INTERFACE_DEFINED__
  260.  
  261. /****************************************
  262.  * Generated header for interface: IHolder
  263.  * at Thu Sep 11 16:03:06 1997
  264.  * using MIDL 3.01.75
  265.  ****************************************/
  266. /* [unique][helpstring][uuid][object] */ 
  267.  
  268.  
  269.  
  270. EXTERN_C const IID IID_IHolder;
  271.  
  272. #if defined(__cplusplus) && !defined(CINTERFACE)
  273.     
  274.     interface DECLSPEC_UUID("bf6a1850-2b45-11cf-be10-00aa00a2fa25")
  275.     IHolder : public IUnknown
  276.     {
  277.     public:
  278.         virtual HRESULT STDMETHODCALLTYPE AllocResource( 
  279.             /* [in] */ const RESTYPID __MIDL_0019,
  280.             /* [out] */ RESID __RPC_FAR *__MIDL_0020) = 0;
  281.         
  282.         virtual HRESULT STDMETHODCALLTYPE FreeResource( 
  283.             /* [in] */ const RESID __MIDL_0021) = 0;
  284.         
  285.         virtual HRESULT STDMETHODCALLTYPE TrackResource( 
  286.             /* [in] */ const RESID __MIDL_0022) = 0;
  287.         
  288.         virtual HRESULT STDMETHODCALLTYPE TrackResourceS( 
  289.             /* [in] */ constSRESID __MIDL_0023) = 0;
  290.         
  291.         virtual HRESULT STDMETHODCALLTYPE UntrackResource( 
  292.             /* [in] */ const RESID __MIDL_0024,
  293.             /* [in] */ const BOOL __MIDL_0025) = 0;
  294.         
  295.         virtual HRESULT STDMETHODCALLTYPE UntrackResourceS( 
  296.             /* [in] */ constSRESID __MIDL_0026,
  297.             /* [in] */ const BOOL __MIDL_0027) = 0;
  298.         
  299.         virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
  300.         
  301.         virtual HRESULT STDMETHODCALLTYPE RequestDestroyResource( 
  302.             /* [in] */ const RESID __MIDL_0028) = 0;
  303.         
  304.     };
  305.     
  306. #else     /* C style interface */
  307.  
  308.     typedef struct IHolderVtbl
  309.     {
  310.         BEGIN_INTERFACE
  311.         
  312.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  313.             IHolder __RPC_FAR * This,
  314.             /* [in] */ REFIID riid,
  315.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  316.         
  317.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  318.             IHolder __RPC_FAR * This);
  319.         
  320.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  321.             IHolder __RPC_FAR * This);
  322.         
  323.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AllocResource )( 
  324.             IHolder __RPC_FAR * This,
  325.             /* [in] */ const RESTYPID __MIDL_0019,
  326.             /* [out] */ RESID __RPC_FAR *__MIDL_0020);
  327.         
  328.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeResource )( 
  329.             IHolder __RPC_FAR * This,
  330.             /* [in] */ const RESID __MIDL_0021);
  331.         
  332.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *TrackResource )( 
  333.             IHolder __RPC_FAR * This,
  334.             /* [in] */ const RESID __MIDL_0022);
  335.         
  336.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *TrackResourceS )( 
  337.             IHolder __RPC_FAR * This,
  338.             /* [in] */ constSRESID __MIDL_0023);
  339.         
  340.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UntrackResource )( 
  341.             IHolder __RPC_FAR * This,
  342.             /* [in] */ const RESID __MIDL_0024,
  343.             /* [in] */ const BOOL __MIDL_0025);
  344.         
  345.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UntrackResourceS )( 
  346.             IHolder __RPC_FAR * This,
  347.             /* [in] */ constSRESID __MIDL_0026,
  348.             /* [in] */ const BOOL __MIDL_0027);
  349.         
  350.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
  351.             IHolder __RPC_FAR * This);
  352.         
  353.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RequestDestroyResource )( 
  354.             IHolder __RPC_FAR * This,
  355.             /* [in] */ const RESID __MIDL_0028);
  356.         
  357.         END_INTERFACE
  358.     } IHolderVtbl;
  359.  
  360.     interface IHolder
  361.     {
  362.         CONST_VTBL struct IHolderVtbl __RPC_FAR *lpVtbl;
  363.     };
  364.  
  365.     
  366.  
  367. #ifdef COBJMACROS
  368.  
  369.  
  370. #define IHolder_QueryInterface(This,riid,ppvObject)    \
  371.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  372.  
  373. #define IHolder_AddRef(This)    \
  374.     (This)->lpVtbl -> AddRef(This)
  375.  
  376. #define IHolder_Release(This)    \
  377.     (This)->lpVtbl -> Release(This)
  378.  
  379.  
  380. #define IHolder_AllocResource(This,__MIDL_0019,__MIDL_0020)    \
  381.     (This)->lpVtbl -> AllocResource(This,__MIDL_0019,__MIDL_0020)
  382.  
  383. #define IHolder_FreeResource(This,__MIDL_0021)    \
  384.     (This)->lpVtbl -> FreeResource(This,__MIDL_0021)
  385.  
  386. #define IHolder_TrackResource(This,__MIDL_0022)    \
  387.     (This)->lpVtbl -> TrackResource(This,__MIDL_0022)
  388.  
  389. #define IHolder_TrackResourceS(This,__MIDL_0023)    \
  390.     (This)->lpVtbl -> TrackResourceS(This,__MIDL_0023)
  391.  
  392. #define IHolder_UntrackResource(This,__MIDL_0024,__MIDL_0025)    \
  393.     (This)->lpVtbl -> UntrackResource(This,__MIDL_0024,__MIDL_0025)
  394.  
  395. #define IHolder_UntrackResourceS(This,__MIDL_0026,__MIDL_0027)    \
  396.     (This)->lpVtbl -> UntrackResourceS(This,__MIDL_0026,__MIDL_0027)
  397.  
  398. #define IHolder_Close(This)    \
  399.     (This)->lpVtbl -> Close(This)
  400.  
  401. #define IHolder_RequestDestroyResource(This,__MIDL_0028)    \
  402.     (This)->lpVtbl -> RequestDestroyResource(This,__MIDL_0028)
  403.  
  404. #endif /* COBJMACROS */
  405.  
  406.  
  407. #endif     /* C style interface */
  408.  
  409.  
  410.  
  411. HRESULT STDMETHODCALLTYPE IHolder_AllocResource_Proxy( 
  412.     IHolder __RPC_FAR * This,
  413.     /* [in] */ const RESTYPID __MIDL_0019,
  414.     /* [out] */ RESID __RPC_FAR *__MIDL_0020);
  415.  
  416.  
  417. void __RPC_STUB IHolder_AllocResource_Stub(
  418.     IRpcStubBuffer *This,
  419.     IRpcChannelBuffer *_pRpcChannelBuffer,
  420.     PRPC_MESSAGE _pRpcMessage,
  421.     DWORD *_pdwStubPhase);
  422.  
  423.  
  424. HRESULT STDMETHODCALLTYPE IHolder_FreeResource_Proxy( 
  425.     IHolder __RPC_FAR * This,
  426.     /* [in] */ const RESID __MIDL_0021);
  427.  
  428.  
  429. void __RPC_STUB IHolder_FreeResource_Stub(
  430.     IRpcStubBuffer *This,
  431.     IRpcChannelBuffer *_pRpcChannelBuffer,
  432.     PRPC_MESSAGE _pRpcMessage,
  433.     DWORD *_pdwStubPhase);
  434.  
  435.  
  436. HRESULT STDMETHODCALLTYPE IHolder_TrackResource_Proxy( 
  437.     IHolder __RPC_FAR * This,
  438.     /* [in] */ const RESID __MIDL_0022);
  439.  
  440.  
  441. void __RPC_STUB IHolder_TrackResource_Stub(
  442.     IRpcStubBuffer *This,
  443.     IRpcChannelBuffer *_pRpcChannelBuffer,
  444.     PRPC_MESSAGE _pRpcMessage,
  445.     DWORD *_pdwStubPhase);
  446.  
  447.  
  448. HRESULT STDMETHODCALLTYPE IHolder_TrackResourceS_Proxy( 
  449.     IHolder __RPC_FAR * This,
  450.     /* [in] */ constSRESID __MIDL_0023);
  451.  
  452.  
  453. void __RPC_STUB IHolder_TrackResourceS_Stub(
  454.     IRpcStubBuffer *This,
  455.     IRpcChannelBuffer *_pRpcChannelBuffer,
  456.     PRPC_MESSAGE _pRpcMessage,
  457.     DWORD *_pdwStubPhase);
  458.  
  459.  
  460. HRESULT STDMETHODCALLTYPE IHolder_UntrackResource_Proxy( 
  461.     IHolder __RPC_FAR * This,
  462.     /* [in] */ const RESID __MIDL_0024,
  463.     /* [in] */ const BOOL __MIDL_0025);
  464.  
  465.  
  466. void __RPC_STUB IHolder_UntrackResource_Stub(
  467.     IRpcStubBuffer *This,
  468.     IRpcChannelBuffer *_pRpcChannelBuffer,
  469.     PRPC_MESSAGE _pRpcMessage,
  470.     DWORD *_pdwStubPhase);
  471.  
  472.  
  473. HRESULT STDMETHODCALLTYPE IHolder_UntrackResourceS_Proxy( 
  474.     IHolder __RPC_FAR * This,
  475.     /* [in] */ constSRESID __MIDL_0026,
  476.     /* [in] */ const BOOL __MIDL_0027);
  477.  
  478.  
  479. void __RPC_STUB IHolder_UntrackResourceS_Stub(
  480.     IRpcStubBuffer *This,
  481.     IRpcChannelBuffer *_pRpcChannelBuffer,
  482.     PRPC_MESSAGE _pRpcMessage,
  483.     DWORD *_pdwStubPhase);
  484.  
  485.  
  486. HRESULT STDMETHODCALLTYPE IHolder_Close_Proxy( 
  487.     IHolder __RPC_FAR * This);
  488.  
  489.  
  490. void __RPC_STUB IHolder_Close_Stub(
  491.     IRpcStubBuffer *This,
  492.     IRpcChannelBuffer *_pRpcChannelBuffer,
  493.     PRPC_MESSAGE _pRpcMessage,
  494.     DWORD *_pdwStubPhase);
  495.  
  496.  
  497. HRESULT STDMETHODCALLTYPE IHolder_RequestDestroyResource_Proxy( 
  498.     IHolder __RPC_FAR * This,
  499.     /* [in] */ const RESID __MIDL_0028);
  500.  
  501.  
  502. void __RPC_STUB IHolder_RequestDestroyResource_Stub(
  503.     IRpcStubBuffer *This,
  504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  505.     PRPC_MESSAGE _pRpcMessage,
  506.     DWORD *_pdwStubPhase);
  507.  
  508.  
  509.  
  510. #endif     /* __IHolder_INTERFACE_DEFINED__ */
  511.  
  512.  
  513. /****************************************
  514.  * Generated header for interface: __MIDL_itf_mtxdm_0095
  515.  * at Thu Sep 11 16:03:06 1997
  516.  * using MIDL 3.01.75
  517.  ****************************************/
  518. /* [local] */ 
  519.  
  520.  
  521. //
  522. // IDispenserDriver
  523. // Implemented by a Dispenser, called by Dispenser Manager.
  524. //
  525.  
  526.  
  527. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0095_v0_0_c_ifspec;
  528. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0095_v0_0_s_ifspec;
  529.  
  530. #ifndef __IDispenserDriver_INTERFACE_DEFINED__
  531. #define __IDispenserDriver_INTERFACE_DEFINED__
  532.  
  533. /****************************************
  534.  * Generated header for interface: IDispenserDriver
  535.  * at Thu Sep 11 16:03:06 1997
  536.  * using MIDL 3.01.75
  537.  ****************************************/
  538. /* [unique][helpstring][uuid][object] */ 
  539.  
  540.  
  541.  
  542. EXTERN_C const IID IID_IDispenserDriver;
  543.  
  544. #if defined(__cplusplus) && !defined(CINTERFACE)
  545.     
  546.     interface DECLSPEC_UUID("208b3651-2b48-11cf-be10-00aa00a2fa25")
  547.     IDispenserDriver : public IUnknown
  548.     {
  549.     public:
  550.         virtual HRESULT STDMETHODCALLTYPE CreateResource( 
  551.             /* [in] */ const RESTYPID ResTypId,
  552.             /* [out] */ RESID __RPC_FAR *pResId,
  553.             /* [out] */ TIMEINSECS __RPC_FAR *pSecsFreeBeforeDestroy) = 0;
  554.         
  555.         virtual HRESULT STDMETHODCALLTYPE RateResource( 
  556.             /* [in] */ const RESTYPID ResTypId,
  557.             /* [in] */ const RESID ResId,
  558.             /* [in] */ const BOOL fRequiresTransactionEnlistment,
  559.             /* [out] */ RESOURCERATING __RPC_FAR *pRating) = 0;
  560.         
  561.         virtual HRESULT STDMETHODCALLTYPE EnlistResource( 
  562.             /* [in] */ const RESID ResId,
  563.             /* [in] */ const TRANSID TransId) = 0;
  564.         
  565.         virtual HRESULT STDMETHODCALLTYPE ResetResource( 
  566.             /* [in] */ const RESID ResId) = 0;
  567.         
  568.         virtual HRESULT STDMETHODCALLTYPE DestroyResource( 
  569.             /* [in] */ const RESID ResId) = 0;
  570.         
  571.         virtual HRESULT STDMETHODCALLTYPE DestroyResourceS( 
  572.             /* [in] */ constSRESID ResId) = 0;
  573.         
  574.     };
  575.     
  576. #else     /* C style interface */
  577.  
  578.     typedef struct IDispenserDriverVtbl
  579.     {
  580.         BEGIN_INTERFACE
  581.         
  582.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  583.             IDispenserDriver __RPC_FAR * This,
  584.             /* [in] */ REFIID riid,
  585.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  586.         
  587.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  588.             IDispenserDriver __RPC_FAR * This);
  589.         
  590.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  591.             IDispenserDriver __RPC_FAR * This);
  592.         
  593.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateResource )( 
  594.             IDispenserDriver __RPC_FAR * This,
  595.             /* [in] */ const RESTYPID ResTypId,
  596.             /* [out] */ RESID __RPC_FAR *pResId,
  597.             /* [out] */ TIMEINSECS __RPC_FAR *pSecsFreeBeforeDestroy);
  598.         
  599.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RateResource )( 
  600.             IDispenserDriver __RPC_FAR * This,
  601.             /* [in] */ const RESTYPID ResTypId,
  602.             /* [in] */ const RESID ResId,
  603.             /* [in] */ const BOOL fRequiresTransactionEnlistment,
  604.             /* [out] */ RESOURCERATING __RPC_FAR *pRating);
  605.         
  606.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EnlistResource )( 
  607.             IDispenserDriver __RPC_FAR * This,
  608.             /* [in] */ const RESID ResId,
  609.             /* [in] */ const TRANSID TransId);
  610.         
  611.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ResetResource )( 
  612.             IDispenserDriver __RPC_FAR * This,
  613.             /* [in] */ const RESID ResId);
  614.         
  615.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DestroyResource )( 
  616.             IDispenserDriver __RPC_FAR * This,
  617.             /* [in] */ const RESID ResId);
  618.         
  619.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DestroyResourceS )( 
  620.             IDispenserDriver __RPC_FAR * This,
  621.             /* [in] */ constSRESID ResId);
  622.         
  623.         END_INTERFACE
  624.     } IDispenserDriverVtbl;
  625.  
  626.     interface IDispenserDriver
  627.     {
  628.         CONST_VTBL struct IDispenserDriverVtbl __RPC_FAR *lpVtbl;
  629.     };
  630.  
  631.     
  632.  
  633. #ifdef COBJMACROS
  634.  
  635.  
  636. #define IDispenserDriver_QueryInterface(This,riid,ppvObject)    \
  637.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  638.  
  639. #define IDispenserDriver_AddRef(This)    \
  640.     (This)->lpVtbl -> AddRef(This)
  641.  
  642. #define IDispenserDriver_Release(This)    \
  643.     (This)->lpVtbl -> Release(This)
  644.  
  645.  
  646. #define IDispenserDriver_CreateResource(This,ResTypId,pResId,pSecsFreeBeforeDestroy)    \
  647.     (This)->lpVtbl -> CreateResource(This,ResTypId,pResId,pSecsFreeBeforeDestroy)
  648.  
  649. #define IDispenserDriver_RateResource(This,ResTypId,ResId,fRequiresTransactionEnlistment,pRating)    \
  650.     (This)->lpVtbl -> RateResource(This,ResTypId,ResId,fRequiresTransactionEnlistment,pRating)
  651.  
  652. #define IDispenserDriver_EnlistResource(This,ResId,TransId)    \
  653.     (This)->lpVtbl -> EnlistResource(This,ResId,TransId)
  654.  
  655. #define IDispenserDriver_ResetResource(This,ResId)    \
  656.     (This)->lpVtbl -> ResetResource(This,ResId)
  657.  
  658. #define IDispenserDriver_DestroyResource(This,ResId)    \
  659.     (This)->lpVtbl -> DestroyResource(This,ResId)
  660.  
  661. #define IDispenserDriver_DestroyResourceS(This,ResId)    \
  662.     (This)->lpVtbl -> DestroyResourceS(This,ResId)
  663.  
  664. #endif /* COBJMACROS */
  665.  
  666.  
  667. #endif     /* C style interface */
  668.  
  669.  
  670.  
  671. HRESULT STDMETHODCALLTYPE IDispenserDriver_CreateResource_Proxy( 
  672.     IDispenserDriver __RPC_FAR * This,
  673.     /* [in] */ const RESTYPID ResTypId,
  674.     /* [out] */ RESID __RPC_FAR *pResId,
  675.     /* [out] */ TIMEINSECS __RPC_FAR *pSecsFreeBeforeDestroy);
  676.  
  677.  
  678. void __RPC_STUB IDispenserDriver_CreateResource_Stub(
  679.     IRpcStubBuffer *This,
  680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  681.     PRPC_MESSAGE _pRpcMessage,
  682.     DWORD *_pdwStubPhase);
  683.  
  684.  
  685. HRESULT STDMETHODCALLTYPE IDispenserDriver_RateResource_Proxy( 
  686.     IDispenserDriver __RPC_FAR * This,
  687.     /* [in] */ const RESTYPID ResTypId,
  688.     /* [in] */ const RESID ResId,
  689.     /* [in] */ const BOOL fRequiresTransactionEnlistment,
  690.     /* [out] */ RESOURCERATING __RPC_FAR *pRating);
  691.  
  692.  
  693. void __RPC_STUB IDispenserDriver_RateResource_Stub(
  694.     IRpcStubBuffer *This,
  695.     IRpcChannelBuffer *_pRpcChannelBuffer,
  696.     PRPC_MESSAGE _pRpcMessage,
  697.     DWORD *_pdwStubPhase);
  698.  
  699.  
  700. HRESULT STDMETHODCALLTYPE IDispenserDriver_EnlistResource_Proxy( 
  701.     IDispenserDriver __RPC_FAR * This,
  702.     /* [in] */ const RESID ResId,
  703.     /* [in] */ const TRANSID TransId);
  704.  
  705.  
  706. void __RPC_STUB IDispenserDriver_EnlistResource_Stub(
  707.     IRpcStubBuffer *This,
  708.     IRpcChannelBuffer *_pRpcChannelBuffer,
  709.     PRPC_MESSAGE _pRpcMessage,
  710.     DWORD *_pdwStubPhase);
  711.  
  712.  
  713. HRESULT STDMETHODCALLTYPE IDispenserDriver_ResetResource_Proxy( 
  714.     IDispenserDriver __RPC_FAR * This,
  715.     /* [in] */ const RESID ResId);
  716.  
  717.  
  718. void __RPC_STUB IDispenserDriver_ResetResource_Stub(
  719.     IRpcStubBuffer *This,
  720.     IRpcChannelBuffer *_pRpcChannelBuffer,
  721.     PRPC_MESSAGE _pRpcMessage,
  722.     DWORD *_pdwStubPhase);
  723.  
  724.  
  725. HRESULT STDMETHODCALLTYPE IDispenserDriver_DestroyResource_Proxy( 
  726.     IDispenserDriver __RPC_FAR * This,
  727.     /* [in] */ const RESID ResId);
  728.  
  729.  
  730. void __RPC_STUB IDispenserDriver_DestroyResource_Stub(
  731.     IRpcStubBuffer *This,
  732.     IRpcChannelBuffer *_pRpcChannelBuffer,
  733.     PRPC_MESSAGE _pRpcMessage,
  734.     DWORD *_pdwStubPhase);
  735.  
  736.  
  737. HRESULT STDMETHODCALLTYPE IDispenserDriver_DestroyResourceS_Proxy( 
  738.     IDispenserDriver __RPC_FAR * This,
  739.     /* [in] */ constSRESID ResId);
  740.  
  741.  
  742. void __RPC_STUB IDispenserDriver_DestroyResourceS_Stub(
  743.     IRpcStubBuffer *This,
  744.     IRpcChannelBuffer *_pRpcChannelBuffer,
  745.     PRPC_MESSAGE _pRpcMessage,
  746.     DWORD *_pdwStubPhase);
  747.  
  748.  
  749.  
  750. #endif     /* __IDispenserDriver_INTERFACE_DEFINED__ */
  751.  
  752.  
  753. /****************************************
  754.  * Generated header for interface: __MIDL_itf_mtxdm_0096
  755.  * at Thu Sep 11 16:03:06 1997
  756.  * using MIDL 3.01.75
  757.  ****************************************/
  758. /* [local] */ 
  759.  
  760.  
  761. #ifdef USE_UUIDOF_FOR_IID_
  762. #define  IID_IHolder             __uuidof(IIHolder)
  763. #define  IID_IDispenserManager   __uuidof(IDispenserManager)
  764. #define  IID_IDispenserDriver    __uuidof(IDispenserDriver)
  765. #endif
  766.  
  767.  
  768. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0096_v0_0_c_ifspec;
  769. extern RPC_IF_HANDLE __MIDL_itf_mtxdm_0096_v0_0_s_ifspec;
  770.  
  771. /* Additional Prototypes for ALL interfaces */
  772.  
  773. /* end of Additional Prototypes */
  774.  
  775. #ifdef __cplusplus
  776. }
  777. #endif
  778.  
  779. #endif
  780.