00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _MiMeshIjk_H
00024 #define _MiMeshIjk_H
00025
00026 #ifdef _WIN32
00027 # pragma warning( push )
00028 # pragma warning(disable:4250)
00029 #endif
00030
00031 #include <MeshVizXLM/mesh/MiMesh.h>
00032 #include <MeshVizXLM/mesh/topology/MiTopologyIjk.h>
00033
00051 class MESHVIZXLM_EXTR_API MiMeshIjk : virtual public MiMesh
00052 {
00053 public:
00054
00070 enum StorageLayout {
00071 LAYOUT_IJK, LAYOUT_IKJ,
00072 LAYOUT_JKI, LAYOUT_JIK,
00073 LAYOUT_KJI, LAYOUT_KIJ,
00074 LAYOUT_UNKNOWN
00075 } ;
00076
00080 virtual const MiTopologyIjk& getTopology() const = 0;
00081
00082 private: protected:
00086 virtual std::ostream& toStream(std::ostream& s) const
00087 {
00088 s << "#mesh topology" << std::endl;
00089 s << "#numCellsI" << std::endl;
00090 s << getTopology().getNumCellsI() << std::endl;
00091 s << "#numCellsJ" << std::endl;
00092 s << getTopology().getNumCellsJ() << std::endl;
00093 s << "#numCellsK" << std::endl;
00094 s << getTopology().getNumCellsK() << std::endl;
00095 return s;
00096 }
00097
00098 };
00099
00100 #endif
00101
00102
00103