CAPD RedHom Library
capd::complex::LefschetzCellComplex< ColorT, Data > Class Template Reference

#include <capd/complex/LefschetzCellComplex.h>

Public Types

typedef LefschetzMemoryModel< Data, ColorT > MemoryModel
 
typedef CellComplex< MemoryModel, boost::mpl::vector<> > BaseCellComplex
 
typedef BaseCellComplex::Id Id
 
typedef BaseCellComplex::Cell Cell
 
typedef BaseCellComplex::ConstCell ConstCell
 
typedef BaseCellComplex::CellCode CellCode
 
typedef BaseCellComplex::Dim Dim
 
typedef boost::container::flat_map< std::pair< Id, Id >, int > CoincidenceMap
 
typedef MemoryModel::Color Color
 
typedef MemoryModel::EnumerateCellCodes EnumerateCellCodes
 
typedef MemoryModel::AvailableStorage AvailableCells
 
typedef MemoryModel::ColorStorage Colors
 
typedef boost::mpl::joint_view< boost::mpl::vector<>, boost::mpl::vector< typename MemoryModel::Tag, CellComplexTag > > Tags
 
typedef CellComplex_IteratorFamily< CellComplex, Cell, ConstCellIterators
 
typedef CellComplex_IteratorFamily< const CellComplex, ConstCell, ConstCellConstIterators
 
typedef ColoredIteratorFamily< IteratorsColoredIterators
 
typedef ColoredIteratorFamily< ConstIteratorsColoredConstIterators
 
typedef boost::mpl::true_ IsComplex
 

Public Member Functions

template<typename Dims , typename Bd >
 LefschetzCellComplex (const Dims &dims, const Bd &bd)
 
int coincidenceIndex (const ConstCell &cellA, const ConstCell &cellB) const
 
size_t size () const
 
size_t cardinality () const
 
CellCode cellCode () const
 
Dim dim () const
 
Dim getDim () const
 
Iterators iterators ()
 
ConstIterators iterators () const
 
ColoredIterators iterators (Color color)
 
ColoredConstIterators iterators (Color color) const
 
ConstCell operator[] (const CellCode &cellCode) const
 
ConstCell operator[] (Id id) const
 
Cell operator[] (const CellCode &cellCode)
 
Cell operator[] (Id id)
 
boost::optional< Cellfind (const CellCode &cellCode)
 
boost::optional< Cellfind (Id id)
 
Color color (Id id) const
 
bool exists (Id id) const
 
bool exists (const CellCode &cellCode) const
 
Cell insert (const CellCode &cellCode)
 
Cell insert (const CellCode &cellCode, Color color)
 
void remove (Cell &cell)
 
void fillWithBoundaries ()
 
void fillWithBoundary (Id cellId, Color color=Color(), bool keepLower=true)
 
void fillWithBoundary (const Cell &cell, Color color=Color(), bool keepLower=true)
 
void resetColors (Color color)
 
EnumerateCellCodesenumerateCellCodes ()
 
const EnumerateCellCodesenumerateCellCodes () const
 
bool isClosed () const
 
void setClosedValidator (const boost::function< bool()> &v)
 
void setClosed (bool closed)
 

Protected Member Functions

void insertAll (Color color=Color(1))
 

Member Typedef Documentation

template<typename ColorT , typename Data >
typedef CellComplex<MemoryModel, boost::mpl::vector<> > capd::complex::LefschetzCellComplex< ColorT, Data >::BaseCellComplex
template<typename ColorT , typename Data >
typedef BaseCellComplex::Cell capd::complex::LefschetzCellComplex< ColorT, Data >::Cell
template<typename ColorT , typename Data >
typedef BaseCellComplex::CellCode capd::complex::LefschetzCellComplex< ColorT, Data >::CellCode
template<typename ColorT , typename Data >
typedef boost::container::flat_map<std::pair<Id, Id>, int> capd::complex::LefschetzCellComplex< ColorT, Data >::CoincidenceMap
template<typename ColorT , typename Data >
typedef BaseCellComplex::ConstCell capd::complex::LefschetzCellComplex< ColorT, Data >::ConstCell
template<typename ColorT , typename Data >
typedef BaseCellComplex::Dim capd::complex::LefschetzCellComplex< ColorT, Data >::Dim
template<typename ColorT , typename Data >
typedef BaseCellComplex::Id capd::complex::LefschetzCellComplex< ColorT, Data >::Id
template<typename ColorT , typename Data >
typedef LefschetzMemoryModel<Data, ColorT> capd::complex::LefschetzCellComplex< ColorT, Data >::MemoryModel
typedef boost::mpl::joint_view<boost::mpl::vector<> , boost::mpl::vector<typename MemoryModel::Tag, CellComplexTag> > capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::Tags
inherited

Constructor & Destructor Documentation

template<typename ColorT , typename Data >
template<typename Dims , typename Bd >
capd::complex::LefschetzCellComplex< ColorT, Data >::LefschetzCellComplex ( const Dims dims,
const Bd &  bd 
)
inline

Member Function Documentation

size_t capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::cardinality ( ) const
inlineinherited
CellCode capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::cellCode ( ) const
inlineinherited
template<typename ColorT , typename Data >
int capd::complex::LefschetzCellComplex< ColorT, Data >::coincidenceIndex ( const ConstCell cellA,
const ConstCell cellB 
) const
inline
Color capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::color ( Id  id) const
inlineinherited
Dim capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::dim ( ) const
inlineinherited
EnumerateCellCodes& capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::enumerateCellCodes ( )
inlineinherited
const EnumerateCellCodes& capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::enumerateCellCodes ( ) const
inlineinherited
bool capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::exists ( Id  id) const
inlineinherited
bool capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::exists ( const CellCode cellCode) const
inlineinherited
void capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::fillWithBoundaries ( )
inlineinherited
void capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::fillWithBoundary ( Id  cellId,
Color  color = Color(),
bool  keepLower = true 
)
inlineinherited
void capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::fillWithBoundary ( const Cell cell,
Color  color = Color(),
bool  keepLower = true 
)
inlineinherited
boost::optional<Cell> capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::find ( const CellCode cellCode)
inlineinherited
boost::optional<Cell> capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::find ( Id  id)
inlineinherited
Dim capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::getDim ( ) const
inlineinherited
Cell capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::insert ( const CellCode cellCode)
inlineinherited
Cell capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::insert ( const CellCode cellCode,
Color  color 
)
inlineinherited
void capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::insertAll ( Color  color = Color(1))
inlineprotectedinherited
bool capd::complex::SComplexBase::isClosed ( ) const
inlineinherited
Iterators capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::iterators ( )
inlineinherited
ConstIterators capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::iterators ( ) const
inlineinherited
ColoredIterators capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::iterators ( Color  color)
inlineinherited
ColoredConstIterators capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::iterators ( Color  color) const
inlineinherited
ConstCell capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::operator[] ( const CellCode cellCode) const
inlineinherited
ConstCell capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::operator[] ( Id  id) const
inlineinherited
Cell capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::operator[] ( const CellCode cellCode)
inlineinherited
Cell capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::operator[] ( Id  id)
inlineinherited
void capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::remove ( Cell cell)
inlineinherited
void capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::resetColors ( Color  color)
inlineinherited
void capd::complex::SComplexBase::setClosed ( bool  closed)
inlineinherited
void capd::complex::SComplexBase::setClosedValidator ( const boost::function< bool()> &  v)
inlineinherited
size_t capd::complex::CellComplex< LefschetzMemoryModel< Data, ColorT > , boost::mpl::vector<> >::size ( ) const
inlineinherited