Public Member Functions | |
CellFilterBase () | |
virtual | ~CellFilterBase () |
CellSet | getCells (const Mesh &mesh) const |
virtual int | dimension (const Mesh &mesh) const =0 |
void | registerSubset (const CellFilter &sub) const |
void | registerLabeledSubset (int label, const CellFilter &sub) const |
void | registerDisjoint (const CellFilter &sub) const |
const Set< CellFilter > & | knownSubsets () const |
const Set< CellFilter > & | knownDisjoints () const |
virtual std::string | toString () const |
virtual std::string | description () const |
void | setName (const std::string &name) |
void | flushCache () const |
Protected Member Functions | |
virtual CellSet | internalGetCells (const Mesh &mesh) const =0 |
Private Attributes | |
Sundance::Map< int, CellSet > | cellSetCache_ |
std::string | name_ |
Derived classes must implement the methods
Definition at line 64 of file SundanceCellFilterBase.hpp.
CellFilterBase::CellFilterBase | ( | ) |
Empty ctor
Definition at line 42 of file SundanceCellFilterBase.cpp.
CellFilterBase::~CellFilterBase | ( | ) | [virtual] |
virtual dtor
Definition at line 46 of file SundanceCellFilterBase.cpp.
virtual std::string Sundance::CellFilterBase::description | ( | ) | const [inline, virtual] |
Print to a stream
Reimplemented in Sundance::DimensionalCellFilter, Sundance::LabeledSubsetCellFilter, Sundance::MaximalCellFilter, Sundance::SideCellFilter, and Sundance::SubsetCellFilter.
Definition at line 100 of file SundanceCellFilterBase.hpp.
References toString().
virtual int Sundance::CellFilterBase::dimension | ( | const Mesh & | mesh | ) | const [pure virtual] |
Return the dimension of the cells that will be identified by this filter when acting on the given mesh
Implemented in Sundance::BinaryCellFilter, Sundance::DimensionalCellFilter, Sundance::MaximalCellFilter, Sundance::SideCellFilter, and Sundance::SubsetCellFilter.
Referenced by Sundance::CellFilter::dimension().
void CellFilterBase::flushCache | ( | ) | const |
empties the cache of the filter
Definition at line 61 of file SundanceCellFilterBase.cpp.
References cellSetCache_.
Find the cells passing this filter on the given mesh. This method will cache the cell sets it computes for each mesh
Definition at line 51 of file SundanceCellFilterBase.cpp.
References cellSetCache_, Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::Map< Key, Value, Compare >::get(), Sundance::Mesh::id(), internalGetCells(), and Sundance::Map< Key, Value, Compare >::put().
Referenced by Sundance::CellFilter::getCells().
virtual CellSet Sundance::CellFilterBase::internalGetCells | ( | const Mesh & | mesh | ) | const [protected, pure virtual] |
Implemented in Sundance::BinaryCellFilter, Sundance::DimensionalCellFilter, Sundance::LabeledSubsetCellFilter, Sundance::MaximalCellFilter, Sundance::SideCellFilter, and Sundance::SubsetCellFilter.
Referenced by getCells().
const Set<CellFilter>& Sundance::CellFilterBase::knownDisjoints | ( | ) | const |
const Set<CellFilter>& Sundance::CellFilterBase::knownSubsets | ( | ) | const |
void Sundance::CellFilterBase::registerDisjoint | ( | const CellFilter & | sub | ) | const |
void Sundance::CellFilterBase::registerLabeledSubset | ( | int | label, | |
const CellFilter & | sub | |||
) | const |
void Sundance::CellFilterBase::registerSubset | ( | const CellFilter & | sub | ) | const |
void Sundance::CellFilterBase::setName | ( | const std::string & | name | ) | [inline] |
Definition at line 104 of file SundanceCellFilterBase.hpp.
References name_.
Referenced by Sundance::BinaryCellFilter::BinaryCellFilter(), Sundance::BoundaryCellFilter::BoundaryCellFilter(), Sundance::DimensionalCellFilter::DimensionalCellFilter(), Sundance::MaximalCellFilter::MaximalCellFilter(), Sundance::CellFilter::setName(), Sundance::SideCellFilter::SideCellFilter(), and Sundance::SubsetCellFilter::SubsetCellFilter().
virtual std::string Sundance::CellFilterBase::toString | ( | ) | const [inline, virtual] |
Definition at line 97 of file SundanceCellFilterBase.hpp.
References name_.
Referenced by Sundance::DimensionalCellFilter::description(), description(), Sundance::BinaryCellFilter::internalGetCells(), and Sundance::CellFilter::toString().
Sundance::Map<int, CellSet> Sundance::CellFilterBase::cellSetCache_ [mutable, private] |
cache of previously computed cell sets
Definition at line 116 of file SundanceCellFilterBase.hpp.
Referenced by flushCache(), and getCells().
std::string Sundance::CellFilterBase::name_ [private] |