Open MPI logo

MPI_Type_get_envelope(3) man page (version 1.3.4)

  |   Home   |   Support   |   FAQ   |  

« Return to documentation listing



NAME

       MPI_Type_get_envelope  - Returns informaion about input arguments asso-
       ciated with a data type.

SYNTAX


C Syntax

       #include <mpi.h>
       int MPI_Type_get_envelope(MPI_Datatype datatype, int *num_integers,
            int *num_addresses, int *num_datatypes, int *combiner)

Fortran Syntax

       INCLUDE 'mpif.h'
       MPI_TYPE_GET_ENVELOPE(DATATYPE, NUM_INTEGERS, NUM_ADDRESSES,
                 NUM_DATATYPES, COMBINER, IERROR)
            INTEGER   DATATYPE, NUM_INTEGERS, NUM_ADDRESSES
            INTEGER   NUM_DATATYPES, COMBINER, IERROR

C++ Syntax

       #include <mpi.h>
       void MPI::Datatype::Get_envelope(int& num_integers,
            int& num_addresses, int& num_datatypes,
            int& combiner) const

INPUT PARAMETER

       datatype  Data type to access (handle).

OUTPUT PARAMETERS

       num_integers
                 Number of input integers used in the call  constructing  com-
                 biner (nonnegative integer).

       num_addresses
                 Number  of input addresses used in the call constructing com-
                 biner (nonnegative integer).

       num_datatypes
                 Number of input data types used in the call constructing com-
                 biner (nonnegative integer).

       combiner  Combiner (state).

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       For  the  given data type, MPI_Type_get_envelope returns information on
       the number and type of input arguments used in teh  call  that  created
       the  data  type. The number-of-arguments values returned can be used to
       provide   sufficiently   large   arrays   in   the   decoding   routine
       MPI_Type_get_contents. This call and the meaning of the returned values
       is described below. The combiner reflects the MPI data type constructor
       call that was used in creating datatype.

       MPI_COMBINER_DUP                MPI_Type_dup
       MPI_COMBINER_CONTIGUOUS         MPI_Type_contiguous
       MPI_COMBINER_VECTOR             MPI_Type_vector
       MPI_COMBINER_HVECTOR_INTEGER    MPI_Type_hvector from Fortran
       MPI_COMBINER_HVECTOR            MPI_Type_hvector from C or C++
                                         and MPI_Type_create for
                                         all languages
       MPI_COMBINER_INDEXED            MPI_Type_indexed
       MPI_COMBINER_HINDEXED_INTEGER   MPI_Type_hindexed from Fortran
       MPI_COMBINER_HINDEXED           MPI_Type_hindexed from C or C++
                                         and MPI_Type_create_hindexed
                                         for all languages
       MPI_COMBINER_INDEXED_BLOCK      MPI_Type_create_indexed_block
       MPI_COMBINER_STRUCT_INTEGER     MPI_Type_struct from Fortran
       MPI_COMBINER_STRUCT             MPI_Type_struct from C or C++
                                         and MPI_Type_create_struct
                                         for all languages
       MPI_COMBINER_SUBARRAY           MPI_Type_create_subarray
       MPI_COMBINER_DARRAY             MPI_Type_create_darray
       MPI_COMBINER_F90_REAL           MPI_Type_create_f90_real
       MPI_COMBINER_F90_COMPLEX        MPI_Type_create_f90_complex
       MPI_COMBINER_F90_INTEGER        MPI_Type_create_f90_integer
       MPI_COMBINER_RESIZED            MPI_Type_create_resized

       If combiner is MPI_COMBINER_NAMED, then datatype is a named  predefined
       data type.

       The  actual  arguments used in the creation call for a data type can be
       obtained from the call MPI_Type_get_contents.

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_get_contents

1.3.4                            Nov 11, 2009         MPI_Type_get_envelope(3)

« Return to documentation listing