28 struct ibv_comp_channel;
31 #define VERBS_USING_PIPE
62 #ifdef VERBS_USING_PIPE
#define DABC_REFERENCE(RefClass, ParentClass, T)
Represents command with its arguments.
Reference on the arbitrary object
Reference on the dabc::Thread class
Represent thread functionality.
Wrapper for IB VERBS completion queue
Reference to verbs::Context
Special memory pool, which automatically includes PoolRegistry.
Represent VERBS queue pair functionality.
Reference on verbs::Thread
virtual int ExecuteThreadCommand(dabc::Command cmd)
virtual void _Fire(const dabc::EventId &evnt, int nq)
struct ibv_comp_channel * Channel() const
virtual bool CompatibleClass(const std::string &clname) const
virtual bool WaitEvent(dabc::EventId &evid, double tmout)
virtual void WorkersSetChanged()
Virtual method, called from thread context to inform that number of workers are changed.
virtual void ProcessExtraThreadEvent(const dabc::EventId &)
Method to process events which are not processed by Thread class itself Should be used in derived cla...
@ evntLastVerbsThrdEvent
last event, which can be used by verbs thread
@ evntEnableCheck
event to enable again checking sockets for new events
virtual const char * ClassName() const
Returns class name of the object instance.
static const char * StatusStr(int code)
std::map< uint32_t, uint32_t > WorkersMap
struct ibv_comp_channel * fChannel
Timeout producer for verbs::Thread when pipe cannot be used.
Support of InfiniBand verbs.
Event structure, exchanged between DABC threads.