rpcsal.h (3796B)
1 #pragma once 2 3 #if __GNUC__ >=3 4 #pragma GCC system_header 5 #endif 6 7 #define RPC_range(min,max) 8 9 #define __RPC__in 10 #define __RPC__in_string 11 #define __RPC__in_opt_string 12 #define __RPC__deref_opt_in_opt 13 #define __RPC__opt_in_opt_string 14 #define __RPC__in_ecount(size) 15 #define __RPC__in_ecount_full(size) 16 #define __RPC__in_ecount_full_string(size) 17 #define __RPC__in_ecount_part(size, length) 18 #define __RPC__in_ecount_full_opt(size) 19 #define __RPC__in_ecount_full_opt_string(size) 20 #define __RPC__inout_ecount_full_opt_string(size) 21 #define __RPC__in_ecount_part_opt(size, length) 22 23 #define __RPC__deref_in 24 #define __RPC__deref_in_string 25 #define __RPC__deref_opt_in 26 #define __RPC__deref_in_opt 27 #define __RPC__deref_in_ecount(size) 28 #define __RPC__deref_in_ecount_part(size, length) 29 #define __RPC__deref_in_ecount_full(size) 30 #define __RPC__deref_in_ecount_full_opt(size) 31 #define __RPC__deref_in_ecount_full_string(size) 32 #define __RPC__deref_in_ecount_full_opt_string(size) 33 #define __RPC__deref_in_ecount_opt(size) 34 #define __RPC__deref_in_ecount_opt_string(size) 35 #define __RPC__deref_in_ecount_part_opt(size, length) 36 37 // [out] 38 #define __RPC__out 39 #define __RPC__out_ecount(size) 40 #define __RPC__out_ecount_part(size, length) 41 #define __RPC__out_ecount_full(size) 42 #define __RPC__out_ecount_full_string(size) 43 44 // [in,out] 45 #define __RPC__inout 46 #define __RPC__inout_string 47 #define __RPC__opt_inout 48 #define __RPC__inout_ecount(size) 49 #define __RPC__inout_ecount_part(size, length) 50 #define __RPC__inout_ecount_full(size) 51 #define __RPC__inout_ecount_full_string(size) 52 53 // [in,unique] 54 #define __RPC__in_opt 55 #define __RPC__in_ecount_opt(size) 56 57 58 // [in,out,unique] 59 #define __RPC__inout_opt 60 #define __RPC__inout_ecount_opt(size) 61 #define __RPC__inout_ecount_part_opt(size, length) 62 #define __RPC__inout_ecount_full_opt(size) 63 #define __RPC__inout_ecount_full_string(size) 64 65 // [out] ** 66 #define __RPC__deref_out 67 #define __RPC__deref_out_string 68 #define __RPC__deref_out_opt 69 #define __RPC__deref_out_opt_string 70 #define __RPC__deref_out_ecount(size) 71 #define __RPC__deref_out_ecount_part(size, length) 72 #define __RPC__deref_out_ecount_full(size) 73 #define __RPC__deref_out_ecount_full_string(size) 74 75 76 // [in,out] **, second pointer decoration. 77 #define __RPC__deref_inout 78 #define __RPC__deref_inout_string 79 #define __RPC__deref_inout_opt 80 #define __RPC__deref_inout_opt_string 81 #define __RPC__deref_inout_ecount_full(size) 82 #define __RPC__deref_inout_ecount_full_string(size) 83 #define __RPC__deref_inout_ecount_opt(size) 84 #define __RPC__deref_inout_ecount_part_opt(size, length) 85 #define __RPC__deref_inout_ecount_full_opt(size) 86 #define __RPC__deref_inout_ecount_full_opt_string(size) 87 88 // #define __RPC_out_opt out_opt is not allowed in rpc 89 90 // [in,out,unique] 91 #define __RPC__deref_opt_inout 92 #define __RPC__deref_opt_inout_string 93 #define __RPC__deref_opt_inout_ecount(size) 94 #define __RPC__deref_opt_inout_ecount_part(size, length) 95 #define __RPC__deref_opt_inout_ecount_full(size) 96 #define __RPC__deref_opt_inout_ecount_full_string(size) 97 98 #define __RPC__deref_out_ecount_opt(size) 99 #define __RPC__deref_out_ecount_part_opt(size, length) 100 #define __RPC__deref_out_ecount_full_opt(size) 101 #define __RPC__deref_out_ecount_full_opt_string(size) 102 103 #define __RPC__deref_opt_inout_opt 104 #define __RPC__deref_opt_inout_opt_string 105 #define __RPC__deref_opt_inout_ecount_opt(size) 106 #define __RPC__deref_opt_inout_ecount_part_opt(size, length) 107 #define __RPC__deref_opt_inout_ecount_full_opt(size) 108 #define __RPC__deref_opt_inout_ecount_full_opt_string(size) 109 110 #define __RPC_full_pointer 111 #define __RPC_unique_pointer 112 #define __RPC_ref_pointer 113 #define __RPC_string