Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
IPostProcessorWriter.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 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/* IPostProcessorWriter.h (C) 2000-2026 */
9/* */
10/* Interface for a writer for post-processing information. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_IPOSTPROCESSORWRITER_H
13#define ARCANE_CORE_IPOSTPROCESSORWRITER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18#include "arcane/core/IService.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
29class ICaseOptionList;
30class IDataWriter;
31class IMesh;
32
33/*---------------------------------------------------------------------------*/
34/*---------------------------------------------------------------------------*/
35
58class ARCANE_CORE_EXPORT IPostProcessorWriter
59{
60 public:
61
63 virtual ~IPostProcessorWriter() = default;
64
65 public:
66
68 virtual void build() = 0;
69
70 public:
71
78 virtual IDataWriter* dataWriter() = 0;
79
85 virtual void setBaseDirectoryName(const String& dirname) = 0;
86
87 // TODO: Deprecate in 2027: use getBaseDirectoryName() instead
89 virtual const String& baseDirectoryName() = 0;
90
93
99 virtual void setBaseFileName(const String& filename) = 0;
100
101 // TODO: Deprecate in 2027: use getBaseFileName() instead
103 virtual const String& baseFileName() = 0;
104
106 virtual String getBaseFileName();
107
118 ARCANE_DEPRECATED_REASON("Y2022: Choose the mesh during service creation via ServiceBuilder")
119 virtual void setMesh(IMesh* mesh);
120
122 virtual void setTimes(ConstArrayView<Real> times) = 0;
123
125 virtual ConstArrayView<Real> times() = 0;
126
129
132
139
142
143 public:
144
146 virtual void notifyBeginWrite() = 0;
147
149 virtual void notifyEndWrite() = 0;
150
151 public:
152
154 virtual void close() = 0;
155};
156
157/*---------------------------------------------------------------------------*/
158/*---------------------------------------------------------------------------*/
159
160} // namespace Arcane
161
162/*---------------------------------------------------------------------------*/
163/*---------------------------------------------------------------------------*/
164
165#endif
Declarations of Arcane's general types.
Constant view of an array of type T.
Interface for a data set options list.
Interface for writing variable data.
Definition IDataWriter.h:45
Interface for a writer for post-processing information.
virtual void setVariables(VariableCollection variables)=0
Positions the list of variables to output.
virtual void build()=0
Constructs the instance.
virtual ConstArrayView< Real > times()=0
List of saved times.
virtual VariableCollection variables()=0
List of variables to save.
virtual const String & baseFileName()=0
Name of the file containing the outputs.
virtual IDataWriter * dataWriter()=0
Returns the writer associated with this post-processor.
virtual void notifyEndWrite()=0
Notifies that an output has just been performed.
virtual void setBaseFileName(const String &filename)=0
Positions the name of the file containing the outputs.
virtual String getBaseFileName()
Name of the file containing the outputs.
virtual void notifyBeginWrite()=0
Notifies that an output is going to be performed with the current parameters.
virtual ItemGroupCollection groups()=0
List of groups to save.
virtual void close()=0
Closes the writer. After closing, it can no longer be used.
virtual void setGroups(ItemGroupCollection groups)=0
Positions the list of groups to output.
virtual void setBaseDirectoryName(const String &dirname)=0
Positions the output directory name for files.
virtual ~IPostProcessorWriter()=default
Releases resources.
virtual const String & baseDirectoryName()=0
Name of the output directory for files.
virtual void setMesh(IMesh *mesh)
Positions the mesh.
virtual String getBaseDirectoryName()
Name of the output directory for files.
virtual void setTimes(ConstArrayView< Real > times)=0
Positions the list of times.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
Collection< ItemGroup > ItemGroupCollection
Collection of mesh item groups.
double Real
Type representing a real number.