Go to the documentation of this file.
20 #ifndef LIBMESH_GHOSTING_FUNCTOR_H
21 #define LIBMESH_GHOSTING_FUNCTOR_H
24 #include "libmesh/libmesh_common.h"
25 #include "libmesh/id_types.h"
26 #include "libmesh/mesh_base.h"
27 #include "libmesh/reference_counted_object.h"
30 #include <unordered_map>
171 typedef std::unordered_map<const Elem*, const CouplingMatrix*>
map_type;
226 #endif // LIBMESH_GHOSTING_FUNCTOR_H
virtual ~GhostingFunctor()
Virtual destructor; this is an abstract base class.
This class implements reference counting.
The libMesh namespace provides an interface to certain functionality in the library.
std::unordered_map< const Elem *, const CouplingMatrix * > map_type
What elements do we care about and what variables do we care about on each element?
virtual void mesh_reinit()
GhostingFunctor subclasses which cache data will need to initialize that cache.
virtual void operator()(const MeshBase::const_element_iterator &range_begin, const MeshBase::const_element_iterator &range_end, processor_id_type p, map_type &coupled_elements)=0
For the specified range of active elements, what other elements currently living (whether local or gh...
This abstract base class defines the interface by which library code and user code can report associa...
uint8_t processor_id_type
virtual void delete_remote_elements()
GhostingFunctor subclasses with relatively long-lasting caches may want to delete the no-longer-relev...
The definition of the const_element_iterator struct.
GhostingFunctor()
Constructor.
virtual void redistribute()
GhostingFunctor subclasses with relatively long-lasting caches may want to redistribute those caches ...
virtual void dofmap_reinit()
For algebraic ghosting or coupling functors we also call dofmap_reinit() later, after dofs have been ...