Open MPI logo

MPI_Type_create_struct(3) man page (version 1.2.9)

  |   Home   |   Support   |   FAQ   |  

« Return to documentation listing



NAME

       MPI_Type_create_struct - Creates a structured data type.

SYNTAX


C Syntax

       #include <mpi.h>
       int MPI_Type_create_struct(int count, int array_of_blocklengths[],
            MPI_Aint array_of_displacements[], MPI_Datatype array_of_types[],
            MPI_Datatype *newtype)

Fortran Syntax (see FORTRAN 77 NOTES)

       INCLUDE 'mpif.h'
       MPI_TYPE_CREATE_STRUCT(COUNT, ARRAY_OF_BLOCKLENGTHS,
                 ARRAY_OF_DISPLACEMENTS, ARRAY_OF_TYPES, NEWTYPE, IERROR)
            INTEGER   COUNT, ARRAY_OF_BLOCKLENGTHS(*), ARRAY_OF_TYPES(*),
            INTEGER NEWTYPE, IERROR
            INTEGER(KIND=MPI_ADDRESS_KIND) ARRAY_OF_DISPLACEMENTS(*)

C++ Syntax

       #include <mpi.h>
       static MPI::Datatype MPI::Datatype::Create_struct(int count,
            const int array_of_blocklengths[], const MPI::Aint
            array_of_displacements[], const MPI::Datatype
            array_of_types[])

INPUT PARAMETERS

       count     Number  of  blocks  (integer)  --  also  number of entries in
                 arrays    array_of_types,     array_of_displacements,     and
                 array_of_blocklengths.

       array_of_blocklengths
                 Number of elements in each block (array of integers).

       array_of_displacements
                 Byte displacement of each block (array of integers).

       array_of_types
                 Type of elements in each block (array of handles to data-type
                 objects).

OUTPUT PARAMETERS

       newtype   New data type (handle).

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       MPI_Type_create_struct creates a structured  data  type.  This  routine
       replaces MPI_Type_struct, which is now deprecated.

       NOTE  - This routine replaces MPI_Type_struct, which is deprecated. See
       the man page MPI_Type_struct(3) for information about that routine.

       where MPI_ADDRESS_KIND is a constant defined in mpif.h  and  gives  the
       length of the declared integer in bytes.

ERRORS

       Almost  all MPI routines return an error value; C routines as the value
       of the function and Fortran routines in the last  argument.  C++  func-
       tions  do  not  return  errors.  If the default error handler is set to
       MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism
       will be used to throw an MPI:Exception object.

       Before  the  error  value is returned, the current MPI error handler is
       called. By default, this error handler aborts the MPI job,  except  for
       I/O   function   errors.   The   error  handler  may  be  changed  with
       MPI_Comm_set_errhandler; the predefined error handler MPI_ERRORS_RETURN
       may  be  used  to cause error values to be returned. Note that MPI does
       not guarantee that an MPI program can continue past an error.

SEE ALSO

       MPI_Type_struct
       MPI_Type_create_hindexed

Open MPI 1.2                    September 2006MPI_Type_create_struct(3OpenMPI)

« Return to documentation listing