Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
MeshToMeshTransposer.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/* MeshToMeshTransposer.h (C) 2000-2025 */
9/* */
10/* Transposition operator between sub-meshes. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_MESGTOMESHTRANSPOSE_H
13#define ARCANE_CORE_MESGTOMESHTRANSPOSE_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/ItemVectorView.h"
18#include "arcane/core/ItemVector.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
30class ARCANE_CORE_EXPORT MeshToMeshTransposer
31{
32 public:
33
35 static ItemVector transpose(IMesh* meshA, IMesh* meshB,
36 ItemVectorView itemsA,
37 bool do_fatal = false);
38
40 static ItemVector transpose(IItemFamily* familyA, IItemFamily* familyB,
41 ItemVectorView itemsA, bool do_fatal = false);
42
44 static eItemKind kindTranspose(eItemKind kindA, IMesh* meshA, IMesh* meshB);
45
46 private:
47
48 static ItemVector _transpose(IItemFamily* familyA, IItemFamily* familyB,
49 const ItemVectorView& itemsA, bool do_fatal);
50};
51
52/*---------------------------------------------------------------------------*/
53/*---------------------------------------------------------------------------*/
54
55} // namespace Arcane
56
57/*---------------------------------------------------------------------------*/
58/*---------------------------------------------------------------------------*/
59
60#endif
Interface of an entity family.
Definition IItemFamily.h:83
View on a vector of entities.
Entity vector.
Definition ItemVector.h:60
Item transposer between sub-meshes.
static eItemKind kindTranspose(eItemKind kindA, IMesh *meshA, IMesh *meshB)
Transpose the kind kindA of mesh meshA to the associated kind in meshB.
static ItemVector transpose(IMesh *meshA, IMesh *meshB, ItemVectorView itemsA, bool do_fatal=false)
Transpose itemsA from meshB to items on meshB.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
eItemKind
Mesh entity type.