Loading...
Searching...
No Matches
tag_probe_builder.h
1
5#pragma once
6
7#include <memory>
8
9#include <ucp/api/ucp.h>
10
11namespace ucxx {
12
13class TagProbeInfo;
14
23 public:
28
35 TagProbeInfoBuilder(const ucp_tag_recv_info_t& info, ucp_tag_message_h handle);
36
39
48
54 operator std::shared_ptr<TagProbeInfo>();
55
63 [[nodiscard]] std::shared_ptr<TagProbeInfo> build();
64
65 private:
66 struct Impl;
67 std::unique_ptr<Impl> _impl;
68};
69
70} // namespace ucxx
TagProbeInfoBuilder(TagProbeInfoBuilder &&) noexcept
Move constructor.
TagProbeInfoBuilder & operator=(const TagProbeInfoBuilder &other)
Copy assignment operator (deep-copies internal state).
TagProbeInfoBuilder(const TagProbeInfoBuilder &other)
Copy constructor (deep-copies internal state).
TagProbeInfoBuilder()
Constructor for an unmatched TagProbeInfoBuilder.
~TagProbeInfoBuilder()
TagProbeInfoBuilder destructor.
TagProbeInfoBuilder(const ucp_tag_recv_info_t &info, ucp_tag_message_h handle)
Constructor for a matched TagProbeInfoBuilder.
std::shared_ptr< TagProbeInfo > build()
Build and return the TagProbeInfo.
Information about probed tag message.
Definition tag_probe.h:65
Definition address.h:16