This source file includes following definitions.
- event_external_open
- event_external_register
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 #include "opal_config.h"
18 #include "opal/constants.h"
19
20 #include "opal/mca/event/event.h"
21
22 #include "event.h"
23
24 #include "opal/util/argv.h"
25 #include "opal/util/printf.h"
26
27
28
29
30 const char *opal_event_external_component_version_string =
31 "OPAL event_external event MCA component version " OPAL_VERSION;
32
33
34
35
36
37 static int event_external_open(void);
38 static int event_external_register (void);
39
40 char *ompi_event_module_include = NULL;
41
42
43
44
45
46
47 const opal_event_component_t mca_event_external_component = {
48
49
50
51
52 .base_version = {
53 OPAL_EVENT_BASE_VERSION_2_0_0,
54
55
56 .mca_component_name = "external",
57 MCA_BASE_MAKE_VERSION(component, OPAL_MAJOR_VERSION, OPAL_MINOR_VERSION,
58 OPAL_RELEASE_VERSION),
59
60
61 .mca_open_component = event_external_open,
62 .mca_register_component_params = event_external_register
63 },
64 .base_data = {
65
66 MCA_BASE_METADATA_PARAM_CHECKPOINT
67 }
68 };
69
70 static int event_external_open(void)
71 {
72
73
74 return OPAL_SUCCESS;
75 }
76
77 static int event_external_register (void) {
78 const char **all_available_eventops;
79 char *avail = NULL;
80 char *help_msg = NULL;
81 int ret;
82
83
84 all_available_eventops = event_get_supported_methods();
85
86 #ifdef __APPLE__
87 ompi_event_module_include ="select";
88 #else
89 ompi_event_module_include = "poll";
90 #endif
91
92 avail = opal_argv_join((char**)all_available_eventops, ',');
93 opal_asprintf( &help_msg,
94 "Comma-delimited list of libevent subsystems "
95 "to use (%s -- available on your platform)",
96 avail );
97
98 ret = mca_base_component_var_register (&mca_event_external_component.base_version,
99 "event_include", help_msg,
100 MCA_BASE_VAR_TYPE_STRING, NULL, 0,
101 MCA_BASE_VAR_FLAG_SETTABLE,
102 OPAL_INFO_LVL_3,
103 MCA_BASE_VAR_SCOPE_LOCAL,
104 &ompi_event_module_include);
105 free(help_msg);
106 free(avail);
107 avail = NULL;
108
109 if (0 > ret) {
110 return ret;
111 }
112
113 ret = mca_base_var_register_synonym (ret, "opal", "opal", "event", "include", 0);
114 if (0 > ret) {
115 return ret;
116 }
117
118 return OPAL_SUCCESS;
119 }