OpenMPI  0.1.1
base.h
1 /* -*- Mode: C; c-basic-offset:4 ; -*- */
2 /*
3  * Copyright (c) 2004-2007 The Trustees of Indiana University and Indiana
4  * University Research and Technology
5  * Corporation. All rights reserved.
6  * Copyright (c) 2004-2007 The University of Tennessee and The University
7  * of Tennessee Research Foundation. All rights
8  * reserved.
9  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
10  * University of Stuttgart. All rights reserved.
11  * Copyright (c) 2004-2005 The Regents of the University of California.
12  * All rights reserved.
13  * $COPYRIGHT$
14  *
15  * Additional copyrights may follow
16  *
17  * $HEADER$
18  */
19 
20 #ifndef MCA_PML_BASE_H
21 #define MCA_PML_BASE_H
22 
23 #include "ompi_config.h"
24 
25 #include "opal/mca/mca.h"
26 #include "ompi/mca/pml/pml.h"
27 #include "opal/class/opal_list.h"
29 
30 /*
31  * Global functions for the PML
32  */
33 
34 BEGIN_C_DECLS
35 
36 /*
37  * This is the base priority for a PML wrapper component
38  * If there exists more than one then it is undefined
39  * which one is picked.
40  */
41 #define PML_SELECT_WRAPPER_PRIORITY -128
42 
43 OMPI_DECLSPEC int mca_pml_base_open(void);
44 OMPI_DECLSPEC int mca_pml_base_progress(void);
45 OMPI_DECLSPEC int mca_pml_base_select(bool enable_progress_threads,
46  bool enable_mpi_threads);
47  /* share in modex the name of the selected component */
48 OMPI_DECLSPEC int mca_pml_base_pml_selected(const char *name);
49  /* verify that all new procs are using the currently selected component */
50 OMPI_DECLSPEC int mca_pml_base_pml_check_selected(const char *my_pml,
51  struct ompi_proc_t **procs,
52  size_t nprocs);
53 
54 OMPI_DECLSPEC int mca_pml_base_finalize(void);
55 
56 OMPI_DECLSPEC int mca_pml_base_close(void);
57 
58 OMPI_DECLSPEC int mca_pml_base_ft_event(int state);
59 
60 /*
61  * Globals
62  */
63 OMPI_DECLSPEC extern int mca_pml_base_output;
64 OMPI_DECLSPEC extern opal_list_t mca_pml_base_components_available;
65 OMPI_DECLSPEC extern mca_pml_base_component_t mca_pml_base_selected_component;
66 OMPI_DECLSPEC extern mca_pml_base_module_t mca_pml;
67 OMPI_DECLSPEC extern opal_pointer_array_t mca_pml_base_pml;
68 
69 END_C_DECLS
70 
71 #endif /* MCA_PML_BASE_H */
dynamic pointer array
Definition: opal_pointer_array.h:45
P2P Management Layer (PML)
PML component version and interface functions.
Definition: pml.h:131
The opal_list_t interface is used to provide a generic doubly-linked list container for Open MPI...
See opal_bitmap.h for an explanation of why there is a split between OPAL and ORTE for this generic c...
Remote Open MPI process structure.
Definition: proc.h:56
Top-level interface for all MCA components.
PML instance.
Definition: pml.h:512
Definition: opal_list.h:147