OpenMPI 0.1.1

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

- File List
- Globals

base.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
3 * University Research and Technology
4 * Corporation. All rights reserved.
5 * Copyright (c) 2004-2006 The University of Tennessee and The University
6 * of Tennessee Research Foundation. All rights
7 * reserved.
8 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9 * University of Stuttgart. All rights reserved.
10 * Copyright (c) 2004-2005 The Regents of the University of California.
11 * All rights reserved.
12 * $COPYRIGHT$
13 *
14 * Additional copyrights may follow
15 *
16 * $HEADER$
17 */
18 /** @file:
19 */
20
21 #ifndef MCA_PLM_BASE_H
22 #define MCA_PLM_BASE_H
23
24 /*
25 * includes
26 */
27 #include "orte_config.h"
28
29 #include "opal/mca/mca.h"
30 #include "opal/class/opal_list.h"
31
32 #include "orte/mca/plm/plm.h"
33
34
35 BEGIN_C_DECLS
36
37 /**
38 * Open the plm framework
39 */
40 ORTE_DECLSPEC int orte_plm_base_open(void);
41
42 #if !ORTE_DISABLE_FULL_SUPPORT
43
44 /**
45 * Struct to hold data for public access
46 */
47 typedef struct orte_plm_base_t {
48 /** List of opened components */
49 opal_list_t available_components;
50 /** indicate a component has been selected */
51 bool selected;
52 /** selected component */
53 orte_plm_base_component_t selected_component;
54 } orte_plm_base_t;
55
56 /**
57 * Global instance of publicly-accessible PLM framework data
58 */
59 ORTE_DECLSPEC extern orte_plm_base_t orte_plm_base;
60
61 /*
62 * Global functions for MCA overall collective open and close
63 */
64
65 /**
66 * Select a plm module
67 */
68 ORTE_DECLSPEC int orte_plm_base_select(void);
69
70 /**
71 * Close the plm framework
72 */
73 ORTE_DECLSPEC int orte_plm_base_finalize(void);
74 ORTE_DECLSPEC int orte_plm_base_close(void);
75
76
77 /**
78 * Functions that other frameworks may need to call directly
79 * Specifically, the ODLS needs to access some of these
80 * to avoid recursive callbacks
81 */
82 ORTE_DECLSPEC void orte_plm_base_app_report_launch(int fd, short event, void *data);
83 ORTE_DECLSPEC void orte_plm_base_receive_process_msg(int fd, short event, void *data);
84
85 #endif /* ORTE_DISABLE_FULL_SUPPORT */
86
87 END_C_DECLS
88
89 #endif
orte_plm_base_t
struct orte_plm_base_t orte_plm_base_t
Struct to hold data for public access.
orte_plm_base_t::available_components
opal_list_t available_components
List of opened components.
Definition: base.h:49
orte_plm_base_select
ORTE_DECLSPEC int orte_plm_base_select(void)
Select a plm module.
Definition: plm_base_select.c:37
orte_plm_base_t::selected_component
orte_plm_base_component_t selected_component
selected component
Definition: base.h:53
event
Structure to represent a single event.
Definition: event_struct.h:87
opal_list.h
The opal_list_t interface is used to provide a generic doubly-linked list container for Open MPI...
mca.h
Top-level interface for all MCA components.
plm.h
The Process Lifecycle Management (PLM) subsystem serves as the central switchyard for all process man...
orte_plm_base_t::selected
bool selected
indicate a component has been selected
Definition: base.h:51
orte_plm_base_component_2_0_0_t
plm component
Definition: plm.h:122
orte_plm_base_t
Struct to hold data for public access.
Definition: base.h:47
opal_list_t
Definition: opal_list.h:147
orte_plm_base_finalize
ORTE_DECLSPEC int orte_plm_base_finalize(void)
Close the plm framework.
Definition: plm_base_close.c:36
orte_plm_base_open
BEGIN_C_DECLS ORTE_DECLSPEC int orte_plm_base_open(void)
Open the plm framework.
Definition: plm_base_open.c:90
orte_plm_base
ORTE_DECLSPEC orte_plm_base_t orte_plm_base
Global instance of publicly-accessible PLM framework data.
Definition: plm_base_open.c:63
orte_plm_base_app_report_launch
ORTE_DECLSPEC void orte_plm_base_app_report_launch(int fd, short event, void *data)
Functions that other frameworks may need to call directly Specifically, the ODLS needs to access some...