List of cells interface. More...
#include <MeshVizXLM/mesh/topology/MiTopology.h>
Public Member Functions | |
virtual | ~MiTopology () |
virtual size_t | getTimeStamp () const =0 |
virtual bool | hasDeadCells () const |
Protected Member Functions | |
virtual std::ostream & | toStream (std::ostream &s) const |
Friends | |
std::ostream & | operator<< (std::ostream &s, const MiTopology &topo) |
A generic abstract interface for a mesh topology.
virtual MiTopology::~MiTopology | ( | ) | [inline, virtual] |
virtual size_t MiTopology::getTimeStamp | ( | ) | const [pure virtual] |
Returns for this topology a unique time stamp across all topologies in the application.
When the content of the topology changes, the time stamp must increase. The time stamp allows extractors to identify this topology and to be aware of any changes to it.
virtual bool MiTopology::hasDeadCells | ( | ) | const [inline, virtual] |
Returns true if the topology contains dead cells.
When false, the cells traversal can be optimized by not testing the isDead() method of each individual cells. The default implementation returns always false.
virtual std::ostream& MiTopology::toStream | ( | std::ostream & | s | ) | const [inline, protected, virtual] |
Performs an output operation on a stream which is returned afterward. This method is protected since only called by the output operator <<. This method is not pure virtual and output by default the geometry and topology of a mesh. Whenever a different output is needed, this method can be implemented in the subclass to get a different output format. No std::ostream& operator << needs to be defined in any subclass. This allows you to benefit from the virtual inheritance when using the output operator on an abstract class.
Reimplemented in MiLineTopologyExplicitI, MiSurfaceTopologyExplicitI, MiTopologyIj, and MiTopologyIjk.
std::ostream& operator<< | ( | std::ostream & | s, | |
const MiTopology & | topo | |||
) | [friend] |
Outputs the mesh to a stream using the toStream protected method implemented in all derived classes.