Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ICaseMeshReader.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/* ICaseMeshReader.h (C) 2000-2020 */
9/* */
10/* Interface du service de lecture du maillage à partir du jeu de données. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_ICASEMESHREADER_H
13#define ARCANE_ICASEMESHREADER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27/*!
28 * \brief Informations nécessaires pour la lecture d'un fichier de maillage.
29 *
30 * \a isParallelRead() indique s'il est vrai que tous les rangs sur lequel le maillage
31 * est défini vont lire le fichier et qu'il faut donc si possible le distribuer.
32 * de manière équilibrée sur l'ensemble des rangs.
33 *
34 * \a format() indique le format du fichier. Par défaut il s'agit de l'extension
35 * du nom de fichier. Par exemple, si le fichier est 'toto.vtk', alors le format
36 * sera 'vtk'.
37 */
39{
40 public:
41 const String& fileName() const { return m_file_name; }
42 const String& directoryName() const { return m_directory_name; }
43 bool isParallelRead() const { return m_is_parallel_read; }
44 const String& format() const { return m_format; }
45 void setFileName(const String& v) { m_file_name = v; }
46 void setDirectoryName(const String& v) { m_directory_name = v; }
47 void setParallelRead(bool v) { m_is_parallel_read = v; }
48 void setFormat(const String& v) { m_format = v; }
49 private:
50 String m_file_name;
51 String m_directory_name;
52 String m_format;
53 bool m_is_parallel_read = true;
54};
55
56/*---------------------------------------------------------------------------*/
57/*---------------------------------------------------------------------------*/
58/*!
59 * \ingroup StandardService
60 * \brief Interface du service de lecture du maillage à partir du jeu de données.
61 *
62 * Cette interface est destinée à remplacer IMeshReader
63 */
64class ARCANE_CORE_EXPORT ICaseMeshReader
65{
66 public:
67
68 //! Libère les ressources
69 virtual ~ICaseMeshReader() = default;
70
71 public:
72
73 /*!
74 * \brief Retourne un builder pour créer et lire le maillage dont les
75 * informations sont spécifiées dans \a read_info.
76 *
77 * Si ce lecteur ne supporte pas le format spécifié dans \a read_info,
78 * retourn nul.
79 */
80 virtual Ref<IMeshBuilder> createBuilder(const CaseMeshReaderReadInfo& read_info) const =0;
81};
82
83/*---------------------------------------------------------------------------*/
84/*---------------------------------------------------------------------------*/
85
86} // End namespace Arcane
87
88/*---------------------------------------------------------------------------*/
89/*---------------------------------------------------------------------------*/
90
91#endif
92
Informations nécessaires pour la lecture d'un fichier de maillage.
Interface du service de lecture du maillage à partir du jeu de données.
virtual Ref< IMeshBuilder > createBuilder(const CaseMeshReaderReadInfo &read_info) const =0
Retourne un builder pour créer et lire le maillage dont les informations sont spécifiées dans read_in...
virtual ~ICaseMeshReader()=default
Libère les ressources.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-