File: MPI_Status_f2f08.3

package info (click to toggle)
openmpi 5.0.8-4
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 201,684 kB
  • sloc: ansic: 613,078; makefile: 42,353; sh: 11,194; javascript: 9,244; f90: 7,052; java: 6,404; perl: 5,179; python: 1,859; lex: 740; fortran: 61; cpp: 20; tcl: 12
file content (142 lines) | stat: -rw-r--r-- 4,225 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
.\" Man page generated from reStructuredText.
.
.TH "MPI_STATUS_F2F08" "3" "May 30, 2025" "" "Open MPI"
.
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.INDENT 0.0
.INDENT 3.5
.UNINDENT
.UNINDENT
.sp
\fI\%MPI_Status_f082f\fP, \fI\%MPI_Status_c2f08\fP \- Translates a Fortran 2008 status
into a Fortran INTEGER\-style status, or vice versa.
.SH SYNTAX
.SS C Syntax
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
#include <mpi.h>

int MPI_Status_f082f(const MPI_F08_status *f08_status, MPI_Fint *f_status)
int MPI_Status_f2f08(const MPI_Fint *f_status, MPI_F08_status *f08_status)
.ft P
.fi
.UNINDENT
.UNINDENT
.SS Fortran mpi Module Syntax
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
USE MPI

MPI_STATUS_F082F(F08_STATUS, F_STATUS, IERROR)
    TYPE(MPI_Status) :: F08_STATUS
    INTEGER :: STATUS(MPI_STATUS_SIZE), IERROR

MPI_STATUS_F2F08(F_STATUS, F08_STATUS, IERROR)
    INTEGER :: F_STATUS(MPI_STATUS_SIZE), IERROR
    TYPE(MPI_Status) :: F08_STATUS
.ft P
.fi
.UNINDENT
.UNINDENT
.SS Fortran mpi_f08 Module Syntax
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
USE mpi_f08

MPI_Status_f082f(f08_status, f_status, ierror)
    TYPE(MPI_Status), INTENT(IN) :: f08_status
    INTEGER, INTENT(OUT) :: f_status(MPI_STATUS_SIZE)
    INTEGER, OPTIONAL, INTENT(OUT) :: ierror

MPI_Status_f2f08(f_status, f08_status, ierror)
    INTEGER, INTENT(IN) :: f_status(MPI_STATUS_SIZE)
    TYPE(MPI_Status), INTENT(OUT) :: f08_status
    INTEGER, OPTIONAL, INTENT(OUT) :: ierror
.ft P
.fi
.UNINDENT
.UNINDENT
.SH PARAMETERS
.INDENT 0.0
.IP \(bu 2
\fBf08_status\fP : mpi_f08\-style MPI status object
.IP \(bu 2
\fBf_status\fP : mpi\-style INTEGER MPI status object
.UNINDENT
.SH DESCRIPTION
.sp
These two procedures are provided to convert from a Fortran 2008 status
(which is a derived datatype made of integers) to a Fortran status
(which is an array of integers), and vice versa. The conversion occurs
on all the information in status, including that which is hidden. That
is, no status information is lost in the conversion.
.sp
When using \fI\%MPI_Status_f082f\fP, if \fBf08_status\fP is a valid Fortran status,
but not the Fortran value of \fBMPI_F08_STATUS_IGNORE\fP (in C),
\fBMPI_STATUS_IGNORE\fP (in Fortran) or \fBMPI_F08_STATUSES_IGNORE\fP (in C) or
\fBMPI_STATUSES_IGNORE\fP (in Fortran), then \fI\%MPI_Status_f082f\fP returns in
\fBf_status\fP a valid array with the same content. If \fBf08_status\fP is the C
value of \fBMPI_F08_STATUS_IGNORE\fP or \fBMPI_F08_STATUSES_IGNORE\fP or the Fortran
value of \fBMPI_STATUS_IGNORE\fP or \fBMPI_STATUSES_IGNORE\fP, or if \fBf08_status\fP is
not a valid Fortran status, then the call is erroneous.
.sp
When using \fI\%MPI_Status_f2f08\fP, the opposite conversion is applied. If
\fBf_status\fP is \fBMPI_STATUS_IGNORE\fP or \fBMPI_STATUSES_IGNORE\fP, or if \fBf_status\fP is
not a valid Fortran status, then the call is erroneous.
.sp
The input status has the same source, tag and error code values as the
output status, and returns the same answers when queried for count,
elements, and cancellation. The conversion function may be called with
an input status argument that has an undefined error field, in which
case the value of the error field in the output status argument is
undefined.
.SH NOTES
.sp
The Fortran subroutines for these MPI routines are only available in the
mpi and mpi_f08 modules (including the type specification for
\fBTYPE(MPI_Status)\fP; they are (intentionally) not available in \fBmpif.h\fP\&.
.sp
\fBSEE ALSO:\fP
.INDENT 0.0
.INDENT 3.5
\fI\%MPI_Status_c2f\fP \fI\%MPI_Status_c2f08\fP
.UNINDENT
.UNINDENT
.SH COPYRIGHT
2003-2025, The Open MPI Community
.\" Generated by docutils manpage writer.
.