Mesh Oriented datABase  (version 5.5.0)
An array-based unstructured mesh library
WriteHDF5Parallel.cpp File Reference
#include <cstdarg>
#include <ctime>
#include <cstdlib>
#include <cstring>
#include <cassert>
#include <vector>
#include <set>
#include <map>
#include <utility>
#include <iostream>
#include <sstream>
#include <string>
#include "moab/Interface.hpp"
#include "Internals.hpp"
#include "MBTagConventions.hpp"
#include "MBParallelConventions.h"
#include "moab/ParallelComm.hpp"
#include "moab/CN.hpp"
#include "moab/Range.hpp"
#include "moab/CpuTimer.hpp"
#include "WriteHDF5Parallel.hpp"
#include <H5Tpublic.h>
#include <H5Ppublic.h>
#include <H5FDmpi.h>
#include <H5FDmpio.h>
#include "mhdf.h"
#include "IODebugTrack.hpp"
#include "moab/FileOptions.hpp"
+ Include dependency graph for WriteHDF5Parallel.cpp:

Go to the source code of this file.

Classes

class  moab::TagNameCompare
 
struct  moab::serial_tag_data
 
struct  moab::DatasetVals
 
struct  moab::elemtype
 

Namespaces

 moab
 Class representing axis-aligned bounding box.
 

Macros

#define PP_CAT_(a, b)   a##b
 
#define PP_CAT(a, b)   PP_CAT_( a, b )
 
#define STATIC_ASSERT(Condition)
 
#define MPI_FAILURE_MSG(A)    "MPI Failure at " __FILE__ ":%d : (Code %d) %s\n", __LINE__, (int)( A ), mpi_err_str( ( A ) )
 
#define CHECK_MPI(A)
 
#define MB_FAILURE_MSG(A)   "MOAB_Failure at " __FILE__ ":%d : %s (%d)\n", __LINE__, ErrorCodeStr[( A )], (int)( A )
 
#define CHECK_MB(A)
 
#define HDF_FAILURE_MSG(A)   "MHDF Failure at " __FILE__ ":%d : %s\n", __LINE__, mhdf_message( &( A ) )
 
#define CHECK_HDF(A)
 
#define CHECK_HDFN(A)
 
#define VALGRIND_CHECK_MEM_IS_DEFINED(a, b)   ( (void)0 )
 
#define VALGRIND_CHECK_MEM_IS_ADDRESSABLE(a, b)   ( (void)0 )
 
#define VALGRIND_MAKE_MEM_UNDEFINED(a, b)   ( (void)0 )
 
#define START_SERIAL
 
#define END_SERIAL
 
#define debug_barrier()   debug_barrier_line( __LINE__ )
 

Functions

 moab::STATIC_ASSERT (sizeof(unsigned long) >=sizeof(EntityHandle))
 
static ErrorCode moab::error (ErrorCode rval)
 
const char * moab::mpi_err_str (int errorcode)
 
template<typename T >
void moab::VALGRIND_MAKE_VEC_UNDEFINED (std::vector< T > &)
 
static int moab::my_Gatherv (void *sendbuf, int sendcount, MPI_Datatype sendtype, std::vector< unsigned char > &recvbuf, std::vector< int > &recvcounts, int root, MPI_Comm comm)
 
static void moab::print_type_sets (Interface *iFace, DebugOutput *str, Range &sets)
 
static void moab::set_bit (int position, unsigned char *bytes)
 
static bool moab::get_bit (int position, const unsigned char *bytes)
 
 moab::STATIC_ASSERT ((sizeof(DatasetVals)==3 *sizeof(long)))
 
template<typename TYPE >
static void moab::convert_to_ranged_ids (const TYPE *buffer, size_t len, std::vector< WriteHDF5::wid_t > &result)
 
static void moab::merge_ranged_ids (const unsigned long *range_list, size_t len, std::vector< WriteHDF5::wid_t > &result)
 
static void moab::merge_vector_ids (const unsigned long *list, size_t len, std::vector< WriteHDF5::wid_t > &result)
 

Variables

const unsigned moab::SSVB = 3
 

Macro Definition Documentation

◆ CHECK_HDF

#define CHECK_HDF (   A)
Value:
do \
{ \
if( mhdf_isError( &( A ) ) ) \
{ \
MB_SET_ERR_CONT( "MHDF Failure : " << mhdf_message( &( A ) ) ); \
dbgOut.printf( 1, HDF_FAILURE_MSG( ( A ) ) ); \
return error( MB_FAILURE ); \
} \
} while( false )

