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