19#ifndef LIBMESH_PARALLEL_HILBERT_H
20#define LIBMESH_PARALLEL_HILBERT_H
26#include "libmesh/libmesh_config.h"
28#if defined(LIBMESH_HAVE_LIBHILBERT)
36#include "libmesh/ignore_warnings.h"
38#include "libmesh/restore_warnings.h"
44#ifdef LIBMESH_HAVE_MPI
62 timpi_call_mpi (MPI_Type_dup (t._datatype, &_datatype));
79#ifdef LIBMESH_ENABLE_UNIQUE_ID
80typedef std::pair<Hilbert::HilbertIndices, unique_id_type>
DofObjectKey;
95#ifdef LIBMESH_ENABLE_UNIQUE_ID
100 os <<
'(' << hilbert_pair.first <<
',' << hilbert_pair.second <<
')' << std::endl;
118 for (
int i=0; i<*len; i++, in++, inout++)
130 for (
int i=0; i<*len; i++, in++, inout++)
static const bool is_fixed_type
StandardType(const Hilbert::HilbertIndices *=nullptr)
StandardType(const StandardType< Hilbert::HilbertIndices > &t)
std::ostream & operator<<(std::ostream &os, const libMesh::Parallel::DofObjectKey &hilbert_pair)
std::pair< Hilbert::HilbertIndices, unique_id_type > DofObjectKey
The libMesh namespace provides an interface to certain functionality in the library.
void dofobjectkey_min_op(libMesh::Parallel::DofObjectKey *in, libMesh::Parallel::DofObjectKey *inout, int *len, void *)
void dofobjectkey_max_op(libMesh::Parallel::DofObjectKey *in, libMesh::Parallel::DofObjectKey *inout, int *len, void *)