home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / com / labrador / labrador.h < prev    next >
C/C++ Source or Header  |  1998-04-02  |  9KB  |  375 lines

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 3.03.0110 */
  5. /* at Thu Apr 02 17:47:49 1998
  6.  */
  7. /* Compiler settings for Labrador.idl:
  8.     Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext
  9.     error checks: none
  10. */
  11. //@@MIDL_FILE_HEADING(  )
  12.  
  13.  
  14. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  15. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  16. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  17. #endif
  18.  
  19. #include "rpc.h"
  20. #include "rpcndr.h"
  21.  
  22. #ifndef __RPCNDR_H_VERSION__
  23. #error this stub requires an updated version of <rpcndr.h>
  24. #endif // __RPCNDR_H_VERSION__
  25.  
  26. #ifndef COM_NO_WINDOWS_H
  27. #include "windows.h"
  28. #include "ole2.h"
  29. #endif /*COM_NO_WINDOWS_H*/
  30.  
  31. #ifndef __Labrador_h__
  32. #define __Labrador_h__
  33.  
  34. #ifdef __cplusplus
  35. extern "C"{
  36. #endif 
  37.  
  38. /* Forward Declarations */ 
  39.  
  40. #ifndef __IMammal_FWD_DEFINED__
  41. #define __IMammal_FWD_DEFINED__
  42. typedef interface IMammal IMammal;
  43. #endif     /* __IMammal_FWD_DEFINED__ */
  44.  
  45.  
  46. #ifndef __IDog_FWD_DEFINED__
  47. #define __IDog_FWD_DEFINED__
  48. typedef interface IDog IDog;
  49. #endif     /* __IDog_FWD_DEFINED__ */
  50.  
  51.  
  52. #ifndef __Labrador_FWD_DEFINED__
  53. #define __Labrador_FWD_DEFINED__
  54.  
  55. #ifdef __cplusplus
  56. typedef class Labrador Labrador;
  57. #else
  58. typedef struct Labrador Labrador;
  59. #endif /* __cplusplus */
  60.  
  61. #endif     /* __Labrador_FWD_DEFINED__ */
  62.  
  63.  
  64. /* header files for imported files */
  65. #include "unknwn.h"
  66. #include "oaidl.h"
  67.  
  68. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  69. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  70.  
  71. /****************************************
  72.  * Generated header for interface: __MIDL_itf_Labrador_0000
  73.  * at Thu Apr 02 17:47:49 1998
  74.  * using MIDL 3.03.0110
  75.  ****************************************/
  76. /* [local] */ 
  77.  
  78.  
  79. typedef USHORT __RPC_FAR MY_BSTR[ 32 ];
  80.  
  81.  
  82.  
  83. extern RPC_IF_HANDLE __MIDL_itf_Labrador_0000_v0_0_c_ifspec;
  84. extern RPC_IF_HANDLE __MIDL_itf_Labrador_0000_v0_0_s_ifspec;
  85.  
  86. #ifndef __IMammal_INTERFACE_DEFINED__
  87. #define __IMammal_INTERFACE_DEFINED__
  88.  
  89. /****************************************
  90.  * Generated header for interface: IMammal
  91.  * at Thu Apr 02 17:47:49 1998
  92.  * using MIDL 3.03.0110
  93.  ****************************************/
  94. /* [unique][helpstring][uuid][object] */ 
  95.  
  96.  
  97.  
  98. EXTERN_C const IID IID_IMammal;
  99.  
  100. #if defined(__cplusplus) && !defined(CINTERFACE)
  101.     
  102.     MIDL_INTERFACE("62A33E85-932A-11CF-B056-00A0C90348FA")
  103.     IMammal : public IUnknown
  104.     {
  105.     public:
  106.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE GetSpeciesName( 
  107.             /* [out] */ MY_BSTR p) = 0;
  108.         
  109.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE IsAlive( 
  110.             /* [out] */ BOOL __RPC_FAR *pBool) = 0;
  111.         
  112.     };
  113.     
  114. #else     /* C style interface */
  115.  
  116.     typedef struct IMammalVtbl
  117.     {
  118.         BEGIN_INTERFACE
  119.         
  120.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  121.             IMammal __RPC_FAR * This,
  122.             /* [in] */ REFIID riid,
  123.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  124.         
  125.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  126.             IMammal __RPC_FAR * This);
  127.         
  128.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  129.             IMammal __RPC_FAR * This);
  130.         
  131.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpeciesName )( 
  132.             IMammal __RPC_FAR * This,
  133.             /* [out] */ MY_BSTR p);
  134.         
  135.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsAlive )( 
  136.             IMammal __RPC_FAR * This,
  137.             /* [out] */ BOOL __RPC_FAR *pBool);
  138.         
  139.         END_INTERFACE
  140.     } IMammalVtbl;
  141.  
  142.     interface IMammal
  143.     {
  144.         CONST_VTBL struct IMammalVtbl __RPC_FAR *lpVtbl;
  145.     };
  146.  
  147.     
  148.  
  149. #ifdef COBJMACROS
  150.  
  151.  
  152. #define IMammal_QueryInterface(This,riid,ppvObject)    \
  153.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  154.  
  155. #define IMammal_AddRef(This)    \
  156.     (This)->lpVtbl -> AddRef(This)
  157.  
  158. #define IMammal_Release(This)    \
  159.     (This)->lpVtbl -> Release(This)
  160.  
  161.  
  162. #define IMammal_GetSpeciesName(This,p)    \
  163.     (This)->lpVtbl -> GetSpeciesName(This,p)
  164.  
  165. #define IMammal_IsAlive(This,pBool)    \
  166.     (This)->lpVtbl -> IsAlive(This,pBool)
  167.  
  168. #endif /* COBJMACROS */
  169.  
  170.  
  171. #endif     /* C style interface */
  172.  
  173.  
  174.  
  175. /* [id] */ HRESULT STDMETHODCALLTYPE IMammal_GetSpeciesName_Proxy( 
  176.     IMammal __RPC_FAR * This,
  177.     /* [out] */ MY_BSTR p);
  178.  
  179.  
  180. void __RPC_STUB IMammal_GetSpeciesName_Stub(
  181.     IRpcStubBuffer *This,
  182.     IRpcChannelBuffer *_pRpcChannelBuffer,
  183.     PRPC_MESSAGE _pRpcMessage,
  184.     DWORD *_pdwStubPhase);
  185.  
  186.  
  187. /* [id] */ HRESULT STDMETHODCALLTYPE IMammal_IsAlive_Proxy( 
  188.     IMammal __RPC_FAR * This,
  189.     /* [out] */ BOOL __RPC_FAR *pBool);
  190.  
  191.  
  192. void __RPC_STUB IMammal_IsAlive_Stub(
  193.     IRpcStubBuffer *This,
  194.     IRpcChannelBuffer *_pRpcChannelBuffer,
  195.     PRPC_MESSAGE _pRpcMessage,
  196.     DWORD *_pdwStubPhase);
  197.  
  198.  
  199.  
  200. #endif     /* __IMammal_INTERFACE_DEFINED__ */
  201.  
  202.  
  203. #ifndef __IDog_INTERFACE_DEFINED__
  204. #define __IDog_INTERFACE_DEFINED__
  205.  
  206. /****************************************
  207.  * Generated header for interface: IDog
  208.  * at Thu Apr 02 17:47:49 1998
  209.  * using MIDL 3.03.0110
  210.  ****************************************/
  211. /* [unique][helpstring][uuid][object] */ 
  212.  
  213.  
  214.  
  215. EXTERN_C const IID IID_IDog;
  216.  
  217. #if defined(__cplusplus) && !defined(CINTERFACE)
  218.     
  219.     MIDL_INTERFACE("62A33E86-932A-11CF-B056-00A0C90348FA")
  220.     IDog : public IUnknown
  221.     {
  222.     public:
  223.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE GetPetName( 
  224.             /* [out] */ MY_BSTR p) = 0;
  225.         
  226.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE SetPetName( 
  227.             /* [in] */ MY_BSTR p) = 0;
  228.         
  229.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE IsBarking( 
  230.             /* [out] */ BOOL __RPC_FAR *pBool) = 0;
  231.         
  232.     };
  233.     
  234. #else     /* C style interface */
  235.  
  236.     typedef struct IDogVtbl
  237.     {
  238.         BEGIN_INTERFACE
  239.         
  240.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  241.             IDog __RPC_FAR * This,
  242.             /* [in] */ REFIID riid,
  243.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  244.         
  245.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  246.             IDog __RPC_FAR * This);
  247.         
  248.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  249.             IDog __RPC_FAR * This);
  250.         
  251.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPetName )( 
  252.             IDog __RPC_FAR * This,
  253.             /* [out] */ MY_BSTR p);
  254.         
  255.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPetName )( 
  256.             IDog __RPC_FAR * This,
  257.             /* [in] */ MY_BSTR p);
  258.         
  259.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsBarking )( 
  260.             IDog __RPC_FAR * This,
  261.             /* [out] */ BOOL __RPC_FAR *pBool);
  262.         
  263.         END_INTERFACE
  264.     } IDogVtbl;
  265.  
  266.     interface IDog
  267.     {
  268.         CONST_VTBL struct IDogVtbl __RPC_FAR *lpVtbl;
  269.     };
  270.  
  271.     
  272.  
  273. #ifdef COBJMACROS
  274.  
  275.  
  276. #define IDog_QueryInterface(This,riid,ppvObject)    \
  277.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  278.  
  279. #define IDog_AddRef(This)    \
  280.     (This)->lpVtbl -> AddRef(This)
  281.  
  282. #define IDog_Release(This)    \
  283.     (This)->lpVtbl -> Release(This)
  284.  
  285.  
  286. #define IDog_GetPetName(This,p)    \
  287.     (This)->lpVtbl -> GetPetName(This,p)
  288.  
  289. #define IDog_SetPetName(This,p)    \
  290.     (This)->lpVtbl -> SetPetName(This,p)
  291.  
  292. #define IDog_IsBarking(This,pBool)    \
  293.     (This)->lpVtbl -> IsBarking(This,pBool)
  294.  
  295. #endif /* COBJMACROS */
  296.  
  297.  
  298. #endif     /* C style interface */
  299.  
  300.  
  301.  
  302. /* [id] */ HRESULT STDMETHODCALLTYPE IDog_GetPetName_Proxy( 
  303.     IDog __RPC_FAR * This,
  304.     /* [out] */ MY_BSTR p);
  305.  
  306.  
  307. void __RPC_STUB IDog_GetPetName_Stub(
  308.     IRpcStubBuffer *This,
  309.     IRpcChannelBuffer *_pRpcChannelBuffer,
  310.     PRPC_MESSAGE _pRpcMessage,
  311.     DWORD *_pdwStubPhase);
  312.  
  313.  
  314. /* [id] */ HRESULT STDMETHODCALLTYPE IDog_SetPetName_Proxy( 
  315.     IDog __RPC_FAR * This,
  316.     /* [in] */ MY_BSTR p);
  317.  
  318.  
  319. void __RPC_STUB IDog_SetPetName_Stub(
  320.     IRpcStubBuffer *This,
  321.     IRpcChannelBuffer *_pRpcChannelBuffer,
  322.     PRPC_MESSAGE _pRpcMessage,
  323.     DWORD *_pdwStubPhase);
  324.  
  325.  
  326. /* [id] */ HRESULT STDMETHODCALLTYPE IDog_IsBarking_Proxy( 
  327.     IDog __RPC_FAR * This,
  328.     /* [out] */ BOOL __RPC_FAR *pBool);
  329.  
  330.  
  331. void __RPC_STUB IDog_IsBarking_Stub(
  332.     IRpcStubBuffer *This,
  333.     IRpcChannelBuffer *_pRpcChannelBuffer,
  334.     PRPC_MESSAGE _pRpcMessage,
  335.     DWORD *_pdwStubPhase);
  336.  
  337.  
  338.  
  339. #endif     /* __IDog_INTERFACE_DEFINED__ */
  340.  
  341.  
  342.  
  343. #ifndef __LABRADORLib_LIBRARY_DEFINED__
  344. #define __LABRADORLib_LIBRARY_DEFINED__
  345.  
  346. /****************************************
  347.  * Generated header for library: LABRADORLib
  348.  * at Thu Apr 02 17:47:49 1998
  349.  * using MIDL 3.03.0110
  350.  ****************************************/
  351. /* [helpstring][version][uuid] */ 
  352.  
  353.  
  354.  
  355. EXTERN_C const IID LIBID_LABRADORLib;
  356.  
  357. EXTERN_C const CLSID CLSID_Labrador;
  358.  
  359. #ifdef __cplusplus
  360.  
  361. class DECLSPEC_UUID("62A33E89-932A-11CF-B056-00A0C90348FA")
  362. Labrador;
  363. #endif
  364. #endif /* __LABRADORLib_LIBRARY_DEFINED__ */
  365.  
  366. /* Additional Prototypes for ALL interfaces */
  367.  
  368. /* end of Additional Prototypes */
  369.  
  370. #ifdef __cplusplus
  371. }
  372. #endif
  373.  
  374. #endif
  375.