msdatsrc.h 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  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__ 440
  8. #endif
  9. #include "rpc.h"
  10. #include "rpcndr.h"
  11. #ifndef __msdatsrc_h__
  12. #define __msdatsrc_h__
  13. #ifndef __DataSourceListener_FWD_DEFINED__
  14. #define __DataSourceListener_FWD_DEFINED__
  15. typedef struct DataSourceListener DataSourceListener;
  16. #endif
  17. #ifndef __DataSource_FWD_DEFINED__
  18. #define __DataSource_FWD_DEFINED__
  19. typedef struct DataSource DataSource;
  20. #endif
  21. #ifdef __cplusplus
  22. extern "C" {
  23. #endif
  24. #ifndef __MIDL_user_allocate_free_DEFINED__
  25. #define __MIDL_user_allocate_free_DEFINED__
  26. void *__RPC_API MIDL_user_allocate(size_t);
  27. void __RPC_API MIDL_user_free(void *);
  28. #endif
  29. #define IDataSource DataSource
  30. #define IDataSourceListener DataSourceListener
  31. EXTERN_C const IID CATID_DataSource;
  32. EXTERN_C const IID CATID_DataConsumer;
  33. extern RPC_IF_HANDLE __MIDL_itf_msdatsrc_0000_v0_0_c_ifspec;
  34. extern RPC_IF_HANDLE __MIDL_itf_msdatsrc_0000_v0_0_s_ifspec;
  35. #ifndef __MSDATASRC_LIBRARY_DEFINED__
  36. #define __MSDATASRC_LIBRARY_DEFINED__
  37. typedef BSTR DataMember;
  38. EXTERN_C const IID LIBID_MSDATASRC;
  39. #ifndef __DataSourceListener_INTERFACE_DEFINED__
  40. #define __DataSourceListener_INTERFACE_DEFINED__
  41. EXTERN_C const IID IID_DataSourceListener;
  42. #if defined(__cplusplus) && !defined(CINTERFACE)
  43. struct DataSourceListener : public IUnknown {
  44. public:
  45. virtual HRESULT WINAPI dataMemberChanged(DataMember bstrDM) = 0;
  46. virtual HRESULT WINAPI dataMemberAdded(DataMember bstrDM) = 0;
  47. virtual HRESULT WINAPI dataMemberRemoved(DataMember bstrDM) = 0;
  48. };
  49. #else
  50. typedef struct DataSourceListenerVtbl {
  51. BEGIN_INTERFACE
  52. HRESULT (WINAPI *QueryInterface)(DataSourceListener *This,REFIID riid,void **ppvObject);
  53. ULONG (WINAPI *AddRef)(DataSourceListener *This);
  54. ULONG (WINAPI *Release)(DataSourceListener *This);
  55. HRESULT (WINAPI *dataMemberChanged)(DataSourceListener *This,DataMember bstrDM);
  56. HRESULT (WINAPI *dataMemberAdded)(DataSourceListener *This,DataMember bstrDM);
  57. HRESULT (WINAPI *dataMemberRemoved)(DataSourceListener *This,DataMember bstrDM);
  58. END_INTERFACE
  59. } DataSourceListenerVtbl;
  60. struct DataSourceListener {
  61. CONST_VTBL struct DataSourceListenerVtbl *lpVtbl;
  62. };
  63. #ifdef COBJMACROS
  64. #define DataSourceListener_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  65. #define DataSourceListener_AddRef(This) (This)->lpVtbl->AddRef(This)
  66. #define DataSourceListener_Release(This) (This)->lpVtbl->Release(This)
  67. #define DataSourceListener_dataMemberChanged(This,bstrDM) (This)->lpVtbl->dataMemberChanged(This,bstrDM)
  68. #define DataSourceListener_dataMemberAdded(This,bstrDM) (This)->lpVtbl->dataMemberAdded(This,bstrDM)
  69. #define DataSourceListener_dataMemberRemoved(This,bstrDM) (This)->lpVtbl->dataMemberRemoved(This,bstrDM)
  70. #endif
  71. #endif
  72. HRESULT WINAPI DataSourceListener_dataMemberChanged_Proxy(DataSourceListener *This,DataMember bstrDM);
  73. void __RPC_STUB DataSourceListener_dataMemberChanged_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  74. HRESULT WINAPI DataSourceListener_dataMemberAdded_Proxy(DataSourceListener *This,DataMember bstrDM);
  75. void __RPC_STUB DataSourceListener_dataMemberAdded_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  76. HRESULT WINAPI DataSourceListener_dataMemberRemoved_Proxy(DataSourceListener *This,DataMember bstrDM);
  77. void __RPC_STUB DataSourceListener_dataMemberRemoved_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  78. #endif
  79. #ifndef __DataSource_INTERFACE_DEFINED__
  80. #define __DataSource_INTERFACE_DEFINED__
  81. EXTERN_C const IID IID_DataSource;
  82. #if defined(__cplusplus) && !defined(CINTERFACE)
  83. struct DataSource : public IUnknown {
  84. public:
  85. virtual HRESULT WINAPI getDataMember(DataMember bstrDM,REFIID riid,IUnknown **ppunk) = 0;
  86. virtual HRESULT WINAPI getDataMemberName(__LONG32 lIndex,DataMember *pbstrDM) = 0;
  87. virtual HRESULT WINAPI getDataMemberCount(__LONG32 *plCount) = 0;
  88. virtual HRESULT WINAPI addDataSourceListener(DataSourceListener *pDSL) = 0;
  89. virtual HRESULT WINAPI removeDataSourceListener(DataSourceListener *pDSL) = 0;
  90. };
  91. #else
  92. typedef struct DataSourceVtbl {
  93. BEGIN_INTERFACE
  94. HRESULT (WINAPI *QueryInterface)(DataSource *This,REFIID riid,void **ppvObject);
  95. ULONG (WINAPI *AddRef)(DataSource *This);
  96. ULONG (WINAPI *Release)(DataSource *This);
  97. HRESULT (WINAPI *getDataMember)(DataSource *This,DataMember bstrDM,REFIID riid,IUnknown **ppunk);
  98. HRESULT (WINAPI *getDataMemberName)(DataSource *This,__LONG32 lIndex,DataMember *pbstrDM);
  99. HRESULT (WINAPI *getDataMemberCount)(DataSource *This,__LONG32 *plCount);
  100. HRESULT (WINAPI *addDataSourceListener)(DataSource *This,DataSourceListener *pDSL);
  101. HRESULT (WINAPI *removeDataSourceListener)(DataSource *This,DataSourceListener *pDSL);
  102. END_INTERFACE
  103. } DataSourceVtbl;
  104. struct DataSource {
  105. CONST_VTBL struct DataSourceVtbl *lpVtbl;
  106. };
  107. #ifdef COBJMACROS
  108. #define DataSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  109. #define DataSource_AddRef(This) (This)->lpVtbl->AddRef(This)
  110. #define DataSource_Release(This) (This)->lpVtbl->Release(This)
  111. #define DataSource_getDataMember(This,bstrDM,riid,ppunk) (This)->lpVtbl->getDataMember(This,bstrDM,riid,ppunk)
  112. #define DataSource_getDataMemberName(This,lIndex,pbstrDM) (This)->lpVtbl->getDataMemberName(This,lIndex,pbstrDM)
  113. #define DataSource_getDataMemberCount(This,plCount) (This)->lpVtbl->getDataMemberCount(This,plCount)
  114. #define DataSource_addDataSourceListener(This,pDSL) (This)->lpVtbl->addDataSourceListener(This,pDSL)
  115. #define DataSource_removeDataSourceListener(This,pDSL) (This)->lpVtbl->removeDataSourceListener(This,pDSL)
  116. #endif
  117. #endif
  118. HRESULT WINAPI DataSource_getDataMember_Proxy(DataSource *This,DataMember bstrDM,REFIID riid,IUnknown **ppunk);
  119. void __RPC_STUB DataSource_getDataMember_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  120. HRESULT WINAPI DataSource_getDataMemberName_Proxy(DataSource *This,__LONG32 lIndex,DataMember *pbstrDM);
  121. void __RPC_STUB DataSource_getDataMemberName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  122. HRESULT WINAPI DataSource_getDataMemberCount_Proxy(DataSource *This,__LONG32 *plCount);
  123. void __RPC_STUB DataSource_getDataMemberCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  124. HRESULT WINAPI DataSource_addDataSourceListener_Proxy(DataSource *This,DataSourceListener *pDSL);
  125. void __RPC_STUB DataSource_addDataSourceListener_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  126. HRESULT WINAPI DataSource_removeDataSourceListener_Proxy(DataSource *This,DataSourceListener *pDSL);
  127. void __RPC_STUB DataSource_removeDataSourceListener_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  128. #endif
  129. #endif
  130. #ifdef __cplusplus
  131. }
  132. #endif
  133. #endif