ReactOS 0.4.16-dev-980-g00983aa
rpc.h
Go to the documentation of this file.
1
2#if !defined( RPC_NO_WINDOWS_H ) && !defined( MAC ) && !defined( _MAC )
3#ifndef _INC_WINDOWS
4#include <windows.h>
5#endif /* _INC_WINDOWS */
6#endif
7
8#ifndef __RPC_H__
9#define __RPC_H__
10
11#if _MSC_VER > 1000
12#pragma once
13#endif
14
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
20#if defined( MAC ) || defined( _MAC ) || defined(__powerpc__) && !defined(__REACTOS__)
21 #define __RPC_MAC__
22 #define __RPC_WIN32__
23 #include <pshpack2.h>
24
25#else
26 #if defined(_M_IA64) || defined(_M_AMD64) || defined(_WIN64)
27 #define __RPC_WIN64__
28 #else
29 #define __RPC_WIN32__
30 #endif
31#endif
32
33#include <basetsd.h>
34
35#if defined(__RPC_WIN64__)
36 #include <pshpack8.h>
37#endif
38
39#ifndef __MIDL_USER_DEFINED
40 #define midl_user_allocate MIDL_user_allocate
41 #define midl_user_free MIDL_user_free
42 #define __MIDL_USER_DEFINED
43#endif
44
45
46typedef void * I_RPC_HANDLE;
47#ifndef __ROS_LONG64__
48typedef long RPC_STATUS;
49#else
50typedef int RPC_STATUS;
51#endif
52#define __RPC_FAR
53
54#if defined(__RPC_WIN32__) || defined(__RPC_WIN64__)
55 #define RPC_UNICODE_SUPPORTED
56#endif
57
58
59#if !defined(__RPC_MAC__)
60 #define __RPC_API __stdcall
61 #define __RPC_USER __stdcall
62 #define __RPC_STUB __stdcall
63 #define RPC_ENTRY __stdcall
64#else
65 #define __RPC_API
66 #define __RPC_USER
67 #define __RPC_STUB
68 #define RPC_ENTRY
69#endif
70
71
72#ifndef __GNUC__
73 #if !defined(DECLSPEC_IMPORT)
74 #define DECLSPEC_IMPORT
75 #endif
76
77 #if !defined(_RPCRT4_)
78 #define RPCRTAPI DECLSPEC_IMPORT
79 #else
80 #define RPCRTAPI
81 #endif
82
83 #if !defined(_RPCNS4_)
84 #define RPCNSAPI DECLSPEC_IMPORT
85 #else
86 #define RPCNSAPI
87 #endif
88#else
89 #define RPCRTAPI
90 #define RPCNSAPI
91#endif
92
93#ifdef __RPC_MAC__
94 #include <setjmp.h>
95 #define RPCXCWORD (sizeof(jmp_buf)/sizeof(int))
96
97 #pragma warning(push)
98 #pragma warning( disable: 4005 )
99 #include <rpcdce.h>
100 #include <rpcnsi.h>
101 #include <rpcerr.h>
102 #include <rpcmac.h>
103 #pragma warning(pop)
104
105 typedef void (RPC_ENTRY *MACYIELDCALLBACK)(short *) ;
107 RpcMacSetYieldInfo(MACYIELDCALLBACK pfnCallback) ;
108
109 #if !defined(UNALIGNED)
110 #define UNALIGNED
111 #endif
112
113 #include <poppack.h>
114#else
115 #include <rpcdce.h>
116 /* #include <rpcnsi.h> */
117 #include <rpcnterr.h>
118 #include <excpt.h>
119 #include <winerror.h>
120
121 #define RpcTryExcept _SEH2_TRY
122 #define RpcExcept(expr) _SEH2_EXCEPT((expr))
123 #define RpcEndExcept _SEH2_END;
124 #define RpcTryFinally _SEH2_TRY
125 #define RpcFinally _SEH2_FINALLY
126 #define RpcEndFinally _SEH2_END;
127 #define RpcExceptionCode() _SEH2_GetExceptionCode()
128 #define RpcAbnormalTermination() (_SEH2_GetExceptionCode() != 0)
129#endif
130
131#if defined(__RPC_WIN64__)
132 #include <poppack.h>
133#endif
134
135#ifndef RPC_NO_WINDOWS_H
136#include <rpcasync.h>
137#endif
138
139#ifdef __cplusplus
140}
141#endif
142
143#endif
144
145
#define RPC_ENTRY
Definition: rpc.h:63
long RPC_STATUS
Definition: rpc.h:48
void * I_RPC_HANDLE
Definition: rpc.h:46