13 #ifndef _VT_FMPICONST_H
14 #define _VT_FMPICONST_H
17 # define EXTERN extern "C"
19 # define EXTERN extern
26 #define VT_MPI_F_BOTTOM vt_mpi_f_bottom_addr
27 #if (defined(HAVE_DECL_MPI_IN_PLACE) && HAVE_DECL_MPI_IN_PLACE)
28 # define VT_MPI_F_IN_PLACE vt_mpi_f_in_place_addr
30 #define VT_MPI_F_STATUS_IGNORE vt_mpi_f_status_ignore_addr
31 #define VT_MPI_F_STATUSES_IGNORE vt_mpi_f_statuses_ignore_addr
32 #if (defined(HAVE_DECL_MPI_STATUS_SIZE) && HAVE_DECL_MPI_STATUS_SIZE)
33 # define VT_MPI_STATUS_SIZE MPI_STATUS_SIZE
35 # define VT_MPI_STATUS_SIZE vt_mpi_status_size
38 #define VT_MPI_BOTTOM_F2C(addr) \
39 ((addr == VT_MPI_F_BOTTOM) ? MPI_BOTTOM : (addr))
40 #if (defined(HAVE_DECL_MPI_IN_PLACE) && HAVE_DECL_MPI_IN_PLACE)
41 # define VT_MPI_IN_PLACE_F2C(addr) \
42 ((addr == VT_MPI_F_IN_PLACE) ? MPI_IN_PLACE : (addr))
45 EXTERN MPI_Fint* vt_mpi_f_bottom_addr;
46 #if (defined(HAVE_DECL_MPI_IN_PLACE) && HAVE_DECL_MPI_IN_PLACE)
47 EXTERN MPI_Fint* vt_mpi_f_in_place_addr;
49 EXTERN MPI_Fint* vt_mpi_f_status_ignore_addr;
50 EXTERN MPI_Fint* vt_mpi_f_statuses_ignore_addr;
51 #if !(defined(HAVE_DECL_MPI_STATUS_SIZE) && HAVE_DECL_MPI_STATUS_SIZE)
52 EXTERN MPI_Fint vt_mpi_status_size;
55 EXTERN
void vt_fmpiconst_init(
void);