18.3.20. pmix_data_range_t

pmix_data_range_t — Defines the range of processes to which published data or a generated event is to be made available

18.3.20.1. SYNTAX

18.3.20.1.1. C Syntax

#include <pmix_common.h>

typedef uint8_t pmix_data_range_t;

#define PMIX_RANGE_UNDEF        0
#define PMIX_RANGE_RM           1   // data is intended for the host resource manager
#define PMIX_RANGE_LOCAL        2   // available on local node only
#define PMIX_RANGE_NAMESPACE    3   // data is available to procs in the same nspace only
#define PMIX_RANGE_SESSION      4   // data available to all procs in session
#define PMIX_RANGE_GLOBAL       5   // data available to all procs
#define PMIX_RANGE_CUSTOM       6   // range is specified in a pmix_info_t
#define PMIX_RANGE_PROC_LOCAL   7   // restrict range to the local proc
#define PMIX_RANGE_INVALID   UINT8_MAX

18.3.20.1.2. Python Syntax

None

18.3.20.2. DESCRIPTION

The pmix_data_range_t type is used to specify the range of processes that are to have access to information — for example, data published via PMIx_Publish(3) and retrieved via PMIx_Lookup(3), or the recipients of an event generated via PMIx_Notify_event(3). Defined values include:

Data Range Values

NAME

VALUE

DESCRIPTION

PMIX_RANGE_UNDEF

0

No range has been defined.

PMIX_RANGE_RM

1

The data is intended for the host resource manager only.

PMIX_RANGE_LOCAL

2

The data is available to processes on the local node only.

PMIX_RANGE_NAMESPACE

3

The data is available only to processes in the same namespace (job) as the publisher.

PMIX_RANGE_SESSION

4

The data is available to all processes in the same session as the publisher.

PMIX_RANGE_GLOBAL

5

The data is available to all processes.

PMIX_RANGE_CUSTOM

6

The range is explicitly specified in an accompanying pmix_info_t structure.

PMIX_RANGE_PROC_LOCAL

7

The range is restricted to the local process only.

PMIX_RANGE_INVALID

UINT8_MAX

An invalid range value, used to indicate that no valid range has been set.

18.3.20.3. ERRORS

PMIx errno values are defined in pmix_common.h.