Example #1
0
void ompi_status_set_elements_f(MPI_Fint *status, MPI_Fint *datatype,
			       MPI_Fint *count, MPI_Fint *ierr)
{
    int c_ierr;
    MPI_Datatype c_type = PMPI_Type_f2c(*datatype);
    MPI_Status c_status;

    /* This seems silly, but someone will do it */

    if (OMPI_IS_FORTRAN_STATUS_IGNORE(status)) {
        c_ierr = MPI_SUCCESS;
    } else {
        PMPI_Status_f2c( status, &c_status );

        c_ierr = PMPI_Status_set_elements(&c_status, c_type,
                                         OMPI_FINT_2_INT(*count));

        /* If datatype is really being set, then that needs to be
           converted.... */
        if (MPI_SUCCESS == c_ierr) {
            PMPI_Status_c2f(&c_status, status);
        }
    }
    if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
}
Example #2
0
int MPI_Status_set_elements( MPI_Status *status, MPI_Datatype datatype, int count){
  return PMPI_Status_set_elements( status, datatype, count);
}