MPI_Type_dup(3)                    Open MPI                    MPI_Type_dup(3)



NAME
       MPI_Type_dup - Duplicates a data type with associated key values.


SYNTAX
C Syntax
       #include <mpi.h>
       int MPI_Type_dup(MPI_Datatype type, MPI_Datatype *newtype)


Fortran Syntax
       INCLUDE 'mpif.h'
       MPI_TYPE_DUP(TYPE, NEWTYPE, IERROR)
            INTEGER   TYPE, NEWTYPE, IERROR


C++ Syntax
       #include <mpi.h>
       MPI::Datatype MPI::Datatype::Dup() const


INPUT PARAMETER
       type      Data type (handle).


OUTPUT PARAMETERS
       newtype   Copy of type (handle).

       IERROR    Fortran only: Error status (integer).


DESCRIPTION
       MPI_Type_dup is a type constructor that duplicates the existing type
       with associated key values. For each key value, the respective copy
       callback function determines the attribute value associated with this
       key in the new communicator. One particular action that a copy callback
       may take is to delete the attribute from the new data type. Returns in
       newtype a new data type with exactly the same properties as type, as
       well as any copied cached information. The new data type has identical
       upper bound and lower bound and yields the same net result when fully
       decoded with the functions described in Section 8.6 of the MPI-2
       standard. newtype has the same committed state as the old type.


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++
       functions 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_create_keyval




1.4.1                            Jan 14, 2010                  MPI_Type_dup(3)
