SYNTAX
------

C Syntax
^^^^^^^^

.. code-block:: c

    int MPI_Type_get_envelope(MPI_Datatype datatype, int* num_integers,
        int* num_addresses, int* num_datatypes, int* combiner)

    int MPI_Type_get_envelope_c(MPI_Datatype datatype, MPI_Count*
        num_integers, MPI_Count* num_addresses, MPI_Count*
        num_large_counts, MPI_Count* num_datatypes, int* combiner)

Fortran Syntax
^^^^^^^^^^^^^^

.. code-block:: fortran

    USE MPI
    ! or the older form: INCLUDE 'mpif.h'
    MPI_TYPE_GET_ENVELOPE(DATATYPE, NUM_INTEGERS, NUM_ADDRESSES, NUM_DATATYPES, COMBINER, IERROR)
    	INTEGER DATATYPE, NUM_INTEGERS, NUM_ADDRESSES, NUM_DATATYPES, COMBINER, IERROR

Fortran 2008 Syntax
^^^^^^^^^^^^^^^^^^^

.. code-block:: fortran

    USE mpi_f08
    MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner, ierror)
    	TYPE(MPI_Datatype), INTENT(IN) :: datatype
    	INTEGER, INTENT(OUT) :: num_integers, num_addresses, num_datatypes, combiner
    	INTEGER, OPTIONAL, INTENT(OUT) :: ierror

    MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner, ierror)
    	TYPE(MPI_Datatype), INTENT(IN) :: datatype
    	INTEGER(KIND=MPI_COUNT_KIND), INTENT(OUT) :: num_integers, num_addresses, num_large_counts, num_datatypes
    	INTEGER, INTENT(OUT) :: combiner
    	INTEGER, OPTIONAL, INTENT(OUT) :: ierror
