.\" Man page generated from reStructuredText
.\" by the Docutils 0.23 manpage writer.
.
.
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "PMIX_PDATA_XFER" "3" "Sep 27, 2026" "" "OpenPMIx"
.sp
\fBPMIx_Pdata_xfer\fP — Copy the contents of one
pmix_pdata_t(5) \%<#\:man5-pmix-pdata-t> structure into another.
.SH SYNOPSIS
.INDENT 0.0
.INDENT 3.5
.sp
.EX
#include <pmix.h>

void PMIx_Pdata_xfer(pmix_pdata_t *dest,
                     pmix_pdata_t *src);
.EE
.UNINDENT
.UNINDENT
.SS Python Syntax
.sp
No Python equivalent
.SH INPUT/OUTPUT PARAMETERS
.INDENT 0.0
.IP \(bu 2
\fBdest\fP: Pointer to the destination pmix_pdata_t(5) \%<#\:man5-pmix-pdata-t> structure. Any prior contents are overwritten without
being released.
.UNINDENT
.SH INPUT PARAMETERS
.INDENT 0.0
.IP \(bu 2
\fBsrc\fP: Pointer to the source pmix_pdata_t(5) \%<#\:man5-pmix-pdata-t>
structure whose contents are copied into \fBdest\fP\&.
.UNINDENT
.SH DESCRIPTION
.sp
Copy the process identifier, key, and value from \fBsrc\fP into \fBdest\fP\&. The
function first zeroes \fBdest\fP, then copies the namespace and rank of
\fBsrc\->proc\fP, copies the \fBsrc\->key\fP string, and performs a deep copy of
\fBsrc\->value\fP into \fBdest\->value\fP\&.
.sp
The transfer is a \fBcopy\fP, not a move: \fBsrc\fP is left unmodified, and
\fBdest\fP receives its own independently allocated storage for any value payload
that requires it. As a result \fBdest\fP and \fBsrc\fP may afterward be destructed
independently.
.sp
If \fBdest\fP is \fBNULL\fP, the function does nothing.
.SH RETURN VALUE
.sp
\fBPMIx_Pdata_xfer\fP returns no value (\fBvoid\fP).
.SH NOTES
.sp
Because \fBPMIx_Pdata_xfer\fP overwrites \fBdest\fP without releasing any previous
contents, only call it on a freshly constructed or otherwise empty structure to
avoid leaking a prior payload. Both \fBdest\fP and \fBsrc\fP should ultimately be
released with PMIx_Pdata_destruct(3) \%<#\:man3-pmix-pdata-destruct> or
PMIx_Pdata_free(3) \%<#\:man3-pmix-pdata-free>\&.
.SH EXAMPLES
.sp
Copy one structure into another:
.INDENT 0.0
.INDENT 3.5
.sp
.EX
pmix_pdata_t dest;

PMIx_Pdata_construct(&dest);
PMIx_Pdata_xfer(&dest, &src);
/* dest and src may now be destructed independently */
PMIx_Pdata_destruct(&dest);
.EE
.UNINDENT
.UNINDENT
.sp
\fBSee also:\fP
.INDENT 0.0
.INDENT 3.5
PMIx_Pdata_construct(3) \%<#\:man3-pmix-pdata-construct>,
PMIx_Pdata_destruct(3) \%<#\:man3-pmix-pdata-destruct>,
PMIx_Pdata_create(3) \%<#\:man3-pmix-pdata-create>,
PMIx_Pdata_free(3) \%<#\:man3-pmix-pdata-free>,
PMIx_Pdata_load(3) \%<#\:man3-pmix-pdata-load>,
pmix_pdata_t(5) \%<#\:man5-pmix-pdata-t>
.UNINDENT
.UNINDENT
.SH Copyright
2014-2026, OpenPMIx Community
.\" End of generated man page.
