11 #include <ucxx/request_builder_base.h>
12 #include <ucxx/request_data.h>
42 std::shared_ptr<Component> _endpointOrWorker;
43 std::variant<data::TagSend, data::TagReceive, data::TagReceiveWithHandle>
56 std::shared_ptr<Component> endpointOrWorker,
57 std::variant<data::TagSend, data::TagReceive, data::TagReceiveWithHandle> requestData);
64 [[nodiscard]] std::shared_ptr<RequestTag>
build();
71 operator std::shared_ptr<RequestTag>();
78 operator std::shared_ptr<Request>();
89 std::shared_ptr<Component> endpointOrWorker,
90 std::variant<data::TagSend, data::TagReceive, data::TagReceiveWithHandle> requestData)
CRTP base for request builders that support completion callbacks.
Definition: request_builder_base.h:115
Builder class for constructing std::shared_ptr<ucxx::RequestTag> objects.
Definition: request_tag_builder.h:40
std::shared_ptr< RequestTag > build()
Build and return the RequestTag.
RequestTagBuilder(std::shared_ptr< Component > endpointOrWorker, std::variant< data::TagSend, data::TagReceive, data::TagReceiveWithHandle > requestData)
Constructor for RequestTagBuilder with required parameters.
RequestTagBuilder requestTagBuilder(std::shared_ptr< Component > endpointOrWorker, std::variant< data::TagSend, data::TagReceive, data::TagReceiveWithHandle > requestData)
Create a RequestTagBuilder for constructing a shared_ptr<ucxx::RequestTag>.
Definition: request_tag_builder.h:88