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-2005 The Trustees of Indiana University and Indiana
3 * University Research and Technology
4 * Corporation. All rights reserved.
5 * Copyright (c) 2004-2005 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 * the oob framework
21 */
22
23 #ifndef _MCA_OOB_BASE_H_
24 #define _MCA_OOB_BASE_H_
25
26 #include "orte_config.h"
27
28 #ifdef HAVE_UNISTD_H
29 #include <unistd.h>
30 #endif
31 #ifdef HAVE_SYS_UIO_H
32 #include <sys/uio.h>
33 #endif
34 #ifdef HAVE_NET_UIO_H
35 #include <net/uio.h>
36 #endif
37
38 #include "orte/mca/oob/oob.h"
39
40 #include "opal/mca/mca.h"
41
42 BEGIN_C_DECLS
43
44 ORTE_DECLSPEC int mca_oob_base_open(void);
45
46 #if !ORTE_DISABLE_FULL_SUPPORT
47
48 /*
49 * global flag for use in timing tests
50 */
51 ORTE_DECLSPEC extern int mca_oob_base_output;
52
53 /*
54 * Flag indicating if this framework has been opened
55 */
56 ORTE_DECLSPEC extern bool orte_oob_base_already_opened;
57
58 /*
59 * OOB API
60 */
61
62 /*
63 * Non-blocking versions of send/recv.
64 */
65
66
67 /**
68 * associate a component and a module that belongs to it
69 */
70 struct mca_oob_base_info_t {
71 opal_list_item_t super;
72 mca_oob_base_component_t *oob_component;
73 mca_oob_t *oob_module;
74 };
75 /**
76 * Convenience Typedef
77 */
78 typedef struct mca_oob_base_info_t mca_oob_base_info_t;
79
80 /**
81 * declare the association structure as a class
82 */
83 ORTE_DECLSPEC OBJ_CLASS_DECLARATION(mca_oob_base_info_t);
84
85
86 /*
87 * Global functions for MCA overall collective open and close
88 */
89 ORTE_DECLSPEC int mca_oob_base_init(void);
90 ORTE_DECLSPEC int mca_oob_base_module_init(void);
91 ORTE_DECLSPEC int mca_oob_base_close(void);
92
93
94 /*
95 * Global struct holding the selected module's function pointers
96 */
97 ORTE_DECLSPEC extern int mca_oob_base_output;
98 extern char* mca_oob_base_include;
99 extern char* mca_oob_base_exclude;
100 ORTE_DECLSPEC extern opal_list_t mca_oob_base_components;
101 ORTE_DECLSPEC extern opal_list_t mca_oob_base_modules;
102
103 #endif /* ORTE_DISABLE_FULL_SUPPORT */
104
105 END_C_DECLS
106 #endif
107
mca_oob_base_module_init
ORTE_DECLSPEC int mca_oob_base_module_init(void)
Called to request the selected oob components to initialize their connections to the HNP (if not an H...
Definition: oob_base_init.c:109
oob.h
Contains the internal functions and typedefs for the use of the oob.
mca_oob_base_info_t
associate a component and a module that belongs to it
Definition: base.h:70
mca_oob_base_open
BEGIN_C_DECLS ORTE_DECLSPEC int mca_oob_base_open(void)
Function for finding and opening either all MCA components, or the one that was specifically requeste...
Definition: oob_base_open.c:67
mca.h
Top-level interface for all MCA components.
opal_list_item_t
Definition: opal_list.h:98
mca_oob_base_init
ORTE_DECLSPEC int mca_oob_base_init(void)
Function for selecting one module from all those that are available.
Definition: oob_base_init.c:55
OBJ_CLASS_DECLARATION
ORTE_DECLSPEC OBJ_CLASS_DECLARATION(mca_oob_base_info_t)
declare the association structure as a class
mca_oob_base_component_2_0_0_t
Definition: oob.h:51
opal_list_t
Definition: opal_list.h:147
mca_oob_1_0_0_t
OOB Module.
Definition: oob.h:161