Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IDataWriter.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/* IDataWriter.h (C) 2000-2007 */
9/* */
10/* Interface d'écriture des données d'une variable. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IDATAWRITER_H
13#define ARCANE_IDATAWRITER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22ARCANE_BEGIN_NAMESPACE
23
24/*---------------------------------------------------------------------------*/
25/*---------------------------------------------------------------------------*/
26
27class IVariable;
28class IData;
29
30/*---------------------------------------------------------------------------*/
31/*---------------------------------------------------------------------------*/
32/*!
33 * \ingroup IO
34 \brief Interface d'écriture des données d'une variable.
35
36 Lors d'une écriture, l'ordre d'appel est le suivant:
37 \code
38 * IDataWriter* writer = ...;
39 * writer->beginWrite(vars)
40 * writer->setMetaData()
41 * foreach(var in vars)
42 * writer->write(var,var_data)
43 * writer->endWriter()
44 \endcode
45 \a vars contient la liste des variables qui vont être sauvées
46 \sa IDataReader
47 */
49{
50 public:
51
52 //! Libère les ressources
53 virtual ~IDataWriter() {}
54
55 public:
56
57 virtual void beginWrite(const VariableCollection& vars) =0;
58 virtual void endWrite() =0;
59
60 public:
61
62 //! Positionne les infos des méta-données
63 virtual void setMetaData(const String& meta_data) =0;
64
65 public:
66
67 //! Ecrit les données \a data de la variable \a var
68 virtual void write(IVariable* var,IData* data) =0;
69
70 private:
71};
72
73/*---------------------------------------------------------------------------*/
74/*---------------------------------------------------------------------------*/
75
76ARCANE_END_NAMESPACE
77
78/*---------------------------------------------------------------------------*/
79/*---------------------------------------------------------------------------*/
80
81#endif
82
Interface d'écriture des données d'une variable.
Definition IDataWriter.h:49
virtual void setMetaData(const String &meta_data)=0
Positionne les infos des méta-données.
virtual ~IDataWriter()
Libère les ressources.
Definition IDataWriter.h:53
virtual void write(IVariable *var, IData *data)=0
Ecrit les données data de la variable var.
Interface d'une donnée.
Definition IData.h:33
Collection de variables.
Chaîne de caractères unicode.