midles.h 5.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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 __MIDLES_H__
  7. #define __MIDLES_H__
  8. #include <rpcndr.h>
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. typedef enum {
  13. MES_ENCODE,MES_DECODE,MES_ENCODE_NDR64
  14. } MIDL_ES_CODE;
  15. typedef enum {
  16. MES_INCREMENTAL_HANDLE,MES_FIXED_BUFFER_HANDLE,MES_DYNAMIC_BUFFER_HANDLE
  17. } MIDL_ES_HANDLE_STYLE;
  18. typedef void (__RPC_API *MIDL_ES_ALLOC)(void *state,char **pbuffer,unsigned int *psize);
  19. typedef void (__RPC_API *MIDL_ES_WRITE)(void *state,char *buffer,unsigned int size);
  20. typedef void (__RPC_API *MIDL_ES_READ)(void *state,char **pbuffer,unsigned int *psize);
  21. typedef handle_t MIDL_ES_HANDLE;
  22. typedef struct _MIDL_TYPE_PICKLING_INFO {
  23. unsigned __LONG32 Version;
  24. unsigned __LONG32 Flags;
  25. UINT_PTR Reserved[3];
  26. } MIDL_TYPE_PICKLING_INFO,*PMIDL_TYPE_PICKLING_INFO;
  27. RPC_STATUS RPC_ENTRY MesEncodeIncrementalHandleCreate(void *UserState,MIDL_ES_ALLOC AllocFn,MIDL_ES_WRITE WriteFn,handle_t *pHandle);
  28. RPC_STATUS RPC_ENTRY MesDecodeIncrementalHandleCreate(void *UserState,MIDL_ES_READ ReadFn,handle_t *pHandle);
  29. RPC_STATUS RPC_ENTRY MesIncrementalHandleReset(handle_t Handle,void *UserState,MIDL_ES_ALLOC AllocFn,MIDL_ES_WRITE WriteFn,MIDL_ES_READ ReadFn,MIDL_ES_CODE Operation);
  30. RPC_STATUS RPC_ENTRY MesEncodeFixedBufferHandleCreate(char *pBuffer,unsigned __LONG32 BufferSize,unsigned __LONG32 *pEncodedSize,handle_t *pHandle);
  31. RPC_STATUS RPC_ENTRY MesEncodeDynBufferHandleCreate(char **pBuffer,unsigned __LONG32 *pEncodedSize,handle_t *pHandle);
  32. RPC_STATUS RPC_ENTRY MesDecodeBufferHandleCreate(char *pBuffer,unsigned __LONG32 BufferSize,handle_t *pHandle);
  33. RPC_STATUS RPC_ENTRY MesBufferHandleReset(handle_t Handle,unsigned __LONG32 HandleStyle,MIDL_ES_CODE Operation,char **pBuffer,unsigned __LONG32 BufferSize,unsigned __LONG32 *pEncodedSize);
  34. RPC_STATUS RPC_ENTRY MesHandleFree(handle_t Handle);
  35. RPC_STATUS RPC_ENTRY MesInqProcEncodingId(handle_t Handle,PRPC_SYNTAX_IDENTIFIER pInterfaceId,unsigned __LONG32 *pProcNum);
  36. size_t RPC_ENTRY NdrMesSimpleTypeAlignSize (handle_t);
  37. void RPC_ENTRY NdrMesSimpleTypeDecode(handle_t Handle,void *pObject,short Size);
  38. void RPC_ENTRY NdrMesSimpleTypeEncode(handle_t Handle,const MIDL_STUB_DESC *pStubDesc,const void *pObject,short Size);
  39. size_t RPC_ENTRY NdrMesTypeAlignSize(handle_t Handle,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,const void *pObject);
  40. void RPC_ENTRY NdrMesTypeEncode(handle_t Handle,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,const void *pObject);
  41. void RPC_ENTRY NdrMesTypeDecode(handle_t Handle,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,void *pObject);
  42. size_t RPC_ENTRY NdrMesTypeAlignSize2(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,const void *pObject);
  43. void RPC_ENTRY NdrMesTypeEncode2(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,const void *pObject);
  44. void RPC_ENTRY NdrMesTypeDecode2(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,void *pObject);
  45. void RPC_ENTRY NdrMesTypeFree2(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,void *pObject);
  46. void RPC_VAR_ENTRY NdrMesProcEncodeDecode(handle_t Handle,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,...);
  47. CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrMesProcEncodeDecode2(handle_t Handle,const MIDL_STUB_DESC *pStubDesc,PFORMAT_STRING pFormatString,...);
  48. size_t RPC_ENTRY NdrMesTypeAlignSize3(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,const unsigned __LONG32 **ArrTypeOffset,unsigned __LONG32 nTypeIndex,const void *pObject);
  49. void RPC_ENTRY NdrMesTypeEncode3(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,const unsigned __LONG32 **ArrTypeOffset,unsigned __LONG32 nTypeIndex,const void *pObject);
  50. void RPC_ENTRY NdrMesTypeDecode3(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,const unsigned __LONG32 **ArrTypeOffset,unsigned __LONG32 nTypeIndex,void *pObject);
  51. void RPC_ENTRY NdrMesTypeFree3(handle_t Handle,const MIDL_TYPE_PICKLING_INFO *pPicklingInfo,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,const unsigned __LONG32 **ArrTypeOffset,unsigned __LONG32 nTypeIndex,void *pObject);
  52. CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrMesProcEncodeDecode3(handle_t Handle,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned __LONG32 nProcNum,void *pReturnValue,...);
  53. void RPC_ENTRY NdrMesSimpleTypeDecodeAll(handle_t Handle,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,void *pObject,short Size);
  54. void RPC_ENTRY NdrMesSimpleTypeEncodeAll(handle_t Handle,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo,const void *pObject,short Size);
  55. size_t RPC_ENTRY NdrMesSimpleTypeAlignSizeAll (handle_t Handle,const MIDL_STUBLESS_PROXY_INFO *pProxyInfo);
  56. #ifdef __cplusplus
  57. }
  58. #endif
  59. #endif