Arcane  v3.15.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ConstituentItemLocalId.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2024 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/* ConstituentItemLocalId.h (C) 2000-2024 */
9/* */
10/* Index sur les variables matériaux. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_MATERIALS_CONSTITUENTITEMLOCALID_H
13#define ARCANE_CORE_MATERIALS_CONSTITUENTITEMLOCALID_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/materials/MatVarIndex.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane::Materials
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27/*!
28 * \ingroup ArcaneMaterials
29 * \brief Index d'un ConstituentItem dans une variable.
30 */
32{
33 public:
34
35 constexpr ARCCORE_HOST_DEVICE ConstituentItemLocalId()
36 : m_local_id(-1, -1)
37 {}
38 constexpr ARCCORE_HOST_DEVICE explicit ConstituentItemLocalId(MatVarIndex mvi)
39 : m_local_id(mvi)
40 {}
41
42 public:
43
44 //! Index générique pour accéder aux valeurs d'une variable.
45 constexpr ARCCORE_HOST_DEVICE MatVarIndex localId() const { return m_local_id; }
46
47 public:
48
49 ARCANE_CORE_EXPORT friend std::ostream&
50 operator<<(std::ostream& o, const ConstituentItemLocalId& mvi);
51
52 private:
53
54 MatVarIndex m_local_id;
55};
56
57/*---------------------------------------------------------------------------*/
58/*---------------------------------------------------------------------------*/
59/*!
60 * \ingroup ArcaneMaterials
61 * \brief Index d'un MatItem dans une variable.
62 */
65{
66 public:
67
68 MatItemLocalId() = default;
69 constexpr ARCCORE_HOST_DEVICE explicit MatItemLocalId(MatVarIndex mvi)
71 {}
72 constexpr ARCCORE_HOST_DEVICE MatItemLocalId(ComponentItemLocalId lid)
74 {}
75};
76
77/*---------------------------------------------------------------------------*/
78/*---------------------------------------------------------------------------*/
79/*!
80 * \ingroup ArcaneMaterials
81 * \brief Index d'un EnvItem dans une variable.
82 */
85{
86 public:
87
88 EnvItemLocalId() = default;
89 constexpr ARCCORE_HOST_DEVICE explicit EnvItemLocalId(MatVarIndex mvi)
91 {}
92 constexpr ARCCORE_HOST_DEVICE EnvItemLocalId(ComponentItemLocalId lid)
94 {}
95};
96
97/*---------------------------------------------------------------------------*/
98/*---------------------------------------------------------------------------*/
99
100} // End namespace Arcane::Materials
101
102/*---------------------------------------------------------------------------*/
103/*---------------------------------------------------------------------------*/
104
105#endif
106
Index d'un ConstituentItem dans une variable.
constexpr __host__ __device__ MatVarIndex localId() const
Index générique pour accéder aux valeurs d'une variable.
Index d'un EnvItem dans une variable.
Index d'un MatItem dans une variable.
Représente un index sur les variables matériaux et milieux.
Active toujours les traces dans les parties Arcane concernant les matériaux.