Arcane  v4.1.3.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
AMRPatchPositionLevelGroup.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/* AMRPatchPositionLevelGroup.h (C) 2000-2026 */
9/* */
10/* Groupe de position de patch AMR réparti par niveau. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CARTESIANMESH_INTERNAL_AMRPATCHPOSITIONLEVELGROUP_H
13#define ARCANE_CARTESIANMESH_INTERNAL_AMRPATCHPOSITIONLEVELGROUP_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/cartesianmesh/CartesianMeshGlobal.h"
18
19#include "arcane/utils/UniqueArray.h"
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24namespace Arcane
25{
26
27/*---------------------------------------------------------------------------*/
28/*---------------------------------------------------------------------------*/
29
36class AMRPatchPositionLevelGroup
37{
38 public:
39
40 explicit AMRPatchPositionLevelGroup(Int32 max_level);
41 ~AMRPatchPositionLevelGroup();
42
43 public:
44
45 Int32 maxLevel() const;
47 void addPatch(const AMRPatchPosition& patch);
48
54 void fusionPatches(Int32 level);
55
62 static void fusionPatches(UniqueArray<AMRPatchPosition>& patch_position, bool remove_null);
63
64 private:
65
66 Int32 m_max_level;
68};
69
70/*---------------------------------------------------------------------------*/
71/*---------------------------------------------------------------------------*/
72
73} // End namespace Arcane
74
75/*---------------------------------------------------------------------------*/
76/*---------------------------------------------------------------------------*/
77
78#endif
void fusionPatches(Int32 level)
Méthode permettant de fusionner tous les patchs d'un certain niveau qui peuvent l'être.
Classe permettant de définir la position d'un patch dans le maillage cartésien.
Vue constante d'un tableau de type T.
Vecteur 1D de données avec sémantique par valeur (style STL).
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
std::int32_t Int32
Type entier signé sur 32 bits.