COM-c-api.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #pragma once
  2. #if defined(__cplusplus)
  3. #include "os/COM.h"
  4. typedef Il2CppGuid UnityPalIl2CppGuid;
  5. typedef Il2CppIUnknown UnityPalIl2CppIUnknown;
  6. typedef Il2CppVariant UnityPalIl2CppVariant;
  7. typedef Il2CppSafeArray UnityPalIl2CppSafeArray;
  8. typedef Il2CppSafeArrayBound UnityPalIl2CppSafeArrayBound;
  9. #else
  10. typedef struct UnityPalIl2CppGuid UnityPalIl2CppGuid;
  11. typedef struct UnityPalIl2CppIUnknown UnityPalIl2CppIUnknown;
  12. typedef struct UnityPalIl2CppVariant UnityPalIl2CppVariant;
  13. typedef struct UnityPalIl2CppSafeArray UnityPalIl2CppSafeArray;
  14. typedef struct UnityPalIl2CppSafeArrayBound UnityPalIl2CppSafeArrayBound;
  15. #endif
  16. #if defined(__cplusplus)
  17. extern "C"
  18. {
  19. #endif
  20. il2cpp_hresult_t UnityPalCOMCreateInstance(const UnityPalIl2CppGuid& clsid, UnityPalIl2CppIUnknown** object);
  21. il2cpp_hresult_t UnityPalCOMCreateFreeThreadedMarshaler(UnityPalIl2CppIUnknown* outer, UnityPalIl2CppIUnknown** marshal);
  22. void UnityPalCOMVariantInit(UnityPalIl2CppVariant* variant);
  23. il2cpp_hresult_t UnityPalCOMVariantClear(UnityPalIl2CppVariant* variant);
  24. UnityPalIl2CppSafeArray* UnityPalCOMSafeArrayCreate(uint16_t type, uint32_t dimension_count, UnityPalIl2CppSafeArrayBound* bounds);
  25. il2cpp_hresult_t UnityPalCOMSafeArrayDestroy(UnityPalIl2CppSafeArray* safeArray);
  26. il2cpp_hresult_t UnityPalCOMSafeArrayAccessData(UnityPalIl2CppSafeArray* safeArray, void** data);
  27. il2cpp_hresult_t UnityPalCOMSafeArrayUnaccessData(UnityPalIl2CppSafeArray* safeArray);
  28. il2cpp_hresult_t UnityPalCOMSafeArrayGetVartype(UnityPalIl2CppSafeArray* safeArray, uint16_t* type);
  29. uint32_t UnityPalCOMSafeArrayGetDim(UnityPalIl2CppSafeArray* safeArray);
  30. il2cpp_hresult_t UnityPalCOMSafeArrayGetLBound(UnityPalIl2CppSafeArray* safeArray, uint32_t dimention, int32_t* bound);
  31. il2cpp_hresult_t UnityPalCOMSafeArrayGetUBound(UnityPalIl2CppSafeArray* safeArray, uint32_t dimention, int32_t* bound);
  32. #if defined(__cplusplus)
  33. }
  34. #endif