18.2.204. PMIx_Endpoint_create

PMIx_Endpoint_create — Allocate and initialize an array of pmix_endpoint_t(5) structures.

18.2.204.1. SYNOPSIS

#include <pmix.h>

pmix_endpoint_t* PMIx_Endpoint_create(size_t n);

18.2.204.1.1. Python Syntax

No Python equivalent

18.2.204.2. INPUT PARAMETERS

18.2.204.3. DESCRIPTION

Allocate a contiguous array of n pmix_endpoint_t structures on the heap and construct each element, as though PMIx_Endpoint_construct(3) had been called on every member (uuid and osname set to NULL and the embedded endpt byte object zeroed).

The returned array is owned by the caller and must eventually be released with PMIx_Endpoint_free(3), which destructs the contents of each element and frees the array storage.

18.2.204.4. RETURN VALUE

Returns a pointer to the newly allocated array of pmix_endpoint_t structures, or NULL if n is zero or the allocation fails.

18.2.204.5. EXAMPLES

Create and later release an array of endpoint structures:

pmix_endpoint_t *eps;

eps = PMIx_Endpoint_create(2);
if (NULL == eps) {
    /* handle allocation failure */
}

/* ... populate and use the array ... */

PMIx_Endpoint_free(eps, 2);