NewMadeleine

Documentation

« back to PM2 home.
nm_mpi.h
Go to the documentation of this file.
1/*
2 * NewMadeleine
3 * Copyright (C) 2006-2026 (see AUTHORS file)
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or (at
8 * your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
14 */
15
16
17#ifndef NM_MPI_H
18#define NM_MPI_H
19
41#ifdef __cplusplus
42extern "C"
43{
44#endif
45
46#include "nm_config.h"
47
48#ifndef NMAD_FORTRAN_TARGET_NONE
50# define NMAD_FORTRAN 1
51#endif /* NMAD_FORTRAN_TARGET_NONE */
52
53#define MPI_VERSION 4
54#define MPI_SUBVERSION 0
55
57#define MADMPI 1
58
63#include "nm_mpi_types.h"
64#include "nm_mpi_base.h"
65#include "nm_mpi_err.h"
66#include "nm_mpi_info.h"
67#include "nm_mpi_req.h"
68#include "nm_mpi_p2p.h"
69#include "nm_mpi_collective.h"
70#include "nm_mpi_datatype.h"
71#include "nm_mpi_group.h"
72#include "nm_mpi_topo.h"
73#include "nm_mpi_communicator.h"
74#include "nm_mpi_onesided.h"
75#include "nm_mpi_session.h"
76#include "nm_mpi_io.h"
77#include "nm_mpi_tool.h"
78#include "nm_mpi_f.h"
80#ifndef NM_MPI_EXTRACT_SYMBOLS /* do not include nm_mpi_pmpi.h while it is generated */
81# define NM_MPI_PMPI(SYM_MPI, SYM_INTERNAL) __typeof__(SYM_MPI) P ## SYM_MPI /* trailing semicolon is supposed to be added by caller */
82# include "nm_mpi_pmpi.h"
83#endif /* NM_MPI_EXTRACT_SYMBOLS */
84
87#ifdef NMAD_ABT
88#define main __abt_app_main
89#endif /* PIOMAN_ABT */
90
91#ifdef __cplusplus
92}
93#endif
94
95#endif /* NM_MPI_H */
declarations for MPI environmental management
declarations for MPI collectives
declarations for MPI communicators
declarations for MPI error management
declarations for MPI Fortran to C interface
declarations for MPI info objects
declarations for MPI I/O
declarations for unimplemented functions
declarations for MPI point to point operations
declarations for MPI requests
declarations for MPI collectives
declarations for MPI tool
types declarations for MPI