home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / servprov.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  828b  |  34 lines

  1. #ifndef _SERVPROV_H
  2. #define _SERVPROV_H
  3. #define _OLEIDL_H
  4. #if __GNUC__ >=3
  5. #pragma GCC system_header
  6. #endif
  7.  
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11.  
  12. EXTERN_C const IID IID_IServiceProvider;
  13. #undef INTERFACE
  14. #define INTERFACE IServiceProvider
  15. DECLARE_INTERFACE_(IServiceProvider,IUnknown)
  16. {
  17.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  18.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  19.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  20.     STDMETHOD(QueryService)(THIS_ REFGUID,REFIID,void**) PURE;
  21. };
  22.  
  23. #ifdef COBJMACROS
  24. #define IServiceProvider_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
  25. #define IServiceProvider_AddRef(T) (T)->lpVtbl->AddRef(T)
  26. #define IServiceProvider_Release(T) (T)->lpVtbl->Release(T)
  27. #define IServiceProvider_QueryService(T,a,b,c) (T)->lpVtbl->QueryService(T,a,b,c)
  28. #endif
  29.  
  30. #ifdef __cplusplus
  31. }
  32. #endif
  33. #endif
  34.