Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
MeshVariableRef.cc
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2022 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/* MeshVariable.cc (C) 2000-2024 */
9/* */
10/* Variable du maillage. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arcane/MeshVariableRef.h"
15#include "arcane/ItemGroup.h"
16#include "arcane/IMesh.h"
17#include "arcane/MeshHandle.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27
28MeshVariableRef::
29MeshVariableRef(IVariable* var)
30: VariableRef(var)
31{
32}
33
34/*---------------------------------------------------------------------------*/
35/*---------------------------------------------------------------------------*/
36
37MeshVariableRef::
38MeshVariableRef(const VariableBuildInfo& vbi)
39: VariableRef(vbi)
40{
41}
42
43/*---------------------------------------------------------------------------*/
44/*---------------------------------------------------------------------------*/
45
46MeshVariableRef::
47MeshVariableRef(const MeshVariableRef& rhs)
48: VariableRef(rhs)
49{
50}
51
52/*---------------------------------------------------------------------------*/
53/*---------------------------------------------------------------------------*/
54
55void MeshVariableRef::
56operator=(const MeshVariableRef& rhs)
57{
59}
60
61/*---------------------------------------------------------------------------*/
62/*---------------------------------------------------------------------------*/
63
64void MeshVariableRef::
65_internalInit(IVariable* var)
66{
68 MeshHandle mh = var->meshHandle();
69 if (mh.hasMesh()){
70 IMesh* mesh = mh.mesh();
71 bool auto_init = mesh->isAllocated();
72 if (auto_init){
73 setUsed(true);
74 }
75 }
76}
77
78/*---------------------------------------------------------------------------*/
79/*---------------------------------------------------------------------------*/
80
81void MeshVariableRef::
82synchronize()
83{
85}
86
87/*---------------------------------------------------------------------------*/
88/*---------------------------------------------------------------------------*/
89
90void MeshVariableRef::
91synchronize(Int32ConstArrayView local_ids)
92{
93 variable()->synchronize(local_ids);
94}
95
96/*---------------------------------------------------------------------------*/
97/*---------------------------------------------------------------------------*/
98
99} // End namespace Arcane
100
101/*---------------------------------------------------------------------------*/
102/*---------------------------------------------------------------------------*/
virtual void synchronize()=0
Synchronise la variable.
Classe de base d'une variable sur des entités du maillage.
Paramètres nécessaires à la construction d'une variable.
Référence à une variable.
Definition VariableRef.h:56
VariableRef & operator=(const VariableRef &from)
Opérateur de recopie.
IVariable * variable() const
Variable associée.
void _internalInit(IVariable *)
Initialisation interne de la variable.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
ConstArrayView< Int32 > Int32ConstArrayView
Equivalent C d'un tableau à une dimension d'entiers 32 bits.
Definition UtilsTypes.h:640