Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
GlobalTimeHistoryAdder.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/* GlobalTimeHistoryAdder.h (C) 2000-2024 */
9/* */
10/* Classe permettant d'ajouter un historique de valeur global. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_GLOBALTIMEHISTORYADDER_H
13#define ARCANE_CORE_GLOBALTIMEHISTORYADDER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/ITimeHistoryAdder.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27
28/*!
29 * \brief Classe permettant d'ajouter une ou plusieurs valeurs à un
30 * historique de valeurs.
31 *
32 * Cette classe enregistrera les courbes de manière globale, sans support.
33 * C'est-à-dire que les courbes ne seront liée qu'au domaine complet ou au
34 * sous-domaine demandé, par opposition au MeshTimeHistoryAdder qui lie les
35 * courbes au maillage désiré.
36 *
37 * Pour un nom d'historique donné, il ne peut y avoir qu'une courbe de une
38 * ou plusieurs valeurs par sous-domaine (et une globale à tous les
39 * sous-domaines).
40 *
41 * Exemple : plusieurs courbes de moyennes des pressions (appelons-les
42 * "avg_pressure") et deux sous-domaines (0 et 1). Une valeur par itération.
43 * - Une courbe "avg_pressure" liée au sous-domaine 0. Chaque valeur est la
44 * moyenne des pressions de chaque maille du sous-domaine 0.
45 * - Une courbe "avg_pressure" liée au sous-domaine 1. Chaque valeur est la
46 * moyenne des pressions de chaque maille du sous-domaine 1.
47 * - Une courbe "avg_pressure" liée au domaine complet. Chaque valeur est la
48 * moyenne des pressions de chaque sous-domaine.
49 *
50 * On peut remarquer qu'il est possible d'avoir plusieurs courbes
51 * indépendantes avec le même nom mais liée à des sous-domaines différents
52 * (+1 courbe globale).
53 */
54class ARCANE_CORE_EXPORT GlobalTimeHistoryAdder
55: public ITimeHistoryAdder
56{
57 public:
58
59 /*!
60 * \brief Constructeur.
61 *
62 * \param time_history_mng Un pointeur vers une instance de ITimeHistoryMng.
63 */
64 explicit GlobalTimeHistoryAdder(ITimeHistoryMng* time_history_mng);
65 ~GlobalTimeHistoryAdder() override = default;
66
67 public:
68
69 void addValue(const TimeHistoryAddValueArg& thp, Real value) override;
70 void addValue(const TimeHistoryAddValueArg& thp, Int32 value) override;
71 void addValue(const TimeHistoryAddValueArg& thp, Int64 value) override;
72 void addValue(const TimeHistoryAddValueArg& thp, RealConstArrayView values) override;
73 void addValue(const TimeHistoryAddValueArg& thp, Int32ConstArrayView values) override;
74 void addValue(const TimeHistoryAddValueArg& thp, Int64ConstArrayView values) override;
75
76 private:
77
78 ITimeHistoryMng* m_thm;
79};
80
81/*---------------------------------------------------------------------------*/
82/*---------------------------------------------------------------------------*/
83
84} // End namespace Arcane
85
86/*---------------------------------------------------------------------------*/
87/*---------------------------------------------------------------------------*/
88
89#endif
Classe permettant d'ajouter une ou plusieurs valeurs à un historique de valeurs.
Interface de classe permettant d'ajouter une ou plusieurs valeurs à un historique de valeurs.
Classe gérant un historique de valeurs.
Vue constante d'un tableau de type T.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-