11 #include <ucp/api/ucp.h>
12 #include <ucxx/typedefs.h>
104 const bool _matched{
false};
105 const std::optional<TagRecvInfo> _info{
107 const ucp_tag_message_h _handle{
110 mutable std::atomic<bool> _consumed{
false};
118 void consume()
const;
133 TagProbeInfo() =
default;
152 TagProbeInfo(
const ucp_tag_recv_info_t& info, ucp_tag_message_h handle);
185 ucp_tag_message_h handle);
Send or receive a message with the UCX Tag API.
Definition: request_tag.h:24
Information about probed tag message.
Definition: tag_probe.h:59
ucp_tag_message_h releaseHandle() const
Release the message handle.
friend std::shared_ptr< TagProbeInfo > createTagProbeInfo()
Constructor for shared_ptr<ucxx::TagProbeInfo>.
friend std::shared_ptr< TagProbeInfo > createTagProbeInfo(const ucp_tag_recv_info_t &info, ucp_tag_message_h handle)
Constructor for shared_ptr<ucxx::TagProbeInfo>.
bool isMatched() const
Check if a message was matched.
ucp_tag_message_h getHandle() const
Get the message handle.
const TagRecvInfo & getInfo() const
Get tag receive information.
Information about probed tag message.
Definition: tag_probe.h:25
TagRecvInfo(const ucp_tag_recv_info_t &info)
Construct a TagRecvInfo object from a UCP tag receive info structure.
TagRecvInfo()
Default constructor for TagRecvInfo.
Definition: tag_probe.h:33
const size_t length
The size of the received data.
Definition: tag_probe.h:28
const Tag senderTag
Sender tag.
Definition: tag_probe.h:27
Tag
Strong type for a UCP tag.
Definition: typedefs.h:60