18.2.196. PMIx_Device_distance_create
PMIx_Device_distance_create — Allocate and initialize an array of
pmix_device_distance_t(5) structures.
18.2.196.1. SYNOPSIS
#include <pmix.h>
pmix_device_distance_t* PMIx_Device_distance_create(size_t n);
18.2.196.1.1. Python Syntax
No Python equivalent
18.2.196.2. INPUT PARAMETERS
n: Number of pmix_device_distance_t(5) structures to allocate in the array.
18.2.196.3. DESCRIPTION
Allocate a contiguous array of n
pmix_device_distance_t structures on the
heap and construct each element, as though
PMIx_Device_distance_construct(3)
had been called on every member (uuid and osname set to NULL,
type set to PMIX_DEVTYPE_UNKNOWN, and both mindist and maxdist
set to UINT16_MAX).
The returned array is owned by the caller and must eventually be released with PMIx_Device_distance_free(3), which destructs the contents of each element and frees the array storage.
18.2.196.4. RETURN VALUE
Returns a pointer to the newly allocated array of
pmix_device_distance_t structures, or
NULL if n is zero or the allocation fails.
18.2.196.5. EXAMPLES
Create and later release an array of device-distance structures:
pmix_device_distance_t *dist;
dist = PMIx_Device_distance_create(4);
if (NULL == dist) {
/* handle allocation failure */
}
/* ... populate and use the array ... */
PMIx_Device_distance_free(dist, 4);