This source file includes following definitions.
- MPI_Comm_remote_group
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 #include "ompi_config.h"
22 #include <stdio.h>
23 #include <string.h>
24
25 #include "ompi/mpi/c/bindings.h"
26 #include "ompi/runtime/params.h"
27 #include "ompi/communicator/communicator.h"
28 #include "ompi/errhandler/errhandler.h"
29 #include "ompi/memchecker.h"
30
31 #if OMPI_BUILD_MPI_PROFILING
32 #if OPAL_HAVE_WEAK_SYMBOLS
33 #pragma weak MPI_Comm_remote_group = PMPI_Comm_remote_group
34 #endif
35 #define MPI_Comm_remote_group PMPI_Comm_remote_group
36 #endif
37
38
39 static const char FUNC_NAME[] = "MPI_Comm_remote_group";
40
41
42 int MPI_Comm_remote_group(MPI_Comm comm, MPI_Group *group)
43 {
44 MEMCHECKER(
45 memchecker_comm(comm);
46 );
47
48 OPAL_CR_NOOP_PROGRESS();
49
50 if ( MPI_PARAM_CHECK ) {
51 OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
52 if (ompi_comm_invalid (comm)) {
53 return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_COMM,
54 FUNC_NAME);
55 }
56
57 if ( NULL == group ) {
58 return OMPI_ERRHANDLER_INVOKE(comm, MPI_ERR_ARG,
59 FUNC_NAME);
60 }
61 }
62
63 if ( OMPI_COMM_IS_INTER(comm) ) {
64 OBJ_RETAIN(comm->c_remote_group);
65 }
66 else {
67 return OMPI_ERRHANDLER_INVOKE (comm, MPI_ERR_COMM,
68 FUNC_NAME);
69 }
70
71 *group = (MPI_Group) comm->c_remote_group;
72 return MPI_SUCCESS;
73 }