Arcane  4.2.3.0
Developer documentation
Loading...
Searching...
No Matches
IMeshInternal.h
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/* IMeshInternal.h (C) 2000-2025 */
9/* */
10/* Internal IMesh component in Arcane. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_INTERNAL_IMESHINTERNAL_H
13#define ARCANE_CORE_INTERNAL_IMESHINTERNAL_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
28namespace mesh
29{
30 class ItemInternalMap;
31 class FaceFamily;
32}
33
34/*---------------------------------------------------------------------------*/
35/*---------------------------------------------------------------------------*/
36
41class ARCANE_CORE_EXPORT IMeshInternal
42{
43 public:
44
45 virtual ~IMeshInternal() = default;
46
47 public:
48
55 virtual void setMeshKind(const MeshKind& v) = 0;
56
64 virtual IItemConnectivityMng* dofConnectivityMng() const noexcept = 0;
65
71 virtual IPolyhedralMeshModifier* polyhedralMeshModifier() const noexcept = 0;
72
82 virtual IItemFamilySerializerMngInternal* familySerializerMng() const noexcept { return nullptr; }
83
89 virtual mesh::ItemInternalMap& edgesMap() = 0;
90 virtual mesh::ItemInternalMap& facesMap() = 0;
91 virtual mesh::ItemInternalMap& cellsMap() = 0;
92
93 virtual mesh::FaceFamily& trueFaceFamily() = 0;
94
95 virtual void printStats(Int32 level) = 0;
96};
97
98/*---------------------------------------------------------------------------*/
99/*---------------------------------------------------------------------------*/
100
101} // namespace Arcane
102
103/*---------------------------------------------------------------------------*/
104/*---------------------------------------------------------------------------*/
105
106#endif
Declarations of Arcane's general types.
Manages the serialization/deserialization of entities in a family.
Internal part of IMesh.
virtual IItemConnectivityMng * dofConnectivityMng() const noexcept=0
Returns the dof connectivity manager.
virtual IPolyhedralMeshModifier * polyhedralMeshModifier() const noexcept=0
virtual void setMeshKind(const MeshKind &v)=0
Sets the mesh type.
virtual mesh::ItemInternalMap & nodesMap()=0
virtual IItemFamilySerializerMngInternal * familySerializerMng() const noexcept
Returns the family serialization tools manager.
Characteristics of a mesh.
Definition MeshKind.h:113
Associative array of ItemInternal.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
std::int32_t Int32
Signed integer type of 32 bits.