Class IBVQueuePair
Defined in File IBVUtils.h
Class Documentation
-
class IBVQueuePair
Infiniband Queue Pair that manages the send and recv completion queues.
Public Functions
-
IBVQueuePair() = default
Construct a new IBVQueuePair object.
-
IBVQueuePair(RDMACommunicationManager *cm, IBVProtectionDomain *pd, IBVCompletionQueue *cq, int n_slots)
Construct a new IBVQueuePair object and initalize the ibv_qp struct. Creates a queue pair that associated with the protection domain.
- Parameters
cm – RDMACommunicationManager that transitions the queue pair to init state.
pd – IBVProtectionDomain with which the queue pair is associated.
cq – IBVCompletionQueue to be used for the send and recv queues.
n_slots – number of receive queue slots.
-
~IBVQueuePair()
Destroy the IBVQueuePair object.
-
inline ibv_qp *get() const
Return a pointer to the ibv_qp struct managed by this class.
- Returns
ibv_qp* pointer to the ibv_qp struct managed by this class
-
void post_recv(ibv_recv_wr *wr)
posts the work request to the receive queue of the queue pair.
- Parameters
wr – work request to be posted to the receive queue
-
void modify(ibv_qp_state qp_state)
Modify the state of the queue pair.
- Parameters
qp_state – new state to transition the queue pair to.
-
IBVQueuePair() = default