This source file includes following definitions.
- ompi_hook_demo_component_open
- ompi_hook_demo_component_close
- ompi_hook_demo_component_register
1
2
3
4
5
6
7
8
9
10 #include "ompi_config.h"
11
12 #include "hook_demo.h"
13
14 static int ompi_hook_demo_component_open(void);
15 static int ompi_hook_demo_component_close(void);
16 static int ompi_hook_demo_component_register(void);
17
18
19
20
21 const char *mca_hook_demo_component_version_string =
22 "Open MPI 'demo' hook MCA component version " OMPI_VERSION;
23
24
25
26
27
28 const ompi_hook_base_component_1_0_0_t mca_hook_demo_component = {
29
30
31
32 .hookm_version = {
33 OMPI_HOOK_BASE_VERSION_1_0_0,
34
35
36 .mca_component_name = "demo",
37 MCA_BASE_MAKE_VERSION(component, OMPI_MAJOR_VERSION, OMPI_MINOR_VERSION,
38 OMPI_RELEASE_VERSION),
39
40
41 .mca_open_component = ompi_hook_demo_component_open,
42 .mca_close_component = ompi_hook_demo_component_close,
43 .mca_register_component_params = ompi_hook_demo_component_register,
44
45
46 .mca_component_flags = MCA_BASE_COMPONENT_FLAG_REQUIRED,
47 },
48 .hookm_data = {
49
50 MCA_BASE_METADATA_PARAM_CHECKPOINT
51 },
52
53
54 .hookm_mpi_initialized_top = ompi_hook_demo_mpi_initialized_top,
55 .hookm_mpi_initialized_bottom = ompi_hook_demo_mpi_initialized_bottom,
56
57 .hookm_mpi_finalized_top = ompi_hook_demo_mpi_finalized_top,
58 .hookm_mpi_finalized_bottom = ompi_hook_demo_mpi_finalized_bottom,
59
60 .hookm_mpi_init_top = ompi_hook_demo_mpi_init_top,
61 .hookm_mpi_init_top_post_opal = ompi_hook_demo_mpi_init_top_post_opal,
62 .hookm_mpi_init_bottom = ompi_hook_demo_mpi_init_bottom,
63 .hookm_mpi_init_error = ompi_hook_demo_mpi_init_error,
64
65 .hookm_mpi_finalize_top = ompi_hook_demo_mpi_finalize_top,
66 .hookm_mpi_finalize_bottom = ompi_hook_demo_mpi_finalize_bottom,
67 };
68
69
70
71
72
73
74 ompi_hook_base_component_1_0_0_t hook_demo_extra_component = {
75
76 .hookm_mpi_init_bottom = ompi_hook_demo_extra_mpi_init_bottom,
77 };
78
79 static int ompi_hook_demo_component_open(void)
80 {
81 opal_output(0, "hook/demo: component_open()");
82
83
84
85 ompi_hook_base_register_callbacks( &hook_demo_extra_component );
86
87 return OMPI_SUCCESS;
88 }
89
90 static int ompi_hook_demo_component_close(void)
91 {
92 opal_output(0, "hook/demo: component_close()");
93
94
95
96
97 ompi_hook_base_deregister_callbacks( &hook_demo_extra_component );
98
99 return OMPI_SUCCESS;
100 }
101
102 static int ompi_hook_demo_component_register(void)
103 {
104 opal_output(0, "hook/demo: component_register()");
105 return OMPI_SUCCESS;
106 }
107