Go to the documentation of this file.
20 #ifndef LIBMESH_PARALLEL_OBJECT_H
21 #define LIBMESH_PARALLEL_OBJECT_H
25 #include "libmesh/libmesh_common.h"
26 #include "libmesh/parallel_only.h"
34 #undef parallel_object_only
36 #define parallel_object_only() libmesh_parallel_only(this->comm())
38 #define parallel_object_only() ((void) 0)
81 libmesh_assert_equal_to (&
_communicator, &other._communicator);
94 const Parallel::Communicator &
comm ()
const
101 {
return cast_int<processor_id_type>(
_communicator.size()); }
107 {
return cast_int<processor_id_type>(
_communicator.rank()); }
116 #endif // LIBMESH_PARALLEL_OBJECT_H
ParallelObject(const ParallelObject &other)
Copy Constructor.
The libMesh namespace provides an interface to certain functionality in the library.
const Parallel::Communicator & comm() const
ParallelObject & operator=(const ParallelObject &libmesh_dbg_var(other))
"Assignment" operator.
virtual ~ParallelObject()
Destructor.
ParallelObject(const Parallel::Communicator &comm_in)
Constructor.
processor_id_type n_processors() const
processor_id_type processor_id() const
const Parallel::Communicator & _communicator
uint8_t processor_id_type
An object whose state is distributed along a set of processors.