Definition at line 118 of file WriteHDF5Parallel.cpp.

◆ CHECK_HDFN

#define CHECK_HDFN (   A)
Value:
do \
{ \
if( mhdf_isError( &( A ) ) ) \
{ \
MB_SET_ERR_CONT( "MHDF Failure : " << mhdf_message( &( A ) ) ); \
return error( MB_FAILURE ); \
} \
} while( false )

Definition at line 129 of file WriteHDF5Parallel.cpp.

◆ CHECK_MB

#define CHECK_MB (   A)
Value:
do \
{ \
if( MB_SUCCESS != ( A ) ) \
{ \
MB_SET_ERR_CONT( "MOAB Failure : " << ErrorCodeStr[( A )] ); \
dbgOut.printf( 1, MB_FAILURE_MSG( ( A ) ) ); \
return error( A ); \
} \
} while( false )

Definition at line 105 of file WriteHDF5Parallel.cpp.

◆ CHECK_MPI

#define CHECK_MPI (   A)
Value:
do \
{ \
if( MPI_SUCCESS != ( A ) ) \
{ \
MB_SET_ERR_CONT( "MPI Failure : (Code " << (int)( A ) << ") " << mpi_err_str( ( A ) ) ); \
dbgOut.printf( 1, MPI_FAILURE_MSG( ( A ) ) ); \
return error( MB_FAILURE ); \
} \
} while( false )

Definition at line 92 of file WriteHDF5Parallel.cpp.

◆ debug_barrier

#define debug_barrier ( )    debug_barrier_line( __LINE__ )

Definition at line 261 of file WriteHDF5Parallel.cpp.

◆ END_SERIAL

#define END_SERIAL
Value:
} \
MPI_Barrier( myPcomm->proc_config().proc_comm() )

Definition at line 176 of file WriteHDF5Parallel.cpp.

◆ HDF_FAILURE_MSG

#define HDF_FAILURE_MSG (   A)    "MHDF Failure at " __FILE__ ":%d : %s\n", __LINE__, mhdf_message( &( A ) )

Definition at line 116 of file WriteHDF5Parallel.cpp.

◆ MB_FAILURE_MSG

#define MB_FAILURE_MSG (   A)    "MOAB_Failure at " __FILE__ ":%d : %s (%d)\n", __LINE__, ErrorCodeStr[( A )], (int)( A )

Definition at line 103 of file WriteHDF5Parallel.cpp.

◆ MPI_FAILURE_MSG

#define MPI_FAILURE_MSG (   A)     "MPI Failure at " __FILE__ ":%d : (Code %d) %s\n", __LINE__, (int)( A ), mpi_err_str( ( A ) )

Definition at line 89 of file WriteHDF5Parallel.cpp.

◆ PP_CAT

#define PP_CAT (   a,
 
)    PP_CAT_( a, b )

Definition at line 55 of file WriteHDF5Parallel.cpp.

◆ PP_CAT_

#define PP_CAT_ (   a,
 
)    a##b

Definition at line 54 of file WriteHDF5Parallel.cpp.

◆ START_SERIAL

#define START_SERIAL
Value:
for( unsigned _x = 0; _x < myPcomm->proc_config().proc_size(); ++_x ) \
{ \
MPI_Barrier( myPcomm->proc_config().proc_comm() ); \
if( _x != myPcomm->proc_config().proc_rank() ) continue

Definition at line 171 of file WriteHDF5Parallel.cpp.

◆ STATIC_ASSERT

#define STATIC_ASSERT (   Condition)
Value:
enum \
{ \
PP_CAT( dummy, __LINE__ ) = sizeof( ::STATIC_ASSERTION< (bool)( Condition ) > ) \
}

Definition at line 56 of file WriteHDF5Parallel.cpp.

◆ VALGRIND_CHECK_MEM_IS_ADDRESSABLE

#define VALGRIND_CHECK_MEM_IS_ADDRESSABLE (   a,
 
)    ( (void)0 )

Definition at line 156 of file WriteHDF5Parallel.cpp.

◆ VALGRIND_CHECK_MEM_IS_DEFINED

#define VALGRIND_CHECK_MEM_IS_DEFINED (   a,
 
)    ( (void)0 )

Definition at line 153 of file WriteHDF5Parallel.cpp.

◆ VALGRIND_MAKE_MEM_UNDEFINED

#define VALGRIND_MAKE_MEM_UNDEFINED (   a,
 
)    ( (void)0 )

Definition at line 159 of file WriteHDF5Parallel.cpp.