XRootD
XrdCl::Resp< Response > Struct Template Reference

#include <XrdClOperationHandlers.hh>

+ Inheritance diagram for XrdCl::Resp< Response >:
+ Collaboration diagram for XrdCl::Resp< Response >:

Static Public Member Functions

static ResponseHandlerCreate (std::function< void(XRootDStatus &, Response &)> func)
 
static ResponseHandlerCreate (std::function< void(XRootDStatus &, Response &, HostList &)> func)
 
template<typename Return >
static ResponseHandlerCreate (std::packaged_task< Return(XRootDStatus &, Response &)> &task)
 
- Static Public Member Functions inherited from XrdCl::RespBase< Response >
static ResponseHandlerCreate (ResponseHandler &hdlr)
 
static ResponseHandlerCreate (ResponseHandler *hdlr)
 
static ResponseHandlerCreate (std::future< Response > &ftr)
 

Detailed Description

template<typename Response>
struct XrdCl::Resp< Response >

Factory class, creates ForwardingHandler from std::function, in addition to what RespBase provides (

See also
RespBase)
  • Response : response type

Definition at line 661 of file XrdClOperationHandlers.hh.

Member Function Documentation

◆ Create() [1/3]

template<typename Response >
static ResponseHandler* XrdCl::Resp< Response >::Create ( std::function< void(XRootDStatus &, Response &)>  func)
inlinestatic

A factory method

Parameters
func: the function/functor/lambda that should be wrapped
Returns
: FunctionWrapper instance

Definition at line 669 of file XrdClOperationHandlers.hh.

671  {
672  return new FunctionWrapper<Response>( func );
673  }

◆ Create() [2/3]

template<typename Response >
static ResponseHandler* XrdCl::Resp< Response >::Create ( std::function< void(XRootDStatus &, Response &, HostList &)>  func)
inlinestatic

A factory method

Parameters
func: the function/functor/lambda that should be wrapped
Returns
: FunctionWrapper instance

Definition at line 681 of file XrdClOperationHandlers.hh.

683  {
684  return new FunctionWrapper<Response>( func );
685  }

◆ Create() [3/3]

template<typename Response >
template<typename Return >
static ResponseHandler* XrdCl::Resp< Response >::Create ( std::packaged_task< Return(XRootDStatus &, Response &)> &  task)
inlinestatic

A factory method

Parameters
task: the task that should be wrapped
Returns
: TaskWrapper instance

Definition at line 694 of file XrdClOperationHandlers.hh.

696  {
697  return new TaskWrapper<Response, Return>( std::move( task ) );
698  }

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