List of volume cells interface. More...
#include <MeshVizXLM/mesh/topology/MiTopologyIjk.h>
Public Member Functions | |
virtual size_t | getNumCellsI () const =0 |
Returns the number of cells on the first logical axis. | |
virtual size_t | getNumCellsJ () const =0 |
Returns the number of cells on the second logical axis. | |
virtual size_t | getNumCellsK () const =0 |
Returns the number of cells on the third logical axis. | |
virtual bool | isDead (size_t i, size_t j, size_t k) const |
Returns true if the cell of index (i,j,k) should be ignored. | |
Public Member Functions inherited from MiTopology | |
virtual | ~MiTopology () |
virtual size_t | getTimeStamp () const =0 |
Returns for this topology a unique time stamp across all topologies in the application. | |
virtual bool | hasDeadCells () const |
Returns true if the topology contains dead cells. | |
Protected Member Functions | |
virtual std::ostream & | toStream (std::ostream &s) const |
Performs an output operation on a stream which is returned afterward. | |
List of volume cells interface.
A generic abstract interface for a structured implicit volume mesh topology. Cells are all implicitly defined as hexahedron so there is no need for specifying a list of cells. The number of cells on each dimension defines completely the topology.
The implementation of all the methods of this class must be thread-safe because it might be called concurrently by multiple threads. If the implementation can't be thread-safe, MeshViz XLM must be forced to use only 1 thread. It can be done by calling MiMeshViz::init(1) or MoMeshViz::init(1) or setting the parallel argument to false for each extractor instantiation. For instance by calling MiSkinExtractUnstructured::getNewInstance(&mesh, false);
Definition at line 47 of file MiTopologyIjk.h.
|
pure virtual |
Returns the number of cells on the first logical axis.
The maximum supported value is 65535.
|
pure virtual |
Returns the number of cells on the second logical axis.
The maximum supported value is 65535.
|
pure virtual |
Returns the number of cells on the third logical axis.
The maximum supported value is 65535.
|
inlinevirtual |
Returns true if the cell of index (i,j,k) should be ignored.
This value is ignored if the hasDeadCell() method returns false. The default implementation returns always false. The implementation of this method must be thread-safe because it might be called concurrently by multiple threads.
(i,j,k) | the index of the cell to check |
Definition at line 77 of file MiTopologyIjk.h.
|
inlineprotectedvirtual |
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 from MiTopology.
Definition at line 83 of file MiTopologyIjk.h.