Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
MeshVariableRef.h
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/* MeshVariableRef.h (C) 2000-2024 */
9/* */
10/* Classe gérant une variable sur une entité du maillage. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_MESHVARIABLEREF_H
13#define ARCANE_MESHVARIABLEREF_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/VariableRef.h"
18#include "arcane/ItemGroup.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28/*!
29 * \ingroup Variable
30 * \brief Classe de base d'une variable sur des entités du maillage.
31 */
32class ARCANE_CORE_EXPORT MeshVariableRef
33: public VariableRef
34{
35 public:
36
37 //! Construit une référence liée au module \a module
38 explicit MeshVariableRef(const VariableBuildInfo& vb);
39 ~MeshVariableRef() override = default;
40
41 protected:
42
46 void operator=(const MeshVariableRef& rhs);
47
48 public:
49
50 void synchronize();
51 void synchronize(Int32ConstArrayView local_ids);
52
53 protected:
54
55 void _internalInit(IVariable*);
56};
57
58/*---------------------------------------------------------------------------*/
59/*---------------------------------------------------------------------------*/
60
61} // End namespace Arcane
62
63/*---------------------------------------------------------------------------*/
64/*---------------------------------------------------------------------------*/
65//! Macro pour vérifier qu'une entité à le même genre que le groupe
66#define ARCANE_CHECK_VALID_ITEM_AND_GROUP_KIND(i) \
67 ARCANE_ASSERT((i.kind() == this->itemGroup().itemKind()),("Item and group kind not same"));
68
69/*---------------------------------------------------------------------------*/
70/*---------------------------------------------------------------------------*/
71
72#endif
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
Vue constante d'un tableau de type T.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-