Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
EmptyMeshModifier.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/* EmptyMeshModifier (C) 2000-2024 */
9/* */
10/* Brief code description */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13#ifndef ARCANE_EMPTYMESHMODIFIER_H
14#define ARCANE_EMPTYMESHMODIFIER_H
15/*---------------------------------------------------------------------------*/
16/*---------------------------------------------------------------------------*/
17
18#include "arcane/core/IMeshModifier.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane::mesh
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
29class EmptyMeshModifier
30: public IMeshModifier
31{
32
33 public:
34
35 explicit EmptyMeshModifier() = default;
36
37 ~EmptyMeshModifier() override = default;
38
39 private:
40
41 [[noreturn]] void _error() const { ARCANE_FATAL("Using EmptyMeshModifier"); }
42
43 public:
44
45 void build() override { _error(); }
46
47 public:
48
50 IMesh* mesh() override { _error(); }
51
52 public:
53
54 void setDynamic(bool) override { _error(); }
56 Int32ArrayView) override { _error(); }
57 void addCells(const MeshModifierAddCellsArgs&) { _error(); }
59 Int32ArrayView) override { _error(); }
60 void addFaces(const MeshModifierAddFacesArgs&) { _error(); }
62 Int32ArrayView) override { _error(); }
64 Int32ArrayView) override { _error(); }
65
66 void removeCells(Int32ConstArrayView) override { _error(); }
67 void removeCells(Int32ConstArrayView, bool) override { _error(); }
68 void detachCells(Int32ConstArrayView) override { _error(); }
69
70 void removeDetachedCells(Int32ConstArrayView) override { _error(); }
71
72 void flagCellToRefine(Int32ConstArrayView) override { _error(); }
73 void flagCellToCoarsen(Int32ConstArrayView) override { _error(); }
74 void refineItems() override { _error(); }
75 void coarsenItems() override { _error(); }
76 void coarsenItemsV2(bool) override { _error(); }
77 bool adapt() override { _error(); }
78 void registerCallBack(IAMRTransportFunctor*) override { _error(); }
79 void unRegisterCallBack(IAMRTransportFunctor*) override { _error(); }
80 void addHChildrenCells(Cell, Integer,
81 Int64ConstArrayView, Int32ArrayView) override { _error(); }
82
83 void addParentCellToCell(Cell, Cell) override { _error(); }
84 void addChildCellToCell(Cell, Cell) override { _error(); }
85
86 void addParentFaceToFace(Face, Face) override { _error(); }
87 void addChildFaceToFace(Face, Face) override { _error(); }
88
89 void addParentNodeToNode(Node, Node) override { _error(); }
90 void addChildNodeToNode(Node, Node) override { _error(); }
91
92 void clearItems() override { _error(); }
93
94 ARCANE_DEPRECATED_240 void addCells(ISerializer*) override { _error(); }
95 ARCANE_DEPRECATED_240 void addCells(ISerializer*, Int32Array&) override { _error(); }
96
97 void endUpdate() override { _error(); }
98
99 void endUpdate(bool, bool) override { _error(); } // SDC: this signature is needed @IFPEN.
100
101 public:
102
103 void updateGhostLayers() override { _error(); }
104
108 bool) override { _error(); }
109
111
113
115
117
118 public:
119
120 void mergeMeshes(ConstArrayView<IMesh*>) override { _error(); }
121
122 public:
123
125 {
126 _error();
127 return nullptr;
128 }
129};
130
131/*---------------------------------------------------------------------------*/
132/*---------------------------------------------------------------------------*/
133
134} // End namespace Arcane::mesh
135
136/*---------------------------------------------------------------------------*/
137/*---------------------------------------------------------------------------*/
138
139#endif
#define ARCANE_FATAL(...)
Macro throwing a FatalErrorException.
Base class for 1D data vectors.
Constant view of an array of type T.
Interface of a builder for "extraordinary" ghost cells.
Interface of a builder for "extraordinary" ghost cells.
Internal part of IMeshModifier.
Mesh modification interface.
Arguments for IMeshModifier::addCells().
Arguments for IMeshModifier::addFaces().
void addNodes(Int64ConstArrayView, Int32ArrayView) override
Adds nodes.
void addCells(Integer, Int64ConstArrayView, Int32ArrayView) override
Adds cells.
ARCANE_DEPRECATED_240 void addCells(ISerializer *, Int32Array &) override
Adds cells from the data contained in buffer.
void updateGhostLayers() override
Updates the ghost layer.
void removeDetachedCells(Int32ConstArrayView) override
Removes detached cells.
void detachCells(Int32ConstArrayView) override
Detaches cells from the mesh.
IMeshModifierInternal * _modifierInternalApi() override
Internal API for Arcane.
void removeCells(Int32ConstArrayView) override
Removes cells.
void setDynamic(bool) override
Sets the property indicating whether the mesh can evolve.
IMesh * mesh() override
Associated mesh.
void addExtraGhostParticlesBuilder(IExtraGhostParticlesBuilder *) override
Addition of the "extraordinary" ghost particle addition algorithm.
void addExtraGhostCellsBuilder(IExtraGhostCellsBuilder *) override
addition of the "extraordinary" ghost cells addition algorithm.
void removeExtraGhostParticlesBuilder(IExtraGhostParticlesBuilder *) override
Removes the association with the builder instance.
void clearItems() override
Deletes all entities of all families in this mesh.
void mergeMeshes(ConstArrayView< IMesh * >) override
Merges the meshes of meshes with the current mesh.
ARCANE_DEPRECATED_240 void addCells(ISerializer *) override
Adds cells from the data contained in buffer.
void addCells(const MeshModifierAddCellsArgs &)
Adds cells.
void endUpdate() override
Notifies the instance that mesh modification is finished.
void addEdges(Integer, Int64ConstArrayView, Int32ArrayView) override
Adds edges.
void updateGhostLayerFromParent(Array< Int64 > &, Array< Int64 > &, bool) override
AMR.
void addFaces(const MeshModifierAddFacesArgs &)
Adds faces.
void addFaces(Integer, Int64ConstArrayView, Int32ArrayView) override
Adds faces.
void flagCellToRefine(Int32ConstArrayView) override
AMR.
void removeExtraGhostCellsBuilder(IExtraGhostCellsBuilder *) override
Removes the association with the builder instance.
Int32 Integer
Type representing an integer.
ConstArrayView< Int32 > Int32ConstArrayView
C equivalent of a 1D array of 32-bit integers.
Definition UtilsTypes.h:482
ConstArrayView< Int64 > Int64ConstArrayView
C equivalent of a 1D array of 64-bit integers.
Definition UtilsTypes.h:480
ArrayView< Int32 > Int32ArrayView
C equivalent of a 1D array of 32-bit integers.
Definition UtilsTypes.h:453
Array< Int32 > Int32Array
Dynamic one-dimensional array of 32-bit integers.
Definition UtilsTypes.h:127
@ Cell
The mesh is AMR by cell.
Definition MeshKind.h:53