MIRA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Macros
RPCClient.h File Reference

Implementation of the client side of an RPC call. More...

#include <boost/preprocessor/repetition.hpp>
#include <boost/thread/mutex.hpp>
#include <serialization/ReflectorInterface.h>
#include <rpc/AbstractRPCClient.h>
#include <rpc/RPCSignature.h>
#include <rpc/RPCFuture.h>
#include <rpc/RPCMacros.h>
Include dependency graph for RPCClient.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  RPCClient
 The RPCClient is responsible for handling the client-side of an rpc call. More...
 
struct  RPCClient::PendingResponseBase
 Interface for PendingResponse. More...
 
struct  RPCClient::PendingResponse< Backend, R >
 PendingResponse template class. More...
 

Namespaces

 mira
 specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
 

Macros

#define RPCGEN_CALL_BODY_SET_PARAMETER(z, n, _)   request.setParameter(p##n);
 
#define RPCGEN_CALL_EX(z, n, _)
 Generates the call(...) methods for multiple parameter counts using boost preprocessor. More...
 

Detailed Description

Implementation of the client side of an RPC call.

Author
Erik Einhorn, Tim Langner
Date
2010/11/10

Macro Definition Documentation

#define RPCGEN_CALL_BODY_SET_PARAMETER (   z,
  n,
 
)    request.setParameter(p##n);
#define RPCGEN_CALL_EX (   z,
  n,
 
)
Value:
template<typename Backend, typename R BOOST_PP_ENUM_TRAILING_PARAMS_Z(z,n,typename P)> \
RPCFuture<R> call(typename Backend::ClientRequest& request, const std::string& service, \
const std::string& method \
BOOST_PP_REPEAT_ ## z(n,RPCGEN_CALL_PARAM_DECL,nil)) { \
RPCSignature s = makeRPCSignature<R \
BOOST_PP_ENUM_TRAILING_PARAMS_Z(z,n,P)>(method); \
std::string callId = request.generateCallID(); \
RPCFuture<R> future = addPendingResponse<Backend,R>(callId); \
request.setHeader(callId,service,s); \
BOOST_PP_REPEAT_ ## z(n,RPCGEN_CALL_BODY_SET_PARAMETER,nil) \
return future; \
}
#define RPCGEN_CALL_BODY_SET_PARAMETER(z, n, _)
Definition: RPCClient.h:175

Generates the call(...) methods for multiple parameter counts using boost preprocessor.