12 #include "ncdispatch.h"
16 nc_create_par(
const char *path,
int cmode, MPI_Comm comm,
17 MPI_Info info,
int *ncidp)
32 comm_c = (MPI_Comm)comm;
33 info_c = (MPI_Info)info;
37 return NC_create(path, cmode, 0, 0, NULL, 1, &data, ncidp);
43 nc_open_par(
const char *path,
int mode, MPI_Comm comm,
44 MPI_Info info,
int *ncidp)
53 if ((mode &
NC_MPIIO) || (mode & NC_MPIPOSIX)) {
63 return NC_open(path, mode, 0, NULL, 1, &mpi_data, ncidp);
69 nc_open_par_fortran(
const char *path,
int mode,
int comm,
81 #ifdef HAVE_MPI_COMM_F2C
82 comm_c = MPI_Comm_f2c(comm);
83 info_c = MPI_Info_f2c(info);
85 comm_c = (MPI_Comm)comm;
86 info_c = (MPI_Info)info;
89 return nc_open_par(path, mode, comm_c, info_c, ncidp);
96 nc_var_par_access(
int ncid,
int varid,
int par_access)
102 if ((stat = NC_check_id(ncid, &ncp)))
108 return ncp->dispatch->var_par_access(ncid,varid,par_access);
114 nc_create_par_fortran(
const char *path,
int cmode,
int comm,
115 int info,
int *ncidp)
123 #ifdef HAVE_MPI_COMM_F2C
124 comm_c = MPI_Comm_f2c(comm);
125 info_c = MPI_Info_f2c(info);
127 comm_c = (MPI_Comm)comm;
128 info_c = (MPI_Info)info;
131 return nc_create_par(path, cmode, comm_c, info_c, ncidp);