00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 #include "adio.h"
00009 #include "mpi.h"
00010 
00011 #if defined(MPICH2)
00012 
00013 
00014 
00015 
00016 int MPIR_Status_set_bytes(MPI_Status *status, MPI_Datatype datatype, 
00017               int nbytes)
00018 {
00019     ADIOI_UNREFERENCED_ARG(datatype);
00020     
00021 
00022     if (status != MPI_STATUS_IGNORE)
00023         MPI_Status_set_elements(status, MPI_BYTE, nbytes);
00024     return MPI_SUCCESS;
00025 }
00026 #elif defined(MPICH)
00027 
00028 void MPID_Status_set_bytes(MPI_Status *status, int nbytes);
00029 int MPIR_Status_set_bytes(MPI_Status *status, MPI_Datatype datatype, 
00030               int nbytes);
00031 
00032 int MPIR_Status_set_bytes(MPI_Status *status, MPI_Datatype datatype, 
00033               int nbytes)
00034 {
00035     if (status != MPI_STATUS_IGNORE)
00036         MPID_Status_set_bytes(status, nbytes);
00037     return MPI_SUCCESS;
00038 }
00039 
00040 #elif defined(MPILAM) || defined(MPISGI)
00041 int MPIR_Status_set_bytes(MPI_Status *status, MPI_Datatype datatype,
00042         int nbytes)
00043 {
00044   
00045   if (datatype == MPI_DATATYPE_NULL);
00046 
00047   if (status != MPI_STATUS_IGNORE)
00048       status->st_length = nbytes;
00049   return MPI_SUCCESS;
00050 }
00051 #endif