bemapiset.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. /**
  2. * This file is part of the mingw-w64 runtime package.
  3. * No warranty is given; refer to the file DISCLAIMER within this package.
  4. */
  5. #ifndef _BEM_H_
  6. #define _BEM_H_
  7. #include <apiset.h>
  8. #include <apisetcconv.h>
  9. #include <minwindef.h>
  10. #include <minwinbase.h>
  11. #ifdef __cplusplus
  12. extern "C" {
  13. #endif
  14. #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
  15. #ifndef __WIDL__
  16. typedef struct _CONTRACT_DESCRIPTION CONTRACT_DESCRIPTION;
  17. typedef struct _BEM_REFERENCE BEM_REFERENCE;
  18. typedef void (CALLBACK *BEM_FREE_INTERFACE_CALLBACK) (void *interfaceInstance);
  19. HRESULT WINAPI BemCreateReference (REFGUID iid, void *interfaceInstance, BEM_FREE_INTERFACE_CALLBACK freeCallback, BEM_REFERENCE **reference);
  20. HRESULT WINAPI BemCreateContractFrom (LPCWSTR dllPath, REFGUID extensionId, const CONTRACT_DESCRIPTION *contractDescription, void *hostContract, void **contract);
  21. HRESULT WINAPI BemCopyReference (BEM_REFERENCE *reference, BEM_REFERENCE **copiedReference);
  22. void WINAPI BemFreeReference (BEM_REFERENCE *reference);
  23. void WINAPI BemFreeContract (void *contract);
  24. #endif
  25. #endif
  26. #ifdef __cplusplus
  27. }
  28. #endif
  29. #endif