00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef _EYEDBLIB_RPC_FE_H
00026 #define _EYEDBLIB_RPC_FE_H
00027
00028 #include <eyedblib/rpc.h>
00029 #include <string>
00030
00031 typedef struct rpc_Client rpc_Client;
00032
00033 typedef struct {
00034 RPC_DATA;
00035 } rpc_ClientData;
00036
00037 typedef struct rpc_ConnHandle rpc_ConnHandle;
00038
00039 typedef struct {
00040 rpc_RpcDescription *rd;
00041 } rpc_ClientFunction;
00042
00043
00044 extern rpc_Client *rpc_clientCreate(void);
00045
00046 extern rpc_ArgType rpc_makeClientUserType(rpc_Client *, int,
00047 rpc_UserArgFunction, rpc_Boolean);
00048
00049 extern rpc_ClientFunction *
00050 rpc_makeUserClientFunction(rpc_Client *, rpc_RpcDescription *);
00051
00052 extern rpc_Status
00053 rpc_connOpen(rpc_Client *, const char *, const char *, rpc_ConnHandle **, unsigned long, int, int, std::string &);
00054
00055 extern rpc_Status
00056 rpc_connClose(rpc_ConnHandle *);
00057
00058 extern rpc_Status
00059 rpc_setClientArgSize(rpc_Client *, int);
00060
00061 extern rpc_Status
00062 rpc_rpcMake(rpc_ConnHandle *, int which, rpc_ClientFunction *, void *);
00063
00064 #endif