RSB  0.19.0
rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType > Class Template Reference

An adapter to use boost functions for callbacks. More...

#include <LocalServer.h>

Inheritance diagram for rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >:
Inheritance graph
Collaboration diagram for rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >:
Collaboration graph

Public Types

typedef boost::function< typename boost::shared_ptr< ReplyType > typename boost::shared_ptr< RequestType >)> FunctionType
 Type of functions that can be accepted. More...
 

Public Member Functions

 FunctionCallback (FunctionType function, const std::string &requestType=rsc::runtime::typeName(typeid(RequestType)), const std::string &replyType=rsc::runtime::typeName(typeid(ReplyType)))
 
- Public Member Functions inherited from rsb::patterns::LocalServer<>::CallbackBase
virtual const std::string & getRequestType () const
 
virtual const std::string & getReplyType () const
 
- Public Member Functions inherited from rsb::patterns::LocalServer<>::IntlCallback
virtual ~IntlCallback ()
 

Private Member Functions

EventPtr intlCall (const std::string &, EventPtr request)
 

Private Attributes

FunctionType function
 

Additional Inherited Members

- Protected Member Functions inherited from rsb::patterns::LocalServer<>::CallbackBase
 CallbackBase (const std::string &requestType, const std::string &replyType)
 
- Protected Attributes inherited from rsb::patterns::LocalServer<>::CallbackBase
std::string requestType
 
std::string replyType
 

Detailed Description

template<>
template<class RequestType, class ReplyType>
class rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >

An adapter to use boost functions for callbacks.

You can use any existing method via implicit conversion to a boost function or via boost bind as long as the types match.

Author
jwienke

Definition at line 261 of file LocalServer.h.

Member Typedef Documentation

template<class RequestType , class ReplyType >
typedef boost::function< typename boost::shared_ptr<ReplyType> typename boost::shared_ptr<RequestType>)> rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >::FunctionType

Type of functions that can be accepted.

Definition at line 268 of file LocalServer.h.

Constructor & Destructor Documentation

template<class RequestType , class ReplyType >
rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >::FunctionCallback ( FunctionType  function,
const std::string &  requestType = rsc::runtime::typeName(                        typeid(RequestType)),
const std::string &  replyType = rsc::runtime::typeName(typeid(ReplyType)) 
)
inlineexplicit

Definition at line 270 of file LocalServer.h.

Member Function Documentation

template<class RequestType , class ReplyType >
EventPtr rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >::intlCall ( const std::string &  ,
EventPtr  request 
)
inlineprivatevirtual

Implements rsb::patterns::LocalServer<>::IntlCallback.

Definition at line 278 of file LocalServer.h.

Member Data Documentation

template<class RequestType , class ReplyType >
FunctionType rsb::patterns::LocalServer<>::FunctionCallback< RequestType, ReplyType >::function
private

Definition at line 288 of file LocalServer.h.


The documentation for this class was generated from the following file: