Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
MeshKind.cc
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* MeshKind.cc (C) 2000-2025 */
9/* */
10/* Characteristics of a mesh. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arcane/core/MeshKind.h"
15
16#include <iostream>
17
18/*---------------------------------------------------------------------------*/
19/*---------------------------------------------------------------------------*/
20
21namespace Arcane
22{
23
24namespace
25{
26 const char* _toName(eMeshStructure r)
27 {
28 switch (r) {
30 return "Unknown";
32 return "Unstructured";
34 return "Cartesian";
35 default:
36 return "Invalid";
37 }
38 }
39 const char* _toName(eMeshAMRKind r)
40 {
41 switch (r) {
43 return "None";
45 return "Cell";
47 return "Patch";
49 return "PatchCartesianMeshOnly";
50 default:
51 return "Invalid";
52 }
53 }
54 const char* _toName(eMeshCellDimensionKind r)
55 {
56 switch (r) {
58 return "MonoDimension";
60 return "MultiDimension";
62 return "NonManifold";
63 default:
64 return "Invalid";
65 }
66 }
67
68} // namespace
69
70/*---------------------------------------------------------------------------*/
71/*---------------------------------------------------------------------------*/
72
73std::ostream&
74operator<<(std::ostream& o, eMeshStructure r)
75{
76 o << _toName(r);
77 return o;
78}
79
80std::ostream&
81operator<<(std::ostream& o, eMeshAMRKind r)
82{
83 o << _toName(r);
84 return o;
85}
86
87std::ostream&
88operator<<(std::ostream& o, eMeshCellDimensionKind r)
89{
90 o << _toName(r);
91 return o;
92}
93
94/*---------------------------------------------------------------------------*/
95/*---------------------------------------------------------------------------*/
96
97} // namespace Arcane
98
99/*---------------------------------------------------------------------------*/
100/*---------------------------------------------------------------------------*/
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
eMeshCellDimensionKind
Types of mesh dimension management.
Definition MeshKind.h:73
@ MultiDimension
The cells have the same dimension as the mesh or a lower dimension.
Definition MeshKind.h:81
@ NonManifold
Non-manifold mesh.
Definition MeshKind.h:91
@ MonoDimension
The cells have the same dimension as the mesh.
Definition MeshKind.h:75
eMeshStructure
Mesh structure.
Definition MeshKind.h:30
@ Unknown
Unknown or not initialized.
Definition MeshKind.h:32
@ Cartesian
Cartesian mesh.
Definition MeshKind.h:36
@ Unstructured
Unstructured mesh.
Definition MeshKind.h:34
eMeshAMRKind
AMR mesh type.
Definition MeshKind.h:49
@ Patch
The mesh is AMR by patch.
Definition MeshKind.h:55
@ Cell
The mesh is AMR by cell.
Definition MeshKind.h:53
@ None
The mesh is not AMR.
Definition MeshKind.h:51
@ PatchCartesianMeshOnly
The mesh is AMR by Cartesian patch (rectangular).
Definition MeshKind.h:57