11 #include <ucxx/request_builder_base.h>
12 #include <ucxx/request_data.h>
42 std::shared_ptr<Endpoint> _endpoint;
43 std::variant<data::MemPut, data::MemGet> _requestData;
44 uint64_t _remoteAddressOffset{0};
55 std::variant<data::MemPut, data::MemGet> requestData);
78 [[nodiscard]] std::shared_ptr<RequestMem>
build();
85 operator std::shared_ptr<RequestMem>();
92 operator std::shared_ptr<Request>();
103 std::shared_ptr<Endpoint> endpoint, std::variant<data::MemPut, data::MemGet> requestData)
CRTP base for request builders that support completion callbacks.
Definition: request_builder_base.h:115
Builder class for constructing std::shared_ptr<ucxx::RequestMem> objects.
Definition: request_mem_builder.h:40
std::shared_ptr< RequestMem > build()
Build and return the RequestMem.
RequestMemBuilder(std::shared_ptr< Endpoint > endpoint, std::variant< data::MemPut, data::MemGet > requestData)
Constructor for RequestMemBuilder with required parameters.
RequestMemBuilder & remoteAddressOffset(uint64_t offset) &
Set the offset from the remote base address.
RequestMemBuilder && remoteAddressOffset(uint64_t offset) &&
Set the offset from the remote base address on a temporary builder.
RequestMemBuilder requestMemBuilder(std::shared_ptr< Endpoint > endpoint, std::variant< data::MemPut, data::MemGet > requestData)
Create a RequestMemBuilder for constructing a shared_ptr<ucxx::RequestMem>.
Definition: request_mem_builder.h:102