2014-10-24 01:21:54 +04:00
.\" -*- nroff -*-
2010-10-08 01:13:11 +04:00
.\" Copyright 2006-2008 Sun Microsystems, Inc.
.\" Copyright 2009-2010 Cisco Systems, Inc. All rights reserved.
2006-09-28 22:39:36 +04:00
.\" Copyright (c) 1996 Thinking Machines Corporation
2014-10-24 01:21:54 +04:00
.\" $COPYRIGHT$
2008-08-02 01:14:37 +04:00
.TH MPI_File_create_errhandler 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
2006-09-28 22:39:36 +04:00
.SH NAME
2015-06-24 06:59:57 +03:00
\fBMPI_File_create_errhandler \fP \- Creates an MPI-style error handler that can be attached to a file.
2006-09-28 22:39:36 +04:00
.SH SYNTAX
.ft R
.SH C Syntax
.nf
#include <mpi.h>
2009-10-22 20:50:45 +04:00
int MPI_File_create_errhandler(MPI_File_errhandler_function \fI*function\fP,
2006-09-28 22:39:36 +04:00
MPI_Errhandler \fI*errhandler\fP)
2010-10-08 01:13:11 +04:00
.fi
2006-09-28 22:39:36 +04:00
.SH Fortran Syntax
.nf
2015-05-15 12:20:35 +03:00
USE MPI
! or the older form: INCLUDE 'mpif.h'
2006-09-28 22:39:36 +04:00
MPI_FILE_CREATE_ERRHANDLER(\fIFUNCTION, ERRHANDLER, IERROR\fP)
EXTERNAL \fIFUNCTION\fP
INTEGER \fIERRHANDLER, IERROR\fP
2015-05-15 12:20:35 +03:00
.fi
.SH Fortran 2008 Syntax
.nf
USE mpi_f08
MPI_File_create_errhandler(\fIfile_errhandler_fn\fP, \fIerrhandler\fP, \fIierror\fP)
PROCEDURE(MPI_File_errhandler_function) :: \fIfile_errhandler_fn\fP
TYPE(MPI_Errhandler), INTENT(OUT) :: \fIerrhandler\fP
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
2010-10-08 01:13:11 +04:00
.fi
2006-09-28 22:39:36 +04:00
.SH C++ Syntax
2009-10-22 20:50:45 +04:00
.nf
2006-09-28 22:39:36 +04:00
#include <mpi.h>
static MPI::Errhandler
2009-10-22 20:50:45 +04:00
MPI::File::Create_errhandler(MPI::File::Errhandler_function*
2006-09-28 22:39:36 +04:00
\fIfunction\fP)
2010-10-08 01:13:11 +04:00
.fi
2009-10-22 20:50:45 +04:00
.SH DEPRECATED TYPE NAME NOTE
.ft R
MPI-2.2 deprecated the MPI_File_errhandler_fn and
MPI::file::Errhandler_fn types in favor of
MPI_File_errhandler_function and MPI::File::Errhandler_function,
respectively. Open MPI supports both names (indeed, the _fn names are
typedefs to the _function names).
2006-09-28 22:39:36 +04:00
.SH INPUT PARAMETER
.ft R
.TP 1i
function
User-defined error handling procedure (function).
.SH OUTPUT PARAMETERS
.ft R
.TP 1i
errhandler
MPI error handler (handle).
.ft R
.TP 1i
IERROR
2015-06-24 06:59:57 +03:00
Fortran only: Error status (integer).
2006-09-28 22:39:36 +04:00
.SH DESCRIPTION
.ft R
2015-06-24 06:59:57 +03:00
Registers the user routine \fIfunction\fP for use as an MPI exception handler. Returns in errhandler a handle to the registered exception handler.
2006-09-28 22:39:36 +04:00
.sp
2009-10-22 20:50:45 +04:00
In the C language, the user routine \fIfunction\fP should be a C function of type MPI_File_errhandler_function, which is defined as
2006-09-28 22:39:36 +04:00
.sp
.nf
2015-06-24 06:59:57 +03:00
typedef void (MPI_File_errhandler_function)(MPI_File *, int *,
\&...);
2006-09-28 22:39:36 +04:00
.fi
.sp
The first argument to \fIfunction\fP is the file in use. The second is the error code
2015-06-24 06:59:57 +03:00
to be returned by the MPI routine that raised the error.
2006-09-28 22:39:36 +04:00
.sp
In the Fortran language, the user routine should be of the form:
.sp
.nf
2009-10-22 20:50:45 +04:00
SUBROUTINE FILE_ERRHANDLER_FUNCTION(FILE, ERROR_CODE, ...)
2006-09-28 22:39:36 +04:00
INTEGER FILE, ERROR_CODE
.fi
.sp
In C++, the user routine \fIfunction\fP should be of the form:
.sp
.nf
2015-06-24 06:59:57 +03:00
typedef void MPI::File::Errhandler_function(MPI::File &, int *,
2006-09-28 22:39:36 +04:00
...);
.fi
.sp
.SH ERRORS
2010-07-22 05:24:12 +04:00
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.
2006-09-28 22:39:36 +04:00
.sp
Before the error value is returned, the current MPI error handler is
2015-06-24 06:59:57 +03:00
called. For MPI I/O function errors, the default error handler is set to MPI_ERRORS_RETURN. The error handler may be changed with MPI_File_set_errhandler; the predefined error handler MPI_ERRORS_ARE_FATAL may be used to make I/O errors fatal. Note that MPI does not guarantee that an MPI program can continue past an error.
2006-09-28 22:39:36 +04:00