Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenrpcfc.h
Go to the documentation of this file.
00001 /* 00002 * RPC format chars, as found by studying MIDL output. 00003 * Some, but not all, usage of these are explained on MSDN. 00004 */ 00005 00006 #ifndef __WINE_RPCFC_H 00007 #define __WINE_RPCFC_H 00008 00009 /* base types */ 00010 #define RPC_FC_BYTE 0x01 00011 #define RPC_FC_CHAR 0x02 00012 #define RPC_FC_SMALL 0x03 00013 #define RPC_FC_USMALL 0x04 00014 #define RPC_FC_WCHAR 0x05 00015 #define RPC_FC_SHORT 0x06 00016 #define RPC_FC_USHORT 0x07 00017 #define RPC_FC_LONG 0x08 00018 #define RPC_FC_ULONG 0x09 00019 #define RPC_FC_FLOAT 0x0a 00020 #define RPC_FC_HYPER 0x0b 00021 #define RPC_FC_DOUBLE 0x0c 00022 #define RPC_FC_ENUM16 0x0d 00023 #define RPC_FC_ENUM32 0x0e 00024 #define RPC_FC_IGNORE 0x0f 00025 #define RPC_FC_ERROR_STATUS_T 0x10 00026 00027 /* other stuff */ 00028 #define RPC_FC_RP 0x11 /* reference pointer */ 00029 #define RPC_FC_UP 0x12 /* unique pointer */ 00030 #define RPC_FC_OP 0x13 /* unique pointer in object ? */ 00031 #define RPC_FC_FP 0x14 /* full pointer */ 00032 00033 #define RPC_FC_STRUCT 0x15 /* simple structure */ 00034 /* FC_STRUCT: align-1, NdrFcShort(size), fields */ 00035 00036 #define RPC_FC_PSTRUCT 0x16 /* simple structure w/ pointers */ 00037 /* FC_PTRUCT: align-1, NdrFcShort(size), ptrs, fields */ 00038 00039 #define RPC_FC_CSTRUCT 0x17 /* conformant structure */ 00040 00041 #define RPC_FC_CPSTRUCT 0x18 /* conformant structure w/ pointers */ 00042 00043 #define RPC_FC_CVSTRUCT 0x19 /* conformant varying struct */ 00044 00045 #define RPC_FC_BOGUS_STRUCT 0x1a /* complex structure */ 00046 00047 #define RPC_FC_CARRAY 0x1b /* conformant array */ 00048 /* FC_CARRAY: align-1, NdrFcShort(size), conformance, ptrs, fields */ 00049 #define RPC_FC_CVARRAY 0x1c /* conformant varying array */ 00050 /* FC_CARRAY: align-1, NdrFcShort(size), conformance, variance, ptrs, fields */ 00051 #define RPC_FC_SMFARRAY 0x1d /* small (<64K) fixed array */ 00052 /* FC_SMFARRAY: align-1, NdrFcShort(size), ptrs, fields */ 00053 00054 #define RPC_FC_LGFARRAY 0x1e /* large (>= 64k) fixed array */ 00055 00056 #define RPC_FC_SMVARRAY 0x1f /* small (<64k) varying array */ 00057 00058 #define RPC_FC_LGVARRAY 0x20 /* large (>= 64k) varying array */ 00059 00060 #define RPC_FC_BOGUS_ARRAY 0x21 /* complex array */ 00061 00062 #define RPC_FC_C_CSTRING 0x22 00063 #define RPC_FC_C_SSTRING 0x24 00064 #define RPC_FC_C_WSTRING 0x25 00065 #define RPC_FC_CSTRING 0x26 00066 #define RPC_FC_SSTRING 0x28 00067 #define RPC_FC_WSTRING 0x29 00068 00069 #define RPC_FC_ENCAPSULATED_UNION 0x2a 00070 #define RPC_FC_NON_ENCAPSULATED_UNION 0x2b 00071 00072 #define RPC_FC_BYTE_COUNT_POINTER 0x2c /* [byte_count] ACF attribute */ 00073 00074 #define RPC_FC_TRANSMIT_AS 0x2d 00075 #define RPC_FC_REPRESENT_AS 0x2e 00076 00077 #define RPC_FC_IP 0x2f /* interface pointer */ 00078 /* FC_IP: FC_CONSTANT_IID iid */ 00079 /* FC_IP: FC_PAD correlation */ 00080 00081 #define RPC_FC_BIND_CONTEXT 0x30 00082 00083 #define RPC_FC_BIND_GENERIC 0x31 00084 #define RPC_FC_BIND_PRIMITIVE 0x32 00085 #define RPC_FC_AUTO_HANDLE 0x33 00086 #define RPC_FC_CALLBACK_HANDLE 0x34 00087 00088 #define RPC_FC_POINTER 0x36 00089 00090 #define RPC_FC_ALIGNM2 0x37 00091 #define RPC_FC_ALIGNM4 0x38 00092 #define RPC_FC_ALIGNM8 0x39 00093 00094 #define RPC_FC_STRUCTPAD1 0x3d 00095 #define RPC_FC_STRUCTPAD2 0x3e 00096 #define RPC_FC_STRUCTPAD3 0x3f 00097 #define RPC_FC_STRUCTPAD4 0x40 00098 #define RPC_FC_STRUCTPAD5 0x41 00099 #define RPC_FC_STRUCTPAD6 0x42 00100 #define RPC_FC_STRUCTPAD7 0x43 00101 00102 #define RPC_FC_STRING_SIZED 0x44 00103 00104 #define RPC_FC_NO_REPEAT 0x46 00105 #define RPC_FC_FIXED_REPEAT 0x47 00106 #define RPC_FC_VARIABLE_REPEAT 0x48 00107 #define RPC_FC_FIXED_OFFSET 0x49 00108 #define RPC_FC_VARIABLE_OFFSET 0x4a 00109 00110 #define RPC_FC_PP 0x4b /* pointer layout */ 00111 /* FC_PP: FC_PAD layouts */ 00112 /* layouts: FC_NO_REPEAT FC_PAD instance */ 00113 /* instance: NdrFcShort(memofs), NdrFcShort(bufofs), desc */ 00114 00115 #define RPC_FC_EMBEDDED_COMPLEX 0x4c 00116 /* FC_EMBEDDED_COMPLEX: padding, NdrFcShort(typeofs) */ 00117 00118 #define RPC_FC_IN_PARAM 0x4d 00119 /* FC_IN_PARAM: stacksiz, NdrFcShort(typeofs) */ 00120 #define RPC_FC_IN_PARAM_BASETYPE 0x4e 00121 /* FC_IN_PARAM_BASETYPE: basetype */ 00122 #define RPC_FC_IN_PARAM_NO_FREE_INST 0x4f 00123 #define RPC_FC_IN_OUT_PARAM 0x50 00124 /* FC_IN_OUT_PARAM: stacksiz, NdrFcShort(typeofs) */ 00125 #define RPC_FC_OUT_PARAM 0x51 00126 /* FC_OUT_PARAM: stacksiz, NdrFcShort(typeofs) */ 00127 #define RPC_FC_RETURN_PARAM 0x52 00128 /* FC_RETURN_PARAM: stacksiz, NdrFcShort(typeofs) */ 00129 #define RPC_FC_RETURN_PARAM_BASETYPE 0x53 00130 /* FC_RETURN_PARAM_BASETYPE: basetype */ 00131 00132 #define RPC_FC_DEREFERENCE 0x54 00133 #define RPC_FC_DIV_2 0x55 00134 #define RPC_FC_MULT_2 0x56 00135 #define RPC_FC_ADD_1 0x57 00136 #define RPC_FC_SUB_1 0x58 00137 00138 #define RPC_FC_CALLBACK 0x59 00139 00140 #define RPC_FC_CONSTANT_IID 0x5a 00141 /* FC_CONSTANT_IID: NdrFcLong(), NdrFcShort(), NdrFcShort(), 8x () */ 00142 00143 #define RPC_FC_END 0x5b 00144 #define RPC_FC_PAD 0x5c 00145 00146 #define RPC_FC_USER_MARSHAL 0xb4 00147 00148 #define RPC_FC_RANGE 0xb7 00149 00150 #define RPC_FC_INT3264 0xb8 00151 #define RPC_FC_UINT3264 0xb9 00152 00153 /* FC_RP/UP/OP/FP: flags, NdrFcShort(typeofs)/basetype */ 00154 #define RPC_FC_P_ALLOCALLNODES 0x01 00155 #define RPC_FC_P_DONTFREE 0x02 00156 #define RPC_FC_P_ONSTACK 0x04 /* [alloced_on_stack] */ 00157 #define RPC_FC_P_SIMPLEPOINTER 0x08 /* [simple_pointer] */ 00158 #define RPC_FC_P_DEREF 0x10 00159 00160 #define RPC_FC_BIND_EXPLICIT 0x00 00161 00162 /* proc header: oiflags, NdrFcLong(rpcflags), NdrFcShort(procnum), NdrFcShort(stacksiz), 00163 * oi2 header: NdrFcShort(clientbuf), NdrFcShort(servbuf), oi2flags, parmcount 00164 * oi2 parameters: NdrFcShort(flags), NdrFcShort(stackofs), NdrFcShort(typeofs)/basetype */ 00165 #define RPC_FC_PROC_OIF_FULLPTR 0x01 00166 #define RPC_FC_PROC_OIF_RPCSSALLOC 0x02 00167 #define RPC_FC_PROC_OIF_OBJECT 0x04 00168 #define RPC_FC_PROC_OIF_RPCFLAGS 0x08 00169 #define RPC_FC_PROC_OIF_OBJ_V2 0x20 00170 #define RPC_FC_PROC_OIF_HAS_COMM_OR_FAULT 0x20 00171 #define RPC_FC_PROC_OIF_NEWINIT 0x40 00172 00173 #define RPC_FC_PROC_PF_MUSTSIZE 0x0001 00174 #define RPC_FC_PROC_PF_MUSTFREE 0x0002 00175 #define RPC_FC_PROC_PF_PIPE 0x0004 00176 #define RPC_FC_PROC_PF_IN 0x0008 00177 #define RPC_FC_PROC_PF_OUT 0x0010 00178 #define RPC_FC_PROC_PF_RETURN 0x0020 00179 #define RPC_FC_PROC_PF_BASETYPE 0x0040 00180 #define RPC_FC_PROC_PF_BYVAL 0x0080 00181 #define RPC_FC_PROC_PF_SIMPLEREF 0x0100 00182 #define RPC_FC_PROC_PF_DONTFREEINST 0x0200 00183 #define RPC_FC_PROC_PF_SAVEASYNC 0x0400 00184 #define RPC_FC_PROC_PF_SRVALLOCSIZE 0xe000 /* in 8 byte units */ 00185 00186 /* correlation types */ 00187 #define RPC_FC_NORMAL_CONFORMANCE 0x00 00188 #define RPC_FC_POINTER_CONFORMANCE 0x10 00189 #define RPC_FC_TOP_LEVEL_CONFORMANCE 0x20 00190 #define RPC_FC_CONSTANT_CONFORMANCE 0x40 00191 #define RPC_FC_TOP_LEVEL_MULTID_CONFORMANCE 0x80 00192 00193 /* user marshal flags */ 00194 #define USER_MARSHAL_UNIQUE 0x80 00195 #define USER_MARSHAL_REF 0x40 00196 #define USER_MARSHAL_POINTER 0xc0 00197 #define USER_MARSHAL_IID 0x20 00198 00199 /* context handle flags */ 00200 #define NDR_CONTEXT_HANDLE_CANNOT_BE_NULL 0x01 00201 #define NDR_CONTEXT_HANDLE_SERIALIZE 0x02 00202 #define NDR_CONTEXT_HANDLE_NO_SERIALIZE 0x04 00203 #define NDR_STRICT_CONTEXT_HANDLE 0x08 00204 00205 #endif /* __WINE_RPCFC_H */ Generated on Mon May 28 2012 04:30:37 for ReactOS by
1.7.6.1
|