41 #ifndef DTK_ENTITYSET_HPP 42 #define DTK_ENTITYSET_HPP 46 #include "DTK_Entity.hpp" 47 #include "DTK_EntityIterator.hpp" 48 #include "DTK_Types.hpp" 50 #include <Teuchos_Array.hpp> 51 #include <Teuchos_Comm.hpp> 52 #include <Teuchos_Describable.hpp> 53 #include <Teuchos_RCP.hpp> 54 #include <Teuchos_Tuple.hpp> 87 virtual Teuchos::RCP<const Teuchos::Comm<int>>
communicator()
const = 0;
130 const int topological_dimension,
131 Entity &entity )
const = 0;
159 Teuchos::Array<Entity> &adjacent_entities )
const = 0;
173 describe( Teuchos::FancyOStream &out,
174 const Teuchos::EVerbosityLevel verb_level =
175 Teuchos::Describable::verbLevel_default )
const override;
188 #endif // end DTK_ENTITYSET_HPP Geometric entity interface definition.
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verb_level=Teuchos::Describable::verbLevel_default) const override
Provide a verbose description of the object.
Entity iterator interface.
virtual Teuchos::RCP< const Teuchos::Comm< int > > communicator() const =0
Parallel functions.
virtual EntityIterator entityIterator(const int topological_dimension, const PredicateFunction &predicate=selectAll) const =0
Get an iterator of the given entity type that satisfies the given predicate.
static bool selectAll(Entity)
Select all entities predicate.
virtual int physicalDimension() const =0
Geometric data functions.
virtual void getAdjacentEntities(const Entity &entity, const int adjacent_dimension, Teuchos::Array< Entity > &adjacent_entities) const =0
Given an entity, get the entities of the given type that are adjacent to it.
Geometric entity set interface definition.
std::function< bool(Entity)> PredicateFunction
Predicate function typedef.
virtual void globalBoundingBox(Teuchos::Tuple< double, 6 > &bounds) const
Get the global bounding box of entities of the set.
unsigned long int EntityId
Entity id type.
virtual void localBoundingBox(Teuchos::Tuple< double, 6 > &bounds) const
Get the local bounding box of entities of the set.
virtual std::string description() const override
Teuchos::Describable interface.
virtual void getEntity(const EntityId entity_id, const int topological_dimension, Entity &entity) const =0
Entity access functions.
virtual ~EntitySet()
Destructor.