ExodusII
5.15
|
00001 /* 00002 * Copyright (c) 2012 Sandia Corporation. Under the terms of Contract 00003 * DE-AC04-94AL85000 with Sandia Corporation, the U.S. Governement 00004 * retains certain rights in this software. 00005 * 00006 * Redistribution and use in source and binary forms, with or without 00007 * modification, are permitted provided that the following conditions 00008 * are met: 00009 * 00010 * * Redistributions of source code must retain the above copyright 00011 * notice, this list of conditions and the following disclaimer. 00012 * 00013 * * Redistributions in binary form must reproduce the above 00014 * copyright notice, this list of conditions and the following 00015 * disclaimer in the documentation and/or other materials provided 00016 * with the distribution. 00017 * 00018 * * Neither the name of Sandia Corporation nor the names of its 00019 * contributors may be used to endorse or promote products derived 00020 * from this software without specific prior written permission. 00021 * 00022 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00023 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00024 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 00025 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 00026 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 00027 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 00028 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 00029 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 00030 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 00031 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 00032 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 00033 * OF THE POSSIBILITY OF SUCH DAMAGE. 00034 * 00035 */ 00036 00037 /***************************************************************************** 00038 * 00039 * exodusII_par.h - Exodus II parallel-aware API include file 00040 * 00041 *****************************************************************************/ 00042 00043 #ifndef EXODUS_II_PAR_HDR 00044 #define EXODUS_II_PAR_HDR 00045 00046 #if !defined(PARALLEL_NETCDF) 00047 00048 #include "exodusII.h" 00049 00050 /* 00051 * need following extern if this include file is used in a C++ 00052 * program, to keep the C++ compiler from mangling the function names. 00053 */ 00054 #ifdef __cplusplus 00055 extern "C" { 00056 #endif 00057 00058 #define ex_open_par(path, mode, comp_ws, io_ws, version, comm, info) ex_open_par_int(path, mode, comp_ws, io_ws, version, comm, info, EX_API_VERS_NODOT) 00059 #define ex_create_par(path, mode, comp_ws, io_ws, comm, info) ex_create_par_int(path, mode, comp_ws, io_ws, comm, info, EX_API_VERS_NODOT) 00060 00061 EXODUS_EXPORT int ex_open_par_int (const char *path, 00062 int mode, 00063 int *comp_ws, 00064 int *io_ws, 00065 float *version, 00066 MPI_Comm comm, 00067 MPI_Info info, 00068 int my_version); 00069 00070 EXODUS_EXPORT int ex_create_par_int (const char *path, int cmode, int *comp_ws, int *io_ws, 00071 MPI_Comm comm, 00072 MPI_Info info, 00073 int my_version); 00074 00075 #else 00076 #error "Parallel-aware exodusII_par.h included in non-parallel context" 00077 #endif 00078 00079 #ifdef __cplusplus 00080 } /* close brackets on extern "C" declaration */ 00081 #endif 00082 00083 #endif 00084