18.2.188. PMIx_Geometry_create
PMIx_Geometry_create — Allocate and initialize an array of
pmix_geometry_t(5) structures.
18.2.188.1. SYNOPSIS
#include <pmix.h>
pmix_geometry_t* PMIx_Geometry_create(size_t n);
18.2.188.1.1. Python Syntax
No Python equivalent
18.2.188.2. INPUT PARAMETERS
n: Number of pmix_geometry_t(5) structures to allocate in the array.
18.2.188.3. DESCRIPTION
Allocate a contiguous array of n pmix_geometry_t structures on the heap and construct (initialize) each
element as if by PMIx_Geometry_construct(3).
If n is zero, the function returns NULL without allocating. If the
underlying allocation fails, NULL is returned.
18.2.188.4. RETURN VALUE
Returns a pointer to the newly allocated, constructed array of
pmix_geometry_t structures, or NULL if n is zero or the allocation
could not be satisfied.
18.2.188.5. NOTES
The returned array is owned by the caller and must be released with
PMIx_Geometry_free(3), passing the same count
n that was used to create it. PMIx_Geometry_free both destructs the
contents of each element and frees the array storage itself.
18.2.188.6. EXAMPLES
Create and later free an array:
pmix_geometry_t *array;
array = PMIx_Geometry_create(4);
if (NULL == array) {
/* handle allocation failure */
}
/* ... use the array ... */
PMIx_Geometry_free(array, 4);