OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

rml_contact.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2007 Los Alamos National Security, LLC. All rights
3 * reserved.
4 * $COPYRIGHT$
5 *
6 * Additional copyrights may follow
7 *
8 * $HEADER$
9 */
10
11 /**
12 * @file
13 *
14 * Interface for manipulating how the RML receives contact information
15 *
16 * Interface for manipulating how the RML receives contact
17 * information. These functions are generally used during orte_init
18 * and orte_finalize.
19 */
20
21
22 #include "orte_config.h"
23 #include "orte/types.h"
24
25 #include "opal/dss/dss_types.h"
26
27 BEGIN_C_DECLS
28
29 /**
30 * Create packed RML contact information for the given process names
31 *
32 * Create packed RML contact information for a given job.
33 * The information is provided packed in an opal_buffer_t
34 * structure.
35 *
36 * @param[in] jobid Job whose contact information is needed
37 * @param[out] data Contact information packed in buffer for
38 * \c name.
39 *
40 * @retval ORTE_SUCCESS Successfully found contact information
41 * @retval ORTE_ERROR Contact information could not be found or shared
42 */
43 ORTE_DECLSPEC int orte_rml_base_get_contact_info(orte_jobid_t job,
44 opal_buffer_t *data);
45
46
47 /**
48 * Update the RML with contact information
49 *
50 * Update the RML with contact information provided from a call to
51 * orte_rml_base_get_contact_info(), likely on another host.
52 *
53 * @param[in] data Contact information in a packed buffer,
54 * obtained by call to orte_rml_base_get_contact_info()
55 *
56 * @retval ORTE_SUCCESS Successfully updated contact information
57 */
58 ORTE_DECLSPEC int orte_rml_base_update_contact_info(opal_buffer_t* data);
59
60 /**
61 * Parse a contact information string
62 *
63 * Parse a contact infromation string, such as that returned by
64 * orte_rml.get_contact_info(). Generally used to extract the peer
65 * name from a contact information string. It can also be used to
66 * extract the contact URI strings, although this is slightly less
67 * useful as the URIs may be RML componenent specific and not have
68 * general meaning.
69 *
70 * @param[in] contact_info Contact information string for peer
71 * @param[out] peer Peer name in contact_info
72 * @param[out] uris URI strings for peer. May be NULL if
73 * information is not needed
74 *
75 * @retval ORTE_SUCCESS Information successfully extraced
76 * @retval ORTE_ERR_BAD_PARAM The contact_info was not a valid string
77 * @retval ORTE_ERROR An unspecified error occurred
78 */
79 ORTE_DECLSPEC int orte_rml_base_parse_uris(const char* contact_inf,
80 orte_process_name_t* peer,
81 char*** uris);
82
83 END_C_DECLS
orte_rml_base_get_contact_info
BEGIN_C_DECLS ORTE_DECLSPEC int orte_rml_base_get_contact_info(orte_jobid_t job, opal_buffer_t *data)
Create packed RML contact information for the given process names.
Definition: rml_base_contact.c:39
orte_jobid_t
uint32_t orte_jobid_t
Set the allowed range for ids in each space.
Definition: types.h:76
orte_process_name_t
Definition: types.h:146
orte_rml_base_update_contact_info
ORTE_DECLSPEC int orte_rml_base_update_contact_info(opal_buffer_t *data)
Update the RML with contact information.
Definition: rml_base_contact.c:71
orte_rml_base_parse_uris
ORTE_DECLSPEC int orte_rml_base_parse_uris(const char *contact_inf, orte_process_name_t *peer, char ***uris)
Parse a contact information string.
Definition: rml_base_contact.c:157
types.h
dss_types.h
Buffer management types.
opal_buffer_t
Structure for holding a buffer to be used with the RML or OOB subsystems.
Definition: dss_types.h:159